Re: [PATCH] Fix PR53703

2012-06-18 Thread Richard Guenther
On Sun, 17 Jun 2012, William J. Schmidt wrote: The test case exposes a bug that occurs only when a diamond control flow pattern has the arguments of the joining phi in a different order from the successor arcs of the entry block. My logic for setting bb_for_def[12] was just brain-dead. This

Re: [Patch 4.6] In system.h, wrap include of C++ header in 'extern C++'

2012-06-18 Thread Richard Guenther
On Sun, Jun 17, 2012 at 2:56 PM, Gabriel Dos Reis g...@integrable-solutions.net wrote: On Sun, Jun 17, 2012 at 6:55 AM, Richard Guenther richard.guent...@gmail.com wrote: On Fri, Jun 15, 2012 at 5:18 PM, Gabriel Dos Reis g...@integrable-solutions.net wrote: On Fri, Jun 15, 2012 at 10:13 AM,

Re: PR 53698: missing address conversion in expand_expr_addr_expr_1

2012-06-18 Thread Richard Guenther
On Mon, Jun 18, 2012 at 11:18 AM, Richard Sandiford rdsandif...@googlemail.com wrote: The result of expand_expr_addr_expr_1 is eventually converted to tmode, and any variable offset is likewise applied in tmode, so tmode also seems like the natural mode for applying constant offsets.  This

Re: [Patch 4.6] In system.h, wrap include of C++ header in 'extern C++'

2012-06-18 Thread Gabriel Dos Reis
On Mon, Jun 18, 2012 at 4:18 AM, Richard Guenther richard.guent...@gmail.com wrote: On Sun, Jun 17, 2012 at 2:56 PM, Gabriel Dos Reis g...@integrable-solutions.net wrote: On Sun, Jun 17, 2012 at 6:55 AM, Richard Guenther richard.guent...@gmail.com wrote: On Fri, Jun 15, 2012 at 5:18 PM,

[PING ARM Patches] PR53447: optimizations of 64bit ALU operation with constant

2012-06-18 Thread Carrot Wei
Hi Could ARM maintainers review following patches? http://gcc.gnu.org/ml/gcc-patches/2012-06/msg00497.html 64bit add/sub constants. http://gcc.gnu.org/ml/gcc-patches/2012-05/msg01834.html 64bit and with constants. http://gcc.gnu.org/ml/gcc-patches/2012-05/msg01974.html 64bit xor with

[patch] Remove NO_IMPLICIT_EXTERN_C target macro

2012-06-18 Thread Steven Bosscher
Hello, For targets that do not define NO_IMPLICIT_EXTERN_C, GCC assumes that included system headers are implicitly wrapped in 'extern C {...}'. I could not find where this target macro was introduced, but it is very old (it is already mentioned in FSFChangeLog.10 for a change in 1995). AFAICT,

Re: [PATCH] GCC Ada/GNAT configuration for GNU/Hurd

2012-06-18 Thread Arnaud Charlet
Here is a patch that adds a basic GCC Ada/GNAT configuration for x86 GNU/Hurd. This has originally been created by Svante Signell for use with Debian's GCC 4.6 package, and now I have ported it to trunk, and also applied some further changes. 2012-06-16 Svante Signell

Re: [PATCH] GCC Ada/GNAT configuration for GNU/Hurd

2012-06-18 Thread Thomas Schwinge
Hi! On Mon, 18 Jun 2012 12:23:47 +0200, Arnaud Charlet char...@adacore.com wrote: Here is a patch that adds a basic GCC Ada/GNAT configuration for x86 GNU/Hurd. This has originally been created by Svante Signell for use with Debian's GCC 4.6 package, and now I have ported it to trunk, and

Re: [PATCH] GCC Ada/GNAT configuration for GNU/Hurd

2012-06-18 Thread Arnaud Charlet
Another comment: --- a/gcc/ada/s-oscons-tmplt.c +++ b/gcc/ada/s-oscons-tmplt.c @@ -80,7 +80,7 @@ pragma Style_Checks (M32766); /* Feature macro definitions */ -#if defined (__linux__) !defined (_XOPEN_SOURCE) +#if (defined (__linux__) || defined (__GNU__))

