------- Additional Comments From dann at godzilla dot ics dot uci dot edu
2005-09-07 22:05 -------
It seems that expand generates different insns in 4.0 and 4.1 for the comparison
in question:
4.0 generates: (from .00.expand)
(insn 15 13 16 1 (set (reg/f:SI 62)
(mem/s/f:SI (plus:SI (reg/v/f:SI 58 [ gw ])
(const_int 4 [0x4])) [5 <variable>.core.widget_class+0 S4 A32]))
-1 (nil)
(nil))
(insn 16 15 17 1 (set (reg/f:SI 63)
(mem/f/i:SI (symbol_ref:SI ("xtermWidgetClass") [flags 0x40] <var_decl
0xb7a8b0d8 x
termWidgetClass>) [5 xtermWidgetClass+0 S4 A32])) -1 (nil)
(nil))
(insn 17 16 18 1 (set (reg:CCZ 17 flags)
(compare:CCZ (reg/f:SI 62)
(reg/f:SI 63))) -1 (nil)
(nil))
4.1 generates:
(insn 15 13 16 1 (set (reg:SI 62)
(mem/s/f:SI (plus:SI (reg/v/f:SI 58 [ gw ])
(const_int 4 [0x4])) [5 <variable>.core.widget_class+0 S4 A32]))
-1 (nil)
(nil))
(insn 16 15 17 1 (set (reg:CCZ 17 flags)
(compare:CCZ (reg:SI 62)
(mem/f/i:SI (symbol_ref:SI ("xtermWidgetClass") [flags 0x40]
<var_decl 0xb7b510
b0 xtermWidgetClass>) [5 xtermWidgetClass+0 S4 A32]))) -1 (nil)
(nil))
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23524