diff options
Diffstat (limited to 'gcc/combine.c')
-rw-r--r-- | gcc/combine.c | 23 |
1 files changed, 1 insertions, 22 deletions
diff --git a/gcc/combine.c b/gcc/combine.c index d200c5a..d295a81 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -572,7 +572,6 @@ find_single_use_1 (rtx dest, rtx *loc) case SYMBOL_REF: CASE_CONST_ANY: case CLOBBER: - case CLOBBER_HIGH: return 0; case SET: @@ -1763,9 +1762,6 @@ set_nonzero_bits_and_sign_copies (rtx x, const_rtx set, void *data) return; } - /* Should not happen as we only using pseduo registers. */ - gcc_assert (GET_CODE (set) != CLOBBER_HIGH); - /* If this register is being initialized using itself, and the register is uninitialized in this basic block, and there are no LOG_LINKS which set the register, then part of the @@ -1924,7 +1920,6 @@ can_combine_p (rtx_insn *insn, rtx_insn *i3, rtx_insn *pred ATTRIBUTE_UNUSED, /* We can ignore CLOBBERs. */ case CLOBBER: - case CLOBBER_HIGH: break; case SET: @@ -2595,8 +2590,6 @@ is_parallel_of_n_reg_sets (rtx pat, int n) if (XEXP (XVECEXP (pat, 0, i), 0) == const0_rtx) return false; break; - case CLOBBER_HIGH: - break; default: return false; } @@ -2897,8 +2890,7 @@ try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0, for (i = 0; ok && i < XVECLEN (p2, 0); i++) { if ((GET_CODE (XVECEXP (p2, 0, i)) == SET - || GET_CODE (XVECEXP (p2, 0, i)) == CLOBBER - || GET_CODE (XVECEXP (p2, 0, i)) == CLOBBER_HIGH) + || GET_CODE (XVECEXP (p2, 0, i)) == CLOBBER) && reg_overlap_mentioned_p (SET_DEST (PATTERN (i3)), SET_DEST (XVECEXP (p2, 0, i)))) ok = false; @@ -13409,15 +13401,6 @@ record_dead_and_set_regs_1 (rtx dest, const_rtx setter, void *data) ? SET_SRC (setter) : gen_lowpart (GET_MODE (dest), SET_SRC (setter))); - else if (GET_CODE (setter) == CLOBBER_HIGH) - { - reg_stat_type *rsp = ®_stat[REGNO (dest)]; - if (rsp->last_set_value - && reg_is_clobbered_by_clobber_high - (REGNO (dest), GET_MODE (rsp->last_set_value), - XEXP (setter, 0))) - record_value_for_reg (dest, NULL, NULL_RTX); - } else record_value_for_reg (dest, record_dead_insn, NULL_RTX); } @@ -13863,10 +13846,6 @@ reg_dead_at_p_1 (rtx dest, const_rtx x, void *data ATTRIBUTE_UNUSED) if (!REG_P (dest)) return; - if (GET_CODE (x) == CLOBBER_HIGH - && !reg_is_clobbered_by_clobber_high (reg_dead_reg, XEXP (x, 0))) - return; - regno = REGNO (dest); endregno = END_REGNO (dest); if (reg_dead_endregno > regno && reg_dead_regno < endregno) |