[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-19 Thread rguenth at gcc dot gnu dot org
--- Comment #41 from rguenth at gcc dot gnu dot org 2009-01-19 12:37 --- In (insn 37 86 40 4 t.f:9 (parallel [ (set (reg:SI 2 cx [74]) (const_int 0 [0x0])) (set (reg/f:SI 5 di [72]) (plus:SI (ashift:SI (reg:SI 2 cx [74])

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-19 Thread rguenth at gcc dot gnu dot org
--- Comment #40 from rguenth at gcc dot gnu dot org 2009-01-19 12:20 --- Which means this might be a target bug as well, more specifically a bug in the *rep_stossi pattern. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added ---

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-19 Thread bonzini at gnu dot org
--- Comment #39 from bonzini at gnu dot org 2009-01-19 11:04 --- Looks like a scheduling bug: -O1 -fforward-propagate has leal-676(%ebp), %edi movl$19, %ecx movl$538976288, %eax rep stosl movw$31096, -603(%ebp) movb$122

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-19 Thread rguenth at gcc dot gnu dot org
--- Comment #38 from rguenth at gcc dot gnu dot org 2009-01-19 10:50 --- Created an attachment (id=17139) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17139&action=view) assembler diff between -O -m32 -fforward-propagate and -O -m32 -fforward-propagate -fschedule-insns2 -- h

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-19 Thread bonzini at gnu dot org
--- Comment #37 from bonzini at gnu dot org 2009-01-19 10:36 --- This is the fishy part: notice that the %esi in the failing test case is completely bogus. - leal-680(%ebp), %esi - movb$32, (%esi) - movb$32, -679(%ebp) - movw$8224, -678(%ebp) +

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-19 Thread bonzini at gnu dot org
--- Comment #36 from bonzini at gnu dot org 2009-01-19 10:33 --- Would you please attach the assembler diff: 1) between -m32 -O1 and -m32 -O1 -fforward-propagate 2) between the latter and -m32 -O1 -fforward-propagate -fschedule-insns2? Thanks. -- http://gcc.gnu.org/bugzilla/show_bu

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-19 Thread rguenth at gcc dot gnu dot org
--- Comment #35 from rguenth at gcc dot gnu dot org 2009-01-19 10:29 --- I can reproduce the issue with the testcase in comment #27 on x86_64-linux with -m32 -O2 vs. -m32 -O. It can be reduced to the effect of -fschedule-insns2 and -fforward-propagate (disabling either on -O2 -fno-stri

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-18 Thread howarth at nitro dot med dot uc dot edu
--- Comment #34 from howarth at nitro dot med dot uc dot edu 2009-01-18 19:49 --- I also see the testcase in Comment 27 fail when compiled at -O2 or higher with i686-apple-darwin10. As with i686-apple-darwin9, the problem only occurs with -m32 and not -m64. -- http://gcc.gnu.org/bu

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-18 Thread howarth at nitro dot med dot uc dot edu
--- Comment #33 from howarth at nitro dot med dot uc dot edu 2009-01-18 17:02 --- Could the additional .p2align assembly operands in the failing assembly have anything to do with this problem? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38868

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-18 Thread burnus at gcc dot gnu dot org
--- Comment #32 from burnus at gcc dot gnu dot org 2009-01-18 13:25 --- Created an attachment (id=17134) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17134&action=view) Assembler diff on x86-64-openSUSE Factory with -m32 -O1 (working) and -m32 -O2 (failing) Attached the assembler

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-18 Thread burnus at gcc dot gnu dot org
--- Comment #31 from burnus at gcc dot gnu dot org 2009-01-18 13:24 --- (In reply to comment #27) > Further reduced test case: Using gfortran on x86-64-linux, I see with -m64 and all -O* a line which ends in " xyz'". However, with -m32 and -O (n >= 2) I only see: "z'". I tried to r

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-18 Thread dominiq at lps dot ens dot fr
--- Comment #30 from dominiq at lps dot ens dot fr 2009-01-18 13:13 --- If I compile the test in comment #27 with -O1 and all the other flags supposed to be turned on by -O2 (taken from http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#Optimize-Options) the bug does not show up. Wh

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-18 Thread dominiq at lps dot ens dot fr
--- Comment #29 from dominiq at lps dot ens dot fr 2009-01-18 12:50 --- Created an attachment (id=17133) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17133&action=view) Assembly corresponding to the test case in comment #27 When I compile the attached file with gfortran 4.3, the

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-18 Thread dominiq at lps dot ens dot fr
--- Comment #28 from dominiq at lps dot ens dot fr 2009-01-18 12:06 --- The difference between the results of -fdump-tree-optimized for the cases aner = '' ANER(1)='A ' ANER(2)='' and ANER(1)='A ' ANER(2)='' aner = '' is ('pre' with the

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-18 Thread dominiq at lps dot ens dot fr
--- Comment #27 from dominiq at lps dot ens dot fr 2009-01-18 12:00 --- Further reduced test case: PROGRAM testcase IMPLICIT NONE CHARACTER*4 ANER(18) CHARACTER*80 LINE aner = '' ANER(1)='A ' ANER(2)='' LINE=' ' LINE(78:80)='x

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-17 Thread dominiq at lps dot ens dot fr
--- Comment #26 from dominiq at lps dot ens dot fr 2009-01-17 23:48 --- Further reduced test case: PROGRAM testcase IMPLICIT NONE INTEGER NENERT PARAMETER (NENERT=62) CHARACTER*4 ANER(NENERT) CHARACTER*80 LINE INTEGER PUNIT PUNIT = 6

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-17 Thread dominiq at lps dot ens dot fr
--- Comment #25 from dominiq at lps dot ens dot fr 2009-01-17 23:28 --- In the reduced case in comment #19 ANER is initialized and the output is still wrong. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38868

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-17 Thread howarth at nitro dot med dot uc dot edu
--- Comment #24 from howarth at nitro dot med dot uc dot edu 2009-01-17 23:23 --- I've had no luck triggering this problem on targets other than i686-apple-darwin9. On that target -m64, suppresses the problem. As to the issue with ANER(J) being undefined on line 162, this can be fixed w

[Bug middle-end/38868] [4.4 Regression] r143152 breaks output routines in xplor-nih

2009-01-17 Thread burnus at gcc dot gnu dot org
--- Comment #23 from burnus at gcc dot gnu dot org 2009-01-17 22:51 --- Program of comment 19 works here (x86-64) with all options I tried, incl. -m32, -fgraphite-identity etc. - valgrind shows no problems. For the program in attachment 17125 / commment 13: I get the same valgrind outpu