PATCH to add -std=c++1y

2012-03-20 Thread Jason Merrill
I've been working on a proposal for return type deduction for normal functions for the next C++ standard, and so I'm adding -std=c++1y to control it. Tested x86_64-pc-linux-gnu, applying to trunk. commit ef9ed182fec9249e396fdb0ed2bd0cc4d725e956 Author: Jason Merrill Date: Sat Mar 3 10:04:22

Re: [google][4.6] Bug fixes to function reordering linker plugin to handle local and comdat functions. (issue 5851044)

2012-03-20 Thread davidxl
ok for google branches after checkin validation. David http://codereview.appspot.com/5851044/

Re: [google][4.6] Bug fixes to function reordering linker plugin to handle local and comdat functions. (issue 5851044)

2012-03-20 Thread tmsriram
On 2012/03/20 19:26:26, eraman wrote: http://codereview.appspot.com/5851044/diff/1/callgraph.c File callgraph.c (right): http://codereview.appspot.com/5851044/diff/1/callgraph.c#newcode513 callgraph.c:513: const int section_priority[] = {0, 3, 4, 2, 1}; Add a comment about section_priority D

Re: [google][4.6] Bug fixes to function reordering linker plugin to handle local and comdat functions. (issue 5851044)

2012-03-20 Thread tmsriram
Uploaded new patch. On 2012/03/20 19:25:38, davidxl wrote: It would be nice to add some unit/regression test cases of some sort. Made the existing unit test case check the final layout. David http://codereview.appspot.com/5851044/diff/1/callgraph.c File callgraph.c (right): http://cod

C++ PATCH to mangling of 'new auto'

2012-03-20 Thread Jason Merrill
GCC 4.7 adds mangling for new-expressions in a function signature, but I now notice it produces wrong mangling for 'new auto' in simple cases. This patch fixes it. Tested x86_64-pc-linux-gnu, applying to trunk. This also seems like it might be a candidate for 4.7.0. What do you think, Jakub?

Re: [SH] PR 50751 - some test cases

2012-03-20 Thread Kaz Kojima
Oleg Endo wrote: > The attached patch adds some test cases for PR 50751 to check whether > mov.b insns are generated. OK. Regards, kaz

Re: [SH] PR 52479 - Remove fsca for DFmode

2012-03-20 Thread Kaz Kojima
Oleg Endo wrote: > The attached patch removes the fsca instruction support for DFmode on > SH4A when -ffast-math is enabled. > > Tested against rev 18 with > make -k check RUNTESTFLAGS="--target_board=sh-sim > \{-m2/-ml,-m2/-mb,-m2a-single/-mb, > -m4-single/-ml,-m4-single/-mb, > -m4a-single/

Re: [SH] PR 52642 - libstdc++ failures

2012-03-20 Thread Kaz Kojima
Oleg Endo wrote: > It fixes a few "sometimes failing" libstdc++ failures. > No new failures otherwise. > > OK to apply? OK. > Maybe this one should be backported to 4.7.x, too? Sure. Regards, kaz

Re: remove wrong code in immed_double_const

2012-03-20 Thread Mike Stump
On Mar 20, 2012, at 5:26 AM, Richard Sandiford wrote: > So what I was trying to say was that if we remove the assert > altogether, and allow CONST_DOUBLEs to be wider than 2 HWIs, > we need to define what the "implicit" high-order HWIs of a > CONST_DOUBLE are, just like we already do for CONST_INT.

Re: [google/4.6] Fix DW_OP_GNU_addr_index problem with -gfission. (issue 5866047)

2012-03-20 Thread dje
LGTM http://codereview.appspot.com/5866047/

Re: [patch] Split parts of cse_insn out to a few new functions

2012-03-20 Thread Ian Lance Taylor
On Tue, Mar 20, 2012 at 2:06 PM, Steven Bosscher wrote: > > This patch splits a couple of pieces of cse_insn out to new functions. > There are no functional changes, and no code generation differences as > far as I could tell on x86_64 (-m64 and -m32). > > The purpose of the patch is and, loto hop

Merge from 4.7 branch to gccgo branch

2012-03-20 Thread Ian Lance Taylor
I've merged revision 185588 of the 4.7 branch to the gccgo branch. This is a switch from merging from mainline. Ian

[google/4.6] Fix DW_OP_GNU_addr_index problem with -gfission. (issue5866047)

2012-03-20 Thread Cary Coutant
For google/gcc-4_6 branch. Fix bug where we were outputting a garbage value for the index operand of DW_OP_GNU_addr_index. Tested: incremental remake in GCC build directory and hand tested. 2012-03-20 Cary Coutant * dwarf2out.c (size_of_loc_descr): Use val_index instead of

