summaryrefslogtreecommitdiff
path: root/gcc/cselib.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2012-02-14 00:31:48 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2012-02-14 00:31:48 +0100
commit9a76e83d80ad83c52006e6370ac4c23c9a722063 (patch)
tree15cbb5d3f14d62dfccb279c6d3b924cdce7aeabd /gcc/cselib.c
parent993716bdcab4dd9d6727b406ad6b7732484c14d4 (diff)
downloadgcc-9a76e83d80ad83c52006e6370ac4c23c9a722063.tar.gz
re PR bootstrap/52172 (stage 3 Bootstrap comparison failure on FreeBSD ia64)
PR bootstrap/52172 * cselib.h (cselib_subst_to_values_from_insn): New prototype. * cselib.c (cselib_subst_to_values_from_insn): New function. * sched-deps.c (add_insn_mem_dependence, sched_analyze_1, sched_analyze_2): Use it. From-SVN: r184181
Diffstat (limited to 'gcc/cselib.c')
-rw-r--r--gcc/cselib.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc/cselib.c b/gcc/cselib.c
index 7d3e4ca52d8..d7cb355fc33 100644
--- a/gcc/cselib.c
+++ b/gcc/cselib.c
@@ -1905,6 +1905,19 @@ cselib_subst_to_values (rtx x, enum machine_mode memmode)
return copy;
}
+/* Wrapper for cselib_subst_to_values, that indicates X is in INSN. */
+
+rtx
+cselib_subst_to_values_from_insn (rtx x, enum machine_mode memmode, rtx insn)
+{
+ rtx ret;
+ gcc_assert (!cselib_current_insn);
+ cselib_current_insn = insn;
+ ret = cselib_subst_to_values (x, memmode);
+ cselib_current_insn = NULL;
+ return ret;
+}
+
/* Look up the rtl expression X in our tables and return the value it
has. If CREATE is zero, we return NULL if we don't know the value.
Otherwise, we create a new one if possible, using mode MODE if X