diff options
Diffstat (limited to 'gcc/reg-stack.c')
-rw-r--r-- | gcc/reg-stack.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/reg-stack.c b/gcc/reg-stack.c index 7c92c415a62..df636056100 100644 --- a/gcc/reg-stack.c +++ b/gcc/reg-stack.c @@ -1587,8 +1587,12 @@ emit_swap_insn (insn, regstack, reg) return; } - if (sets_cc0_p (PATTERN (i1))) - link_cc0_insns (i1); + if (GET_RTX_CLASS (GET_CODE (i1)) == 'i' && sets_cc0_p (PATTERN (i1))) + { + i1 = next_nonnote_insn (i1); + if (i1 == insn) + abort (); + } swap_rtx = gen_swapdf (FP_mode_reg[hard_regno][(int) DFmode], FP_mode_reg[FIRST_STACK_REG][(int) DFmode]); |