PowerPC testsuite tweak

2011-05-10 Thread Alan Modra
This test runs, not just compiles. Applied as obvious. * gcc.target/powerpc/pr47755-2.c: Require vsx_hw. Index: gcc/testsuite/gcc.target/powerpc/pr47755-2.c === --- gcc/testsuite/gcc.target/powerpc/pr47755-2.c(revisi

Re: Remember/restore ALLOCA_FOR_VAR_P over tuples

2011-05-10 Thread H.J. Lu
On Fri, Apr 15, 2011 at 1:20 PM, Michael Matz wrote: > Hi, > > On Thu, 14 Apr 2011, Michael Matz wrote: > >> > Btw, I don't remember why I chose ALLOCA_FOR_VAR_P over >> > CALL_ALLOCA_FOR_VAR_P but, given the name of the GIMPLE flag and >> > predicate, it's probably time to change it. >> >> Good i

Re: Fix WPA corruption seen in LTO bootstrap

2011-05-10 Thread H.J. Lu
On Tue, May 10, 2011 at 8:12 PM, H.J. Lu wrote: > On Sat, Apr 23, 2011 at 6:33 PM, Jan Hubicka wrote: >> Hi, >> the problems with LTO build reported by Toon is caused by a hack disabling >> jump function in ipa-prop on wpa.  The hack is no longer needed and it is >> wrong, >> since jump function

Re: Fix WPA corruption seen in LTO bootstrap

2011-05-10 Thread H.J. Lu
On Sat, Apr 23, 2011 at 6:33 PM, Jan Hubicka wrote: > Hi, > the problems with LTO build reported by Toon is caused by a hack disabling > jump function in ipa-prop on wpa.  The hack is no longer needed and it is > wrong, > since jump function makes no sense when they are not updated. Consequentely

Our New MOMENTUM Penny Pick is I D V C

2011-05-10 Thread Roger
We watched the level 2 this morning and believe that shorters are trying to keep this company down! We wouldn't be surprise to see the excitement continues throughout the week since this company is up to something massive from a fundamental perspective! IDVC has released big news today and this

[google] temporary fix to lipo build problems using check enabled compiler

2011-05-10 Thread Xinliang David Li
The following patch temporarily disable some of the checking which is not fully 'lipo' aware. It will be checked into google/main and further cleanups will follow. David 2011-05-10 David Li * cgraphunit.c (revision 173635) (verify_cgraph_node): (cgraph_mark_functions_to_output): * tree-cfg.

Re: [PATCH, SMS 2/3] Skip DEBUG_INSNs while recognizing doloop

2011-05-10 Thread Ayal Zaks
> OK for mainline? Yes, this is pretty obvious. (You don't have to change to prev_nondebug_insn btw). Ayal. From: Revital Eres To: Ayal Zaks/Haifa/IBM@IBMIL Cc: gcc-patches@gcc.gnu.org, Patch Tracking Date: 08/05/2011 07:37 AM Subject:[PATCH, SMS 2/3] Skip DEBUG_INSNs wh

Re: [PATCH, SMS 1/3] Support closing_branch_deps (second try)

2011-05-10 Thread Ayal Zaks
Thanks Revital; it may actually be better to include the scheduling of the branch even where the doloop pattern is simple, as it rightfully accounts for its resources. > OK for mainline? Yes. I have only the following minor comments: +/* Bump the SCHED_TIMEs of all nodes by AMOUNT. Set the valu

RE: [AVR] Couple of tweaks

2011-05-10 Thread Weddington, Eric
> -Original Message- > From: Eric Botcazou [mailto:ebotca...@adacore.com] > Sent: Tuesday, May 10, 2011 2:43 PM > To: Denis Chertykov > Cc: Weddington, Eric; gcc-patches@gcc.gnu.org; Anatoly Sokolov; Georg- > Johann Lay > Subject: Re: [AVR] Couple of tweaks > > > The port don't have to d

Re: [PATCH] split tree_type, a.k.a. "tuplifying types"

2011-05-10 Thread Michael Matz
Hi, On Tue, 10 May 2011, Nathan Froyd wrote: > > > +  /* Do not stream TYPE_POINTER_TO or TYPE_REFERENCE_TO.  */ > > > > Add some wording as to why not? This was copied from existing > > comments, but I do not remember why we were doing this. Not too > > critical, anyway. > > I'm not entirely

Re: [AVR] Couple of tweaks

2011-05-10 Thread Eric Botcazou
> The port don't have to disable subregs in legitimate_address_p. They don't have not to disable them either, they do what's better for them. > So, the current avr_legitimate_address_p is correct. It's just making impossible to compile some code. > May be it's GCC core bug ? It's more of a rel

Re: [AVR] Couple of tweaks

2011-05-10 Thread Eric Botcazou
> Which compiler ? The C compiler, see the first message in this thread... -- Eric Botcazou

Re: [PATCH 13/18] move TS_EXP to be a substructure of TS_TYPED

2011-05-10 Thread Nathan Froyd
On 03/10/2011 11:23 PM, Nathan Froyd wrote: After all that, we can finally make tree_exp inherit from typed_tree. Quite anticlimatic. Ping. http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00559.html -Nathan

Re: [PATCH,c++] describe reasons for function template overload resolution failure

2011-05-10 Thread Jason Merrill
On 05/09/2011 06:49 PM, Nathan Froyd wrote: The patch below is an updated version of: http://gcc.gnu.org/ml/libstdc++/2011-02/msg9.html Sorry I didn't respond to that message. In general, my preference is to have diagnostics collocated with the tests that lead to them, and just run throu

Re: C6X port 10/11: The port

2011-05-10 Thread Joseph S. Myers
On Tue, 10 May 2011, Bernd Schmidt wrote: > * doc/invoke.texi (C6X Options): New section. > * doc/md.texi (TI C6X family): New section. > * config.gcc: Handle tic6x, in particular tic6x-*-elf and > tic6x-*-uclinux. > config/c6x/uclinux-elf.h: New file. > config/

Re: [patch][gimplefe] Preliminary variable declaration support

2011-05-10 Thread Diego Novillo
On Mon, May 9, 2011 at 17:58, Sandeep Soni wrote: > This patch is just a slight modification to an earlier patch that I > submitted which was non-working. This is working. It just recognizes > variable declarations and might be helpful for ketaki to start with > things. It is now more or less up

Re: Cgraph thunk reorg

2011-05-10 Thread David Edelsohn
Honza, This patch seems to have introduced approximately 150 new G++ testsuite failures on AIX. The errors all are verify_cgraph_node ICEs related to thunks. The all have a similar pattern: /src/gcc/testsuite/g++.dg/abi/covariant2.C:31:20: error: non-DECL_ONE_ONLY node in a same_comdat_group li

Re: [PATCH] split tree_type, a.k.a. "tuplifying types"

2011-05-10 Thread Tom Tromey
> "Nathan" == Nathan Froyd writes: Nathan> gcc/java/ Nathan> * java-tree.h (TYPE_ARGUMENT_SIGNATURE): Use TYPE_MINVAL. This is ok. Tom

Re: [patch gimplifier]: Boolify more strict conditional expressions and transform simple form to binary

2011-05-10 Thread Kai Tietz
2011/5/10 Kai Tietz : > 2011/5/10 Richard Guenther : >> On Tue, May 10, 2011 at 5:30 PM, Paolo Bonzini wrote: >>> On 05/10/2011 05:23 PM, Richard Guenther wrote: I suppose you have testcases for all the cases you looked at, please add some that cover these corner cases. >>> >>> Also

Re: Improve DSE in the presence of calls

2011-05-10 Thread Easwaran Raman
On Tue, May 3, 2011 at 9:40 AM, Easwaran Raman wrote: > On Mon, May 2, 2011 at 8:37 PM, Jeff Law wrote: >> -BEGIN PGP SIGNED MESSAGE- >> Hash: SHA1 >> >> On 04/26/11 16:06, Easwaran Raman wrote: >> >>> You're right. The patch has correctness issues. It is not possible to simply

Re: [PATCH 12/18] make CASE_LABEL_EXPR not abuse TREE_CHAIN

2011-05-10 Thread Diego Novillo
On Fri, Mar 11, 2011 at 10:19, Richard Guenther wrote: > On Fri, Mar 11, 2011 at 5:23 AM, Nathan Froyd > wrote: >> Move CASE_CHAIN into a local operand for CASE_LABEL_EXPR.  Nothing to >> see here. > > I wonder if there isn't a better way to do this ... like always requiring > operand 2 of SWITC

Re: [PATCH 12/18] make CASE_LABEL_EXPR not abuse TREE_CHAIN

2011-05-10 Thread Nathan Froyd
On Fri, Mar 11, 2011 at 02:19:14PM +0100, Richard Guenther wrote: > On Fri, Mar 11, 2011 at 5:23 AM, Nathan Froyd > wrote: > > Move CASE_CHAIN into a local operand for CASE_LABEL_EXPR.  Nothing to > > see here. > > I wonder if there isn't a better way to do this ... like always requiring > opera

Re: [PATCH] C++0x, fixes for override/final

2011-05-10 Thread Jason Merrill
Applied. Jason

C++ PATCH for c++/48930 (missing error on default-initialization of class with no default ctor)

2011-05-10 Thread Jason Merrill
The introduction of = default means that now we need to separate TYPE_NEEDS_CONSTRUCTING from the notion that we need to call a constructor for non-aggregate initialization of a class. This patch does that by introducing a new function type_build_ctor_call for the latter case and adjusting cal

C++ PATCH for c++/48736 (crash with default template argument involving pack expansion)

2011-05-10 Thread Jason Merrill
tsubst_copy_and_build was assuming that substituting into a pack expansion would always produce a vector of elements, which is not true if the template arguments are still dependent. Tested x86_64-pc-linux-gnu, applied to trunk. commit 3bc57a5e66cd7a4e6e9a77900249db0bf193456b Author: Jason Merr

Re: [PATCH] split tree_type, a.k.a. "tuplifying types"

2011-05-10 Thread Nathan Froyd
On Tue, May 10, 2011 at 02:28:06PM -0300, Diego Novillo wrote: > On Tue, May 10, 2011 at 13:15, Nathan Froyd wrote: > > Other types can of course be shrunk, but the memory savings from doing > > so will be negligible > > Have you done any measurements on the potential savings? Only back-of-the-e

Re: [PATCH] split tree_type, a.k.a. "tuplifying types"

2011-05-10 Thread Diego Novillo
On Tue, May 10, 2011 at 13:15, Nathan Froyd wrote: > Other types can of course be shrunk, but the memory savings from doing > so will be negligible Have you done any measurements on the potential savings? > +static void > +lto_input_ts_type_common_tree_pointers (struct lto_input_block *ib, > +

Re: [PATCH] Fix tree parts of PR18041

2011-05-10 Thread Steven Bosscher
On Tue, May 10, 2011 at 1:25 PM, Richard Guenther wrote: > The generated code is > the same though, and still contains too many masking operations. The lowering you're planning -- does that mean lowering all bitfield ops for all targets? You've noticed "expand" makes some very conservative assump

Re: [PATCH, IRA]: Fix PR 48927 - Issues with "enable" attribute and IRA register preferences

2011-05-10 Thread Vladimir Makarov
On 05/08/2011 03:39 PM, Uros Bizjak wrote: Hello! Attached patch fixes changed register allocation where "enabled" attribute is used. The core of the problem was with IRA, where IRA does not look at "enabled" attribute when scanning through alternatives string to perform various tasks (including

Re: C6X port 8/11: A new FUNCTION_ARG macro

2011-05-10 Thread Joseph S. Myers
On Tue, 10 May 2011, Bernd Schmidt wrote: > On C6X, we have PARM_BOUNDARY == 8 (one byte), but some function > argument slots still must be rounded to a larger value. As far as I > could tell there's currently no way of telling gcc about this, hence a > new target macro which controls this behavio

Re: C6X port 7/11: Cope with odd section names

2011-05-10 Thread Joseph S. Myers
On Tue, 10 May 2011, Bernd Schmidt wrote: > Index: doc/tm.texi.in > === > --- doc/tm.texi.in.orig > +++ doc/tm.texi.in > @@ -6976,6 +6976,12 @@ if function is in @code{.text.name}, and > otherwise. > @end deftypefn > > +@hook TARG

Re: [PATCH] split tree_type, a.k.a. "tuplifying types"

2011-05-10 Thread Mike Stump
On May 10, 2011, at 9:15 AM, Nathan Froyd wrote: > The patch below implements the first step towards "tuplifying types": > OK to commit? Ok for Objective parts... >

Re: The TI C6X port

2011-05-10 Thread Joseph S. Myers
On Tue, 10 May 2011, Bernd Schmidt wrote: > Binutils and uClibc already contain C6X patches; unfortunately there > isn't an open-source sim. The newlib support is also upstream. > I've also run c6x tests, which look fairly clean on the whole. Does this testing cover all six architecture variant

Re: Put libgcc config headers in separate libgcc_tm.h

2011-05-10 Thread Mike Stump
On May 10, 2011, at 8:26 AM, "Joseph S. Myers" wrote: > On rerunning my target macro enumeration now it's no longer necessary > to consider libgcc/config/ macros in host-side files > OK to commit? Ok. >

Re: [patch gimplifier]: Boolify more strict conditional expressions and transform simple form to binary

2011-05-10 Thread Kai Tietz
2011/5/10 Richard Guenther : > On Tue, May 10, 2011 at 5:30 PM, Paolo Bonzini wrote: >> On 05/10/2011 05:23 PM, Richard Guenther wrote: >>> >>> I suppose you have testcases for all the cases you looked at, please >>> add some that cover these corner cases. >> >> Also, there is quite some tree-vrp.

[PATCH] split tree_type, a.k.a. "tuplifying types"

2011-05-10 Thread Nathan Froyd
tree_type is a fairly big structure, and several of its fields are overloaded. This means we waste some space, depending on the type, and it's also somewhat confusing as to who uses what. The patch below implements the first step towards "tuplifying types": those pieces which all types use have b

Re: PING: [PATCH] Fix up typed DWARF stack support for POINTERS_EXTEND_UNSIGNED targets (PR debug/48853)

2011-05-10 Thread H.J. Lu
On Tue, May 10, 2011 at 7:14 AM, H.J. Lu wrote: > On Tue, May 10, 2011 at 2:52 AM, Jakub Jelinek wrote: >> On Mon, May 09, 2011 at 01:35:39PM -0700, H.J. Lu wrote: >>> (gdb) call debug_rtx (rtl) >>> (var_location d (mem/s/j:SI (plus:DI (subreg:DI (ashift:SI >>> (entry_value:SI (reg:SI 5 di [ i ])

C6X port 11/11: Testcases

2011-05-10 Thread Bernd Schmidt
This contains the testsuite changes for the C6X port. Bernd * gcc.target/tic6x/weak-call.c: New test. * gcc.target/tic6x/fpcmp.c: New test. * gcc.target/tic6x/fpdiv.c: New test. * gcc.target/tic6x/rotdi16-scan.c: New test. * gcc.target/tic6x/ffssi.c: New t

C6X port 9/11: Allow defining attributes in terms of another

2011-05-10 Thread Bernd Schmidt
I've found it useful to use a construct such as the following: (define_attr "units64" "unknown,d,d_addr,l,m,s,dl,ds,dls,ls" (const_string "unknown")) (define_attr "units64p" "unknown,d,d_addr,l,m,s,dl,ds,dls,ls" (attr "units64")) to define one attribute in terms of another by default, al

C6X port 8/11: A new FUNCTION_ARG macro

2011-05-10 Thread Bernd Schmidt
On C6X, we have PARM_BOUNDARY == 8 (one byte), but some function argument slots still must be rounded to a larger value. As far as I could tell there's currently no way of telling gcc about this, hence a new target macro which controls this behaviour. Bernd * doc/tm.texi.in (FUNCTION_ARG

C6X port 7/11: Cope with odd section names

2011-05-10 Thread Bernd Schmidt
The C6X ELF ABI chooses to use ".const" rather than ".rodata" for far-readonly data. This patch adds a target hook to deal with the problem. Bernd * doc/tm.texi.in (TARGET_ASM_MERGEABLE_RODATA_PREFIX): Document. * doc/tm.texi: Regenerate. * target.def (mergeable_rodata_pre

[PATCH][3/n] LTO type merging cleanup

2011-05-10 Thread Richard Guenther
This is the second half of splitting TYPE_CANONICAL handling away from the rest of the machinery. The following patch introduces a simplified, non-SCC based hashing for TYPE_CANONICAL - it still hashes things it shouldn't, but the patch is supposed to be functional equivalent apart from the point

C6X port 6/11: REG_WORDS_BIG_ENDIAN

2011-05-10 Thread Bernd Schmidt
C6X has little- and big-endian modes, but in both modes, registers are in little-endian order. This patch adds code to support this model in gcc. Bernd * reload.c (operands_match_p): Take it into account. (reload_adjust_reg_for_mode): Likewise. * rtlanal.c (subreg_get_info

Mention config-list.mk in new port checklist

2011-05-10 Thread Joseph S. Myers
I noticed that contrib/config-list.mk was missing from the new-port checklist in doc/sourcebuild.texi. I've applied this patch to add it; target triplets covering all config.gcc stanzas for a new port should be added to config-list.mk so the port gets covered in all-targets build tests (and, o

C6X port 5/11: Track predication conditions more accurately

2011-05-10 Thread Bernd Schmidt
The scheduler knows that insns with different COND_EXEC conditions don't conflict and can be scheduled independently. Unfortunately, sched-deps.c does not try to keep the conditions valid as it progresses. For example, [B0] A0 = [A1] B0 = something [!B0] [A2] = A0 The first and third insns h

Re: [patch gimplifier]: Boolify more strict conditional expressions and transform simple form to binary

2011-05-10 Thread Richard Guenther
On Tue, May 10, 2011 at 5:30 PM, Paolo Bonzini wrote: > On 05/10/2011 05:23 PM, Richard Guenther wrote: >> >> I suppose you have testcases for all the cases you looked at, please >> add some that cover these corner cases. > > Also, there is quite some tree-vrp.c dead code with these changes. Remov

C6X port 4/11: Backtracking scheduler

2011-05-10 Thread Bernd Schmidt
On C6X, every jump instruction has 5 delay slots which can be filled with normally scheduled instructions. With an issue width of 8 insns/cycle, this means that up to 40 insns can be issued after the jump insn before the jump's side-effect takes place. I didn't particularaly feel like using reorg.c

Re: [patch gimplifier]: Boolify more strict conditional expressions and transform simple form to binary

2011-05-10 Thread Paolo Bonzini
On 05/10/2011 05:23 PM, Richard Guenther wrote: I suppose you have testcases for all the cases you looked at, please add some that cover these corner cases. Also, there is quite some tree-vrp.c dead code with these changes. Removing the TRUTH_*_CODE handling in VRP will help finding more place

Re: Put libgcc config headers in separate libgcc_tm.h

2011-05-10 Thread Joseph S. Myers
On rerunning my target macro enumeration now it's no longer necessary to consider libgcc/config/ macros in host-side files, I saw that I'd missed one remaining DECLARE_LIBRARY_RENAMES definition when poisoning that macro host-side because of the move to libgcc/config/. Nathan Froyd had moved all d

C6X port 3/11: Cache dependency costs

2011-05-10 Thread Bernd Schmidt
Jeff already approved this one a while ago. I haven't applied it yet because so far it hasn't been necessary, but it will help for the backtracking scheduler. Bernd * sched-int.h (struct _dep): Add member cost. (DEP_COST, UNKNOWN_DEP_COST): New macros. * sched-deps.c (init

C6X port 2/11: Use a structure for schedule_block variables

2011-05-10 Thread Bernd Schmidt
This moves some local variables into a structure, in preparation for a later patch which adds the capability to save/restore scheduler state. Bernd * haifa-sched.c (struct sched_block_state): New. (schedule_block): Move some local variables into such a structure. Index: gcc/haif

Re: [patch gimplifier]: Boolify more strict conditional expressions and transform simple form to binary

2011-05-10 Thread Richard Guenther
On Tue, May 10, 2011 at 5:08 PM, Kai Tietz wrote: > 2011/5/10 Richard Guenther : >> On Tue, May 10, 2011 at 3:56 PM, Kai Tietz wrote: >>> Hello, >>> >>> this patch converts TRUTH_AND_EXPR, TRUTH_OR_EXPR, and TRUTH_XOR_EXPR >>> expressions >>> on gimplification to their binary form.  Additionally

C6X port 1/11: Reorganize schedule_block

2011-05-10 Thread Bernd Schmidt
There is still some code duplication in schedule_block, and the inner scheduling loop is somewhat convoluted. It would be easier to follow if the sequence of operations was 1. sort the ready list 2. choose an instruction 3. schedule it The following patch changes the loop to use that structure. I

The TI C6X port

2011-05-10 Thread Bernd Schmidt
I will post a series of patches as replies to this message which add a port for TI's C6X processors to gcc. This involves a number of scheduler changes and a few minor new target hooks and macros. Some pieces are still missing in this submission. Paul Brook has implemented exception handling suppo

Re: [patch gimplifier]: Boolify more strict conditional expressions and transform simple form to binary

2011-05-10 Thread Kai Tietz
2011/5/10 Richard Guenther : > On Tue, May 10, 2011 at 3:56 PM, Kai Tietz wrote: >> Hello, >> >> this patch converts TRUTH_AND_EXPR, TRUTH_OR_EXPR, and TRUTH_XOR_EXPR >> expressions >> on gimplification to their binary form.  Additionally it takes care >> that conditions >> are getting boolified f

Re: [AVR] Couple of tweaks

2011-05-10 Thread Denis Chertykov
2011/5/10 Weddington, Eric : > > >> -Original Message- >> From: Denis Chertykov [mailto:cherty...@gmail.com] >> Sent: Tuesday, May 10, 2011 5:42 AM >> To: Eric Botcazou >> Cc: Weddington, Eric; gcc-patches@gcc.gnu.org; Anatoly Sokolov; Georg- >> Johann Lay >> Subject: Re: [AVR] Couple of tw

Re: [patch] make default linker --hash-style configurable option

2011-05-10 Thread Richard Guenther
On Tue, May 10, 2011 at 4:24 PM, Paul Pluzhnikov wrote: > On Tue, May 10, 2011 at 7:02 AM, Ian Lance Taylor wrote: >> Richard Guenther writes: > >>> I wonder why this is a GCC specific patch and not a linker patch.  Why >>> not change the linker(s) to accept such configure option that changes it

Re: [PATCH] use build_function_type less in c-family and LTO

2011-05-10 Thread Joseph S. Myers
On Tue, 10 May 2011, Nathan Froyd wrote: > gcc/c-family/ > * c-common.c (def_fn_type): Don't call build_function_type, call > build_function_type_vec or build_varargs_function_type_vec instead. > (c_common_nodes_and_builtins): Likewise. The c-family changes are OK. -- Joseph S

Re: [patch gimplifier]: Boolify more strict conditional expressions and transform simple form to binary

2011-05-10 Thread Richard Guenther
On Tue, May 10, 2011 at 3:56 PM, Kai Tietz wrote: > Hello, > > this patch converts TRUTH_AND_EXPR, TRUTH_OR_EXPR, and TRUTH_XOR_EXPR > expressions > on gimplification to their binary form.  Additionally it takes care > that conditions > are getting boolified for operation. > > ChangeLog > > 2011-0

Re: [patch] make default linker --hash-style configurable option

2011-05-10 Thread Paul Pluzhnikov
On Tue, May 10, 2011 at 7:02 AM, Ian Lance Taylor wrote: > Richard Guenther writes: >> I wonder why this is a GCC specific patch and not a linker patch.  Why >> not change the linker(s) to accept such configure option that changes its >> default behavior? > > It is traditionally gcc which tells

Re: [PATCH] Fix tree parts of PR18041

2011-05-10 Thread Richard Guenther
On Tue, 10 May 2011, Richard Guenther wrote: > On Tue, 10 May 2011, Michael Matz wrote: > > > Hi, > > > > On Tue, 10 May 2011, Richard Guenther wrote: > > > > > struct B { > > > unsigned bit0 : 1; > > > unsigned bit1 : 1; > > > }; > > > > > > void > > > foo (struct B *b) > > > { > > > b-

Re: [PATCH] use build_function_type less in c-family and LTO

2011-05-10 Thread Diego Novillo
On Tue, May 10, 2011 at 10:14, Nathan Froyd wrote: > gcc/c-family/ >        * c-common.c (def_fn_type): Don't call build_function_type, call >        build_function_type_vec or build_varargs_function_type_vec instead. >        (c_common_nodes_and_builtins): Likewise. > > gcc/lto/ >        * lto-l

Re: PING: [PATCH] Fix up typed DWARF stack support for POINTERS_EXTEND_UNSIGNED targets (PR debug/48853)

2011-05-10 Thread H.J. Lu
On Tue, May 10, 2011 at 2:52 AM, Jakub Jelinek wrote: > On Mon, May 09, 2011 at 01:35:39PM -0700, H.J. Lu wrote: >> (gdb) call debug_rtx (rtl) >> (var_location d (mem/s/j:SI (plus:DI (subreg:DI (ashift:SI >> (entry_value:SI (reg:SI 5 di [ i ])) >>                 (const_int 2 [0x2])) 0) >>        

Re: [patch] make default linker --hash-style configurable option

2011-05-10 Thread Jakub Jelinek
On Tue, May 10, 2011 at 07:02:44AM -0700, Ian Lance Taylor wrote: > > Otherwise if people link with ld they suddenly get different hash-style. > > That looks wrong to me. > > That turns out not to be the case. Both gold and GNU ld accept the same > set of --hash-style options. And we keep tellin

Re: [PATCH] Fix tree parts of PR18041

2011-05-10 Thread Richard Guenther
On Tue, 10 May 2011, Michael Matz wrote: > Hi, > > On Tue, 10 May 2011, Richard Guenther wrote: > > > struct B { > > unsigned bit0 : 1; > > unsigned bit1 : 1; > > }; > > > > void > > foo (struct B *b) > > { > > b->bit0 = b->bit0 | b->bit1; > > } > > > > we with this patch generate > > >

Re: [patch] make default linker --hash-style configurable option

2011-05-10 Thread Ian Lance Taylor
Richard Guenther writes: > On Mon, May 9, 2011 at 7:11 PM, Paul Pluzhnikov > wrote: >> On Mon, May 9, 2011 at 9:51 AM, Joseph S. Myers >> wrote: >>> On Mon, 9 May 2011, Paolo Bonzini wrote: >>> Uhm, so we deadlocked, I thought the other way.  I cannot really express any opinion abou

Re: Use Enum for rs6000 -mcpu=, -mtune= options

2011-05-10 Thread David Edelsohn
On Mon, May 9, 2011 at 6:17 PM, Joseph S. Myers wrote: > This patch makes the handling of the rs6000 -mcpu= and -mtune= options > use Enum, completing the conversion of rs6000_handle_option - and so > of all target option handlers - to avoid using modifiable global > state. > > As with various oth

[patch gimplifier]: Boolify more strict conditional expressions and transform simple form to binary

2011-05-10 Thread Kai Tietz
Hello, this patch converts TRUTH_AND_EXPR, TRUTH_OR_EXPR, and TRUTH_XOR_EXPR expressions on gimplification to their binary form. Additionally it takes care that conditions are getting boolified for operation. ChangeLog 2011-05-10 Kai Tietz * gimplify.c (gimplify_exit_expr): Boolify co

Ping: PR target/45074: Check targets of multi-word operations

2011-05-10 Thread Richard Sandiford
Ping for: http://gcc.gnu.org/ml/gcc-patches/2011-04/msg01327.html It fixes the expansion of multiword operations in cases where the suggested target is a hard register and where CANNOT_CHANGE_MODE_CLASS forbids word-mode subparts. Richard

Re: Put libgcc config headers in separate libgcc_tm.h

2011-05-10 Thread Ian Lance Taylor
"Joseph S. Myers" writes: > 2011-05-07 Joseph Myers > > * config.gcc (libgcc_tm_file): Define instead of including files > from ../../libgcc/config/ in tm_file. > * configure.ac (libgcc_tm_file_list, libgcc_tm_include_list): > Define. > * configure: Regenerate. >

[PATCH] don't use build_function_type in the Java FE

2011-05-10 Thread Nathan Froyd
As $SUBJECT suggests. Nothing much to see here. Tested on x86_64-unknown-linux-gnu. OK to commit? -Nathan gcc/java/ * expr.c (build_jni_stub): Don't call build_function_type; call build_function_type_vec instead. * typeck.c (parse_signature_string): Likewise. diff --gi

[PATCH] don't use build_function_type in the Ada FE

2011-05-10 Thread Nathan Froyd
As $SUBJECT suggests. Rather pleasant how easy this was. Tested on x86_64-unknown-linux-gnu. OK to commit? -Nathan gcc/ada/ * gcc-interface/utils.c (def_fn_type): Don't call build_function_type; call build_function_type_vec or build_varargs_function_type_vec instead.

[PATCH] use build_function_type less in c-family and LTO

2011-05-10 Thread Nathan Froyd
As $SUBJECT suggests. Eradicating build_function_type from the C FE entirely will take a bit more work. The lto change is included because def_fn_type there is clearly a copy of the C version; I am going to assume that given other approvals of copy-paste code, this one is obvious. Tested on x86_

Re: [PATCH, ARM] Unaligned accesses for packed structures [1/2]

2011-05-10 Thread Julian Brown
On Mon, 9 May 2011 18:01:12 +0100 Julian Brown wrote: > How does this look now? (Re-testing in progress.) Results from re-testing are fine, btw. Cheers, Julian

RE: [AVR] Couple of tweaks

2011-05-10 Thread Weddington, Eric
> -Original Message- > From: Denis Chertykov [mailto:cherty...@gmail.com] > Sent: Tuesday, May 10, 2011 5:42 AM > To: Eric Botcazou > Cc: Weddington, Eric; gcc-patches@gcc.gnu.org; Anatoly Sokolov; Georg- > Johann Lay > Subject: Re: [AVR] Couple of tweaks > > 2011/5/8 Eric Botcazou : > >

Re: [PATCH] Fix tree parts of PR18041

2011-05-10 Thread Michael Matz
Hi, On Tue, 10 May 2011, Richard Guenther wrote: > struct B { > unsigned bit0 : 1; > unsigned bit1 : 1; > }; > > void > foo (struct B *b) > { > b->bit0 = b->bit0 | b->bit1; > } > > we with this patch generate > > D.2686_2 = b_1(D)->bit0; > D.2688_4 = b_1(D)->bit1; > D.2693_10 = D.2

[PATCH][2/n] Cleanup LTO type merging

2011-05-10 Thread Richard Guenther
This splits the TYPE_CANONICAL merging machinery from the regular merging machinery. It just gets too confusing to share code-paths as both cases require opposing conservatism (merge everything for TYPE_CANONICAL, merge nothing for regular merging). Bootstrapped and tested on x86_64-unknown-linu

Re: [Patch,AVR]: Fix PR45099

2011-05-10 Thread Denis Chertykov
2011/5/6 Georg-Johann Lay : > Nathan Froyd schrieb: >> On Mon, May 02, 2011 at 05:23:48PM +0200, Georg-Johann Lay wrote: >>> PR45099 is an extension that gives an error when a fixed register is >>> needed to pass a parameter to a function. >>> >>> Because the program will show malfunction when such

Re: [AVR] Couple of tweaks

2011-05-10 Thread Denis Chertykov
2011/5/8 Eric Botcazou : >> Have you run the regression test suite for the AVR for this patch? > > The compiler doesn't even build without the print_operand_address hunk... Which compiler ? Denis.

Re: [Patch,AVR]: Fix PR48896

2011-05-10 Thread Denis Chertykov
2011/5/9 Georg-Johann Lay : > Fixed the build warnings mentioned in PR48896. > > Johann > > -- > > 2011-05-09  Georg-Johann Lay   > >        PR target/48896 >        * config/avr/avr.c (avr_ret_register): Return unsigned int >        instead of int. >        (avr_function_value): Mark fn_decl_or_ty

Re: [ARM] TLS Descriptor support

2011-05-10 Thread Joseph S. Myers
On Tue, 10 May 2011, Nathan Sidwell wrote: > +@item -mtls-dialect=@var{dialect} > +@opindex mtls-dialect > +Specify the dialect to use for accessing thread local storage. Two > +dialects are supported - @option{arm} and @option{gnu}. The Use "---" (em dash, unspaced) instead of " - ". > +@opti

[PATCH] Fix tree parts of PR18041

2011-05-10 Thread Richard Guenther
This patch makes us apply operand conversions of bitwise binary operations to the operation result instead, which in turn allows us to combine those conversions which helps bitfield related operations. For struct B { unsigned bit0 : 1; unsigned bit1 : 1; }; void foo (struct B *b) { b->bit

RX: Adjust memory_move_cost

2011-05-10 Thread Nick Clifton
Hi Guys, I am applying the patch below to improve the rx_memory_move_cost function in the RX backend. This patch is already in the 4.5 branch and mainline, but was omitted from the 4.6 branch. Cheers Nick gcc/ChangeLog 2011-05-10 Nick Clifton * config/rx/rx.c (rx_memory_move

RX: Add jump and loop alignment

2011-05-10 Thread Nick Clifton
Hi Guys, I am applying the patch below to the mainline and 4.6 branch. It was created by DJ Delorie to fix a performance regression with the RX port of GCC, compared to the 4.5 branch. The problem was that jumps and loops were not being aligned to an 8 byte boundary which can result in

[PATCH] Teach forwprop how to optimize successive conversions

2011-05-10 Thread Richard Guenther
This moves fold-consts conversion folding to forwprop, our tree pattern matcher & optimizer. In addition to what fold-const does this makes us canonicalize unsigned truncations to use bitwise and of a mask, this form is more readily handled by passes like VRP and this also makes it easier to comb

Re: PING: [PATCH] Fix up typed DWARF stack support for POINTERS_EXTEND_UNSIGNED targets (PR debug/48853)

2011-05-10 Thread Jakub Jelinek
On Mon, May 09, 2011 at 01:35:39PM -0700, H.J. Lu wrote: > (gdb) call debug_rtx (rtl) > (var_location d (mem/s/j:SI (plus:DI (subreg:DI (ashift:SI > (entry_value:SI (reg:SI 5 di [ i ])) > (const_int 2 [0x2])) 0) > (symbol_ref:DI ("a") )) [0 a S4 A32])) > (gdb) Ugh, paradoxi

Re: [C++0x] contiguous bitfields race implementation

2011-05-10 Thread Richard Guenther
On Mon, May 9, 2011 at 8:54 PM, Jakub Jelinek wrote: > On Mon, May 09, 2011 at 01:41:13PM -0500, Aldy Hernandez wrote: >> Jakub also gave me a testcase which triggered a buglet in >> max_field_size.  I have now added a parameter INNERDECL which is the >> inner reference, so we can properly determi

Re: [PATCH, testsuite]: Add -mprefer-avx128 to DEFAULT_VECTCFLAGS

2011-05-10 Thread Richard Guenther
On Mon, May 9, 2011 at 8:54 PM, Joseph S. Myers wrote: > On Mon, 9 May 2011, H.J. Lu wrote: > >> > Index: lib/target-supports.exp >> > === >> > --- lib/target-supports.exp     (revision 173569) >> > +++ lib/target-supports.exp     (wo

Re: [patch] make default linker --hash-style configurable option

2011-05-10 Thread Richard Guenther
On Mon, May 9, 2011 at 7:11 PM, Paul Pluzhnikov wrote: > On Mon, May 9, 2011 at 9:51 AM, Joseph S. Myers > wrote: >> On Mon, 9 May 2011, Paolo Bonzini wrote: >> >>> Uhm, so we deadlocked, I thought the other way.  I cannot really >>> express any opinion about the desirability of the feature, but

Re: Use Enum for MIPS -march=, -mtune=, -mips options

2011-05-10 Thread Richard Sandiford
Seems this didn't go to the list, so for the record... On 8 May 2011 16:36, Richard Sandiford wrote: > Eric Christopher writes: >> No objection here. > > Same here.  This looks great, thanks. > > Richard

Re: [PATCH] C++0x, fixes for override/final

2011-05-10 Thread Ville Voutilainen
At Tue, 10 May 2011 08:46:02 +0200, Jakub Jelinek wrote: > Hi! > Just small style nits: > s/int/bool/;s/0/false/;s/1/true/ > And the above condition is short enough that it could be on one line. Ok. Tests still pass. diff --git a/gcc/cp/class.c b/gcc/cp/class.c index 12db2bc..94a339d 100644 --- a