RFA: Fix ICE on PARALLEL returns when expand builtins

2012-12-23 Thread Richard Sandiford
Some of the maths builtins can expand to a call followed by a bit of postprocessing. With 4.8's PARALLEL return optimisations, these embedded calls might return a PARALLEL of pseudos, but the postprocessing isn't prepared to deal with that. This leads to an ICE in builtins-53.c on n32 and n64

[committed] Fix gcc.target/mips/pr55315.c for LP64

2012-12-23 Thread Richard Sandiford
Fixes a warning seen with -mabi=64 on mips64-linux-gnu. The test was for an rtl optimisation, so the choice between int and long doesn't matter for the original ILP32 target. Tested on mips64-linux-gnu and applied. Richard gcc/testsuite/ * gcc.target/mips/pr55315.c: Cast to long

[committed] Make r10k-cache-barrier-10.c more robust

2012-12-23 Thread Richard Sandiford
The loop in this test is supposed to trigger a likely (annulled) back-branch. However, n is naturally in $4 on entry to the loop and naturally in $2 on the back edge. Usually the move from $4 to $2 was outside the loop, but for -funroll-loops it was at the end of the loop body, and could be

Re: [Patch, Fortran] PR 54884 - Fix TREE_PUBLIC() issue with PRIVATE module procedures

2012-12-23 Thread Tobias Burnus
Please ignore that patch. I found a much simpler way, which is a tiny patch and actually also works for the commented part of the test case of the previous patch (i.e. the missed-optimization bit). Namely, I now simply only tag all the symbols which are written to the .mod file. That way,

Re: [Patch, Fortran] PR 54884 - Fix TREE_PUBLIC() issue with PRIVATE module procedures

2012-12-23 Thread Mikael Morin
Le 23/12/2012 15:29, Tobias Burnus a écrit : Please ignore that patch. I found a much simpler way, which is a tiny patch and actually also works for the commented part of the test case of the previous patch (i.e. the missed-optimization bit). Namely, I now simply only tag all the symbols which

RFA: Fix uint128_t range checking in VRP

2012-12-23 Thread Richard Sandiford
The minimum uint128_t value is an all-zeros double_int and the maximum value is an all-ones double_int. Truncating these values to int and then sign-extending them gives the same all-zeros and all-ones values, so tree-vrp.c:range_fits_type_p concludes that uint128_t fits in an int. This showed

RFA: Fix reuse of target variable in builtins.c

2012-12-23 Thread Richard Sandiford
Some of the maths builtins try to expand via an optab and fall back to an expand_call. The optabs path tends to clobber target, so the original target is lost by the time we call expand_call. E.g.: /* Compute into TARGET. Set TARGET to wherever the result comes back. */ target =

[PATCH 2/2] [pr32193] libgomp: add a --enable-werror configure flag

2012-12-23 Thread Mike Frysinger
URL: http://gcc.gnu.org/PR32193 Signed-off-by: Mike Frysinger vap...@gentoo.org 2012-12-23 Mike Frysinger vap...@gentoo.org PR libgomp/32193 * configure.ac: Call AC_ARG_ENABLE(werror). (XCFLAGS): Add -Werror when enable_werror is not no. * configure:

[PATCH 1/2] [pr53679] libgo: add a --enable-werror configure flag

2012-12-23 Thread Mike Frysinger
URL: http://gcc.gnu.org/PR53679 Signed-off-by: Mike Frysinger vap...@gentoo.org --- libgo/configure| 15 --- libgo/configure.ac | 7 +-- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/libgo/configure b/libgo/configure index 04fa89d..49cc4a9 100755 ---

[PATCH] config: import pkg.m4 from pkg-config

2012-12-23 Thread Mike Frysinger
We use this in the sim tree currently. Rather than require people to have pkg-config installed, include it in the config/ dir. Signed-off-by: Mike Frysinger vap...@gentoo.org 2012-12-23 Mike Frysinger vap...@gentoo.org * pkg.m4: New file from pkg-config-0.27. --- config/pkg.m4 | 199

Re: C++ PATCH for c++/54325 (wrong error initializing abstract base class)

2012-12-23 Thread Jason Merrill
On 12/22/2012 06:02 PM, Paolo Carlini wrote: Well, we still reject it after the patch My 4.7 and trunk compilers both accept it (with -std=c++11, of course). Jason

Re: [PATCH] PR c++/52343 - error with alias template as template template argument

2012-12-23 Thread Jason Merrill
On 12/21/2012 07:35 AM, Dodji Seketeli wrote: else if (TREE_TYPE (t) INTEGRAL_OR_ENUMERATION_TYPE_P (TREE_TYPE (t)) - !TREE_CONSTANT (t)) + !TREE_CONSTANT (t) + /* Class template and alias template arguments should be OK. */ +

Re: [PATCH] PR c++/52343 - error with alias template as template template argument

2012-12-23 Thread Gabriel Dos Reis
On Sun, Dec 23, 2012 at 11:04 PM, Jason Merrill ja...@redhat.com wrote: On 12/21/2012 07:35 AM, Dodji Seketeli wrote: else if (TREE_TYPE (t) INTEGRAL_OR_ENUMERATION_TYPE_P (TREE_TYPE (t)) - !TREE_CONSTANT (t)) + !TREE_CONSTANT (t) + /* Class

Re: [PATCH] PR c++/55311 - Cannot specialize alias template with arg of type array of char

2012-12-23 Thread Jason Merrill
On 12/22/2012 11:03 AM, Dodji Seketeli wrote: [1]: The relacement of the VAR_DECL by its initializer is done by decay_conversion by callig decl_constant_value_safe. That replacement doesn't happen if processing_template_decl is not set. That's why it doesn't happen for the class template