[PATCH resend] Add implicit C linkage for win32-specific entry points

2012-06-18 Thread Jacek Caban
gcc/ChangeLog: * config/i386/mingw-w64.h: Specify entry points with implicit C linkage gcc/cp/ChangeLog: * decl.c: Allow custom target implicit C linkage gcc/testsuite/ChangeLog: * g++.dg/ext/main.C: Added implicit C linkage tests --- gcc/config/i386/mingw-w64.h |

[patch] Remove VMS_TARGET

2012-06-18 Thread Steven Bosscher
Hello, There are exactly 2 references to the target macro VMS_TARGET: cp/decl.c:#if VMS_TARGET config/vax/vax.h:#define VMS_TARGET 0 I'm not sure what the macro is for. GCC seems to support a couple of VMS targets, but none of them define VMS_TARGET. This patch remove the macro. I can't test

Re: [PATCH resend] Add implicit C linkage for win32-specific entry points

2012-06-18 Thread Steven Bosscher
On Mon, Jun 18, 2012 at 12:54 PM, Jacek Caban ja...@codeweavers.com wrote: gcc/ChangeLog:        * config/i386/mingw-w64.h: Specify entry points with implicit C linkage gcc/cp/ChangeLog:        * decl.c: Allow custom target implicit C linkage gcc/testsuite/ChangeLog:        *

Re: [PATCH][4/n] VRP and anti-range handling

2012-06-18 Thread Richard Guenther
On Fri, 15 Jun 2012, Richard Guenther wrote: This tries to completely implement the intersect primitive for VRP (what extract_range_from_assert does at its end when merging new and old knowledge). Bootstrap and regtest pending on x86_64-unknown-linux-gnu. I plan to re-organize vrp_meet

Re: [patch] Remove NO_IMPLICIT_EXTERN_C target macro

