diff options
author | Charles Hannum <mycroft@gnu.org> | 1992-07-06 20:15:06 +0000 |
---|---|---|
committer | Charles Hannum <mycroft@gnu.org> | 1992-07-06 20:15:06 +0000 |
commit | c166a31116c7a33593aa2c54b0763d70c7dd4391 (patch) | |
tree | 4ab72bd153a36b9459a8c41247387a25bab2d88d /gcc/rtlanal.c | |
parent | 373666321abc0c92b292160fbb328a991d205940 (diff) | |
download | gcc-c166a31116c7a33593aa2c54b0763d70c7dd4391.zip gcc-c166a31116c7a33593aa2c54b0763d70c7dd4391.tar.gz gcc-c166a31116c7a33593aa2c54b0763d70c7dd4391.tar.bz2 |
entered into RCS
From-SVN: r1476
Diffstat (limited to 'gcc/rtlanal.c')
-rw-r--r-- | gcc/rtlanal.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 8ca23e3..8ccae19 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -1,5 +1,5 @@ /* Analyze RTL for C-Compiler - Copyright (C) 1987, 1988, 1991 Free Software Foundation, Inc. + Copyright (C) 1987, 1988, 1991, 1992 Free Software Foundation, Inc. This file is part of GNU CC. @@ -184,7 +184,7 @@ rtx_addr_varies_p (x) Only obvious integer terms are detected. This is used in cse.c with the `related_value' field.*/ -int +HOST_WIDE_INT get_integer_term (x) rtx x; { @@ -561,7 +561,7 @@ find_last_value (x, pinsn, valid_to) if (GET_RTX_CLASS (GET_CODE (p)) == 'i') { rtx set = single_set (p); - rtx note = find_reg_note (p, REG_EQUAL, 0); + rtx note = find_reg_note (p, REG_EQUAL, NULL_RTX); if (set && rtx_equal_p (x, SET_DEST (set))) { @@ -735,7 +735,7 @@ reg_overlap_mentioned_p (x, in) endregno = regno + (regno < FIRST_PSEUDO_REGISTER ? HARD_REGNO_NREGS (regno, GET_MODE (x)) : 1); - return refers_to_regno_p (regno, endregno, in, 0); + return refers_to_regno_p (regno, endregno, in, NULL_PTR); } /* Used for communications between the next few functions. */ @@ -886,6 +886,11 @@ rtx_equal_p (x, y) { switch (fmt[i]) { + case 'w': + if (XWINT (x, i) != XWINT (y, i)) + return 0; + break; + case 'n': case 'i': if (XINT (x, i) != XINT (y, i)) |