Re: [google][4.6][i386]Support autocloning for corei7 with -mvarch= option to remove LCP stalls in loops (issue5865043)

2012-03-20 Thread Teresa Johnson
On Tue, Mar 20, 2012 at 2:04 PM, Sriraman Tallam wrote: > This patch adds support to version for corei7 with -mvarch option. The > versioning supported is in the case where a loop generates a LCP stalling > instruction in corei7. In such cases, on corei7, limiting the unroll factor > to try to

[SH] PR 50751 - some test cases

2012-03-20 Thread Oleg Endo
Hi, The attached patch adds some test cases for PR 50751 to check whether mov.b insns are generated. Tested on sh-sim with make check-gcc RUNTESTFLAGS="sh.exp=pr50751* --target_board=sh-sim \{-m2/-ml,-m2/-mb,-m2a-single/-mb,-m4-single/-ml, -m4-single/-mb,-m4a-single/-ml,-m4a-single/-mb}" to con

[patch] Split parts of cse_insn out to a few new functions

2012-03-20 Thread Steven Bosscher
Hello, This patch splits a couple of pieces of cse_insn out to new functions. There are no functional changes, and no code generation differences as far as I could tell on x86_64 (-m64 and -m32). The purpose of the patch is and, loto hopefully make cse_insn easier to understand. In a follow-up pa

[google][4.6][i386]Support autocloning for corei7 with -mvarch= option to remove LCP stalls in loops (issue5865043)

2012-03-20 Thread Sriraman Tallam
This patch adds support to version for corei7 with -mvarch option. The versioning supported is in the case where a loop generates a LCP stalling instruction in corei7. In such cases, on corei7, limiting the unroll factor to try to keep the unrolled loop body small enough to fit in the Corei7's l

Re: remove wrong code in immed_double_const

2012-03-20 Thread Mike Stump
On Mar 20, 2012, at 6:55 AM, Michael Matz wrote: > Actually you did. I've tried yesterday to come up with a text that would > do the same (because I agree with you that deleting the assert changes > the spec of the function, The spec of the function is the text above the definition of the funct

[SH] PR 52642 - libstdc++ failures

2012-03-20 Thread Oleg Endo
Hi, Attached is Kaz's patch from the PR. Tested against rev 18 with make -k check RUNTESTFLAGS="--target_board=sh-sim \{-m2/-ml,-m2/-mb,-m2a-single/-mb, -m4-single/-ml,-m4-single/-mb, -m4a-single/-ml,-m4a-single/-mb}" It fixes a few "sometimes failing" libstdc++ failures. No new failures ot

Re: [C++ Patch] PR 52487

2012-03-20 Thread Paolo Carlini
... this simple also passes testing. Paolo. /cp 2012-03-20 Paolo Carlini PR c++/52487 * class.c (check_field_decls): Call literal_type_p only on complete types. /testsuite 2012-03-20 Paolo Carlini PR c++/52487 * g++.dg/cpp0x/l

[SH] PR 52479 - Remove fsca for DFmode

2012-03-20 Thread Oleg Endo
Hi, The attached patch removes the fsca instruction support for DFmode on SH4A when -ffast-math is enabled. Tested against rev 18 with make -k check RUNTESTFLAGS="--target_board=sh-sim \{-m2/-ml,-m2/-mb,-m2a-single/-mb, -m4-single/-ml,-m4-single/-mb, -m4a-single/-ml,-m4a-single/-mb}" and no

Re: [C++ Patch] PR 52487

2012-03-20 Thread Paolo Carlini
On 03/20/2012 08:22 PM, Jason Merrill wrote: That assert is there to make sure that we don't try to test for literality of an incomplete type. We should check for completeness before trying to check for literality. You mean, in the relevant caller, here in check_field_decls: /* If at le

Re: [Patch,AVR]: Hack around PR rtl-optimization/52543, Take #2

