[Bug bootstrap/44970] [4.6 regression] Revision 162270 failed to bootstrap
--- Comment #73 from bernds at codesourcery dot com 2010-08-06 10:27 --- Subject: Re: [4.6 regression] Revision 162270 failed to bootstrap On 08/06/2010 12:00 PM, bonzini at gnu dot org wrote: > --- Comment #72 from bonzini at gnu dot org 2010-08-06 10:00 --- > No, why is there no def for r25 _where it is clobbered_? There is. The problem seems to be that we first propagate into insn 15, which then looks like (insn 15 14 16 3 (set (reg:DI 67 [ obj.8+-4 ]) (sign_extend:DI (reg:SI 25 %r25 [ obj ]))) ../../gcc/gcc/cfg.c:1211 139 {extendsidi2} (expr_list:REG_DEAD (reg/v:DI 74 [ obj+-4 ]) (nil))) and from there, we propagate into another insn. However, at this point, insn 15 has no uses associated with it, so all_uses_available_at returns true without doing anything. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44970
[Bug bootstrap/44970] [4.6 regression] Revision 162270 failed to bootstrap
--- Comment #71 from bernds at codesourcery dot com 2010-08-06 09:57 --- Subject: Re: [4.6 regression] Revision 162270 failed to bootstrap On 08/06/2010 11:54 AM, bonzini at gnu dot org wrote: > --- Comment #70 from bonzini at gnu dot org 2010-08-06 09:54 --- > The real reason is the first: why is there no def for r25? Because it's an incoming argument. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44970
[Bug bootstrap/43858] [4.6 Regression] Bootstrap failure for powerpc-apple-darwin9: cannot compute suffix of object files
--- Comment #26 from bernds at codesourcery dot com 2010-04-28 19:33 --- Ah! I think that makes sense. For some reason I only looked at the other use of df_simulate_find_noclobber_defs. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43858
[Bug bootstrap/43858] [4.6 Regression] Bootstrap failure for powerpc-apple-darwin9: cannot compute suffix of object files
--- Comment #22 from bernds at codesourcery dot com 2010-04-28 13:59 --- (In reply to comment #20) > I have forgotten to ask my question! Could it be a similar issue to that you > fixed for pr42220? No, that looks completely unrelated at first glance. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43858
[Bug bootstrap/43858] [4.6 Regression] Bootstrap failure for powerpc-apple-darwin9: cannot compute suffix of object files
--- Comment #13 from bernds at codesourcery dot com 2010-04-26 22:54 --- I've tried the two versions of ifcvt.c with a powerpc-apple-darwin9 cross compiler. Out of many megabytes of testcases, I can find only one code generation difference with "-O2 -fomit-frame-pointer" for this target, and that looks correct as far as I can tell from the rtl dumps and assembly. If the testsuite run produces nothing, can you check the object files of the two stage2 compilers (working and broken) for differences in code generation? That could help narrow down which file is being miscompiled. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43858
[Bug bootstrap/43858] [4.6 Regression] Bootstrap failure for powerpc-apple-darwin9: cannot compute suffix of object files
--- Comment #11 from bernds at codesourcery dot com 2010-04-26 13:19 --- (In reply to comment #10) > Subject: Re: [4.6 Regression] Bootstrap failure for > powerpc-apple-darwin9: cannot compute suffix of object files > > > One thing that would help would be to build just a stage1 compiler and > > target > > libraries, then run the testsuite. > > Indeed I don't know how I could do that. I RTFM but did not find it. See http://gcc.gnu.org/wiki/Top-Level_Bootstrap I think Q3 is the one you need. Bernd -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43858
[Bug bootstrap/43858] [4.6 Regression] Bootstrap failure for powerpc-apple-darwin9: cannot compute suffix of object files
--- Comment #9 from bernds at codesourcery dot com 2010-04-26 12:56 --- One thing that would help would be to build just a stage1 compiler and target libraries, then run the testsuite. That might give us a smaller testcase to look at. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43858
[Bug bootstrap/43858] [4.6 Regression] Bootstrap failure for powerpc-apple-darwin9: cannot compute suffix of object files
--- Comment #7 from bernds at codesourcery dot com 2010-04-26 12:11 --- What happens if you replace the new call to df_simulate_find_noclobber_defs in ifcvt.c with a call to df_simulate_find_defs? If that fixes the bootstrap, can you find a testcase where this changes code generation? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43858
[Bug middle-end/43848] [4.6 Regression]: can't build libgcc for cris-elf with r158633
--- Comment #4 from bernds at codesourcery dot com 2010-04-22 12:02 --- I somehow managed not to check in the optabs.h change in the first commit. Can you try again with r158643? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43848
[Bug target/42498] GCC can't use smull to compute int * int --> long long
--- Comment #4 from bernds at codesourcery dot com 2010-04-22 10:01 --- Fixed now. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42498
[Bug target/40457] use stm and ldm to access consecutive memory words
--- Comment #11 from bernds at codesourcery dot com 2010-04-20 11:47 --- http://gcc.gnu.org/ml/gcc-patches/2010-04/msg01231.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40457
[Bug target/43742] [4.6 Regression] web.c/union_match_dups segfaults for a null *ref on sh-elf
--- Comment #9 from bernds at codesourcery dot com 2010-04-15 00:16 --- Created an attachment (id=20383) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20383&action=view) Maybe this one. Actually, following the split leads to another pattern that's broken. -- bernds at codesourcery dot com changed: What|Removed |Added Attachment #20382|0 |1 is obsolete|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43742
[Bug target/43742] [4.6 Regression] web.c/union_match_dups segfaults for a null *ref on sh-elf
--- Comment #8 from bernds at codesourcery dot com 2010-04-15 00:10 --- Created an attachment (id=20382) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20382&action=view) Another attempt The patch that was checked in looks wrong to me. How about this one instead? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43742
[Bug rtl-optimization/43742] [4.6 Regression] web.c/union_match_dups segfaults for a null *ref on sh-elf
--- Comment #3 from bernds at codesourcery dot com 2010-04-13 09:09 --- Created an attachment (id=20377) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20377&action=view) A patch to fix the problem This seems to be due to a pattern that uses a "+" constraint in an input-only operand. The attached patch seems to fix it for me; please confirm. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43742
[Bug target/40657] allocate local variables with fewer instructions
--- Comment #7 from bernds at codesourcery dot com 2010-03-31 21:42 --- A patch is at http://gcc.gnu.org/ml/gcc-patches/2010-03/msg01274.html -- bernds at codesourcery dot com changed: What|Removed |Added CC||bernds at codesourcery dot ||com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40657
[Bug target/41514] redundant compare instruction of consecutive conditional branches
--- Comment #4 from bernds at codesourcery dot com 2010-03-31 21:41 --- A simple patch is at http://gcc.gnu.org/ml/gcc-patches/2010-03/msg01405.html -- bernds at codesourcery dot com changed: What|Removed |Added CC||bernds at codesourcery dot ||com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41514
[Bug target/21803] [ia64] gcc produces really odd predicated code
--- Comment #4 from bernds at codesourcery dot com 2010-03-31 21:36 --- Patch at http://gcc.gnu.org/ml/gcc-patches/2010-03/msg01536.html Only tested on ARM (same issue as PR42496), but should also solve the ia64 problem. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21803
[Bug target/40603] unnecessary conversion from unsigned byte load to signed byte load
--- Comment #5 from bernds at codesourcery dot com 2010-03-26 12:01 --- http://gcc.gnu.org/ml/gcc-patches/2010-03/msg01235.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40603
[Bug rtl-optimization/42258] [4.5 Regression] redundant register move around mul instruction
--- Comment #5 from bernds at codesourcery dot com 2010-03-17 11:44 --- Created an attachment (id=20123) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20123&action=view) A patch to fix it. Okay, so the pattern is written strangely because it's a two-operand mul where the input and output may not be the same register. It may be better to write this using an earlyclobbered in-out operand, but you can't show anymore that the operation is commutative. It can be fixed with a simple peephole optimization, at least for this testcase. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42258
[Bug rtl-optimization/42258] [4.5 Regression] redundant register move around mul instruction
--- Comment #4 from bernds at codesourcery dot com 2010-03-17 11:05 --- It's not immediately obvious to me why the ARM mulsi3 patterns are written the way they are - what are the earlyclobber tricks supposed to be good for? Richard E., any clues? -- bernds at codesourcery dot com changed: What|Removed |Added CC||rearnsha at arm dot com, ||bernds at codesourcery dot | |com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42258
[Bug rtl-optimization/42500] Unnecessary mov of sp to a register
--- Comment #5 from bernds at codesourcery dot com 2010-03-16 15:51 --- I believe this is exactly the same problem as PR40615. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42500
[Bug target/40697] inefficient code to extract least bits from an integer value
--- Comment #4 from bernds at codesourcery dot com 2010-03-16 10:56 --- Created an attachment (id=20117) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=20117&action=view) A patch to fix it. The andsi3 expander has code to do the right thing, but avoid_expensive_constant prevents it from seeing the constant. This can be fixed by tweaking the rtx_costs to detect the same cases as the expander. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40697
[Bug rtl-optimization/42502] [4.4/4.5 Regression] Bad register allocation in a very simple code
--- Comment #6 from bernds at codesourcery dot com 2010-03-15 23:44 --- I'm testing a fwprop patch that fixes the problem except for two unnecessary movs at the end. -- bernds at codesourcery dot com changed: What|Removed |Added CC||bernds at codesourcery dot | |com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42502