Nothing in the tree appears to use this.

gcc/
        * rtl.h (find_last_value): Delete.
        * rtlanal.c (find_last_value): Delete.
---
 gcc/rtl.h     |  1 -
 gcc/rtlanal.c | 46 ----------------------------------------------
 2 files changed, 47 deletions(-)

diff --git a/gcc/rtl.h b/gcc/rtl.h
index 613d06c..8cdb88d 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -2745,7 +2745,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 46a5fc1..6429906 100644
--- a/gcc/rtlanal.c
+++ b/gcc/rtlanal.c
@@ -1274,52 +1274,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.
-- 
1.8.5.3

Reply via email to