aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtlanal.c
diff options
context:
space:
mode:
authorCharles Hannum <mycroft@gnu.org>1992-07-06 20:15:06 +0000
committerCharles Hannum <mycroft@gnu.org>1992-07-06 20:15:06 +0000
commitc166a31116c7a33593aa2c54b0763d70c7dd4391 (patch)
tree4ab72bd153a36b9459a8c41247387a25bab2d88d /gcc/rtlanal.c
parent373666321abc0c92b292160fbb328a991d205940 (diff)
downloadgcc-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.c13
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))