------- Comment #12 from rguenther at suse dot de 2010-07-07 08:38 ------- Subject: Re: [4.6 Regression] -fcompare-debug failure for C++ i386.c
On Wed, 7 Jul 2010, amylaar at gcc dot gnu dot org wrote: > ------- Comment #11 from amylaar at gcc dot gnu dot org 2010-07-07 02:16 > ------- > (In reply to comment #10) > > ;; Function void ix86_expand_vector_init_general(bool, machine_mode, rtx, > > rtx) > > Compiling the reduced testcase in a subdirectory of the r160832 gcc build > > directory with: > > ../g++ -B.. -da -march=pentiumpro -mtune=generic -m32 t.c --dump-tree-all > > -g > > -S -fdump-unnumbered > > , I see this in the final dump: > > Hmm, that's actually the same as for r160828; but still, r160828 passes the > -fcompare-debug debug test with the reduced test case, while r160832 fails it. > Running this test with --save-temps and diffing the output shows that somehow > we end up with different tmp_var_id_num values for variables created by > tree-ssa-pre.c: > > --- t.gkd 2010-07-07 03:02:40.831101079 +0100 > +++ t.gk.gkd 2010-07-07 03:02:40.886978157 +0100 > @@ -454,9 +454,9 @@ > (insn:TI# 0 0 t.c:78 (set (reg/f:SI 2 cx [116]) > (mem/s/f:SI (plus:SI (mult:SI (reg/v:SI 0 ax [orig:80 i ] [80]) > (const_int 4 [0x4])) > - (reg/f:SI 3 bx [orig:95 pretmp.21 ] [95])) [ *pretmp.21_81 S4 > A32]))# {*movsi_1} (expr_list:REG_EQUIV (mem/s/f:SI (plus:SI (mult:SI > (reg/v:SI > 0 ax [orig:80 i ] [80]) > + (reg/f:SI 3 bx [orig:95 pretmp.21 ] [95])) [ *pretmp.21_82 S4 > A32]))# {*movsi_1} (expr_list:REG_EQUIV (mem/s/f:SI (plus:SI (mult:SI > (reg/v:SI > 0 ax [orig:80 i ] [80]) > (const_int 4 [0x4])) > - (reg/f:SI 3 bx [orig:95 pretmp.21 ] [95])) [ *pretmp.21_81 S4 > A32]) > + (reg/f:SI 3 bx [orig:95 pretmp.21 ] [95])) [ *pretmp.21_82 S4 > A32]) > (nil))) > (insn:TI# 0 0 t.c:78 (set (mem/s/f:SI (plus:SI (plus:SI (mult:SI (reg/v:SI 0 > ax [orig:80 i ] [80]) > (const_int 4 [0x4])) Hm, different SSA name versions are not good - that might cause code generation differences. Where do they first differ? Richard. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832