[patch, vectorizer] Handle pattern statements with multiple uses

2011-06-29 Thread Ira Rosen
Hi, This is a follow-up patch for http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01205.html. The previous patch added a support for widen-mult in intermediate type, e.g.,: char a_t; short a_it; int a_T, prod_T, prod_T'; S1 a_t = ; S3 a_T = (int) a_t; '--

Re: [patch, fortran] Always return malloc(1) for empty arrays in the library

2011-06-29 Thread Janne Blomqvist
On Wed, Jun 29, 2011 at 00:50, Thomas Koenig tkoe...@netcologne.de wrote: Hello world, looking at PR 49479 and other functions in the library made me realize there are lots of places where we don't malloc one byte for empty arrays. I'd prefer to add the zero check to runtime/memory.c

Re: [RFC] Fix full memory barrier on SPARC-V8

2011-06-29 Thread Eric Botcazou
Linux doesn't ever run the cpu in the RMO memory model any more. All sparc64 chips run only in TSO now. All of the Niagara chips implement an even stricter than TSO memory model, and the membars we used to have all over the kernel to handle that properly were just wasted I-cache space. So

Re: [PATCH, i386] Enable -mprefer-avx128 by default for Bulldozer

2011-06-29 Thread Jan Hubicka
* config/i386/i386.opt (mprefer-avx128): Redefine the flag as a Mask option. * config/i386/i386.h (ix86_tune_indices): Add X86_TUNE_AVX128_OPTIMAL entry. (TARGET_AVX128_OPTIMAL): New definition. * config/i386/i386.c (initial_ix86_tune_features): Initialize

Re: [PATCH, i386] Enable -mprefer-avx128 by default for Bulldozer

2011-06-29 Thread Jakub Jelinek
On Wed, Jun 29, 2011 at 09:49:52AM +0200, Jan Hubicka wrote: * config/i386/i386.opt (mprefer-avx128): Redefine the flag as a Mask option. * config/i386/i386.h (ix86_tune_indices): Add X86_TUNE_AVX128_OPTIMAL entry. (TARGET_AVX128_OPTIMAL): New definition. *

Re: Ping #1: [Patch, AVR]: Fix PR34734

2011-06-29 Thread Georg-Johann Lay
Denis Chertykov wrote: 2011/6/28 Georg-Johann Lay a...@gjlay.de: http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01462.html Georg-Johann Lay wrote: PR34734 produces annoying, false warnings if __attribute__((progmem)) is used in conjunction with C++. DECL_INITIAL is not yet set up in

Re: Unreviewed build/libgcc, mudflap patches

2011-06-29 Thread Arnaud Charlet
[ada, build] Link gnattools with $(LIBINTL) http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01443.html This needs a build and/or Ada maintainer. I guess this is obvious, though. Can you clarify how LIBINTL is set, and to what value? Will it be empty when not needed? Arno

Re: Unreviewed build/libgcc, mudflap patches

2011-06-29 Thread Rainer Orth
Arnaud, [ada, build] Link gnattools with $(LIBINTL) http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01443.html This needs a build and/or Ada maintainer. I guess this is obvious, though. Can you clarify how LIBINTL is set, and to what value? Will it be empty when not needed?

[committed] Fix ICE in mem_loc_descriptor (PR debug/49567)

2011-06-29 Thread Jakub Jelinek
Hi! My assumption that SIGN/ZERO_EXTEND will always have MODE_INT class mode was provably wrong, as can be seen on the attached testcase where mode is integer vector. Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, committed as obvious. 2011-06-29 Jakub Jelinek

Re: Unreviewed build/libgcc, mudflap patches

2011-06-29 Thread Arnaud Charlet
[ada, build] Link gnattools with $(LIBINTL) http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01443.html This needs a build and/or Ada maintainer. I guess this is obvious, though. Can you clarify how LIBINTL is set, and to what value? Will it be empty when not

[testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread Rainer Orth
A fresh look at the remaining two libffi testsuite failures on IRIX 6.5 revealed why they cannot currently work: FAIL: libffi.call/cls_double_va.c -O0 -W -Wall output pattern test, is 0.0 FAIL: libffi.call/cls_longdouble_va.c -O0 -W -Wall output pattern test, is 0.0 Those tests pass floating

Re: [testsuite] Remove dg-extra-errors in gcc.dg/inline_[12].c etc.

2011-06-29 Thread Rainer Orth
David, Your fix works ok for me (on x86-64/linux) too. based on that, I've installed the patch. Thanks. Rainer -- - Rainer Orth, Center for Biotechnology, Bielefeld University

Re: [testsuite, objc] Don't XFAIL objc.dg/torture/forward-1.m

2011-06-29 Thread Iain Sandoe
On 28 Jun 2011, at 18:01, Iain Sandoe wrote: On 28 Jun 2011, at 17:47, Rainer Orth wrote: objc.dg/torture/forward-1.m now seems to XPASS everywhere, creating an annoying amount of testsuite noise. Dominique provided the following patch in PR libobjc/Bug 36610. Tested with the appropriate

Re: Unreviewed build/libgcc, mudflap patches

2011-06-29 Thread Paolo Bonzini
On 06/27/2011 01:32 PM, Rainer Orth wrote: Support libmudflap on Solaris (PR libmudflap/38738) http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01446.html This needs the mudflap maintainer. Build changes are okay, the rest is pretty obvious. For pass-stratcliff I'd rather use

Re: [build] Move MD_UNWIND_SUPPORT to toplevel libgcc

2011-06-29 Thread Paolo Bonzini
On 06/21/2011 12:04 PM, Rainer Orth wrote: For md_unwind_header on the other hand, you'd have almost as many cases as in the general case. I fear it's hard to have the configuration split over too many places. So I'd suggest to split the affected cases into Linux and non-Linux ones, with the

Re: PATCH [2/n]: Prepare x32: Convert pointer to TLS symbol if needed

2011-06-29 Thread Richard Sandiford
H.J. Lu hongjiu...@intel.com writes: @@ -706,7 +706,13 @@ precompute_register_parameters (int num_actuals, struct arg_data *args, pseudo now. TLS symbols sometimes need a call to resolve. */ if (CONSTANT_P (args[i].value) !targetm.legitimate_constant_p

Re: Unreviewed build/libgcc, mudflap patches

2011-06-29 Thread Rainer Orth
Paolo, On 06/27/2011 01:32 PM, Rainer Orth wrote: Support libmudflap on Solaris (PR libmudflap/38738) http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01446.html This needs the mudflap maintainer. Build changes are okay, the rest is pretty obvious. For pass-stratcliff I'd

[PATCH, ARM] [1/3] iWMMXt intrinsics maintenance and pipeline description

2011-06-29 Thread Xinyu Qi
Hi, This patch maintains iWMMXt intrinsics code, and adds WMMX pipeline description. *config/arm/arm.c (arm_option_override): Enable iWMMt with VFP (enum arm_builtins): Add/fix iWMMXT/iWMMXT2 intrinsics. (builtin_description bdesc_2arg): Same. (builtin_description bdesc_1arg): Same.

[PATCH, ARM] [2/3] iWMMXt intrinsics testsuite

2011-06-29 Thread Xinyu Qi
Hi, This patch adds some simple iWMMXt intrinsic test cases. gcc.target/arm/iwmmxt/i_shift_error.c: New. gcc.target/arm/iwmmxt/iwmmxt.exp: New. gcc.target/arm/iwmmxt/i_wshufh_error.c: New. gcc.target/arm/iwmmxt/i_merge_si64_error.c: New. gcc.target/arm/iwmmxt/i_waligni_error.c: New.

[PATCH, ARM] [3/3] iWMMXt intrinsics documentation

2011-06-29 Thread Xinyu Qi
Hi, This patch adds iWMMXt intrinsics documentation into gcc doc. doc/extend.texi: Update iwmmxt intrinsics doc. doc/arm-iwmmxt-intrinsics.texi: New. Thanks, Xinyu iwmmxt_doc.patch Description: iwmmxt_doc.patch

Re: [patch] Fix oversight in tuplification of DOM

2011-06-29 Thread Richard Guenther
On Tue, Jun 28, 2011 at 10:36 PM, Eric Botcazou ebotca...@adacore.com wrote: Hi, the attached testcase triggers an ICE when compiled at -O or above, on all the open branches.  This is a regression introduced with the tuplification.  The problem is that 2 ARRAY_RANGE_REFs are recognized as

Re: PR 49169: testing the alignment of a function

2011-06-29 Thread Richard Guenther
On Wed, Jun 29, 2011 at 10:28 AM, Richard Sandiford rdsandif...@googlemail.com wrote: H.J. Lu hjl.to...@gmail.com writes: This caused: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49545 Sorry for the breakage.  I should obviously have tested on x86_64 as well. To recap, there are (at least)

Re: [build] Move unwinder to toplevel libgcc

2011-06-29 Thread Paolo Bonzini
On 06/20/2011 02:24 PM, Rainer Orth wrote: * The only unwinder-related macro I haven't moved is LIBGCC2_UNWIND_ATTRIBUTE. It is only defined gcc/config/mips/mips.h. I suppose we would need a libgcc equivalent of tm.h for that, something I didn't want to attack at this point.

Re: [build] Move unwinder to toplevel libgcc

2011-06-29 Thread Rainer Orth
Paolo Bonzini bonz...@gnu.org writes: On 06/20/2011 02:24 PM, Rainer Orth wrote: * The only unwinder-related macro I haven't moved is LIBGCC2_UNWIND_ATTRIBUTE. It is only defined gcc/config/mips/mips.h. I suppose we would need a libgcc equivalent of tm.h for that, something I

[testsuite, ada] Cope with HP-UX sh in run_acats (PR ada/49511)

2011-06-29 Thread Rainer Orth
As described in the PR, HP-UX /bin/sh type -p ignores the -p, so we need to extract the last field of the output just as for regular type. The following patch does this, tested by Dave and bootstrapped on sparc-sun-solaris2.11. Ok for mainline, 4.6 and 4.5 branches? Thanks. Rainer

Re: [PATCH, ARM] [1/3] iWMMXt intrinsics maintenance and pipeline description

2011-06-29 Thread Richard Earnshaw
On 29/06/11 09:48, Xinyu Qi wrote: Hi, This patch maintains iWMMXt intrinsics code, and adds WMMX pipeline description. *config/arm/arm.c (arm_option_override): Enable iWMMt with VFP (enum arm_builtins): Add/fix iWMMXT/iWMMXT2 intrinsics. (builtin_description bdesc_2arg): Same.

Re: Richard Sandiford appointed RTL maintainer

2011-06-29 Thread Richard Sandiford
Gerald Pfeifer ger...@pfeifer.com writes: It's my pleasure to announce that, also based on the recommendation of Eric Botcazou as the current maintainer in that area¹, the steering committee is appointing Richard Sandiford as an additional RTL optimizers maintainer. Please adjust the

Re: [patch tree-optimization]: Do bitwise operator optimizations for X op !X patterns

2011-06-29 Thread Richard Guenther
On Tue, Jun 28, 2011 at 5:05 PM, Kai Tietz kti...@redhat.com wrote: Hello, this patch implements the X op !X patterns within tree-ssa-forwprop.c without using here const-fold routines.  Additionally it does some trivial folding for X op X.  Implementation also looks through [(type)] X op

Re: [build] Move unwinder to toplevel libgcc

2011-06-29 Thread Joseph S. Myers
On Wed, 29 Jun 2011, Paolo Bonzini wrote: On 06/20/2011 02:24 PM, Rainer Orth wrote: * The only unwinder-related macro I haven't moved is LIBGCC2_UNWIND_ATTRIBUTE. It is only defined gcc/config/mips/mips.h. I suppose we would need a libgcc equivalent of tm.h for that, something

[ARM] Deprecate -mwords-little-endian

2011-06-29 Thread Richard Sandiford
ARM has an option called -mwords-little-endian that provides big-endian compatibility with pre-2.8 compilers. When I asked Richard about it, he seemed to think it had outlived its usefulness, so this patch deprecates it. We can then remove it once 4.7 is out. Tested on arm-linux-gnueabi. OK to

Re: Ping #1: [Patch, AVR]: Fix PR34734

2011-06-29 Thread Georg-Johann Lay
Denis Chertykov wrote: 2011/6/29 Georg-Johann Lay a...@gjlay.de: Denis Chertykov wrote: 2011/6/28 Georg-Johann Lay a...@gjlay.de: http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01462.html Georg-Johann Lay wrote: PR34734 produces annoying, false warnings if __attribute__((progmem)) is used in

Re: [build] Move unwinder to toplevel libgcc

2011-06-29 Thread Rainer Orth
Joseph S. Myers jos...@codesourcery.com writes: I interpreted Rainer's comment as meaning that a libgcc/config/mips/mips-lib.h (or similar) file would need to be created and inserted in the right place in libgcc_tm_file for the large number of targets presently putting mips.h in tm_file.

Re: [build] Move unwinder to toplevel libgcc

2011-06-29 Thread Rainer Orth
Paolo Bonzini bonz...@gnu.org writes: I think Rainer missed the existence of libgcc_tm_file. :) I didn't, but it lives in gcc/config.gcc, which is contrary to the move from gcc to libgcc. Rainer -- - Rainer

Re: [patch tree-optimization]: Do bitwise operator optimizations for X op !X patterns

2011-06-29 Thread Kai Tietz
- Original Message - From: Richard Guenther richard.guent...@gmail.com To: Kai Tietz kti...@redhat.com Cc: gcc-patches@gcc.gnu.org Sent: Wednesday, June 29, 2011 12:14:10 PM Subject: Re: [patch tree-optimization]: Do bitwise operator optimizations for X op !X patterns On Tue, Jun 28,

Re: PATCH [10/n]: Prepare x32: PR rtl-optimization/49114: Reload failed to handle (set reg:X (plus:X (subreg:X (reg:Y) 0) (const

2011-06-29 Thread Ulrich Weigand
H.J. Lu wrote: * reload.c (struct replacement): Remove SUBREG_LOC member. (push_reload): Do not set it. (push_replacement): Likewise. (subst_reload): Remove dead code. (copy_replacements): Remove assertion. (copy_replacements_1): Do not handle

Re: [PATCH, SRA] Total scalarization and padding

2011-06-29 Thread Richard Guenther
On Tue, 28 Jun 2011, Martin Jambor wrote: Hi, On Tue, Jun 28, 2011 at 03:01:17PM +0200, Richard Guenther wrote: On Tue, Jun 28, 2011 at 2:50 PM, Martin Jambor mjam...@suse.cz wrote: Hi, at the moment SRA can get confused by alignment padding and think that it actually contains

Re: [testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread Rainer Orth
Richard Guenther richard.guent...@gmail.com writes: The tests now fail on x86_64-linux and i?86-linux like FAIL: libffi.call/cls_double_va.c -O0 -W -Wall output pattern test, is 7.0 FAIL: libffi.call/cls_longdouble_va.c -O0 -W -Wall output pattern test, is 7.0 FAIL:

Re: [patch tree-optimization]: Do bitwise operator optimizations for X op !X patterns

2011-06-29 Thread Kai Tietz
- Original Message - From: Kai Tietz kti...@redhat.com To: Richard Guenther richard.guent...@gmail.com Cc: gcc-patches@gcc.gnu.org Sent: Wednesday, June 29, 2011 1:33:30 PM Subject: Re: [patch tree-optimization]: Do bitwise operator optimizations for X op !X patterns - Original

Re: [ARM] Deprecate -mwords-little-endian

2011-06-29 Thread Richard Earnshaw
On 29/06/11 12:28, Richard Sandiford wrote: ARM has an option called -mwords-little-endian that provides big-endian compatibility with pre-2.8 compilers. When I asked Richard about it, he seemed to think it had outlived its usefulness, so this patch deprecates it. We can then remove it once

Re: [testsuite] ARM wmul tests: require arm_dsp_multiply

2011-06-29 Thread Richard Earnshaw
On 23/06/11 22:38, Janis Johnson wrote: Tests wmul-[1234].c and mla-2.c in gcc.target/arm require support that the arm backend identifies as TARGET_DSP_MULTIPLY. The tests all specify a -march option with that support, but it is overridden by multilib flags. This patch adds a new effective

RE: Ping #1: [Patch, AVR]: Fix PR34734

2011-06-29 Thread Weddington, Eric
-Original Message- From: Georg-Johann Lay [mailto:a...@gjlay.de] Sent: Wednesday, June 29, 2011 5:26 AM To: Denis Chertykov Cc: gcc-patches@gcc.gnu.org; Weddington, Eric; Anatoly Sokolov Subject: Re: Ping #1: [Patch, AVR]: Fix PR34734 You can backport it if you want. I'm

Re: [ARM] fix C++ EH interoperability

2011-06-29 Thread Richard Earnshaw
On 23/05/11 16:52, Nathan Sidwell wrote: This patch fixes an interoperability issue with code generated by ARM's EABI compiler. Unlike the generic C++ ABI, which always catches pointers by value, ARM's ABI only catches pointers by value when there's the possibility of derived-base

Re: [testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread H.J. Lu
On Wed, Jun 29, 2011 at 5:52 AM, Rainer Orth r...@cebitec.uni-bielefeld.de wrote: Richard Guenther richard.guent...@gmail.com writes: The tests now fail on x86_64-linux and i?86-linux like FAIL: libffi.call/cls_double_va.c -O0 -W -Wall output pattern test, is 7.0 FAIL:

Re: [testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread Rainer Orth
H.J. Lu hjl.to...@gmail.com writes: Index: libffi/testsuite/libffi.call/cls_double_va.c === --- libffi/testsuite/libffi.call/cls_double_va.c        (revision 175618) +++ libffi/testsuite/libffi.call/cls_double_va.c        

Re: [PATCH, ARM] [2/3] iWMMXt intrinsics testsuite

2011-06-29 Thread Richard Earnshaw
On 29/06/11 09:50, Xinyu Qi wrote: Hi, This patch adds some simple iWMMXt intrinsic test cases. gcc.target/arm/iwmmxt/i_shift_error.c: New. gcc.target/arm/iwmmxt/iwmmxt.exp: New. gcc.target/arm/iwmmxt/i_wshufh_error.c: New. gcc.target/arm/iwmmxt/i_merge_si64_error.c: New.

Re: [testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread David Gilbert
On 29 June 2011 14:43, Rainer Orth r...@cebitec.uni-bielefeld.de wrote: -/* { dg-output PR libffi/46660 { xfail mips-sgi-irix6* } } */ +/* { dg-output { xfail mips-sgi-irix6* } } PR libffi/46660 */ Do you fancy adding the appropriate MIPS fix on top of the libffi varargs patch I posted a few

Re: [testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread Rainer Orth
David Gilbert david.gilb...@linaro.org writes: On 29 June 2011 14:43, Rainer Orth r...@cebitec.uni-bielefeld.de wrote: -/* { dg-output PR libffi/46660 { xfail mips-sgi-irix6* } } */ +/* { dg-output { xfail mips-sgi-irix6* } } PR libffi/46660 */ Do you fancy adding the appropriate MIPS fix

Re: [testsuite] skip ARM tests if no thumb2 support

2011-06-29 Thread Richard Earnshaw
On 15/06/11 17:38, Janis Johnson wrote: On 06/15/2011 01:13 AM, Ramana Radhakrishnan wrote: On 14 June 2011 21:35, Janis Johnson jani...@codesourcery.com wrote: These tests apparently require thumb2 support (I don't yet know much about ARM). OK for trunk, and later 4.6? OK - The

Re: PATCH [2/n]: Prepare x32: Convert pointer to TLS symbol if needed

2011-06-29 Thread H.J. Lu
On Wed, Jun 29, 2011 at 1:45 AM, Richard Sandiford richard.sandif...@linaro.org wrote: H.J. Lu hongjiu...@intel.com writes: @@ -706,7 +706,13 @@ precompute_register_parameters (int num_actuals, struct arg_data *args,          pseudo now.  TLS symbols sometimes need a call to resolve.  */    

C++ PATCHes to list-value-initialization

2011-06-29 Thread Jason Merrill
The first patch implements the resolution of DR 990, which clarifies that {} means value-initialization if the type has a default constructor. The second patch fixes a bug in the standard I noticed while looking at related issues: it says that if a class has any user-provided constructor, we

C++ PATCHes for c++/45923 (constexpr diagnostics)

2011-06-29 Thread Jason Merrill
In C++0x when an expression fails to satisfy the requirements of a constant expression it can be hard to figure out why; previously the compiler would just say that a particular class or function was not literal or constexpr without explaining why. This patch improves diagnostics by having

Re: [PATCH] Un-obsolete Interix

2011-06-29 Thread Douglas Rupp
An update to the IA-32/x86-64 section seems the right place. I confess to being ignorant about how to update this html page. Please advise. --Doug On 12 Jun 2011, Gerald Pfeifer wrote: And I assume you'll be updating the release notes at http://gcc.gnu.org/gcc-4.7/changes.html . ;-)

Re: [testsuite] skip ARM tests if no thumb2 support

2011-06-29 Thread Janis Johnson
On 06/29/2011 06:55 AM, Richard Earnshaw wrote: On 15/06/11 17:38, Janis Johnson wrote: On 06/15/2011 01:13 AM, Ramana Radhakrishnan wrote: On 14 June 2011 21:35, Janis Johnson jani...@codesourcery.com wrote: These tests apparently require thumb2 support (I don't yet know much about ARM). OK

[Patch, AVR]: Cleanup avr.c a bit

2011-06-29 Thread Georg-Johann Lay
This patch is mostly mechanical: Add some comment, break long lines, use CONST_INT_P instead of CONST_INT == GET_CODE(). The targetm initializer is moved down in the file similar to m32c, s390, alpha, etc. back ends. That way a hook can be defined on the fly: static foo_t foo_hook (foo_args) {

Re: [Patch, AVR]: Cleanup avr.c a bit

2011-06-29 Thread Andreas Schwab
Georg-Johann Lay a...@gjlay.de writes: @@ -1257,17 +1129,19 @@ print_operand_address (FILE *file, rtx a rtx x = addr; if (GET_CODE (x) == CONST) x = XEXP (x, 0); - if (GET_CODE (x) == PLUS GET_CODE (XEXP (x,1)) == CONST_INT) + if (GET_CODE (x) == PLUS

Backport patches that are correctness or performance bug fixes for latest AMD/Intel hardware.

2011-06-29 Thread harsha.jagasia
Is it ok to commit backported patch from trunk below to gcc 4.6 as long as bootstrap and tests pass (ongoing)? This is one of the patches that is significant enough a bug for recent AMD and Intel hardware. 2011-06-29 Harsha Jagasia harsha.jaga...@amd.com Backport from mainline

Re: [PATCH, PR 49089] Don't split AVX256 unaligned loads by default on bdver1 and generic

2011-06-29 Thread Eric Botcazou
Thanks, Note that there is no i386 component in Bugzilla, only a target so this should have been PR target/49089. The end result is that there are no xrefs in the PR, which is still open btw. So please add the xrefs to the commits in the PR manually and close it if you are done with it. --

Re: [testsuite] skip ARM tests if no thumb2 support

2011-06-29 Thread Richard Sandiford
Janis Johnson jani...@codesourcery.com writes: On 06/29/2011 06:55 AM, Richard Earnshaw wrote: I'd posit a third option: 3. Add a new dg directive (perhaps dg-ignore-multilib) that instructs the framework to ignore the multilib options entirely (only supported for compile/assembly tests).

Re: [PATCH] Split out SCEV dumping

2011-06-29 Thread Sebastian Pop
On Wed, Jun 29, 2011 at 09:27, Richard Guenther rguent...@suse.de wrote: I'm finally annoyed enough about this to do the patch splitting out SCEV details dumping to a TDF_SCEV (-scev) flag. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Looks very good. Thanks for

Re: PATCH [5/n]: Prepare x32: PR middle-end/48016: Inconsistency in non-local goto save area

2011-06-29 Thread Michael Matz
Hi, On Wed, 29 Jun 2011, H.J. Lu wrote: diff --git a/gcc/function.c b/gcc/function.c index 81c4d39..131bc09 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -4780,7 +4780,7 @@ expand_function_start (tree subr)                       cfun-nonlocal_goto_save_area,                  

Re: Backport patches that are correctness or performance bug fixes for latest AMD/Intel hardware.

2011-06-29 Thread Jakub Jelinek
On Wed, Jun 29, 2011 at 11:03:55AM -0500, harsha.jaga...@amd.com wrote: Is it ok to commit backported patch from trunk below to gcc 4.6 as long as bootstrap and tests pass (ongoing)? This is one of the patches that is significant enough a bug for recent AMD and Intel hardware. Yeah, this is ok

[commit] Fix -Werror build break (Re: PATCH [10/n]: Prepare x32: PR rtl-optimization/49114)

2011-06-29 Thread Ulrich Weigand
H.J. Lu wrote: * reload.c (struct replacement): Remove SUBREG_LOC member. (push_reload): Do not set it. (push_replacement): Likewise. (subst_reload): Remove dead code. (copy_replacements): Remove assertion. (copy_replacements_1): Do not

Re: PATCH [2/n]: Prepare x32: Convert pointer to TLS symbol if needed

2011-06-29 Thread H.J. Lu
On Wed, Jun 29, 2011 at 7:06 AM, H.J. Lu hjl.to...@gmail.com wrote: On Wed, Jun 29, 2011 at 1:45 AM, Richard Sandiford richard.sandif...@linaro.org wrote: H.J. Lu hongjiu...@intel.com writes: @@ -706,7 +706,13 @@ precompute_register_parameters (int num_actuals, struct arg_data *args,        

Re: [cxx-mem-model] __sync_mem_load

2011-06-29 Thread Richard Henderson
On 06/23/2011 03:50 PM, Andrew MacLeod wrote: * doc/extend.texi (__sync_mem_load): Document. * c-family/c-common.c (resolve_overloaded_builtin): Add BUILT_IN_SYNC_MEM_LOAD_N. * optabs.c (expand_sync_mem_load): New. * optabs.h (enum direct_optab_index): Add

C++ PATCH for c++/49520 (bogus error with using in constexpr)

2011-06-29 Thread Jason Merrill
A CLEANUP_POINT_EXPR wraps each statement, so we need to strip it at a lower level. Tested x86_64-pc-linux-gnu, applied to trunk. commit 505b4baa3619375d81b409f9ff2bde95cce0f50a Author: Jason Merrill ja...@redhat.com Date: Wed Jun 29 12:43:19 2011 -0400 PR c++/49520 * semantics.c

C++ PATCH for c++/49554 (bogus error with lambda in template)

2011-06-29 Thread Jason Merrill
The failure in this testcase was happening because we were trying to evaluate the capture decltype again when instantiating the lambda operator(), but it only works when we're still in the enclosing function context. Fixed by basically waiting to copy the type over at instantiation time

[PATCH 1/6] Correct typo.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop sebastian@amd.com * graphite-clast-to-gimple.c (clast_name_to_index): Add missing space. --- gcc/ChangeLog |4 gcc/graphite-clast-to-gimple.c |2 +- 2 files changed, 5 insertions(+), 1 deletions(-) diff --git a/gcc/ChangeLog

[PATCH 2/6] Correct computation of max.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop sebastian@amd.com * graphite-ppl.h (value_max): Correct computation of max. --- gcc/ChangeLog |4 gcc/graphite-ppl.h |3 ++- 2 files changed, 6 insertions(+), 1 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index

[PATCH 0/6] Fix PR47654

2011-06-29 Thread Sebastian Pop
Hi, the following patch set fixes PR47654: Correct typo. Correct computation of max. Fix PR47654: Loop blocking should strip-mine at least two loops. Fix computation of precision. Compute the type of the IV based only on the CLAST bounds. Fix PR47654: Compute LB and UB of a CLAST

[PATCH 5/6] Compute the type of the IV based only on the CLAST bounds.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop sebastian@amd.com * graphite-clast-to-gimple.c (compute_bounds_for_level): Removed. (compute_type_for_level): Removed. (clast_get_body_of_loop): Removed. (gcc_type_for_iv_of_clast_loop): Removed. (graphite_create_new_loop):

[PATCH 3/6] Fix PR47654: Loop blocking should strip-mine at least two loops.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop sebastian@amd.com PR tree-optimization/47654 * graphite-blocking.c (pbb_strip_mine_time_depth): Do not return bool. (lst_do_strip_mine_loop): Return an int. (lst_do_strip_mine): Same. (scop_do_strip_mine): Same.

[PATCH 6/6] Fix PR47654: Compute LB and UB of a CLAST expression.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop sebastian@amd.com PR tree-optimization/47654 * graphite-clast-to-gimple.c (gcc_type_for_value): Removed. (gcc_type_for_clast_term): Removed. (gcc_type_for_clast_red): Removed. (gcc_type_for_clast_bin): Removed.

Re: [cxx-mem-model] __sync_mem_load

2011-06-29 Thread Richard Henderson
On 06/23/2011 03:50 PM, Andrew MacLeod wrote: + (define_expand sync_mem_loadmode + [(match_operand:SWI 0 register_operand ) ;; output +(match_operand:SWI 1 memory_operand );; memory +(match_operand:SI 2 const_int_operand )];; memory model + + { +

[PATCH 4/6] Fix computation of precision.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop sebastian@amd.com * graphite-clast-to-gimple.c (precision_for_value): Removed. (precision_for_interval): Removed. (gcc_type_for_interval): Use mpz_sizeinbase. --- gcc/ChangeLog |6 +++ gcc/graphite-clast-to-gimple.c |

Re: [testsuite, ada] Cope with HP-UX sh in run_acats (PR ada/49511)

2011-06-29 Thread Arnaud Charlet
As described in the PR, HP-UX /bin/sh type -p ignores the -p, so we need to extract the last field of the output just as for regular type. The following patch does this, tested by Dave and bootstrapped on sparc-sun-solaris2.11. Ok for mainline, 4.6 and 4.5 branches? OK

[Patch] Fix objc/48109

2011-06-29 Thread Iain Sandoe
The bug arises because of the use, by the ObjC FE, of two old target macros that emit efficient representations of class definitions and references. This 'works fine' (however wrong it might be conceptually), until LTO is engaged, whereupon the definitions vanish without trace (since no

Re: [testsuite] skip ARM tests if no thumb2 support

2011-06-29 Thread Janis Johnson
On 06/29/2011 06:55 AM, Richard Earnshaw wrote: 3. Add a new dg directive (perhaps dg-ignore-multilib) that instructs the framework to ignore the multilib options entirely (only supported for compile/assembly tests). There are a lot of target-specific tests that are not really testing

Re: [Design notes, RFC] Address-lowering prototype design (PR46556)

2011-06-29 Thread William J. Schmidt
On Tue, 2011-06-14 at 15:39 +0200, Richard Guenther wrote: On Fri, Jun 10, 2011 at 5:11 PM, William J. Schmidt wschm...@linux.vnet.ibm.com wrote: On Tue, 2011-06-07 at 16:49 +0200, Richard Guenther wrote: On Tue, Jun 7, 2011 at 4:14 PM, William J. Schmidt wschm...@linux.vnet.ibm.com wrote:

Re: [PATCH, MELT] correct meltgc_read_from_val without location

2011-06-29 Thread Pierre
Hello, here is an improvment to http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01888.html. The function meltgc_read_from_val (in melt-runtime.c) takes two arguments, a string value and a second one which is a location. In the comments, it is written that we can pass a NULL pointer if we have

Re: [PATCH, MELT] correct meltgc_read_from_val without location

2011-06-29 Thread Basile Starynkevitch
On Wed, 29 Jun 2011 20:32:08 +0200 Pierre p.vit...@laposte.net wrote: Hello, here is an improvment to http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01888.html. Thanks. I applied it with minor changes on the MELT branch. {spelling mistakes indentation mostly}. Perhaps a future

Re: [gcc patch] Re: C++ member function template id not matching linkage name (PR debug/49408)

2011-06-29 Thread Jan Kratochvil
++ (GCC) 4.7.0 20110629 (experimental) (Regression testing underway.) Thanks, Jan libiberty/ 2011-06-29 Jan Kratochvil jan.kratoch...@redhat.com * cp-demangle.c (d_print_comp): Suppress argument list for function references by the '' unary operator. Keep also already processed

Re: cleanup patch

2011-06-29 Thread François Dumont
Attached patch applied 2011-06-29 François Dumont francois.cppd...@free.fr * include/debug/set.h, unordered_map, multiset.h, forward_list, unordered_set, vector, deque, string, list, multimap.h: Remove base class default constructor calls. * include/debug/map.h:

[pph] Fix ICE during gimplification (issue4636074)

2011-06-29 Thread Diego Novillo
This patch fixes an ICE during gimplification. When reading a STATEMENT_LIST, we were calling append_to_statement_list, but at that point some elements in the list do not have side-effects (the final VAR_DECL in a stmt expression), so we were dropping it out. Fixed by force-adding every

[pph] Allow DECL_LANG_SPECIFIC to be shared (issue4667049)

2011-06-29 Thread Diego Novillo
This is a patch that Lawrence and I were working on yesterday that I need for my next patch. We were not expecting DECL_LANG_SPECIFIC to be shared, but in fact there are several occasions (thunks, aliases) where it is shared. By itself, this does not fix any tests, but it fixes a problem exposed

[pph] Fix ICE during function expansion (issue4662067)

2011-06-29 Thread Diego Novillo
This patch fixes a segmentation fault during function expansion by delaying all expansions to happen after the PPH file has been read. The patch fixes one test (x1template.cc), but it exposes a common ICE in resume_scope in other two tests. Lawrence, this is the ICE that you are now looking at,

Re: [gcc patch] Re: C++ member function template id not matching linkage name (PR debug/49408)

2011-06-29 Thread Jason Merrill
On 06/29/2011 04:00 PM, Jan Kratochvil wrote: On Mon, 27 Jun 2011 20:00:24 +0200, Jason Merrill wrote: They should be supressed whenever the function appears in an expression context, either as a pointer to member function (i.e. the operand of '') Done, therefore it is no longer restricted

Re: [trans-mem] Beginning of refactoring

2011-06-29 Thread Torvald Riegel
Patch contains more clean-up: the trycommit, rollback and registerThrownObject functions in the ABI are unnecessary for how we support exception handling. Ok for branch? commit 79ae722913f40715882b4c7b3fb798306f1ad3ae Author: Torvald Riegel trie...@redhat.com Date: Wed Jun 29 23:05:28 2011

C++ PATCH for c++/49003 (DR 1207, use of 'this' in trailing return type)

2011-06-29 Thread Jason Merrill
This patch adds support for use of 'this' (implicitly or explicitly) in the trailing-return-type of a member function. Tested x86_64-pc-linux-gnu, applying to trunk. commit 8154a9854f1d5ff3407af1707d112899eb39f013 Author: Jason Merrill ja...@redhat.com Date: Wed Jun 29 15:19:46 2011 -0400

Re: C++ PATCH for c++/49554 (bogus error with lambda in template)

2011-06-29 Thread Jason Merrill
While looking at this issue, I also noticed that we were substituting into DECL_INITIAL more than we need to. Tested x86_64-pc-linux-gnu, applying to trunk. commit 327bbebe3243b0423932862d3d12f92928853e9c Author: Jason Merrill ja...@redhat.com Date: Wed Jun 29 14:21:17 2011 -0400 * pt.c

[PATCH] Sign extend before converting constants to GMP values.

2011-06-29 Thread Sebastian Pop
Hi, This patch fixes PR47653 by sign extending the double int constants before converting them to a GMP value. There still are some places where we should not sign extend the values converted: upper bounds of unsigned types should for example not be sign extended. The patch passed make -k check

Re: [trans-mem] Beginning of refactoring

2011-06-29 Thread Richard Henderson
On 06/29/2011 02:12 PM, Torvald Riegel wrote: Patch contains more clean-up: the trycommit, rollback and registerThrownObject functions in the ABI are unnecessary for how we support exception handling. Ok for branch? Looks good. r~

[PATCH] Reintroduce repeat field for ctors (PR fortran/49540)

2011-06-29 Thread Jakub Jelinek
Hi! As discussed in the PR and can be seen on the first testcase, the removal of repeat field for ctors resulted in huge memory consumption of the fortran FE on some real-world testcases (the first testcase needs several GB of memory to compile). This patch reintroduces the repeat field and

[PATCH] Fix empty .debug_abbrev handling (PR debug/49364)

2011-06-29 Thread Jakub Jelinek
Hi! Mark has recently changed dwarf2out to not emit anything into .debug_abbrev section if there are no abbreviations, but as Rainer has reported, some vendor tools are upset about it. We were still emitting the .debug_abbrev section, just with zero size, in order to emit the .Ldebug_abbrev0

[PATCH 00/12] Eliminate the text-based dwarf2out interface

2011-06-29 Thread Richard Henderson
In preparation for the changes required to support shrink-wrapping, it makes things Much Easier if we no longer have to handle seeing new unwind states being introduced during pass_final, while emitting the actual assembly. Thus we want to convert everything that used the text-based interfaces to

[PATCH 01/12] dwarf2out: Convert regs_saved_in_regs to VEC.

2011-06-29 Thread Richard Henderson
Also pull out value insertion into a subroutine. --- gcc/dwarf2out.c | 115 +++ 1 files changed, 65 insertions(+), 50 deletions(-) diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 3d63d7b..3ecdd94 100644 --- a/gcc/dwarf2out.c +++

[PATCH 02/12] dwarf2out: Handle pc_rtx as return column in REG_CFA_OFFSET too.

2011-06-29 Thread Richard Henderson
--- gcc/dwarf2out.c | 18 ++ 1 files changed, 14 insertions(+), 4 deletions(-) diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 3ecdd94..6fad7e9 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -1982,6 +1982,7 @@ dwarf2out_frame_debug_cfa_offset (rtx set, const char

[PATCH 09/12] ia64: Remove dead code in process_epilogue.

2011-06-29 Thread Richard Henderson
--- gcc/config/ia64/ia64.c | 35 ++- 1 files changed, 2 insertions(+), 33 deletions(-) diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index b37919c..bdabe82 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -9620,29 +9620,6 @@

[PATCH 08/12] ia64: Use pc_rtx to save the return address.

2011-06-29 Thread Richard Henderson
When actually emitting dwarf2, this now produces proper results. When emitting ia64 unwind info, this removes a hard-coded assumption. --- gcc/config/ia64/ia64.c | 17 ++--- 1 files changed, 10 insertions(+), 7 deletions(-) diff --git a/gcc/config/ia64/ia64.c

[PATCH 07/12] ia64: Remove ia64_dwarf2out_def_steady_cfa.

2011-06-29 Thread Richard Henderson
This defines nothing that we can't deduce already, so remove it. --- gcc/config/ia64/ia64.c | 24 1 files changed, 0 insertions(+), 24 deletions(-) diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index 0a6f2e6..bb3fc4d 100644 --- a/gcc/config/ia64/ia64.c

[PATCH 06/12] ia64: Issue REG_CFA_REGISTER for ar.pfs at alloc insn.

2011-06-29 Thread Richard Henderson
--- gcc/config/ia64/ia64.c |9 - 1 files changed, 8 insertions(+), 1 deletions(-) diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index c06903d..0a6f2e6 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -3249,7 +3249,14 @@ ia64_expand_prologue (void)

  1   2   >