2012-06-18 Thread Joseph S. Myers
On Mon, 18 Jun 2012, Steven Bosscher wrote: For targets that do not define NO_IMPLICIT_EXTERN_C, GCC assumes that included system headers are implicitly wrapped in 'extern C {...}'. I could not find where this target macro was introduced, but it is very old (it is already mentioned in

Re: [patch] Remove VMS_TARGET

2012-06-18 Thread Joseph S. Myers
On Mon, 18 Jun 2012, Steven Bosscher wrote: gcc/ * config/vax/vax.h (VMS_TARGET): Remove. cp/ * decl.c (finish_function): Remove code conditional on VMS_TARGET. OK. Both C and C++ specify an implicit return of 0 from main; it's for the C runtime to convert return values

Re: [patch] Remove VMS_TARGET

2012-06-18 Thread Tristan Gingold
On Jun 18, 2012, at 1:01 PM, Steven Bosscher wrote: Hello, There are exactly 2 references to the target macro VMS_TARGET: cp/decl.c:#if VMS_TARGET config/vax/vax.h:#define VMS_TARGET 0 I'm not sure what the macro is for. GCC seems to support a couple of VMS targets, but none of them

[Patch] Adjustments for Windows x64 SEH

2012-06-18 Thread Tristan Gingold
Hi, at AdaCore, we are now using native SEH exceptions for Windows x64 based on Richard's patch http://gcc.gnu.org/ml/gcc-patches/2010-10/msg01966.html I plan to submit a rebased version of this work soon, but we have found a few issues in the port: * Registers cannot be pushed once the

[PATCH] Fix PR53693

2012-06-18 Thread Richard Guenther
When the vectorizer detects a widening shift pattern it has to make sure the widening operation is used only once as it will make it part of the recognized pattern. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2012-06-18 Richard Guenther rguent...@suse.de

Re: [patch] Remove NO_IMPLICIT_EXTERN_C target macro

2012-06-18 Thread Steven Bosscher
On Mon, Jun 18, 2012 at 1:12 PM, Joseph S. Myers jos...@codesourcery.com wrote: On Mon, 18 Jun 2012, Steven Bosscher wrote: For targets that do not define NO_IMPLICIT_EXTERN_C, GCC assumes that included system headers are implicitly wrapped in 'extern C {...}'. I could not find where this

[RFC C++ / PR51033 ] Handle __builtin_shuffle in constexpr properly in the C++ frontend.

2012-06-18 Thread Ramana Radhakrishnan
Hi, This patch following on from the fix for turning on __builtin_shuffle for c++ , enables folding of vec_perm_exprs in the front-end for constexpr and constructor style values. I was originally going to go with Marc's patch but then took a look at what it would take to support this properly

Re: [RFC C++] Turn on builtin_shuffle for C++.

2012-06-18 Thread Ramana Radhakrishnan
On 15 June 2012 20:04, Marc Glisse marc.gli...@inria.fr wrote: On Fri, 15 Jun 2012, Ramana Radhakrishnan wrote: On 15 June 2012 18:18, Marc Glisse marc.gli...@inria.fr wrote: On Fri, 15 Jun 2012, Ramana Radhakrishnan wrote: I just noticed this part. Rereading my comment in

[Patch] Don't test for pr53425 on mingw

2012-06-18 Thread JonY
Hi, I am told that this ABI test does not apply to mingw targets. OK to apply? Index: gcc/testsuite/gcc.target/i386/pr53425-1.c === --- gcc/testsuite/gcc.target/i386/pr53425-1.c (revision 188384) +++

Re: [PATCH][4/n] VRP and anti-range handling

2012-06-18 Thread Dominique Dhumieres
Hi, Before revision 188728, the test gcc.dg/tree-ssa/vrp68.c failed because link_error appeared twice in the dump file. After r188728 it fails also at link time and link_error appears three time: FAIL: gcc.dg/tree-ssa/vrp68.c (test for excess errors) Excess errors: Undefined symbols:

Re: [Patch] Adjustments for Windows x64 SEH

2012-06-18 Thread Kai Tietz
Hello Tristan, patch works for me, too. Just one nit about the patch. 2012/6/18 Tristan Gingold ging...@adacore.com: @@ -8558,6 +8558,11 @@ ix86_frame_pointer_required (void)   if (TARGET_32BIT_MS_ABI cfun-calls_setjmp)     return true; +  /* Win64 SEH, very large frames need a

Re: [4.6][ARM] Backport fix PR48126

2012-06-18 Thread Richard Earnshaw
On 18/06/12 04:11, Joey Ye wrote: OK for 4.6? 2012-06-18 Joey Ye joey...@arm.com Backport from mainline 2011-10-14 David Alan Gilbert david.gilb...@linaro.org PR target/48126 * config/arm/arm.c (arm_output_sync_loop): Move label before barrier.

Re: [PATCH] ARM: exclude fixed_regs for stack-alignment save/restore

2012-06-18 Thread Richard Earnshaw
On 16/06/12 13:42, Richard Sandiford wrote: Roland McGrath mcgra...@google.com writes: On Thu, Jun 14, 2012 at 1:13 PM, Mike Stump mikest...@comcast.net wrote: On Jun 14, 2012, at 10:16 AM, Roland McGrath wrote: But if e.g. I use -ffixed-r9 then I think it's a reasonable expectation that no

[arm] Remove obsolete FPA support (6/n): fix warnings

2012-06-18 Thread Richard Earnshaw
[I composed this message on Friday, before I left for the weekend, but somehow forgot to press send. The good news is that as a result I can now confirm that this has fixed the outstanding bootstrap issue.] This patch cleans up some build warnings that break native bootstrap. One of the warnings

[Patch, Testsuite, ARM] Improve test gcc.target/arm/handler-align.c

2012-06-18 Thread Greta Yorsh
This test checks that the stack pointer is handled correctly in prologue/epilogue of Cortex-M interrupt handlers. An interrupt handler may be called when stack is not double-word aligned. The prologue of the interrupt handler aligns the stack pointer and the epilogue restores the original stack

[patch, testsuite] new test for arm epilogue

2012-06-18 Thread Greta Yorsh
This test relies on epilogue generated in RTL to provide register liveness information that enables peephole optimization. OK for trunk? Thanks, Greta 2012-06-18 Joey Ye joey...@arm.com Greta Yorsh greta.yo...@arm.com * gcc.target/arm/epilog-1.c: New test. diff --git

Re: [PATCH 2/3] Add XLP-specific atomic instructions and tweaks.

2012-06-18 Thread Richard Henderson
On 2012-06-17 13:01, Richard Sandiford wrote: Not required if you use the proper predicate in the expander. The middle-end will take care of this for you. I might be misunderstanding, sorry, but this expander is shared with the normal LL/SC path, which can accept plain memory_operands. I

RE: [Patch, ARM][0/8] Epilogue in RTL: introduction (Sameera's patches, Part I)

2012-06-18 Thread Greta Yorsh
Paul, I did additional testing of the patches, as you suggested. For iwmmxt, no regression on qemu (using -cpu pxa270) for arm-none-eabi taget configured --with-cpu iwmmxt --with-float soft --with-arch iwmmxt --with-abi iwmmxt --disable-multilib. There is already a test for mmx stack alignment

Re: [PATCH] ARM: exclude fixed_regs for stack-alignment save/restore

2012-06-18 Thread Roland McGrath
OK then. If you like the original patch, would you like to commit it for me? Thanks, Roland

[PATCH] backport darwin12 fixes to gcc-4_7-branch

2012-06-18 Thread Jack Howarth
The attached patch backports... http://gcc.gnu.org/ml/gcc-patches/2012-05/msg01710.html http://gcc.gnu.org/ml/gcc-patches/2012-05/msg01707.html which implement changes for darwin12 and later. Bootstrap and regression tested on current x86_64-apple-darwin12.

Re: [patch, testsuite] new test for arm epilogue

2012-06-18 Thread Richard Earnshaw
On 18/06/12 16:40, Greta Yorsh wrote: This test relies on epilogue generated in RTL to provide register liveness information that enables peephole optimization. OK for trunk? Thanks, Greta 2012-06-18 Joey Ye joey...@arm.com Greta Yorsh greta.yo...@arm.com *

[patch] Fix PR48109 using artificial top-level asm statements (darwin/objc)

2012-06-18 Thread Steven Bosscher
Hello, This patch started as an attempt to remove #include output.h from objc/: Instead of writing references directly to asm_out_file, the references are output as top-level asm statements. It's a bit of a hack, but it works and it's a better hack than writing to asm_out_file from a front end,

Re: **PING**2 [Patch, Fortran] PR53526 - Fix MOVE_ALLOC for coarrays

2012-06-18 Thread Paul Richard Thomas
Dear Tobias, OK for the trunk? Yes indeed - thanks for the patch. Cheers Paul

Re: [Patch, Fortran] Implement RANK

2012-06-18 Thread Paul Richard Thomas
Hi Tobias, Build and regtested on x86-64-gnu-linux. OK for the trunk? Yes, of course it's OK for trunk. It verges on obvious! Thanks Paul

[PATCH, i386]: Fix PR 53712, Does not combine unaligned load with _mm_cmpistri

2012-06-18 Thread Uros Bizjak
Hello! Attached patch teaches gcc how to merge unaligned load (UNSPEC_MOVU) with pcmpistr/pcmpestr instructions. 2012-06-18 Uros Bizjak ubiz...@gmail.com PR target/53712 * config/i386/sse.md (*sse4_2_pcmpestr_unaligned): New. (*sse4_2_pcmpistr_unaligned): New.

Re: [patch] Remove NO_IMPLICIT_EXTERN_C target macro

2012-06-18 Thread David Edelsohn
On Mon, Jun 18, 2012 at 7:12 AM, Joseph S. Myers jos...@codesourcery.com wrote: On Mon, 18 Jun 2012, Steven Bosscher wrote: For targets that do not define NO_IMPLICIT_EXTERN_C, GCC assumes that included system headers are implicitly wrapped in 'extern C {...}'. I could not find where this

gcc4.7 backport committed (PR53700)

2012-06-18 Thread Vladimir Makarov
The following patch was backported to gcc4.7. The patch solves PR53700. It was successfully bootstrapped on x86/x86-64. 2012-06-18 Vladimir Makarov vmaka...@redhat.com PR rtl-optimization/53700 Backport from mainline 2012-03-29 Vladimir Makarov vmaka...@redhat.com

Re: [PATCH] Add vector cost model density heuristic

2012-06-18 Thread William J. Schmidt
On Mon, 2012-06-11 at 13:40 +0200, Richard Guenther wrote: On Fri, 8 Jun 2012, William J. Schmidt wrote: snip Hmm. I don't like this patch or its general idea too much. Instead I'd like us to move more of the cost model detail to the target, giving it a chance to look at the whole loop

Re: [PATCH] Add vector cost model density heuristic

2012-06-18 Thread William J. Schmidt
On Mon, 2012-06-18 at 13:49 -0500, William J. Schmidt wrote: On Mon, 2012-06-11 at 13:40 +0200, Richard Guenther wrote: On Fri, 8 Jun 2012, William J. Schmidt wrote: snip Hmm. I don't like this patch or its general idea too much. Instead I'd like us to move more of the cost model

Re: [PATCH] GCC Ada/GNAT configuration for GNU/Hurd

2012-06-18 Thread Svante Signell
On Mon, 2012-06-18 at 12:23 +0200, Arnaud Charlet wrote: Here is a patch that adds a basic GCC Ada/GNAT configuration for x86 GNU/Hurd. This has originally been created by Svante Signell for use with Debian's GCC 4.6 package, and now I have ported it to trunk, and also applied some

Re: [PATCH] GCC Ada/GNAT configuration for GNU/Hurd

2012-06-18 Thread Arnaud Charlet
Hi, I tried with s-taprop-posix.adb earlier (among many tries), but GNU/Hurd does not seem to be fully POSIX pthread compliant yet, unfortunately. At least to my findings. Well, would be good to understnad in more details what's missing. Some trivial missing wrappers are better put in

[PATCH] Bad code generation: incorrect folding of TARGET_MEM_REF into a constant

2012-06-18 Thread Jiří Hruška
Hi all, I have tracked down a bug which results in invalid code being generated for indexed TARGET_MEM_REF expressions during dominator optimization. The conditions are: accessing objects adjacent in memory in a loop (in order to generate the TARGET_MEM_REF gimple) and optimizing this tree item

Re: [PATCH, testsuite]: Fix scan-tree-dump-times argument order in gcc.dg/tree-ssa/vrp68.c.

2012-06-18 Thread Janis Johnson
On 06/17/2012 05:03 AM, Richard Guenther wrote: On Sun, Jun 17, 2012 at 10:41 AM, Uros Bizjak ubiz...@gmail.com wrote: Hello! The testcase still fails on x86_64-pc-linux-gnu with: FAIL: gcc.dg/tree-ssa/vrp68.c scan-tree-dump-times vrp1 link_error 1 since there are two calls to link_error.

Re: [PATCH 3/3] Handle const_vector in mulv4si3 for pre-sse4.1.

2012-06-18 Thread Richard Henderson
On 2012-06-17 11:37, Uros Bizjak wrote: Hello! Please note that you will probably hit PR33329, this is the reason that we expand multiplications after reload. Please see [1] for further explanation. There is gcc.target/i386/pr33329.c test to cover this issue, but it is not effective anymore

[PATCH, libcpp]: Use x86 __builtin_ia32_pcmpestri128 instead of asm.

2012-06-18 Thread Uros Bizjak
Hello! Following the patch that allows unaligned operands in pcmpestri [1], we can substitute x86 asm in lex.c with equivalent builtin functions. 2011-06-18 Uros Bizjak ubiz...@gmail.com * lex.c (search_line_sse42): Use __builtin_ia32_loaddqu and __builtin_ia32_pcmpestri128

Re: [RFA] dwarf2.def (DW_OP): Add DW_OP_GNU_const_index.

2012-06-18 Thread Doug Evans
Ping. On Thu, Jun 14, 2012 at 12:48 PM, Doug Evans d...@google.com wrote: Hi. Ok to commit? 2012-06-14  Doug Evans  d...@google.com        * dwarf2.def (DW_OP): Add DW_OP_GNU_const_index. Index: dwarf2.def === ---

[PATCH 4/4] - Merging gdc (GNU D Compiler) into gcc

2012-06-18 Thread Iain Buclaw
[PATCH 4/4]: Add D frontend and library to build - configure - configure.ac - Makefile.def - Makefile.in Add mention of D compiler and Phobos in documentation - gcc/doc/frontends.texi - gcc/doc/install.texi - gcc/doc/invoke.texi - gcc/doc/sourcebuild.texi -

[PATCH, gdc] - Merging gdc (GNU D Compiler) into gcc

2012-06-18 Thread Iain Buclaw
Hi, Seems that I can't upload the files individually due to a size limit, so I've put the files up on my site. Sorry for any initial noise. Long story short: So I have been working on this for quite some time, and now I feel it is approaching some state of readiness for inclusion. Any feedback

fix libstdc++/53678 - namespace pollution on NetBSD

2012-06-18 Thread Jonathan Wakely
This fixes a regression on NetBSD. 2012-06-18 Jörg Sonnenberger jo...@britannica.bec.de Jonathan Wakely jwakely@gmail.com PR libstdc++/53678 * config/os/bsd/netbsd/ctype_base.h: Check for _CTYPE_U. * testsuite/22_locale/ctype_base/53678.cc: New. Tested

Re: [RFA] dwarf2.def (DW_OP): Add DW_OP_GNU_const_index.

2012-06-18 Thread Richard Henderson
On 2012-06-14 12:48, Doug Evans wrote: Hi. Ok to commit? 2012-06-14 Doug Evans d...@google.com * dwarf2.def (DW_OP): Add DW_OP_GNU_const_index. Ok. r~

Re: [PATCH, libcpp]: Use x86 __builtin_ia32_pcmpestri128 instead of asm.

2012-06-18 Thread Richard Henderson
On 2012-06-18 13:19, Uros Bizjak wrote: /* ??? The builtin doesn't understand that the PCMPESTRI read from memory need not be aligned. */ - __asm (%vpcmpestri $0, (%1), %2 - : =c(index) : r(s), x(search), a(4), d(16)); + sv = __builtin_ia32_loaddqu ((const

Re: [wwwdocs] Update coding conventions for C++

2012-06-18 Thread Lawrence Crowl
This patch updates the coding conventions to C++. The primary source file is codingconventions.html. The coding conventions now refer to a new file, codingrationale.html, providing the rationale for some of the C++ conventions. The two files in question are attached whole for your convenience.

Reorganized documentation for warnings -- attempt 2

2012-06-18 Thread David Stone
Some friendly users in the gcc irc chat informed me that I may be more likely to get a review for my patch if it weren't a 100 KiB file. This is my attempt at making the patch a little easier to read. I'm not sure how important it is for documentation, but I have already sent in my copyright

Re: [PATCH] Improve pattern recognizer for division by constant (PR tree-optimization/51581)

2012-06-18 Thread Richard Henderson
On 2012-06-14 13:58, Jakub Jelinek wrote: + if (!supportable_widening_operation (WIDEN_MULT_EXPR, last_stmt, +vecwtype, vectype, +dummy, dummy, dummy_code, +dummy_code, dummy_int,

[testsuite] profopt.exp and friends: use expected list of options

2012-06-18 Thread Janis Johnson
There are tests in g++.tree-prof that have non-unique lines in test summaries for scan-*-dump checks. Investigation showed that these tests were being run multiple times, for a list of options that had leaked over from another set of profile-directed optimization tests. This patch doesn't fix

Re: Make timevar phases mutually exclusive. (issue6302064)

2012-06-18 Thread Lawrence Crowl
On 6/13/12, Diego Novillo dnovi...@google.com wrote: On 12-06-13 08:46 , Diego Novillo wrote: The LTO bits are fine. I would prefer if an FE maintainer takes a second look over the other bits. Jason, Joseph? Incidentally, could you please test it with an LTO-enabled bootstrap? $

[4.6][ARM] Backport MCR Not available in Thumb1

2012-06-18 Thread Joey Ye
Backporting trunk r179979 OK for 4.6? Backported from mainline 2011-10-14 David Alan Gilbert david.gilb...@linaro.org PR target/48126 * config/arm/arm.c (arm_output_sync_loop): Move label before barrier. Index: gcc/config/arm/arm.h