From bdda9b179dab8cce7cb1308d327fc6eb9ba53694 Mon Sep 17 00:00:00 2001 From: David Malcolm Date: Thu, 28 Aug 2014 20:47:49 +0000 Subject: [PATCH] Delete find_last_value gcc/ 2014-08-28 David Malcolm * rtl.h (find_last_value): Delete. * rtlanal.c (find_last_value): Delete. From-SVN: r214694 --- gcc/ChangeLog | 5 +++++ gcc/rtl.h | 1 - gcc/rtlanal.c | 46 ---------------------------------------------- 3 files changed, 5 insertions(+), 47 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e486eb41307..bd0c89943fb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2014-08-28 David Malcolm + + * rtl.h (find_last_value): Delete. + * rtlanal.c (find_last_value): Delete. + 2014-08-28 David Malcolm * cfgexpand.c (pass_expand::execute): Strengthen local "after" diff --git a/gcc/rtl.h b/gcc/rtl.h index ab2a4de859a..e32c5a71cd5 100644 --- a/gcc/rtl.h +++ b/gcc/rtl.h @@ -2751,7 +2751,6 @@ extern rtx single_set_2 (const_rtx, const_rtx); extern int multiple_sets (const_rtx); extern int set_noop_p (const_rtx); extern int noop_move_p (const_rtx); -extern rtx find_last_value (rtx, rtx *, rtx, int); extern int refers_to_regno_p (unsigned int, unsigned int, const_rtx, rtx *); extern int reg_overlap_mentioned_p (const_rtx, const_rtx); extern const_rtx set_of (const_rtx, const_rtx); diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 21de0adbdd7..e95be62bc81 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -1361,52 +1361,6 @@ noop_move_p (const_rtx insn) } -/* Return the last thing that X was assigned from before *PINSN. If VALID_TO - is not NULL_RTX then verify that the object is not modified up to VALID_TO. - If the object was modified, if we hit a partial assignment to X, or hit a - CODE_LABEL first, return X. If we found an assignment, update *PINSN to - point to it. ALLOW_HWREG is set to 1 if hardware registers are allowed to - be the src. */ - -rtx -find_last_value (rtx x, rtx *pinsn, rtx valid_to, int allow_hwreg) -{ - rtx p; - - for (p = PREV_INSN (*pinsn); p && !LABEL_P (p); - p = PREV_INSN (p)) - if (INSN_P (p)) - { - rtx set = single_set (p); - rtx note = find_reg_note (p, REG_EQUAL, NULL_RTX); - - if (set && rtx_equal_p (x, SET_DEST (set))) - { - rtx src = SET_SRC (set); - - if (note && GET_CODE (XEXP (note, 0)) != EXPR_LIST) - src = XEXP (note, 0); - - if ((valid_to == NULL_RTX - || ! modified_between_p (src, PREV_INSN (p), valid_to)) - /* Reject hard registers because we don't usually want - to use them; we'd rather use a pseudo. */ - && (! (REG_P (src) - && REGNO (src) < FIRST_PSEUDO_REGISTER) || allow_hwreg)) - { - *pinsn = p; - return src; - } - } - - /* If set in non-simple way, we don't have a value. */ - if (reg_set_p (x, p)) - break; - } - - return x; -} - /* Return nonzero if register in range [REGNO, ENDREGNO) appears either explicitly or implicitly in X other than being stored into. -- 2.30.2