Re: [PR51752] publication safety violations in loop invariant motion pass

2012-02-29 Thread Richard Guenther
On Tue, Feb 28, 2012 at 9:11 PM, Aldy Hernandez al...@redhat.com wrote: On 02/28/12 13:12, Richard Henderson wrote: On 02/28/12 09:44, Aldy Hernandez wrote:        PR middle-end/51752        * gimple.h (gimple_in_transaction): New.        (gimple_set_in_transaction): New.        (struct

Re: [PATCH] Fix PR52424

2012-02-29 Thread Richard Guenther
On Wed, Feb 29, 2012 at 4:12 AM, William J. Schmidt wschm...@linux.vnet.ibm.com wrote: This patch fixes PR52424 by pushing a missing marker onto const_and_copies_stack before calling dom_thread_across_edge.  This bug has resulted in lost copy propagation opportunities in the presence of edge

Re: [RFC, PATCH] ARM related deprecations

2012-02-29 Thread Richard Earnshaw
On 28/02/12 23:42, John Tytgat wrote: In message 4f4d0e64.1020...@arm.com Richard Earnshaw rearn...@arm.com wrote: On 28/02/12 17:10, Joseph S. Myers wrote: On Tue, 28 Feb 2012, Richard Earnshaw wrote: Here's an updated patch and a suggested web-page patch: uClinux targets do

[Patch,AVR]: Tweak decrement-and-branch peepholes

2012-02-29 Thread Georg-Johann Lay
The condition/branch in decrement-and-branch peepholes is ne/brcc. This can be generalized to cover eq/brcs. Tested without regressions. Because of PR52417, I had to run the tests with -fno-dse. There is one UNSUPPORTED because of that (missing dse dump). Ok for the trunk? Johann *

[PATCH] Fix PR52297

2012-02-29 Thread Richard Guenther
This fixes the LTO TM testcases by removing them. TM testcases belong in libitm testsuite (but dg-additional-sources does not work there currently for some weird reasons, so I gave up trying). Committed. Richard. 2012-02-29 Richard Guenther rguent...@suse.de PR testsuite/52297

Re: [PATCH] Fix PR52297

2012-02-29 Thread Eric Botcazou
2012-02-29 Richard Guenther rguent...@suse.de PR testsuite/52297 * gcc.dg/lto/trans-mem-1_0.c: Remove. * gcc.dg/lto/trans-mem-1_1.c: Likewise. * gcc.dg/lto/trans-mem-2_0.c: Likewise. * gcc.dg/lto/trans-mem-2_1.c: Likewise. * gcc.dg/lto/trans-mem-4_0.c:

Re: [PATCH] Fix PR52297

2012-02-29 Thread Rainer Orth
Richard Guenther rguent...@suse.de writes: This fixes the LTO TM testcases by removing them. TM testcases belong in libitm testsuite (but dg-additional-sources does not work there currently for some weird reasons, so I gave up trying). Moving them to libitm/testsuite is an option, but that

Re: [Patch,AVR]: Tweak decrement-and-branch peepholes

2012-02-29 Thread Denis Chertykov
2012/2/29 Georg-Johann Lay a...@gjlay.de: The condition/branch in decrement-and-branch peepholes is ne/brcc. This can be generalized to cover eq/brcs. Tested without regressions. Because of PR52417, I had to run the tests with -fno-dse. There is one UNSUPPORTED because of that (missing dse

Re: [RFC, PATCH] ARM related deprecations

2012-02-29 Thread Pedro Alves
On 02/28/2012 05:10 PM, Joseph S. Myers wrote: On Tue, 28 Feb 2012, Richard Earnshaw wrote: Here's an updated patch and a suggested web-page patch: uClinux targets do not have -gnu in their target triplets. You missed the WinCE port from the list in the webpage patch of ports being

[Patch,AVR] Clean-up: Move TARGET macros to end of avr.c

2012-02-29 Thread Georg-Johann Lay
This patch moves the bulk of TARGET_* macros to the end of avr.c and just prior to their usage by TARGET_INITIALIZER to initialize targetm. It's just more convenient to have that bulk of code at the end of the file... Ok to commit? Johann * config/avr/avr.c: Move definition of TARGET

Re: [PATCH] Fix PR52297

2012-02-29 Thread Richard Guenther
On Wed, 29 Feb 2012, Eric Botcazou wrote: 2012-02-29 Richard Guenther rguent...@suse.de PR testsuite/52297 * gcc.dg/lto/trans-mem-1_0.c: Remove. * gcc.dg/lto/trans-mem-1_1.c: Likewise. * gcc.dg/lto/trans-mem-2_0.c: Likewise. * gcc.dg/lto/trans-mem-2_1.c:

Re: [PATCH] Fix PR52297

2012-02-29 Thread Richard Guenther
On Wed, 29 Feb 2012, Rainer Orth wrote: Richard Guenther rguent...@suse.de writes: This fixes the LTO TM testcases by removing them. TM testcases belong in libitm testsuite (but dg-additional-sources does not work there currently for some weird reasons, so I gave up trying). Moving

Re: [PATCH] Fix PR52297

2012-02-29 Thread Rainer Orth
Richard Guenther rguent...@suse.de writes: Moving them to libitm/testsuite is an option, but that might be more difficult for the LTO case. I thought about adding dg-require-effective-target tm_runtime (to check for working -litm/libitm.spec) and dg-add-options tm_runtime to add the

Re: [PATCH] Fix PR52297

2012-02-29 Thread Eric Botcazou
It's still used by the working trans-mem-3_[01].c testcase. That test is a little puzzling: /* Test that we can build one object file with -fgnu-tm (trans-mem-3_1.c), but do the final link of all objects without -fgnu-tm. */ So, in the end, we cannot do that without the trans-mem.h

Re: [PATCH] Fix PR52297

2012-02-29 Thread Jakub Jelinek
On Wed, Feb 29, 2012 at 11:26:54AM +0100, Eric Botcazou wrote: It's still used by the working trans-mem-3_[01].c testcase. That test is a little puzzling: /* Test that we can build one object file with -fgnu-tm (trans-mem-3_1.c), but do the final link of all objects without

Re: [PATCH] Fix PR52297

2012-02-29 Thread Richard Guenther
On Wed, 29 Feb 2012, Rainer Orth wrote: Richard Guenther rguent...@suse.de writes: Moving them to libitm/testsuite is an option, but that might be more difficult for the LTO case. I thought about adding dg-require-effective-target tm_runtime (to check for working -litm/libitm.spec)

[Patch,AVR]: Clean-up printing bits

2012-02-29 Thread Georg-Johann Lay
This is more of code clean-up: avr_output_bld is unused and can be removed. To print a bit it is more convenient to use %T than patching a string. Ok for trunk? Johann * config/avr/avr-protos.h (avr_output_bld): Remove unused prototype. * config/avr/avr.c (avr_output_bld):

[Ada] fix -feliminate-unused-debug-types counter-measure

2012-02-29 Thread Eric Botcazou
-feliminate-unused-debug-types will be enabled for Ada as well in GCC 4.7 and we have implemented a counter-measure to be able to retain apparently unused types in a few specific cases. But it was inadvertently broken some time ago. Fixed thusly, tested on i586-suse-linux, applied on the

Re: [Patch,AVR]: Clean-up printing bits

2012-02-29 Thread Denis Chertykov
2012/2/29 Georg-Johann Lay a...@gjlay.de: This is more of code clean-up: avr_output_bld is unused and can be removed. To print a bit it is more convenient to use %T than patching a string. Ok for trunk? Johann        * config/avr/avr-protos.h (avr_output_bld): Remove unused prototype.    

Re: [Patch,AVR] Clean-up: Move TARGET macros to end of avr.c

2012-02-29 Thread Denis Chertykov
2012/2/29 Georg-Johann Lay a...@gjlay.de: This patch moves the bulk of TARGET_* macros to the end of avr.c and just prior to their usage by TARGET_INITIALIZER to initialize targetm. It's just more convenient to have that bulk of code at the end of the file... Ok to commit? Johann      

[4.8, C++ Patch] PR 52422

2012-02-29 Thread Paolo Carlini
Hi, Daniel noticed a couple other SFINAE issues, which I'm fixing in the usual straightforward way. Tested x86_64-linux. Thanks, Paolo. PS: while working on the patch, I noticed that a few functions, which in the meanwhile acquired a tsubst_flags_t parameter, aren't fully propagating it,

Re: [Ada] fix -feliminate-unused-debug-types counter-measure

2012-02-29 Thread Richard Guenther
On Wed, 29 Feb 2012, Eric Botcazou wrote: -feliminate-unused-debug-types will be enabled for Ada as well in GCC 4.7 and we have implemented a counter-measure to be able to retain apparently unused types in a few specific cases. But it was inadvertently broken some time ago. Fixed thusly,

[PATCH, ARM] Generate usat/ssat instructions

2012-02-29 Thread Ulrich Weigand
Hello, this patch adds support for generating usat/ssat instructions to match code along the lines of: if (a amin) return amin; else if (a amax) return amax; else return a; for appropriate values of amin/amax. This type code actually occurs in real-life code (e.g.

Re: [ARM, patch, testsuite] Enable vect_condition tests for ARM/NEON

2012-02-29 Thread Ulrich Weigand
Mike Stump wrote: On Feb 28, 2012, at 4:08 PM, Ramana Radhakrishnan wrote: Certainly no objections to it - in fact I'd suggest it for 4.6 as well. The backport is fine, if someone wants to do the work. Just let it bake a = little in the top of the tree as usual first. I've already checked

Re: [ARM, patch, testsuite] Enable vect_condition tests for ARM/NEON

2012-02-29 Thread Ramana Radhakrishnan
On 29 February 2012 13:06, Ulrich Weigand uweig...@de.ibm.com wrote: Mike Stump wrote: On Feb 28, 2012, at 4:08 PM, Ramana Radhakrishnan wrote: Certainly no objections to it - in fact I'd suggest it for 4.6 as well. The backport is fine, if someone wants to do the work.  Just let it bake a =

Re: [PATCH, ARM] Generate usat/ssat instructions

2012-02-29 Thread Ramana Radhakrishnan
       (SAT, SATrev): New code iterators.        (SATlo, SAThi): New code iterator attributes.        (*satsi_SAT:code): New pattern.        (*satsi_SAT:code_shift): Likewise. Iterators must go into iterators.md. Ok with that change for 4.8 if no regressions. Ramana

Re: [PATCH, ARM] Generate usat/ssat instructions

2012-02-29 Thread Ulrich Weigand
Ramana Radhakrishnan wrote: (SAT, SATrev): New code iterators. (SATlo, SAThi): New code iterator attributes. (*satsi_SAT:code): New pattern. (*satsi_SAT:code_shift): Likewise. Iterators must go into iterators.md. Hmm, I left them in arm.md deliberately, because they apply

Re: [PATCH, ARM] Generate usat/ssat instructions

2012-02-29 Thread Ramana Radhakrishnan
On 29 February 2012 13:25, Ulrich Weigand uweig...@de.ibm.com wrote: Ramana Radhakrishnan wrote:    (SAT, SATrev): New code iterators.    (SATlo, SAThi): New code iterator attributes.    (*satsi_SAT:code): New pattern.    (*satsi_SAT:code_shift): Likewise. Iterators must go into

Re: [PATCH][ARM] NEON DImode neg

2012-02-29 Thread Andrew Stubbs
On 28/02/12 17:45, Andrew Stubbs wrote: This patch adds a DImode negate pattern for NEON. Oops, that patch completely failed to allow for the fallback to instructions that work in core registers. It also forgot to mention that the CC register was clobbered. This patch is the same except

RE: [PATCH,ARM] Improve peepholes for LDM with commutative operators

2012-02-29 Thread Greta Yorsh
I'm attaching a new version of the patch. Fixed all comments and retested. No regression on qemu --with-cpu cortex-a9. Thank you, Greta gcc/ChangeLog 2012-02-29 Greta Yorsh greta.yo...@arm.com * config/arm/arm-ldmstm.ml (write_ldm_commutative_peephole): Improved conditions

Re: [PATCH,ARM] Improve peepholes for LDM with commutative operators

2012-02-29 Thread Ramana Radhakrishnan
On 29 February 2012 14:20, Greta Yorsh greta.yo...@arm.com wrote: I'm attaching a new version of the patch. Fixed all comments and retested. No regression on qemu --with-cpu cortex-a9. OK by me but please give 24 hours for an RM to comment / object. cheers Ramana

Re: [gimplefe][patch] The symbol table for declarations

2012-02-29 Thread Diego Novillo
On 24/02/12 01:03 , Sandeep Soni wrote: + name_token = gl_consume_expected_token (parser-lexer, CPP_NAME); + name = gl_token_as_text (name_token); + + e = ggc_alloc_cleared_gimple_symtab_entry_def (); + e-id = get_identifier(name); + slot = htab_find_slot (gimple_symtab, e, NO_INSERT); +

[PATCH][ARM] NEON DImode not

2012-02-29 Thread Andrew Stubbs
Hi all, This patch adds support for the DImode not operation in NEON. Currently the compiler must move the value to core registers, invert it there, and move it back again. This is bonkers because the VMVN instruction will do the job perfectly. The patch adds a pattern to support VMVN in

Re: [C++ Patch] for c++/51214

2012-02-29 Thread Jason Merrill
On 02/28/2012 05:06 PM, Fabien Chêne wrote: I agree, this is not efficient but I didn't find a better place. perhaps in cp_parser_enumerator_list, that would require adding an additional parameter to keep track of all the enum DECLs. Is it what you have in mind ? I was thinking of

[Patch ARM] Turn on hot cold partitioning.

2012-02-29 Thread Ramana Radhakrishnan
Hi , This patch turns on hot cold partitioning for the ARM target. Given that NOTE_INSN_SWITCH_SECTIONS gets created once - we should see that this works. Passed testing with cross on qemu - Simple handwritten tests for this appear to work. I'll commit this for 4.8 and would like some feedback

Re: [PATCH] Fix PR52406

2012-02-29 Thread Richard Guenther
On Tue, 28 Feb 2012, Richard Guenther wrote: I am testing the following patch to fix PR52406. We cannot simply feed DR_BASE_OBJECT to the alias-oracle as it does not reflect a real memory access. Only if we query two 'structurally compatible' references we may do this. So the following

[PATCH] Fix up parloops with debug labels (PR tree-optimization/52429)

2012-02-29 Thread Jakub Jelinek
Hi! Since debug stmts can contain LABEL_DECLs we can ICE in parloops on them, fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux. Ok for trunk? 2012-02-29 Jakub Jelinek ja...@redhat.com PR tree-optimization/52429 * tree-parloops.c

Re: [PATCH] Fix PR52406

2012-02-29 Thread Michael Matz
Hi, On Wed, 29 Feb 2012, Richard Guenther wrote: the whole base object - instead I mark the base MEM_REF of such accesses with TREE_NO_WARNING (ugh) and special-case for them in dr_may_alias_p. At least use a flag that isn't currently used for MEM_REF. E.g. addressable_flag, and make a

Re: [PATCH] Fix PR52406

2012-02-29 Thread Richard Guenther
On Wed, 29 Feb 2012, Michael Matz wrote: Hi, On Wed, 29 Feb 2012, Richard Guenther wrote: the whole base object - instead I mark the base MEM_REF of such accesses with TREE_NO_WARNING (ugh) and special-case for them in dr_may_alias_p. At least use a flag that isn't currently used

Re: [PATCH] Fix up parloops with debug labels (PR tree-optimization/52429)

2012-02-29 Thread Richard Guenther
On Wed, Feb 29, 2012 at 4:31 PM, Jakub Jelinek ja...@redhat.com wrote: Hi! Since debug stmts can contain LABEL_DECLs we can ICE in parloops on them, fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux.  Ok for trunk? Ok. Thanks, Richard. 2012-02-29  Jakub Jelinek  

Re: [Patch, fortran] PR52386 - [4.6/4.7 Regression] ICE in gfc_conv_descriptor_dtyp (realloc LHS related)

2012-02-29 Thread Steve Kargl
On Wed, Feb 29, 2012 at 08:27:42AM +0100, Paul Richard Thomas wrote: Regression fix okayed by Tobias Burnus on #gfortran and committed as revision 184651. Cheers Paul Thanks! Just a reminder. Did you get approval from the Release Mananger? The last GCC 4.7.0 status reported indicated

Re: [Patch, fortran] PR52386 - [4.6/4.7 Regression] ICE in gfc_conv_descriptor_dtyp (realloc LHS related)

2012-02-29 Thread Richard Guenther
On Wed, Feb 29, 2012 at 5:07 PM, Steve Kargl s...@troutmask.apl.washington.edu wrote: On Wed, Feb 29, 2012 at 08:27:42AM +0100, Paul Richard Thomas wrote: Regression fix okayed by Tobias Burnus on #gfortran and committed as revision 184651. Cheers Paul Thanks! Just a reminder.  Did you

Re: [PATCH] Further update baseline_symbols.txt

2012-02-29 Thread H.J. Lu
On Mon, Feb 27, 2012 at 7:21 AM, Jonathan Wakely jwakely@gmail.com wrote: On 27 February 2012 15:18, Jakub Jelinek wrote: Hi! Apparently after I've updated baseline_symbols.txt files for a couple of targets Jonathan added some extra exported symbols.  This patch adds them. Ok for trunk?

Re: [PATCH][ARM] NEON DImode not

2012-02-29 Thread Richard Earnshaw
On 29/02/12 14:48, Andrew Stubbs wrote: Hi all, This patch adds support for the DImode not operation in NEON. Currently the compiler must move the value to core registers, invert it there, and move it back again. This is bonkers because the VMVN instruction will do the job perfectly.

[RFH / Patch] c++/52432

2012-02-29 Thread Paolo Carlini
Hi, today Jon filed this PR about 'reporting routines re-entered' with -fdump-tree-gimple and first I tried to figure where we are trying to produce an error from inside the diagnostic code itself. Turns out that tsubst_copy_and_build, case CALL_EXPR, calls unqualified_name_lookup_error

Two files still GPLv2

2012-02-29 Thread Steven Bosscher
Hello, This fixes two files that still have the GPLv2 copyright notice. OK for trunk? Ciao! Steven * config/mn10300/mn10300-modes.def: Fix copyright notice. * config/v850/v850-modes.def: Fix copyright notice. Index: config/mn10300/mn10300-modes.def

libgo patch committed: Fill out syscall package for GNU/Linux

2012-02-29 Thread Ian Lance Taylor
This patch to libgo fills out the syscall package for GNU/Linux to match all the functions in the syscall package in the master Go library. There is a test case for this patch at http://code.google.com/p/go/issues/detail?id=3071 . Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu.

[SPARC] Tweak libgomp's cpu_relax

2012-02-29 Thread Eric Botcazou
As discussed with DaveM, this duplicates libitm's cpu_relax into libgomp. Tested on SPARC64/Linux, applied on the mainline. 2012-02-29 Eric Botcazou ebotca...@adacore.com * config/linux/sparc/futex.h (cpu_relax): Read from CC register. -- Eric Botcazou Index:

Go patch committed: Fix handling of invalid types within invalid types

2012-02-29 Thread Ian Lance Taylor
The Go compiler could crash when an invalid type occurred within an invalid type, because the type verification pass was not recurring into such types. This patch fixes the problem and actually removes more lines than it adds. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu.

Go patch committed: Avoid various compiler crashes

2012-02-29 Thread Ian Lance Taylor
This patch to the Go frontend avoids various crashes on erroneous input. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian diff -r 3d9a01a3a527 go/expressions.cc --- a/go/expressions.cc Wed Feb 29 14:41:03 2012 -0800 +++ b/go/expressions.cc Wed Feb 29

[committed] Fix up vec_setmode_0 pattern (PR target/52437)

2012-02-29 Thread Jakub Jelinek
Hi! general_operand matches even CONST_INT, but none of the constraints would allow it and we ICEd trying to reload it into a FLOAT_REGS register. Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, approved by Uros in the PR, committed to trunk. 2012-02-29 Jakub Jelinek

Go patch committed: Fix unary ^ on signed typed constant

2012-02-29 Thread Ian Lance Taylor
The Go frontend mishandled unary ^ applied to a signed typed integer constant. In fact it mishandled it so badly that it crashed. This patch fixes the problem. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian diff -r b66ddc182445 go/expressions.cc ---

Re: [PATCH,ARM] Improve peepholes for LDM with commutative operators

2012-02-29 Thread Michael Hope
On Thu, Mar 1, 2012 at 3:20 AM, Greta Yorsh greta.yo...@arm.com wrote: I'm attaching a new version of the patch. Fixed all comments and retested. No regression on qemu --with-cpu cortex-a9. I assume that on the Cortex-A9 this generates a LDM instead of an expensive LDRD. For reference, a tight

Re: [4.8, C++ Patch] PR 52422

2012-02-29 Thread Jason Merrill
On 02/29/2012 06:53 AM, Paolo Carlini wrote: Daniel noticed a couple other SFINAE issues, which I'm fixing in the usual straightforward way. Tested x86_64-linux. When fixing these things, please add checking for error_mark_node return as well. For instance, in this patch the calls to

Re: [RFH / Patch] c++/52432

2012-02-29 Thread Jason Merrill
On 02/29/2012 01:11 PM, Paolo Carlini wrote: Thus I'm looking for some help about the best way to proceed. First, do we agree that tsubst_copy_and_build should never call unqualified_name_lookup_error unconditionally? Yes. Any tips about decltype32.C? The substitution failure should have

Re: [RFH / Patch] c++/52432

2012-02-29 Thread Jason Merrill
On 02/29/2012 08:47 PM, Jason Merrill wrote: The substitution failure should have removed the candidate from further consideration; sounds like something isn't propagating the failure back up (as I was talking about in my response to your 51214 patch). No, wait, now we're talking about the

[PATCH] [SH] Fix target/48596

2012-02-29 Thread Kaz Kojima
Hi, The attached patch is to avoid PR target/48596 which is a 4.7 regression on SH. It seems that now IRA aggressively tried to use fp regs as the holder for memory addresses on this port. SH requires a special fpul register to move from the fp regs to the general regs which are legitimate for

Go patch committed: Avoid more crashes on invalid input

2012-02-29 Thread Ian Lance Taylor
This patch to the Go frontend avoids some more crashes on invalid input. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian 2012-02-29 Ian Lance Taylor i...@google.com * go-gcc.cc (class Gcc_tree): Add set_tree method.

[PATCH, PR50335] Disable graphite loop flattening

2012-02-29 Thread Maxim Kuvyrkov
This patch disables graphite loop flattening optimization due to it being effectively unmaintained. To avoid users trying to use unsupported optimization and reporting bugs, Sebastian Pop suggested to disable the optimization. Testing on x86_64 is underway. OK to apply provided no

[Patch 1] invoke.texi : Document AMD bdver2

2012-02-29 Thread Kumar, Venkataramanan
Hi Maintainers, We want to add bdver2 description in invoke.texi for GCC 4.7. Here is the patch that does that. Index: gcc/doc/invoke.texi === --- gcc/doc/invoke.texi (revision 183891) +++ gcc/doc/invoke.texi (working copy) @@

[Patch 2 wwwdocs] gcc-4.7/changes.html : Document AMD bdver2

2012-02-29 Thread Kumar, Venkataramanan
Hi Maintainers, This patch adds bdver2 description in changes.html. Index: changes.html === RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.7/changes.html,v retrieving revision 1.90 diff -r1.90 changes.html 676a677,679 liSupport for

Go patch committed: Fix indirection through circular type

2012-02-29 Thread Ian Lance Taylor
This patch to the Go frontend fixes the handling of pointer indirection through a circular type. The gcc middle-end can not represent a circular type, as such a construct can not exist in C (in Go you get one by writing type T *T). We handle this by using void* and introducing a type cast on the

[Patch wwwdocs] gcc-4.6/changes.html : Document AMD bdver1

2012-02-29 Thread Kumar, Venkataramanan
Hi maintainers, This patch was approved in November 2011, but got missed out for commit so reposting it. Index: changes.html === RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.6/changes.html,v retrieving revision 1.137 diff -r1.137