Re: [PATCH, i386]: Fix MULTILIB_MATCHES option typos in t-rtems

2013-11-06 Thread Ralf Corsepius
On 11/05/2013 07:54 PM, Uros Bizjak wrote: On Tue, Nov 5, 2013 at 7:43 PM, Ralf Corsepius wrote: 2013-11-05 Uros Bizjak * config/i386/t-rtems (MULTILIB_MATCHES): Fix option typos. Committed to SVN mainline as obvious, should be backported to other release branches. Yikes! Could you

Re: [PATCH, SH] Implement builtin_strlen

2013-11-06 Thread Christian Bruel
On 11/05/2013 02:12 PM, Kaz Kojima wrote: > Christian Bruel wrote: >> No regressions for sh-none-elf. OK for trunk ? > OK. > > Regards, > kaz thanks, applied together with the cleanup referenced earlier and a slight variable renaming (start_addr->curr_addr, end_addr->start_addr) for readab

Commit: MSP430: Make -mmcu option define C preprocessor symbol and linker scripts

2013-11-06 Thread Nick Clifton
Hi Guys, I am checking in the patch below to extend the -mmcu command line option of the MSP430 port so that it defines a C preprocessor symbol based on the name of the MCU part and it also changes the linker command line so that it will search for linker scripts specific to that part.

Re: patch implementing a new pass for register-pressure relief through live range shrinkage

2013-11-06 Thread Richard Biener
On Tue, Nov 5, 2013 at 4:35 PM, Vladimir Makarov wrote: > I'd like to add a new experimental optimization to the trunk. This > optimization was discussed on RA BOF of this summer GNU Cauldron. > > It is a register pressure relief through live-range shrinkage. It > is implemented on the sched

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Richard Biener
On Tue, Nov 5, 2013 at 3:24 PM, Ilya Enkovich wrote: > 2013/11/5 Richard Biener : >> On Tue, Nov 5, 2013 at 1:52 PM, Ilya Enkovich wrote: >>> >>> For input parameter P I need to have >>> BOUNDS = __builtin_arg_bnd (P) >>> to somehow refer to bounds of P in GIMPLE. Optimizations may modify >>>

Re: [patch] Move block_in_transaction out of gimple.h

2013-11-06 Thread Richard Biener
On Tue, Nov 5, 2013 at 10:08 PM, Jeff Law wrote: > On 11/05/13 14:06, Andrew MacLeod wrote: >> >> Looks like another location of convenience perhaps... >> >> Anyway, block_in_transaction (bb) really belongs in basic-block.h... The >> only oddity is that it also checks flag_tm... Is this really >

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Richard Biener
On Tue, Nov 5, 2013 at 10:18 PM, Jeff Law wrote: > On 10/31/13 10:26, David Malcolm wrote: >> >> The gimple statement types are currently implemented using a hand-coded >> C inheritance scheme, with a "union gimple_statement_d" holding the >> various possible structs for a statement. >> >> The fol

Re: [PATCH] PR58985: testcase error.

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 3:51 AM, Wei Mi wrote: > +Release manager. > > Thanks, committed to trunk as r204438. Ok for 4.8 branch? Ok. > On Tue, Nov 5, 2013 at 11:19 AM, Jeff Law wrote: >> On 11/04/13 12:07, Wei Mi wrote: >>> >>> Hi, >>> >>> This is to fix testcase error reported in PR58985. >>> >

Re: [C] Fix PR57258: unused variable warning is emitted for volatile variables

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 8:40 AM, Mingjie Xing wrote: > Hi, > > Changes: > > * c/c-decl.c (pop_scope): Skip volatile variables while emit > warnings for unused variables. > > Tested on i686-pc-linux-gnu. > > OK? You miss a testcase. Also why should the warning be omitted for unused automat

[ARM, AArch64] Make aarch-common.c files more robust.

2013-11-06 Thread James Greenhalgh
Hi, This patch is a respin of the aarch-common improvements to use a generic search to find SETs and the variety of shifts, rather than relying on the hope that we will find something well formed. I've bootstrapped the patch on a chromebook with -mcpu=cortex-a7, -mcpu=cortex-a9 and -mcpu=cortex

[v3 patch] Fix spelling in regex headers

2013-11-06 Thread Jonathan Wakely
This simply fixes s/boundry/boundary/, which I wanted to do first before some more regex refactoring I'm planning. 2013-11-06 Jonathan Wakely * include/bits/regex_automaton.h (_S_opcode_word_boundry): Rename to _S_opcode_word_boundary. * include/bits/regex_automaton.tcc

[PATCH GCC]Improve IVOPT to handle outside and inside loop iv uses differently in GCC

2013-11-06 Thread bin.cheng
Hi, GCC IVOPT has a problem that it doesn't differentiate between iv uses outside of loop from inside ones. It computes cost for outside iv use just like inside ones, which is wrong because outside iv use should be computed along loop exit edge and the cost should be amortized against loop iterati

Re: [v3 patch] Implement C++14 N3655 TransformationTraits Redux

