http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46387
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> 2010-11-09 15:20:47 UTC --- The interesting insns here are: (insn:TI 70 272 60 5 (set (reg:BI 262 p6 [394]) (ge:BI (reg:SI 16 r16 [orig:347 prephitmp.13 ] [347]) (const_int 0 [0]))) pr46387.c:21 318 {*cmpsi_adjusted} (nil)) (insn 60 70 271 5 (set (mem/c/i:SI (reg/f:DI 32 r33 [409]) [2 x+0 S4 A64]) (reg:SI 16 r16 [380])) pr46387.c:19 4 {movsi_internal} (nil)) ... (insn:TI 75 270 251 5 (cond_exec (eq (reg:BI 262 p6 [394]) (const_int 0 [0])) (set (mem/c/i:SI (reg/f:DI 32 r33 [409]) [2 x+0 S4 A64]) (const_int 0 [0]))) pr46387.c:22 813 {*p movsi_internal} (nil)) ... (insn 57 65 253 5 (set (reg:SI 14 r14 [orig:347 prephitmp.13 ] [347]) (reg:SI 16 r16 [380])) pr46387.c:19 4 {movsi_internal} (expr_list:REG_DEAD (reg:SI 16 r16 [380]) (nil))) ... (insn 4 140 254 5 (cond_exec (eq (reg:BI 262 p6 [394]) (const_int 0 [0])) (set (reg:SI 14 r14 [orig:347 prephitmp.13 ] [347]) (const_int 0 [0]))) pr46387.c:22 813 {*p movsi_internal} (nil)) We use the same VALUE for r14 in insn 4 as for (if_then_else (eq (p6) (0)) (0) (r14)).