------- Comment #10 from steven at gcc dot gnu dot org 2005-11-09 23:45 ------- Actually, flow.c does get it right. >From t.C.26.life1 (at -O1 -fno-move-loop-invariants):
;; Start of basic block 3, registers live: 0 [ap] 1 [r1] 12 [r12] 15 [r15] 16 [r16] 328 [sfp] 341 344 (code_label/s 62 30 65 3 8 "" [1 uses]) (note 65 62 63 3 [bb 3] NOTE_INSN_BASIC_BLOCK) (insn 63 65 64 3 (set (reg:DI 348) (reg:DI 15 r15)) 5 {*movdi_internal} (nil) (expr_list:REG_DEAD (reg:DI 15 r15) (nil))) (insn 64 63 54 3 (set (reg:DI 350) (reg:DI 16 r16)) 5 {*movdi_internal} (nil) (expr_list:REG_DEAD (reg:DI 16 r16) (nil))) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24762