diff options
author | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-05-02 10:08:59 +0000 |
---|---|---|
committer | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-05-02 10:08:59 +0000 |
commit | 56d8dd53249be7c9e895a7a9c8e19ca0d402082d (patch) | |
tree | 7c5d880da603b7acab4627747941d8a33e7441b4 /gcc/cselib.c | |
parent | b98d0bd6f67eaab7ebd6b76955bcaeea2383e81a (diff) | |
download | gcc-56d8dd53249be7c9e895a7a9c8e19ca0d402082d.tar.gz |
PR rtl-optimization/70886
* sched-deps.c (estimate_dep_weak): Canonicalize cselib values.
* cselib.h (rtx_equal_for_cselib_1): Declare.
(rtx_equal_for_cselib_p: New inline function.
* cselib.c (rtx_equal_for_cselib_p): Delete.
(rtx_equal_for_cselib_1): Make public.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@235735 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cselib.c')
-rw-r--r-- | gcc/cselib.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/gcc/cselib.c b/gcc/cselib.c index 2922465cf83..14c7b320b03 100644 --- a/gcc/cselib.c +++ b/gcc/cselib.c @@ -49,7 +49,6 @@ static void unchain_one_value (cselib_val *); static void unchain_one_elt_list (struct elt_list **); static void unchain_one_elt_loc_list (struct elt_loc_list **); static void remove_useless_values (void); -static int rtx_equal_for_cselib_1 (rtx, rtx, machine_mode); static unsigned int cselib_hash_rtx (rtx, int, machine_mode); static cselib_val *new_cselib_val (unsigned int, machine_mode, rtx); static void add_mem_for_addr (cselib_val *, cselib_val *, rtx); @@ -788,15 +787,6 @@ cselib_reg_set_mode (const_rtx x) return GET_MODE (REG_VALUES (REGNO (x))->elt->val_rtx); } -/* Return nonzero if we can prove that X and Y contain the same value, taking - our gathered information into account. */ - -int -rtx_equal_for_cselib_p (rtx x, rtx y) -{ - return rtx_equal_for_cselib_1 (x, y, VOIDmode); -} - /* If x is a PLUS or an autoinc operation, expand the operation, storing the offset, if any, in *OFF. */ @@ -843,7 +833,7 @@ autoinc_split (rtx x, rtx *off, machine_mode memmode) addressing modes. If X and Y are not (known to be) part of addresses, MEMMODE should be VOIDmode. */ -static int +int rtx_equal_for_cselib_1 (rtx x, rtx y, machine_mode memmode) { enum rtx_code code; |