Re: [i386] logical shift right in shrd

2014-06-21 Thread Uros Bizjak
On Fri, Jun 20, 2014 at 10:42 PM, Marc Glisse wrote: > as reported in PR 61503, there seems to be a typo in the shrd pattern. I > think it is quite unlikely to cause any problem, because the pattern is 1 > instruction too long for combine to recognize it (by the way, if someone has > suggestions

Re: Move DECL_INIT_PRIORITY/FINI_PRIORITY to symbol table

2014-06-21 Thread Andreas Schwab
Jan Hubicka writes: > this patch moves init and fini priorities to symbol table instead of trees. > They are already in on-side hashtables, but the hashtables are now maintaned > by symbol table. This is needed for correctness with LTO. This breaks gcc.dg/initpri3.c. The constructor and destru

Re: Fortran OpenMP UDR fixes, nested handling fixes etc.

2014-06-21 Thread Tobias Burnus
Jakub Jelinek wrote: Bootstrap/regtest pending, does this look ok? Except for the module/resolved issues discussed elsewhere, it look good to me. Thanks! Tobias 2014-06-20 Jakub Jelinek * gimplify.c (gimplify_scan_omp_clauses) : Gimplify OMP_CLAUSE_ALIGNED_ALIGNMENT. (

Re: [PATCH][MIPS] Enable load-load/store-store bonding

2014-06-21 Thread Richard Sandiford
Hi Sameera, Thanks for the patch. Sameera Deshpande writes: > diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c > index b5b5ba7..9804ef2 100644 > --- a/gcc/config/mips/mips.c > +++ b/gcc/config/mips/mips.c > @@ -18813,6 +18813,9 @@ mips_option_override (void) >if (TARGET_MICROMIPS

Re: [i386] logical shift right in shrd

2014-06-21 Thread Marc Glisse
On Sat, 21 Jun 2014, Uros Bizjak wrote: On Fri, Jun 20, 2014 at 10:42 PM, Marc Glisse wrote: as reported in PR 61503, there seems to be a typo in the shrd pattern. I think it is quite unlikely to cause any problem, because the pattern is 1 instruction too long for combine to recognize it (by

Re: [PATCH GCC]Add 'force-dwarf-lexical-blocks' command line option

2014-06-21 Thread Herman, Andrei
I will be on vacation until July 13. I'll have access to my e-mail occasionally. If you could send me please your comments, both style and content, pertaining to all three patches related to this subject, I will make all the needed changes and I could submit a new version, as soon as I get back

Re: [patch] change specific int128 -> generic intN

2014-06-21 Thread Marc Glisse
(Adding libstdc++@ in Cc: so they see the patch at https://gcc.gnu.org/ml/gcc-patches/2014-06/msg01655.html ) On Sat, 21 Jun 2014, DJ Delorie wrote: New version of https://gcc.gnu.org/ml/gcc-patches/2014-04/msg00723.html This is a big patch, but it includes all the features/changes/support req

Re: [PATCH] Fix up -march=native handling under KVM (PR target/61570)

2014-06-21 Thread Jakub Jelinek
On Fri, Jun 20, 2014 at 03:22:52PM -0700, H.J. Lu wrote: > On Fri, Jun 20, 2014 at 2:42 PM, Jakub Jelinek wrote: > > --- gcc/config/i386/driver-i386.c.jj2014-05-14 14:45:54.0 +0200 > > +++ gcc/config/i386/driver-i386.c 2014-06-20 18:59:57.805006358 +0200 > > @@ -745,6 +745,11 @@

RE: [PATCH, cpp] Fix line directive bug

2014-06-21 Thread Nicholas Ormrod
Hello all, (Re-adding gcc-patches, since it got dropped and missed six emails) === CPP FEATURE SUGGESTION === Adding line directives inside of a macro expansion to differentiate between system tokens and user tokens is a valid solution. As Manuel pointed out, there would need to be many line d

[Patch, Fortran] Some coarray fixes

2014-06-21 Thread Tobias Burnus
This patch primarily adds a check that the "A" argument (= source/result) of a collective is definable. I found the issue when a co_* test case didn't work with vector subscripts. (gfortran doesn't do a copy-out.) The patch additionally fixes one issue I found on the way: gfc_check_vardef_co

[webdoc, patch, committed] svn.html - retire fortran-caf

2014-06-21 Thread Tobias Burnus
Now that all changes of the "fortran-caf" branch are in the GCC 4.10 trunk, it makes sense to retire that branch. That's what I now did with the attached patched. Tobias Index: svn.html === RCS file: /cvs/gcc/wwwdocs/htdocs/svn.htm

[RTL] (vec_select (vec_concat a b) c) may be just a or b

2014-06-21 Thread Marc Glisse
Hello, this is another small simplification of RTL for vectors. Note that it doesn't really solve the problem, because these simplifications are only performed for single-use objects. If I start from vectors [a,b] and [c,d] and concatenate them into [a,b,c,d], then extract both halves, as in t

Re: [patch] change specific int128 -> generic intN

2014-06-21 Thread Joseph S. Myers
The changes to dwarf2asm.c, cppbuiltin.c, optabs.c, defaults.h, expr.c, expmed.c, tree-dfa.c, simplify-rtx.c, lto-object.c, loop-iv.c, varasm.c, the msp430 back end and some of the stor-layout.c changes don't look like they should depend on the rest of the patch. I think it would help review i

[PATCH][BUILDROBOT] nios2: Include builtins.h

2014-06-21 Thread Jan-Benedict Glaw
Hi! The nios2 backend was forgotten, it also needs to include builtins.h: g++ -c -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long

Re: Another AIX Bootstrap failure

2014-06-21 Thread David Edelsohn
> Index: testsuite/gcc.dg/localalias.c > === > --- testsuite/gcc.dg/localalias.c (revision 0) > +++ testsuite/gcc.dg/localalias.c (revision 0) > @@ -0,0 +1,42 @@ > +/* This test checks that local aliases behave sanely. Thi

Re: Another AIX Bootstrap failure

2014-06-21 Thread Jan Hubicka
> > + /* Depending on linker choice, this one may bind locally > > + or to the other unit. */ > > + if (!testcount && !test2count) > > +abort(); > > + tt(); > > + > > + if ((testcount != 1 || test2count != 3) > > + && (testcount != 3 || test2count != 1)) > > +abort (); > > +

[PATCH 1/6] rs6000: Remove "O" alternative from lshrsi3

2014-06-21 Thread Segher Boessenkool
Nothing will ever generate RTL matching this alternative. Maybe long ago this was needed, but not anymore. Bootstrapped and tested on powerpc64-linux, {-m64,-m64/-mtune=power8, -m32,-m32/-mpowerpc64}, no regressions. Okay to apply? Segher 2014-06-21 Segher Boessenkool gcc/ * conf

[PATCH 3/6] rs6000: Merge ashlsi3 and ashldi3

2014-06-21 Thread Segher Boessenkool
As the previous patch. Bootstrapped and tested on powerpc64-linux, {-m64,-m64/-mtune=power8, -m32,-m32/-mpowerpc64}, no regressions. Okay to apply? Segher gcc/ * config/rs6000/rs6000.md (ashlsi3, two anonymous define_insns and define_splits, ashldi3, *ashldi3_internal1, *ashld

[PATCH 4/6] rs6000: Merge rotlsi3 and rotldi3

2014-06-21 Thread Segher Boessenkool
This uses the rotl* extended mnemonics instead of the rlw*nm and rld*cl mnemonics, because they are shorter and more importantly they look the same for 32-bit and 64-bit. Bootstrapped and tested on powerpc64-linux, {-m64,-m64/-mtune=power8, -m32,-m32/-mpowerpc64}, no regressions. Okay to apply?

[PATCH 2/6] rs6000: Merge lshrsi3 and lshrdi3

2014-06-21 Thread Segher Boessenkool
For this create a new mode_attr "hH". Also change "i" constraints on the shift amount to "n", which better describes what it really is (GCC takes the integer value of these operands and does arithmetic on them; symbolic constants will not work here). Also merge the "dot" insns with the correspond

[PATCH 6/6] rs6000: Merge the var_shift yes/no alternatives

2014-06-21 Thread Segher Boessenkool
All instructions that are "var_shift" for some alternative have the shift amount as operands[2]. This patch introduces an attribute "maybe_var_shift". If that is set to "yes", the default value of "var_shift" is set based on the operands[2] value. With that, we can merge the var_shift yes/no cas

[PATCH 5/6] rs6000: Merge ashrsi3 and ashrdi3

2014-06-21 Thread Segher Boessenkool
The last (and ugliest) kind of shift. Bootstrapped and tested on powerpc64-linux, {-m64,-m64/-mtune=power8, -m32,-m32/-mpowerpc64}, no regressions. Okay to apply? Segher 2014-06-21 Segher Boessenkool gcc/ * config/rs6000/rs6000.md (ashrsi3, two anonymous define_insns and define_s