[PATCH, rs6000] Fix PR target 71656, reload ICE when -mcpu=power9 -mpower9-dform-vector

2016-06-25 Thread Peter Bergner
This patch fixes PR71656 by adding support to rs6000_legitimize_reload_address for POWER9 vector-dform addresses. Previously, -mpower9-dform-vector was disabled when using reload due to this bug and it was not added to the default ISA 3.0 flags. Now that -mpower9-dform-vector works with reload, I

[PATCH] PR middle-end/71524: IFUNC resolver may resolve to a non-local function

2016-06-25 Thread H.J. Lu
The resolver for ifunc functions might resolve to a non-local function. Tested on x86 and x86-64. OK for trunk? H.J. --- gcc/ PR middle-end/71524 * symtab.c (symtab_node::binds_to_current_def_p): Return false for IFUNC resolver. gcc/testsuite/ PR middle-end/715

Re: Importing gnulib into the gcc tree

2016-06-25 Thread Jakub Sejdak
I think, that you missed the patch file or it was removed from your email by server. 2016-06-25 14:06 GMT+02:00 ayush goel : > Hey, > As a first step of my GSOC project > (https://gcc.gnu.org/wiki/replacelibibertywithgnulib) I have imported the > gnulib library inside the gcc tree. I have create

[PATCH] Fix MPX tests on systems with MPX disabled

2016-06-25 Thread Andi Kleen
From: Andi Kleen I have a Skylake system with MPX in the CPU, but MPX is disabled in the kernel configuration. This makes all the MPX tests fail because they assume if MPX is in CPUID it works Check the output of XGETBV too to detect non MPX kernels. gcc/testsuite/: 2016-06-25 Andi Kleen

Re: Predict recursive calls as unlikely

2016-06-25 Thread Jan Hubicka
> Jan Hubicka writes: > > > Hi, > > this is first of two patches for getting more realistic predictions of > > recursive functions. It is clear that in order for recursion to finish, the > > sum of frequencies of recursive calls should not exceed sum of frequencies > > of > > the function entry

Re: Predict recursive calls as unlikely

2016-06-25 Thread Andi Kleen
Jan Hubicka writes: > Hi, > this is first of two patches for getting more realistic predictions of > recursive functions. It is clear that in order for recursion to finish, the > sum of frequencies of recursive calls should not exceed sum of frequencies of > the function entry block. This globa

Implement loop guard heuristics

2016-06-25 Thread Jan Hubicka
Hi, this patch implements loop guard heuristics predicting that if one loop is nested in another and controlled by a conditional that conditional is likely false. This helps to get more realistic predictionsin larger loop nests. To make predictor effective it is necessary to rule out duplicated lo

Importing gnulib into the gcc tree

2016-06-25 Thread ayush goel
Hey,  As a first step of my GSOC project (https://gcc.gnu.org/wiki/replacelibibertywithgnulib) I have imported the gnulib library inside the gcc tree. I have created gnulib as a top level directory which contains the necessary scripts to import the modules. It also contains the necessary Makefi

Predict recursive calls as unlikely

2016-06-25 Thread Jan Hubicka
Hi, this is first of two patches for getting more realistic predictions of recursive functions. It is clear that in order for recursion to finish, the sum of frequencies of recursive calls should not exceed sum of frequencies of the function entry block. This global condition is however bit hard

Re: [PATCH] Fix reassociation not to reuse SSA_NAMEs (PR tree-optimization/71631)

2016-06-25 Thread Richard Biener
On June 24, 2016 8:30:16 PM GMT+02:00, Jakub Jelinek wrote: >Hi! > >rewrite_expr_tree tries to reuse SSA_NAMEs if it knows they hold the >same >values, which it figures out by setting the changed flag during >recursion >if some operand is different. But in order for this to work reliably, >we nee

Re: [PATCH] Fix up gimple cross-jumping (PR tree-optimization/71643)

2016-06-25 Thread Richard Biener
On June 24, 2016 8:34:01 PM GMT+02:00, Jakub Jelinek wrote: >Hi! > >My recent change to handle labels (other than forced/non-local) caused >ICE on the following testcase, I thought EH pads would always differ >with >the special stuff in them for each region, but with >__builtin_unreachable >we can