------- 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])) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44832