diff options
| -rw-r--r-- | gcc/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/rtlanal.c | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 468d4a0..062ba49 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Thu Mar 8 23:29:37 2001 John Wehle (john@feith.com) + + * rtlanal.c (rtx_varies_p): Check operand 0 of a + LO_SUM unless for_alias is set. + 2001-03-08 Stan Shebs <shebs@apple.com> * objc/objc-act.c: Fix old typos in comments, add comments for diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 237382f..be9374e 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -163,8 +163,10 @@ rtx_varies_p (x, for_alias) case LO_SUM: /* The operand 0 of a LO_SUM is considered constant - (in fact is it related specifically to operand 1). */ - return rtx_varies_p (XEXP (x, 1), for_alias); + (in fact it is related specifically to operand 1) + during alias analysis. */ + return (! for_alias && rtx_varies_p (XEXP (x, 0), for_alias)) + || rtx_varies_p (XEXP (x, 1), for_alias); case ASM_OPERANDS: if (MEM_VOLATILE_P (x)) |