2013-11-06 Thread Paolo Carlini
Hi On 11/06/2013 12:01 AM, Jonathan Wakely wrote: I also changed a few tests to use static_assert instead of VERIFY so they only need to be compiled, not executed, saving a few milliseconds when running the testsuite ;-) Good idea, anyway. I may get around to do more of that + those missing tes

RE: [PATCH GCC]Simplify address expression in IVOPT

2013-11-06 Thread bin.cheng
r); if > + (TREE_CODE (expr) == ADDR_EXPR && !DECL_P (TREE_OPERAND (expr, 0))) > +{ > + aff_tree comb; > + double_int size; > + base_object = get_inner_reference_aff (TREE_OPERAND (expr, 0), > + &comb, &size); > + gcc_assert (base_o

Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support

2013-11-06 Thread Richard Biener
On Tue, Nov 5, 2013 at 3:08 PM, Ilya Enkovich wrote: > 2013/11/5 Richard Biener : >> On Tue, Nov 5, 2013 at 2:37 PM, Ilya Enkovich wrote: >>> 2013/11/5 Richard Biener : On Tue, Nov 5, 2013 at 2:20 PM, Ilya Enkovich wrote: > 2013/11/5 Richard Biener : >> On Tue, Nov 5, 2013 at

Re: [C++ Patch, Java related/RFC] PR 11006

2013-11-06 Thread Andrew Haley
On 11/04/2013 05:21 PM, Jason Merrill wrote: > Surely it should be valid to allocate a Java boolean type. Andrew, > how should that work? It's not allowed. All objects that are allocated by new must be of class type (i.e. instances of a subclass of java.lang.Object), but boolean is a primitive

[C++ Patch] PR 50436

2013-11-06 Thread Paolo Carlini
Hi, in this bug, filed by Zack, we loop forever after error in constant_value_1. Straightforward thing to do, detect and break out. Tested x86_64-linux. Thanks, Paolo. /cp 2013-11-06 Paolo Carlini PR c++/50436 * init.c (constant_value_1): Break out of

Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support

2013-11-06 Thread Ilya Enkovich
2013/11/6 Richard Biener : > On Tue, Nov 5, 2013 at 3:08 PM, Ilya Enkovich wrote: >> 2013/11/5 Richard Biener : >>> On Tue, Nov 5, 2013 at 2:37 PM, Ilya Enkovich >>> wrote: 2013/11/5 Richard Biener : > On Tue, Nov 5, 2013 at 2:20 PM, Ilya Enkovich > wrote: >> 2013/11/5 Richard

Re: [PATCH, SH] Implement builtin_strlen

2013-11-06 Thread Eric Botcazou
> thanks, applied together with the cleanup referenced earlier and a > slight variable renaming (start_addr->curr_addr, end_addr->start_addr) > for readability as obvious, Minor nit: no gcc/ prefix in gcc/ChangeLog. -- Eric Botcazou

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Ilya Enkovich
2013/11/6 Richard Biener : > On Tue, Nov 5, 2013 at 3:24 PM, Ilya Enkovich wrote: >> 2013/11/5 Richard Biener : >>> On Tue, Nov 5, 2013 at 1:52 PM, Ilya Enkovich >>> wrote: For input parameter P I need to have BOUNDS = __builtin_arg_bnd (P) to somehow refer to bounds of P i

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Bernd Schmidt
On 11/06/2013 10:31 AM, Richard Biener wrote: > We decided to move to C++. As part of a later discussion we decided > to go with a single general dynamic-casting style, mimicing the "real" > C++ variant which is dynamic_cast < ... >. Which resulted in > is-a.h. > > So yes, we've decided to go C+

[PATCH][1/2] Get TREE_OVERFLOW somewhat under control

2013-11-06 Thread Richard Biener
The following patch makes initial steps of reducing the amount of TREE_OVERFLOW constants in the GIMPLE IL (there should be zero such constants). Tree folding in the frontends (and also later during optimization) introduces those so the following patches the gimplifier to drop the flag from all c

Re: [PATCH GCC]Simplify address expression in IVOPT

2013-11-06 Thread Richard Biener
XPR check in + if (op0 == NULL_TREE + || (is_gimple_val (op0) && (TREE_CODE (op0) != ADDR_EXPR))) +cost0 = no_cost; + else +cost0 = force_expr_to_var_cost (op0, speed); what's the reason for this? IMHO the is_gimple_val && != ADDR_EXPR check should be rewritten i

Re: [PATCH, MPX, 2/X] Pointers Checker [8/25] Languages support

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 11:55 AM, Ilya Enkovich wrote: > 2013/11/6 Richard Biener : >> On Tue, Nov 5, 2013 at 3:08 PM, Ilya Enkovich wrote: >>> 2013/11/5 Richard Biener : On Tue, Nov 5, 2013 at 2:37 PM, Ilya Enkovich wrote: > 2013/11/5 Richard Biener : >> On Tue, Nov 5, 2013 at

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 12:00 PM, Ilya Enkovich wrote: > 2013/11/6 Richard Biener : >> On Tue, Nov 5, 2013 at 3:24 PM, Ilya Enkovich wrote: >>> 2013/11/5 Richard Biener : On Tue, Nov 5, 2013 at 1:52 PM, Ilya Enkovich wrote: > > For input parameter P I need to have > BOUND

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 12:02 PM, Bernd Schmidt wrote: > On 11/06/2013 10:31 AM, Richard Biener wrote: >> We decided to move to C++. As part of a later discussion we decided >> to go with a single general dynamic-casting style, mimicing the "real" >> C++ variant which is dynamic_cast < ... >. Whi

Re: [PATCH, SH] Implement builtin_strlen

2013-11-06 Thread Christian Bruel
On 11/06/2013 11:57 AM, Eric Botcazou wrote: >> thanks, applied together with the cleanup referenced earlier and a >> slight variable renaming (start_addr->curr_addr, end_addr->start_addr) >> for readability as obvious, > Minor nit: no gcc/ prefix in gcc/ChangeLog. ok I'll didn't notice this., do

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Jakub Jelinek
On Wed, Nov 06, 2013 at 12:31:00PM +0100, Richard Biener wrote: > > Maybe we need to revisit it? As one of those who were not in favour of > > the C++ move, can I ask you guys to step back for a moment and think > > about - what do all of these changes buy us, exactly? Imagine the state > > at the

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Eric Botcazou
> Maybe we need to revisit it? As one of those who were not in favour of > the C++ move, can I ask you guys to step back for a moment and think > about - what do all of these changes buy us, exactly? Imagine the state > at the end, where everything is converted and supposedly the temporary > ugline

Re: libsanitizer merge from upstream r191666

2013-11-06 Thread Jakub Jelinek
On Tue, Nov 05, 2013 at 01:49:43PM -0800, Evgeniy Stepanov wrote: > This way we can't test kernel interfaces that are not used in glibc, > like linux aio. So you just test what you can test. Why do you need to intercept kernel aio when hardly anything uses it? Also, what is the reason why say st

Re: [PATCH, SH] Implement builtin_strlen

2013-11-06 Thread Eric Botcazou
> ok I'll didn't notice this., do you mind that I cleanup the other > entries in the same time ? I already cleaned up some, but go ahead. -- Eric Botcazou

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Ilya Enkovich
2013/11/6 Richard Biener : > On Wed, Nov 6, 2013 at 12:00 PM, Ilya Enkovich wrote: >> 2013/11/6 Richard Biener : >>> On Tue, Nov 5, 2013 at 3:24 PM, Ilya Enkovich >>> wrote: 2013/11/5 Richard Biener : > On Tue, Nov 5, 2013 at 1:52 PM, Ilya Enkovich > wrote: >> >> For input

Re: [RFA][PATCH] Minor fix to aliasing machinery

2013-11-06 Thread Marc Glisse
[Discussion started in http://gcc.gnu.org/ml/gcc-patches/2013-10/msg02472.html ] On Wed, 30 Oct 2013, Marc Glisse wrote: On Wed, 30 Oct 2013, Richard Biener wrote: Btw, get_addr_base_and_unit_offset may also return an offsetted MEM_REF (from &MEM [p_3, 17] for example). As we are interested

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Bernd Schmidt
On 11/06/2013 12:31 PM, Richard Biener wrote: > That I agree to. Instead of fixing the less than optimal separation / > boundary > between frontends and the middle-end, or fixing several other long-standing > issues with GCC we spend a lot of time refactoring things to be C++. > But that was kind

Re: mismatched decls w/ both builtin and explicit decl

2013-11-06 Thread Joseph S. Myers
On Tue, 5 Nov 2013, DJ Delorie wrote: > > Consider this source: > > extern char *index(const char *,int); > static int index; > > "index" is a builtin as well, but because it's a builtin gcc skips the > "previous declaration was here..." despite having *a* previous decl it > could complain

[SH] arith_reg_operand vs. fp_arith_reg_operand

2013-11-06 Thread Oleg Endo
Hello, The attached patch addresses one thing which I mentioned in PR 22553 comment #27. Some of the FP insns take "arith_reg_operand", which seems a bit off. I haven't checked whether it fixes the original problem of PR 22553, but anyway it's probably better to use "fp_arith_reg_operand" for FP

Re: [C] Fix PR57258: unused variable warning is emitted for volatile variables

2013-11-06 Thread Joseph S. Myers
On Wed, 6 Nov 2013, Mingjie Xing wrote: > * c/c-decl.c (pop_scope): Skip volatile variables while emit > warnings for unused variables. c/ has its own ChangeLog, so no c/ in the ChangeLog entries. This patch doesn't include a testsuite addition. -- Joseph S. Myers jos...@codesourcery.c

Re: [Patch Ada/build] deal with some cross/native cross issues

2013-11-06 Thread Eric Botcazou
> I've been trying to improve the building and testing of Darwin for crosses > and native crosses. > > This has thrown up a few small glitches in the Ada build stuff (that would > seem to apply to any build-host-nativeX scenario, not just darwin). I > would imagine it would be beneficial to resol

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 12:42 PM, Jakub Jelinek wrote: > On Wed, Nov 06, 2013 at 12:31:00PM +0100, Richard Biener wrote: >> > Maybe we need to revisit it? As one of those who were not in favour of >> > the C++ move, can I ask you guys to step back for a moment and think >> > about - what do all of

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Jakub Jelinek
On Wed, Nov 06, 2013 at 02:00:56PM +0100, Richard Biener wrote: > Well, what else, besides as_a<> or keeping the current > global accessor functions would you propose? I'd prefer to keep the current accessors. Whether there is a class hierarchy or we keep unions doesn't affect the code too much (

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 12:59 PM, Ilya Enkovich wrote: > 2013/11/6 Richard Biener : >> On Wed, Nov 6, 2013 at 12:00 PM, Ilya Enkovich >> wrote: >>> 2013/11/6 Richard Biener : On Tue, Nov 5, 2013 at 3:24 PM, Ilya Enkovich wrote: > 2013/11/5 Richard Biener : >> On Tue, Nov 5, 20

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Joseph S. Myers
On Wed, 6 Nov 2013, Jakub Jelinek wrote: > On Wed, Nov 06, 2013 at 12:31:00PM +0100, Richard Biener wrote: > > > Maybe we need to revisit it? As one of those who were not in favour of > > > the C++ move, can I ask you guys to step back for a moment and think > > > about - what do all of these chan

[Patch, RTL] Eliminate redundant vec_select moves.

2013-11-06 Thread Tejas Belagod
Hi, The attached patch eliminates moves of the form set( (reg:DI n) vec_select:DI ( (reg:V2DI n) (parallel [const 0] i.e. eliminates lower lane moves between src and dst where src and dst are the same register and this causes rtl to instead use the destination register in the req

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Ilya Enkovich
2013/11/6 Richard Biener : > On Wed, Nov 6, 2013 at 12:59 PM, Ilya Enkovich wrote: >> 2013/11/6 Richard Biener : >>> On Wed, Nov 6, 2013 at 12:00 PM, Ilya Enkovich >>> wrote: 2013/11/6 Richard Biener : > On Tue, Nov 5, 2013 at 3:24 PM, Ilya Enkovich > wrote: >> 2013/11/5 Richa

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 2:31 PM, Ilya Enkovich wrote: > 2013/11/6 Richard Biener : >> On Wed, Nov 6, 2013 at 12:59 PM, Ilya Enkovich >> wrote: >>> 2013/11/6 Richard Biener : On Wed, Nov 6, 2013 at 12:00 PM, Ilya Enkovich wrote: > 2013/11/6 Richard Biener : >> On Tue, Nov 5, 20

Re: [RFA][PATCH] Minor fix to aliasing machinery

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 1:19 PM, Marc Glisse wrote: > [Discussion started in > http://gcc.gnu.org/ml/gcc-patches/2013-10/msg02472.html ] > > > On Wed, 30 Oct 2013, Marc Glisse wrote: > >> On Wed, 30 Oct 2013, Richard Biener wrote: >> >>> Btw, get_addr_base_and_unit_offset may also return an offsett

Re: [Patch, RTL] Eliminate redundant vec_select moves.

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 2:24 PM, Tejas Belagod wrote: > > Hi, > > The attached patch eliminates moves of the form > > set( (reg:DI n) vec_select:DI ( (reg:V2DI n) (parallel [const 0] > > i.e. eliminates lower lane moves between src and dst where src and dst are > the same register and t

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Ilya Enkovich
2013/11/6 Richard Biener : > On Wed, Nov 6, 2013 at 2:31 PM, Ilya Enkovich wrote: >> 2013/11/6 Richard Biener : >>> On Wed, Nov 6, 2013 at 12:59 PM, Ilya Enkovich >>> wrote: 2013/11/6 Richard Biener : > On Wed, Nov 6, 2013 at 12:00 PM, Ilya Enkovich > wrote: >> 2013/11/6 Richa

Re: [SH] arith_reg_operand vs. fp_arith_reg_operand

2013-11-06 Thread Kaz Kojima
Oleg Endo wrote: > The attached patch addresses one thing which I mentioned in PR 22553 > comment #27. Some of the FP insns take "arith_reg_operand", which seems > a bit off. I haven't checked whether it fixes the original problem of > PR 22553, but anyway it's probably better to use "fp_arith_r

Re: [RFA][PATCH] Minor fix to aliasing machinery

2013-11-06 Thread Marc Glisse
On Wed, 6 Nov 2013, Richard Biener wrote: On Wed, Nov 6, 2013 at 1:19 PM, Marc Glisse wrote: [Discussion started in http://gcc.gnu.org/ml/gcc-patches/2013-10/msg02472.html ] On Wed, 30 Oct 2013, Marc Glisse wrote: On Wed, 30 Oct 2013, Richard Biener wrote: Btw, get_addr_base_and_unit_off

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Ilya Enkovich
2013/11/6 Richard Biener : > On Wed, Nov 6, 2013 at 2:31 PM, Ilya Enkovich wrote: >> 2013/11/6 Richard Biener : >>> On Wed, Nov 6, 2013 at 12:59 PM, Ilya Enkovich >>> wrote: 2013/11/6 Richard Biener : > On Wed, Nov 6, 2013 at 12:00 PM, Ilya Enkovich > wrote: >> 2013/11/6 Richa

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 3:04 PM, Ilya Enkovich wrote: > 2013/11/6 Richard Biener : >> On Wed, Nov 6, 2013 at 2:31 PM, Ilya Enkovich wrote: >>> 2013/11/6 Richard Biener : On Wed, Nov 6, 2013 at 12:59 PM, Ilya Enkovich wrote: > 2013/11/6 Richard Biener : >> On Wed, Nov 6, 2013 at

Re: [Patch, RTL] Eliminate redundant vec_select moves.

2013-11-06 Thread Richard Sandiford
Tejas Belagod writes: > + /* This is big-endian-safe because the elements are kept in target > + memory order. So, for eg. PARALLEL element value of 2 is the same in > + either endian-ness. */ > + if (GET_CODE (src) == VEC_SELECT > + && REG_P (XEXP (src, 0)) && REG_P (dst) > +

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Ilya Enkovich
2013/11/6 Richard Biener : > On Wed, Nov 6, 2013 at 3:04 PM, Ilya Enkovich wrote: >> 2013/11/6 Richard Biener : >>> On Wed, Nov 6, 2013 at 2:31 PM, Ilya Enkovich >>> wrote: 2013/11/6 Richard Biener : > On Wed, Nov 6, 2013 at 12:59 PM, Ilya Enkovich > wrote: >> 2013/11/6 Richar

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Ian Lance Taylor
On Tue, Nov 5, 2013 at 10:50 PM, Marc Glisse wrote: > On Tue, 5 Nov 2013, Ian Lance Taylor wrote: > >> This patch actually breaks the Go testsuite. In Go dereferencing a >> nil pointer is well-defined: it causes panic that can be caught. This >> breaks a test for that functionality by changing t

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 3:24 PM, Ian Lance Taylor wrote: > On Tue, Nov 5, 2013 at 10:50 PM, Marc Glisse wrote: >> On Tue, 5 Nov 2013, Ian Lance Taylor wrote: >> >>> This patch actually breaks the Go testsuite. In Go dereferencing a >>> nil pointer is well-defined: it causes panic that can be caug

Re: [RFA][PATCH] Minor fix to aliasing machinery

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 3:08 PM, Marc Glisse wrote: > On Wed, 6 Nov 2013, Richard Biener wrote: > >> On Wed, Nov 6, 2013 at 1:19 PM, Marc Glisse wrote: >>> >>> [Discussion started in >>> http://gcc.gnu.org/ml/gcc-patches/2013-10/msg02472.html ] >>> >>> >>> On Wed, 30 Oct 2013, Marc Glisse wrote: >

RE: [PATCH, PR 57748] Check for out of bounds access, Part 3

2013-11-06 Thread Bernd Edlinger
> Hi, > > On Tue, 17 Sep 2013 01:09:45, Martin Jambor wrote: >>> @@ -4773,6 +4738,8 @@ expand_assignment (tree to, tree from, b >>>if (MEM_P (to_rtx) >>>&& GET_MODE (to_rtx) == BLKmode >>>&& GET_MODE (XEXP (to_rtx, 0)) != VOIDmode >>> + && bitregion_start ==

Re: [PATCH] [libiberty] MAX_PATH problems with mingw gcc

2013-11-06 Thread Ian Lance Taylor
On Tue, Nov 5, 2013 at 11:41 PM, Joey Ye wrote: > Ping > > ChangeLog > > 2013-10-27 Vladimir Simonov > > (include) > filename.h (FILENAME_NORMALIZE): New macro. > (filename_normalize): New declare. > > (libiberty) > filename_cmp.c (memmove_left): New function. > (f

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Ian Lance Taylor
On Wed, Nov 6, 2013 at 6:29 AM, Richard Biener wrote: > On Wed, Nov 6, 2013 at 3:24 PM, Ian Lance Taylor wrote: >> On Tue, Nov 5, 2013 at 10:50 PM, Marc Glisse wrote: >>> On Tue, 5 Nov 2013, Ian Lance Taylor wrote: >>> This patch actually breaks the Go testsuite. In Go dereferencing a

Go patch committed: Turn off -fisolate-erroneous-paths for Go

2013-11-06 Thread Ian Lance Taylor
As discussed at the thread at http://gcc.gnu.org/ml/gcc-patches/2013-11/msg00505.html , the new -fisolate-erroneous-paths option does not work for Go. The option can change nil pointer deferences into a trap, but for Go we want those to consistently be a panic. This patch disables the option for

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 4:08 PM, Ian Lance Taylor wrote: > On Wed, Nov 6, 2013 at 6:29 AM, Richard Biener > wrote: >> On Wed, Nov 6, 2013 at 3:24 PM, Ian Lance Taylor wrote: >>> On Tue, Nov 5, 2013 at 10:50 PM, Marc Glisse wrote: On Tue, 5 Nov 2013, Ian Lance Taylor wrote: > This p

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Ian Lance Taylor
On Wed, Nov 6, 2013 at 7:15 AM, Richard Biener wrote: > > But I think that you cannot transform > > foo () > { > *0 = 1; > } > > to __builtin_trap as you can catch the trap via an exception handler > in a caller of foo, no? That is true. OK, I can see an argument that when using -fnon-call-exc

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Richard Biener
On Wed, Nov 6, 2013 at 4:20 PM, Ian Lance Taylor wrote: > On Wed, Nov 6, 2013 at 7:15 AM, Richard Biener > wrote: >> >> But I think that you cannot transform >> >> foo () >> { >> *0 = 1; >> } >> >> to __builtin_trap as you can catch the trap via an exception handler >> in a caller of foo, no? >

Re: [Patch, RTL] Eliminate redundant vec_select moves.

2013-11-06 Thread Tejas Belagod
Richard Sandiford wrote: Tejas Belagod writes: + /* This is big-endian-safe because the elements are kept in target + memory order. So, for eg. PARALLEL element value of 2 is the same in + either endian-ness. */ + if (GET_CODE (src) == VEC_SELECT + && REG_P (XEXP (src, 0)) && R

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Jakub Jelinek
On Wed, Nov 06, 2013 at 04:23:06PM +0100, Richard Biener wrote: > > In that case I think it would be fine to run the isolate paths > > optimization, but to not omit the actual dereference of the NULL > > pointer (possibly the dereference could be followed by a trap). > > Yeah, we need the trap to

Re: [Patch: libcpp, c-family, Fortran] Re: Warning about __DATE__ and __TIME__

2013-11-06 Thread Tom Tromey
> "Tobias" == Tobias Burnus writes: Tobias> Updated version attached – after bootstrapping and regtesting on Tobias> x86-64-gnu-linux Tobias> OK? Sorry, I didn't notice this until today. Tobias> @@ -925,7 +928,8 @@ enum { Tobias>CPP_W_NORMALIZE, Tobias>CPP_W_INVALID_PCH, Tobias>

Re: [Patch: libcpp, c-family, Fortran] Re: Warning about __DATE__ and __TIME__

2013-11-06 Thread Ian Lance Taylor
On Wed, Nov 6, 2013 at 7:37 AM, Tom Tromey wrote: >> "Tobias" == Tobias Burnus writes: > > Tobias> + cpp_warning (pfile, CPP_W_DATE_TIME, "Macro \"%s\" might > prevent " > Tobias> + "reproduce builds", NODE_NAME (node)); > > Tobias> + cpp_warning (pfile, CP

Re: [Patch, RTL] Eliminate redundant vec_select moves.

2013-11-06 Thread Richard Sandiford
Tejas Belagod writes: > Richard Sandiford wrote: >> Tejas Belagod writes: >>> + /* This is big-endian-safe because the elements are kept in target >>> + memory order. So, for eg. PARALLEL element value of 2 is the same in >>> + either endian-ness. */ >>> + if (GET_CODE (src) == VEC_SE

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Jeff Law
On 11/06/13 08:08, Ian Lance Taylor wrote: The recent -fisolate-erroneous-paths optimization will change code like this: if (p == NULL) { printf ("NULL\n"); } x = *p; into code like this: if (p == NULL) { printf ("NULL\n"); __builtin_trap (); } x = *p; That is, it will insert

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Jeff Law
On 11/06/13 08:20, Ian Lance Taylor wrote: On Wed, Nov 6, 2013 at 7:15 AM, Richard Biener wrote: But I think that you cannot transform foo () { *0 = 1; } to __builtin_trap as you can catch the trap via an exception handler in a caller of foo, no? That is true. OK, I can see an argument

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Jeff Law
On 11/06/13 08:23, Richard Biener wrote: On Wed, Nov 6, 2013 at 4:20 PM, Ian Lance Taylor wrote: On Wed, Nov 6, 2013 at 7:15 AM, Richard Biener wrote: But I think that you cannot transform foo () { *0 = 1; } to __builtin_trap as you can catch the trap via an exception handler in a calle

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Jakub Jelinek
On Wed, Nov 06, 2013 at 09:15:57AM -0700, Jeff Law wrote: > On 11/06/13 08:27, Jakub Jelinek wrote: > >On Wed, Nov 06, 2013 at 04:23:06PM +0100, Richard Biener wrote: > >>>In that case I think it would be fine to run the isolate paths > >>>optimization, but to not omit the actual dereference of the

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread David Malcolm
On Wed, 2013-11-06 at 14:11 +0100, Jakub Jelinek wrote: > On Wed, Nov 06, 2013 at 02:00:56PM +0100, Richard Biener wrote: > > Well, what else, besides as_a<> or keeping the current > > global accessor functions would you propose? > > I'd prefer to keep the current accessors. Whether there is a cl

[PATCH, PR 10474] Take two on splitting live-ranges of function arguments to help shrink-wrapping

2013-11-06 Thread Martin Jambor
Hi, last Thursday I had to revert a previous version of this patch because it has caused a lot of trouble on various platforms I did not test it on. The patch is still very similar to its previous iteration (http://gcc.gnu.org/ml/gcc-patches/2013-10/msg02183.html) the only major difference is tha

Re: [Patch, RTL] Eliminate redundant vec_select moves.

2013-11-06 Thread Bill Schmidt
On Wed, 2013-11-06 at 15:01 +0100, Richard Biener wrote: > On Wed, Nov 6, 2013 at 2:24 PM, Tejas Belagod wrote: > > > > Hi, > > > > The attached patch eliminates moves of the form > > > > set( (reg:DI n) vec_select:DI ( (reg:V2DI n) (parallel [const 0] > > > > i.e. eliminates lower lan

Re: [PATCH] Add gimple subclasses for every gimple code (was Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3))

2013-11-06 Thread Michael Matz
Hi, On Tue, 5 Nov 2013, David Malcolm wrote: > Here's a followup patch which ensures that every gimple code has its own > subclass, by adding empty subclasses derived from the GSS_-based > subclasses as appropriate (I don't bother for gimple codes that already > have their own subclass due to hav

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Jakub Jelinek
On Wed, Nov 06, 2013 at 11:25:31AM -0500, David Malcolm wrote: > On Wed, 2013-11-06 at 14:11 +0100, Jakub Jelinek wrote: > > On Wed, Nov 06, 2013 at 02:00:56PM +0100, Richard Biener wrote: > > > Well, what else, besides as_a<> or keeping the current > > > global accessor functions would you propose

Disable floating-point contraction in ISO C conformance modes

2013-11-06 Thread Joseph S. Myers
In , I noted that, as I'd previously noted in , ISO C conformance modes should set -ffp-contract=on (= -ffp-contract=off) rather than the default -ffp-contract=fast, given the ISO C res

Re: Re-factor tree.h - Part 1

2013-11-06 Thread Jeff Law
On 11/06/13 00:04, Marc Glisse wrote: On Tue, 5 Nov 2013, Diego Novillo wrote: This is the first patch in a series of patches to cleanup tree.h to reduce the exposure it has all over the compiler. In this patch, I'm moving functions that are used once into the files that use them, and make the

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-06 Thread Jeff Law
On 11/06/13 08:27, Jakub Jelinek wrote: On Wed, Nov 06, 2013 at 04:23:06PM +0100, Richard Biener wrote: In that case I think it would be fine to run the isolate paths optimization, but to not omit the actual dereference of the NULL pointer (possibly the dereference could be followed by a trap).

Re: patch implementing a new pass for register-pressure relief through live range shrinkage

2013-11-06 Thread Vladimir Makarov
On 11/6/2013, 4:17 AM, Richard Biener wrote: On Tue, Nov 5, 2013 at 4:35 PM, Vladimir Makarov wrote: I'd like to add a new experimental optimization to the trunk. This optimization was discussed on RA BOF of this summer GNU Cauldron. It is a register pressure relief through live-range s

Re: [Patch, RTL] Eliminate redundant vec_select moves.

2013-11-06 Thread Bill Schmidt
On Wed, 2013-11-06 at 10:42 -0600, Bill Schmidt wrote: > On Wed, 2013-11-06 at 15:01 +0100, Richard Biener wrote: > > On Wed, Nov 6, 2013 at 2:24 PM, Tejas Belagod wrote: > > > > > > Hi, > > > > > > The attached patch eliminates moves of the form > > > > > > set( (reg:DI n) vec_select:DI

Re: [Patch, RTL] Eliminate redundant vec_select moves.

2013-11-06 Thread Tejas Belagod
Richard Sandiford wrote: Tejas Belagod writes: Richard Sandiford wrote: Tejas Belagod writes: + /* This is big-endian-safe because the elements are kept in target + memory order. So, for eg. PARALLEL element value of 2 is the same in + either endian-ness. */ + if (GET_CODE (src)

Re: [PATCH]Fix computation of offset in ivopt

2013-11-06 Thread Richard Sandiford
Hi, "bin.cheng" writes: > Index: gcc/tree-ssa-loop-ivopts.c > === > --- gcc/tree-ssa-loop-ivopts.c(revision 203267) > +++ gcc/tree-ssa-loop-ivopts.c(working copy) > @@ -2037,12 +2037,12 @@ find_interesting_uses (struc

Re: Re-factor tree.h - Part 1

2013-11-06 Thread Diego Novillo
On Wed, Nov 6, 2013 at 2:04 AM, Marc Glisse wrote: > On Tue, 5 Nov 2013, Diego Novillo wrote: > >> This is the first patch in a series of patches to cleanup tree.h to >> reduce the exposure it has all over the compiler. >> >> In this patch, I'm moving functions that are used once into the files >>

Re: Re-factor tree.h - Part 1

2013-11-06 Thread Diego Novillo
On Wed, Nov 6, 2013 at 11:54 AM, Jeff Law wrote: > On 11/06/13 00:04, Marc Glisse wrote: >> >> On Tue, 5 Nov 2013, Diego Novillo wrote: >> >>> This is the first patch in a series of patches to cleanup tree.h to >>> reduce the exposure it has all over the compiler. >>> >>> In this patch, I'm moving

[PATCH] Improve VRP assert creation for loops

2013-11-06 Thread Jakub Jelinek
On Tue, Nov 05, 2013 at 02:00:16PM -0800, Cong Hou wrote: > > I'm also curious -- did this code show up in a particular benchmark, if so, > > which one? > > I didn't find this problem from any benchmark, but from another > concern about loop upper bound estimation. Look at the following code: > >

[PATCH] Use get_range_info during number of iterations analysis

2013-11-06 Thread Jakub Jelinek
On Wed, Nov 06, 2013 at 06:13:42PM +0100, Jakub Jelinek wrote: > I've looked at the above testcase to see why we aren't able to determine > the number of iterations upper bound properly here. And here is a patch that uses get_range_info during # of iterations analysis, so that for your testcase we

[PATCH] Fix PR58697

2013-11-06 Thread Richard Biener
This fixes PR58697 by instead of trying to preserve reference structure when generating initial loads for the predictive commoned loop, just builds an approprate MEM_REF. That now can handle the cases that previously could be discovered as non-trapping (all constant offsets). I don't see a bette

Re: [PATCH v2] Fix libgfortran cross compile configury w.r.t newlib

2013-11-06 Thread Marcus Shawcroft
On 24 October 2013 17:47, Steve Ellcey wrote: > I am not sure how we would fix the build issue to allow us to not > hardcode the newlib configure details into the libgfortran configure > script. The linker script that needs to be used to get a good link is > different depending on what options o

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Michael Matz
Hi, On Wed, 6 Nov 2013, Ilya Enkovich wrote: > >>> Well, but clearly you can see that bounds for p == NULL are > >>> useless and thus there is no problem with the transform. > >> > >> This example just demonstrates the issue. I may use some var's address > >> in comparison with the similar result

Re: [Patch, RTL] Eliminate redundant vec_select moves.

2013-11-06 Thread Richard Sandiford
Tejas Belagod writes: > Richard Sandiford wrote: >> Tejas Belagod writes: >>> Richard Sandiford wrote: Tejas Belagod writes: > + /* This is big-endian-safe because the elements are kept in target > + memory order. So, for eg. PARALLEL element value of 2 is the same > in >

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Tom Tromey
> "Jakub" == Jakub Jelinek writes: Jakub> 1) p debug_tree (0x718b3690) Jakub>not working anymore, typically one would use this when just Jakub>cut'n'pasting addresses seen in backtrace, other debug_tree Jakub>etc., one now has to add explicitly a cast p debug_tree Jakub>((

Clean up configure glibc version detection, add --with-glibc-version

2013-11-06 Thread Joseph S. Myers
When bootstrapping a cross toolchain with GCC and glibc, it's desirable to keep down the number of GCC builds needed: to be able to build an initial static-only C-only GCC, use that to build glibc, and then build the full compiler with the resulting glibc. The aim is that if glibc were then rebuil

Re: [PATCH, MPX, 2/X] Pointers Checker [7/25] Suppress BUILT_IN_CHKP_ARG_BND optimizations.

2013-11-06 Thread Ilya Enkovich
2013/11/6 Michael Matz : > Hi, > > On Wed, 6 Nov 2013, Ilya Enkovich wrote: > >> >>> Well, but clearly you can see that bounds for p == NULL are >> >>> useless and thus there is no problem with the transform. >> >> >> >> This example just demonstrates the issue. I may use some var's address >> >> i

Re: [PATCH 0/6] Conversion of gimple types to C++ inheritance (v3)

2013-11-06 Thread Jeff Law
On 11/06/13 11:04, Tom Tromey wrote: "Jakub" == Jakub Jelinek writes: Jakub> 1) p debug_tree (0x718b3690) Jakub>not working anymore, typically one would use this when just Jakub>cut'n'pasting addresses seen in backtrace, other debug_tree Jakub>etc., one now has to add explicitl

Re: [Patch, RTL] Eliminate redundant vec_select moves.

2013-11-06 Thread Bill Schmidt
On Wed, 2013-11-06 at 17:34 +, Richard Sandiford wrote: > Tejas Belagod writes: > > Richard Sandiford wrote: > >> Tejas Belagod writes: > >>> Richard Sandiford wrote: > Tejas Belagod writes: > > + /* This is big-endian-safe because the elements are kept in target > > + memo

Re: [C++ Patch, Java related/RFC] PR 11006

2013-11-06 Thread Jason Merrill
On 11/06/2013 05:42 AM, Andrew Haley wrote: On 11/04/2013 05:21 PM, Jason Merrill wrote: Surely it should be valid to allocate a Java boolean type. Andrew, how should that work? It's not allowed. All objects that are allocated by new must be of class type (i.e. instances of a subclass of ja

Initial submission of OpenACC support integrated into OpenMP's lowering and expansion passes

2013-11-06 Thread Thomas Schwinge
Hi! Here is our take of adding OpenACC support to GCC's front end and middle end. What I post here (that is, as replies to this email, to gcc-patches only) is still very incomplete, but hopefully enough to outline the general approach, and I'd like to commit these patches to gomp-4_0-branch -- OK

  1   2   >