2012-03-20 Thread Steven Bosscher
On Tue, Mar 20, 2012 at 8:54 PM, Georg-Johann Lay wrote: > Dropping the first patch which does not work because at expand-time there > must not be pre-/post-modify addressing :-( Have you tried to fix that, instead? Or at least ask around a bit to see what people would think about that idea? The

Re: [Patch,AVR]: Hack around PR rtl-optimization/52543, Take #2

2012-03-20 Thread Georg-Johann Lay
And here is the patch... Georg-Johann Lay wrote: > Dropping the first patch which does not work because at expand-time there > must not be pre-/post-modify addressing :-( > > This solutions turns completely away from MEM and addressing modes: > It represents loads from the 16-bits address-spaces

[Patch,AVR]: Hack around PR rtl-optimization/52543, Take #2

2012-03-20 Thread Georg-Johann Lay
Dropping the first patch which does not work because at expand-time there must not be pre-/post-modify addressing :-( This solutions turns completely away from MEM and addressing modes: It represents loads from the 16-bits address-spaces as UNSPEC. The code is as expected now with the additional

Re: [PATCH] Optimize in VRP if ((x & cst1) cmp cst2) (PR tree-optimization/52267)

2012-03-20 Thread Georg-Johann Lay
Jakub Jelinek wrote: > Hi! > > This patch adds ASSERT_EXPRs derived from > tmp_N = var_M & cst2; > if (tmp_N cmp val) > where cst2 and val are constants. Bootstrapped/regtested > on x86_64-linux and i686-linux, ok for trunk? > > 2012-03-14 Jakub Jelinek > > PR tree-optimization/522

[testsuite,int=16,committed]: PR testsuite/52641

2012-03-20 Thread Georg-Johann Lay
http://gcc.gnu.org/viewcvs?view=revision&revision=185588 Johann

Re: remove wrong code in immed_double_const

2012-03-20 Thread Mike Stump
On Mar 20, 2012, at 5:26 AM, Richard Sandiford wrote: > So what I was trying to say was that if we remove the assert > altogether, and allow CONST_DOUBLEs to be wider than 2 HWIs, > we need to define what the "implicit" high-order HWIs of a > CONST_DOUBLE are, just like we already do for CONST_INT.

Re: [google][4.6] Bug fixes to function reordering linker plugin to handle local and comdat functions. (issue 5851044)

2012-03-20 Thread eraman
http://codereview.appspot.com/5851044/diff/1/callgraph.c File callgraph.c (right): http://codereview.appspot.com/5851044/diff/1/callgraph.c#newcode513 callgraph.c:513: const int section_priority[] = {0, 3, 4, 2, 1}; Add a comment about section_priority http://codereview.appspot.com/5851044/diff

Re: PATCH: Properly generate X32 IE sequence

2012-03-20 Thread H.J. Lu
On Tue, Mar 20, 2012 at 11:43 AM, Uros Bizjak wrote: > On Tue, Mar 20, 2012 at 7:27 PM, H.J. Lu wrote: > I think use the OS provided instruction to load TP into DImode register could simplify the code. >>> >>> Which OS provided instruction? >>> >>> Please see how TP is defined in get_th

Re: [google][4.6] Bug fixes to function reordering linker plugin to handle local and comdat functions. (issue 5851044)

2012-03-20 Thread davidxl
It would be nice to add some unit/regression test cases of some sort. David http://codereview.appspot.com/5851044/diff/1/callgraph.c File callgraph.c (right): http://codereview.appspot.com/5851044/diff/1/callgraph.c#newcode309 callgraph.c:309: if (!is_prefix_of ("_ZL", name)) How about static

Re: [C++ Patch] PR 52487

2012-03-20 Thread Jason Merrill
That assert is there to make sure that we don't try to test for literality of an incomplete type. We should check for completeness before trying to check for literality. Jason

C++ PATCH for c++/52510 (rejects-valid with list-initialization of pthread_cond)

2012-03-20 Thread Jason Merrill
My change for core issue 1270 to allow brace elision in all list-initialization resulted in multiple calls to reshape_init for the same CONSTRUCTOR, which we weren't handling properly. Tested x86_64-pc-linux-gnu, applying to trunk. commit d7b5c07030b11599b846342b19ff50306043965f Author: Jason M

Re: [RFC PATCH 0/3] Fixing expansion of misaligned MEM_REFs on strict-alignment targets

2012-03-20 Thread Georg-Johann Lay
Martin Jambor wrote: > Hi, > > this is another iteration of my attempts to fix expansion of > misaligned memory accesses on strict-alignment platforms (which was > suggested by Richi in > http://gcc.gnu.org/ml/gcc-patches/2011-08/msg00931.html and my first > attempt was posted as > http://gcc.gnu.

PATCH to tree-streamer-in.c to fix bootstrap with --enable-gather-detailed-mem-stats

2012-03-20 Thread Jason Merrill
The _stat allocation functions aren't supposed to be called directly. Tested x86_64-pc-linux-gnu, applying as obvious. commit f0e560b78591a50e39bf3ccf41bc3d87f43927e8 Author: Jason Merrill Date: Mon Mar 19 16:35:05 2012 -0400 * tree-streamer-in.c (streamer_alloc_tree): Call ggc_allo

Re: PATCH: Properly generate X32 IE sequence

2012-03-20 Thread Uros Bizjak
On Tue, Mar 20, 2012 at 7:27 PM, H.J. Lu wrote: >>> I think use the OS provided instruction to load TP into DImode register >>> could simplify the code. >> >> Which OS provided instruction? >> >> Please see how TP is defined in get_thread_pointer, it is in ptr_mode: >> >>  rtx tp = gen_rtx_UNSPEC

Re: PATCH: Properly generate X32 IE sequence

2012-03-20 Thread H.J. Lu
On Tue, Mar 20, 2012 at 10:54 AM, Uros Bizjak wrote: > On Tue, Mar 20, 2012 at 4:52 PM, H.J. Lu wrote: > Yeah, my bootstrap just failed the same.  Will test: 2012-03-20  Jakub Jelinek         * config/i386/i386.c (ix86_decompose_address) :       If operand isn't UNSP

[google][4.6] Bug fixes to function reordering linker plugin to handle local and comdat functions. (issue5851044)

2012-03-20 Thread Sriraman Tallam
This patch fixes bugs in section_ordering linker plugin to correctly handle functions that are file local or comdat. Such functions could be defined more than once in different object files and can have the same name. The callgraph edge profiles should be attributed to the right local function.

Re: PATCH: Properly generate X32 IE sequence

2012-03-20 Thread Uros Bizjak
On Tue, Mar 20, 2012 at 4:52 PM, H.J. Lu wrote: >>> Yeah, my bootstrap just failed the same.  Will test: >>> >>> 2012-03-20  Jakub Jelinek   >>> >>>       * config/i386/i386.c (ix86_decompose_address) : >>>       If operand isn't UNSPEC, return 0. >> >> Committed as obvious now that bootstrap/reg

Re: Remove anachronistic docs about G++ template instantiation

2012-03-20 Thread Jonathan Wakely
On 18 March 2012 14:56, Gerald Pfeifer wrote: > On Thu, 8 Mar 2012, Jonathan Wakely wrote: >> The manual claims a future version of G++ will support a hybrid >> instantiation model, which I don't think is still planned, and >> describes extern templates as an extension when they are in C++11. >> >>

Re: [PATCH] Replace a SRA FIXME with an assert

2012-03-20 Thread Martin Jambor
Hi, On Tue, Mar 20, 2012 at 04:08:31PM +0100, Richard Guenther wrote: > On Tue, 20 Mar 2012, Martin Jambor wrote: > > > Hi, > > > > this patch which removes one of only two FIXMEs in tree-sra.c has been > > sitting in my patch queue for over a year. Yesterday I noticed it > > there, bootstrappe

Re: [Patch/cfgexpand]: also consider assembler_name to call expand_main_function

2012-03-20 Thread Jan Hubicka
> On Tue, 20 Mar 2012, Tristan Gingold wrote: > > > > > On Mar 15, 2012, at 10:37 AM, Richard Guenther wrote: > > > > > On Wed, 14 Mar 2012, Tristan Gingold wrote: > > [?] > > > > > > > > Well. To make this work in LTO the "main" function (thus, the program > > > entry point) should be marked

[pph] Add reduced test case for a common lookup failure (issue5844068)

2012-03-20 Thread Diego Novillo
Add reduced test case for a common lookup failure. This is reduced from the standard library. The type mbstate_t is declared in the global scope and then incorporated into 'std' via using. When the header doing this is converted into a PPH image, the lookup for identifier 'mbstate_t' produces th

Re: [v3] minor simplification to std::list

2012-03-20 Thread Jonathan Wakely
On 18 March 2012 23:27, Jonathan Wakely wrote: > Now that G++ supports it we can use a NSDMI for std::list::_M_size to > avoid needing conditional compilation to set it in the constructors. > I think the attached patch is an improvement so I plan to commit it to > trunk soon unless I hear objection

Re: [PATCH] i?86 AVX cross-lane 2 insn permutations (PR target/52607)

2012-03-20 Thread Richard Henderson
On 03/20/2012 04:31 AM, Jakub Jelinek wrote: > 2012-03-20 Jakub Jelinek > > PR target/52607 > * config/i386/i386.c (expand_vec_perm_vperm2f128): New function. > (ix86_expand_vec_perm_const_1): Call it. Ok. r~

Re: [PATCH] Merge more of the expand phase into expand

2012-03-20 Thread Jan Hubicka
> > This is the followup I promised to do on the expand and rtl_eh pass > merge. The following patch merges up to unshare_all_rtl, after which > we should be able to pass all RTL testing(?) > > Bootstrapped and tested on x86_64-unknown-linux-gnu. > > Honza, does this look like what you had in m

Re: [Patch/cfgexpand]: also consider assembler_name to call expand_main_function

2012-03-20 Thread Tristan Gingold
On Mar 20, 2012, at 5:01 PM, Richard Guenther wrote: > On Tue, 20 Mar 2012, Tristan Gingold wrote: > >> >> On Mar 20, 2012, at 3:19 PM, Richard Guenther wrote: >> >> […] >>> >>> I'd rather get away from using a global main_identifier_node, instead >>> make that frontend specific, and introduc

Re: [Patch/cfgexpand]: also consider assembler_name to call expand_main_function

2012-03-20 Thread Richard Guenther
On Tue, 20 Mar 2012, Tristan Gingold wrote: > > On Mar 20, 2012, at 3:19 PM, Richard Guenther wrote: > > […] > > > > I'd rather get away from using a global main_identifier_node, instead > > make that frontend specific, and introduce targetm.main_assembler_name > > which the assembler-name crea

Re: [Patch/cfgexpand]: also consider assembler_name to call expand_main_function

2012-03-20 Thread Tristan Gingold
On Mar 20, 2012, at 3:19 PM, Richard Guenther wrote: […] > > I'd rather get away from using a global main_identifier_node, instead > make that frontend specific, and introduce targetm.main_assembler_name > which the assembler-name creating langhook would make sure to use > when mangling what the

Re: [PATCH] AVX2 permutation improvements

2012-03-20 Thread Richard Henderson
On 03/20/12 04:22, Jakub Jelinek wrote: > 2012-03-20 Jakub Jelinek > > PR target/52607 > * config/i386/i386.md ("isa" attribute): Add avx2 and noavx2. > ("enabled" attribute): Handle avx2 and noavx2 isas. > * config/i386/sse.md (avx2_vec_dupv8sf_1, avx2_pbroadcast_1): >

Re: PATCH: Properly generate X32 IE sequence

2012-03-20 Thread H.J. Lu
On Tue, Mar 20, 2012 at 4:19 AM, Jakub Jelinek wrote: > On Tue, Mar 20, 2012 at 09:58:29AM +0100, Jakub Jelinek wrote: >> Yeah, my bootstrap just failed the same.  Will test: >> >> 2012-03-20  Jakub Jelinek   >> >>       * config/i386/i386.c (ix86_decompose_address) : >>       If operand isn't UNS

[PATCH] Preserve loops from tree to RTL loop optimizers

2012-03-20 Thread Richard Guenther
This patch makes us preserve loop structures from the start of tree loop optimizers to the end of RTL loop optimizers. It uses a new property, PROP_loops to indicate we want to preserve them and massages loop_optimizer_init/finalize to honor that. On the RTL side the CFG manipulation was not pre

[C++ Patch] PR 52487

2012-03-20 Thread Paolo Carlini
Hi, this regression is about literal_type_p ICEing for types which cannot be completed. Indeed, for the testcase, complete_type cannot complete the type but doesn't error out either, just returns the type as-is, and the gcc_assert triggers. We could imagine handling such types in the caller -

Re: [PATCH] Replace a SRA FIXME with an assert

2012-03-20 Thread Richard Guenther
On Tue, 20 Mar 2012, Martin Jambor wrote: > Hi, > > this patch which removes one of only two FIXMEs in tree-sra.c has been > sitting in my patch queue for over a year. Yesterday I noticed it > there, bootstrapped and tested it on x86_64-linux and it passed. > > I'd like to either commit it or j

Re: [PATCH] Decrease GC garbage in i?86 vec shuffle expansion

2012-03-20 Thread Richard Henderson
On 03/20/12 04:27, Jakub Jelinek wrote: > 2012-03-20 Jakub Jelinek > > * config/i386/i386.c (vselect_insn): New variable. > (init_vselect_insn): New function. > (expand_vselect, expand_vselect_insn): Add testing_p argument. > Call init_vselect_insn if vselect_insn is NUL

[PATCH] Replace a SRA FIXME with an assert

2012-03-20 Thread Martin Jambor
Hi, this patch which removes one of only two FIXMEs in tree-sra.c has been sitting in my patch queue for over a year. Yesterday I noticed it there, bootstrapped and tested it on x86_64-linux and it passed. I'd like to either commit it or just remove the comment, if there likely still are size in

Re: [arm] Improve longlong.h umul_ppmm, count_trailing_zeros

2012-03-20 Thread Richard Earnshaw
On 01/02/12 13:23, Richard Earnshaw wrote: > On 31/01/12 05:15, Richard Henderson wrote: >> Despite how trivial this is, I assume this must wait for stage1. >> Ok? >> >> >> r~ >> >> >> * longlong.h [arm] (umul_ppmm): Use umull. >> [arm] (count_trailing_zeros): Use __builtin_ctz. > > armv

Re: [Patch/cfgexpand]: also consider assembler_name to call expand_main_function

2012-03-20 Thread Richard Guenther
On Tue, 20 Mar 2012, Tristan Gingold wrote: > > On Mar 20, 2012, at 1:21 PM, Richard Guenther wrote: > > > On Tue, 20 Mar 2012, Tristan Gingold wrote: > > > >> > >> On Mar 15, 2012, at 10:37 AM, Richard Guenther wrote: > >> > >>> On Wed, 14 Mar 2012, Tristan Gingold wrote: > >> […] > >> > >>

Re: [Patch/cfgexpand]: also consider assembler_name to call expand_main_function

2012-03-20 Thread Tristan Gingold
On Mar 20, 2012, at 1:21 PM, Richard Guenther wrote: > On Tue, 20 Mar 2012, Tristan Gingold wrote: > >> >> On Mar 15, 2012, at 10:37 AM, Richard Guenther wrote: >> >>> On Wed, 14 Mar 2012, Tristan Gingold wrote: >> […] >> >>> >>> Well. To make this work in LTO the "main" function (thus, the

[PATCH, ARM] Don't allow arbitrary constants into Neon vector compare

2012-03-20 Thread Richard Earnshaw
The Neon vector-compare operations allow a register or zero (vector of) as the operands. However, we currently permit any immediate. This can allow the optimizer to sink a non-trivial constant into a loop when it was better left in a register. Further, by hiding the register needed to rematerial

Re: remove wrong code in immed_double_const

2012-03-20 Thread Michael Matz
Hi, On Tue, 20 Mar 2012, Richard Sandiford wrote: > If Mike or anyone is up to doing that, then great. But if instead it's > just a case of handling zero correctly, moving rather than removing the > assert seems safer. > > I'm obviously not explaining this well :-) Actually you did. I've tr

Re: remove wrong code in immed_double_const

2012-03-20 Thread Richard Guenther
On Tue, Mar 20, 2012 at 1:26 PM, Richard Sandiford wrote: > Richard Guenther writes: >>> I've no objection to moving the assert down to after the GEN_INT. >>> But it sounds like I'm on my own with the whole CONST_DOUBLE sign thing. >>> (That is, if we remove the assert altogether, we effectively

Re: remove wrong code in immed_double_const

2012-03-20 Thread Richard Sandiford
Richard Guenther writes: >> I've no objection to moving the assert down to after the GEN_INT. >> But it sounds like I'm on my own with the whole CONST_DOUBLE sign thing. >> (That is, if we remove the assert altogether, we effectively treat the >> number as sign-extended if it happens to fit in a C

Re: [Patch/cfgexpand]: also consider assembler_name to call expand_main_function

2012-03-20 Thread Richard Guenther
On Tue, 20 Mar 2012, Tristan Gingold wrote: > > On Mar 15, 2012, at 10:37 AM, Richard Guenther wrote: > > > On Wed, 14 Mar 2012, Tristan Gingold wrote: > […] > > > > > Well. To make this work in LTO the "main" function (thus, the program > > entry point) should be marked at cgraph level and a

Re: [debug/profile-mode] broken c++config.h

2012-03-20 Thread Paolo Bonzini
Il 20/03/2012 11:33, Paolo Carlini ha scritto: > On 03/20/2012 10:22 AM, Paolo Bonzini wrote: >> I think \$$ is better. Besides that it looks good. > Thanks for the review. Yesterday, when Benjamin had a look, I decided to > go ahead and just commit the patch as posted (after having double > check

Re: [Patch/cfgexpand]: also consider assembler_name to call expand_main_function

2012-03-20 Thread Tristan Gingold
On Mar 15, 2012, at 10:37 AM, Richard Guenther wrote: > On Wed, 14 Mar 2012, Tristan Gingold wrote: […] > > Well. To make this work in LTO the "main" function (thus, the program > entry point) should be marked at cgraph level and all users of > MAIN_NAME_P should instead check a flag on the cg

[PATCH] Merge more of the expand phase into expand

2012-03-20 Thread Richard Guenther
This is the followup I promised to do on the expand and rtl_eh pass merge. The following patch merges up to unshare_all_rtl, after which we should be able to pass all RTL testing(?) Bootstrapped and tested on x86_64-unknown-linux-gnu. Honza, does this look like what you had in mind? Thanks, Ri

[AVR,testsuite,committed]: ad PR49868: Add more address-space tests

2012-03-20 Thread Georg-Johann Lay
Addes the following tests: http://gcc.gnu.org/viewcvs?view=revision&revision=185570 PR target/49868 * gcc.target/avr/torture/addr-space-2.h: New file. * gcc.target/avr/torture/addr-space-2-g.h: New test. * gcc.target/avr/torture/addr-space-2-0.h: New test.

Re: remove wrong code in immed_double_const

2012-03-20 Thread Richard Guenther
On Tue, Mar 20, 2012 at 11:49 AM, Richard Sandiford wrote: > Richard Guenther writes: >> On Tue, Mar 20, 2012 at 12:31 AM, Mike Stump wrote: >>> On Mar 19, 2012, at 2:44 PM, Richard Sandiford wrote: Mike Stump writes: >> If we're going to remove the assert, we need to define stuff like

[PATCH] i?86 AVX cross-lane 2 insn permutations (PR target/52607)

2012-03-20 Thread Jakub Jelinek
Hi! This patch implements expansion of 32-byte shuffles using vperm2[fi]128 insn followed by some single insn two operand shuffle (can be e.g. vunpck*, vshuf* or vblend*). Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2012-03-20 Jakub Jelinek PR target/52607

[PATCH] Decrease GC garbage in i?86 vec shuffle expansion

2012-03-20 Thread Jakub Jelinek
Hi! On a testcase with 256 __builtin_shuffle V4DFmode calls I've counted 17 calls to expand_vselect{,_vconcat} on average for each __builtin_shuffle call (some during testing, some during actual expansion, but that is also often not successful). This patch adjusts the code that for testing it doe

[PATCH] AVX2 permutation improvements

2012-03-20 Thread Jakub Jelinek
Hi! This patch improves register -> register broadcast AVX2 permutations and also starts using vpermps where possible for V8SFmode permutations. Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2012-03-20 Jakub Jelinek PR target/52607 * config/i386/i386.md

Re: PATCH: Properly generate X32 IE sequence

2012-03-20 Thread Jakub Jelinek
On Tue, Mar 20, 2012 at 09:58:29AM +0100, Jakub Jelinek wrote: > Yeah, my bootstrap just failed the same. Will test: > > 2012-03-20 Jakub Jelinek > > * config/i386/i386.c (ix86_decompose_address) : > If operand isn't UNSPEC, return 0. Committed as obvious now that bootstrap/regte

[PATCH] Fix PR52627

2012-03-20 Thread Richard Guenther
This should fix PR52627. Applied as obvious. Richard. 2012-03-20 Richard Guenther PR gcov-profile/52627 * libgcov.c (init_mx): Fix mutex name. Index: libgcc/libgcov.c === *** libgcc/libgcov.c(revision 18556

Re: remove wrong code in immed_double_const

2012-03-20 Thread Richard Sandiford
Richard Guenther writes: > On Tue, Mar 20, 2012 at 12:31 AM, Mike Stump wrote: >> On Mar 19, 2012, at 2:44 PM, Richard Sandiford wrote: >>> Mike Stump writes: > If we're going to remove the assert, we need to define stuff like > that. Orthogonal.  The rest of the compiler defin

Re: [debug/profile-mode] broken c++config.h

2012-03-20 Thread Paolo Carlini
On 03/20/2012 10:22 AM, Paolo Bonzini wrote: I think \$$ is better. Besides that it looks good. Thanks for the review. Yesterday, when Benjamin had a look, I decided to go ahead and just commit the patch as posted (after having double checked that indeed it worked for me), thus no escaping. Bu

Re: remove wrong code in immed_double_const

2012-03-20 Thread Richard Guenther
On Tue, Mar 20, 2012 at 12:31 AM, Mike Stump wrote: > On Mar 19, 2012, at 2:44 PM, Richard Sandiford wrote: >> Mike Stump writes: If we're going to remove the assert, we need to define stuff like that. >>> >>> Orthogonal.  The rest of the compiler defines what happens, it either >>> is

Re: [Patch] libgfortran: do not assume libm

2012-03-20 Thread Tristan Gingold
On Mar 20, 2012, at 10:56 AM, Ralf Corsepius wrote: > On 03/20/2012 10:01 AM, Tristan Gingold wrote: >> Hi, >> >> I am starting to build fortran for VMS. >> >> The first serious issue was with libgfortran/configure. It checks for >> several math functions, but directly in libm using AC_CHECK_

Re: [Patch] libgfortran: do not assume libm

2012-03-20 Thread Ralf Corsepius
On 03/20/2012 10:01 AM, Tristan Gingold wrote: Hi, I am starting to build fortran for VMS. The first serious issue was with libgfortran/configure. It checks for several math functions, but directly in libm using AC_CHECK_LIB. But there is on such things as libm on VMS systems (thus requiring

Re: [Patch] libgfortran: do not assume libm

2012-03-20 Thread Tristan Gingold
On Mar 20, 2012, at 10:48 AM, Tobias Burnus wrote: > Hi Tristan, > >> I am starting to build fortran for VMS. > > Thanks for the patch and this endeavor. > >> The first serious issue was with libgfortran/configure. It checks for >> several math functions, but directly in libm using AC_CHECK_L

Re: [Patch] libgfortran: do not assume libm

2012-03-20 Thread Tobias Burnus
Hi Tristan, > I am starting to build fortran for VMS. Thanks for the patch and this endeavor. > The first serious issue was with libgfortran/configure. It checks for > several math functions, but directly in libm using AC_CHECK_LIB. > But there is on such things as libm on VMS systems I think

[Patch]: ggc-page.c: use uintptr_t instead of size_t

2012-03-20 Thread Tristan Gingold
Hi, ggc-page.c uses size_t to cast pointers to an integer type. Unfortunately, this isn't portable for systems (such as … VMS) where size_t precision is less than pointers precision. Fortunately, thanks to configure, uintptr_t type is always present, so this path simply replaces size_t by uin

Re: PATCH: Properly generate X32 IE sequence

2012-03-20 Thread Paolo Bonzini
Il 19/03/2012 20:13, Uros Bizjak ha scritto: > 2012-03-19 Uros Bizjak > > * config/i386/i386.c (get_thread_pointer): Add tp_mode argument. > Generate ZERO_EXTEND in place if GET_MODE (tp) != tp_mode. > (legitimize_tls_address) : Always generate > DImode UNSPEC_GOTNTPOFF

Re: [PATCH] Fix PRs 52080, 52097 and 48124, rewrite bitfield expansion, enable the C++ memory model wrt bitfields everywhere

2012-03-20 Thread Richard Guenther
On Mon, 19 Mar 2012, Richard Guenther wrote: > On Mon, 19 Mar 2012, Eric Botcazou wrote: > > > > But it's only ever computed for RECORD_TYPEs where DECL_QUALIFIER is > > > unused. > > > > OK, that could work indeed. > > > > > For now giving up seems to be easiest (just give up when > > > DECL_F

Re: [PATCH] Make vector lowering use vectors of proper sign

2012-03-20 Thread Paolo Bonzini
Il 14/03/2012 15:53, Richard Guenther ha scritto: > > I noticed when trying to fix PR52584 that vector lowering always > creates unsigned vector types. The following fixes that, also > getting rid of the weird use of a langhook. > > Bootstrapped and tested on x86_64-unknown-linux-gnu. > > Richa

Re: [debug/profile-mode] broken c++config.h

2012-03-20 Thread Paolo Bonzini
Il 19/03/2012 13:32, Paolo Carlini ha scritto: Should the addition be \$$ to escape it for the shell as well as for make? (I know it works, but that might not be true for all shells.) >>> i don't think that $, could be expaneded by any shell. >> I'm not worried about it not expanding

[Patch] libgfortran: do not assume libm

2012-03-20 Thread Tristan Gingold
Hi, I am starting to build fortran for VMS. The first serious issue was with libgfortran/configure. It checks for several math functions, but directly in libm using AC_CHECK_LIB. But there is on such things as libm on VMS systems (thus requiring to define MATH_LIBRARY as ""). Therefore all th

Re: PATCH: Properly generate X32 IE sequence

2012-03-20 Thread Jakub Jelinek
On Tue, Mar 20, 2012 at 09:51:07AM +0100, Eric Botcazou wrote: > > The patch is bootstrapping now on x86_64-pc-linux-gnu. > > It very likely breaks bootstrap with RTL checking enabled: > > /sil.a/gnatmail/gnatmail-x/build-sil/x86-linux/gnat/obj/./gcc/xgcc > -B/sil.a/gnatmail/gnatmail-x/build-sil

Re: PATCH: Properly generate X32 IE sequence

2012-03-20 Thread Eric Botcazou
> The patch is bootstrapping now on x86_64-pc-linux-gnu. It very likely breaks bootstrap with RTL checking enabled: /sil.a/gnatmail/gnatmail-x/build-sil/x86-linux/gnat/obj/./gcc/xgcc -B/sil.a/gnatmail/gnatmail-x/build-sil/x86-linux/gnat/obj/./gcc/ -B/usr/gnat/i686-pc-linux-gnu/bin/ -B/usr/gnat/