diff options
| -rw-r--r-- | gcc/ChangeLog | 6 | ||||
| -rw-r--r-- | gcc/simplify-rtx.c | 3 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7196257..1ebd0b3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2002-10-08 Roger Sayle <roger@eyesopen.com> + + PR target/8087 + * simplify-rtx.c (avoid_constant_pool_reference): Allow constant + pool references that are constructed using LO_SUM. + 2002-10-08 Nathan Sidwell <nathan@codesourcery.com> * c-opts.c (c_common_decode_option): Add warn_strict_aliasing to diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c index c49ad63..cd7e28b 100644 --- a/gcc/simplify-rtx.c +++ b/gcc/simplify-rtx.c @@ -146,6 +146,9 @@ avoid_constant_pool_reference (x) return x; addr = XEXP (x, 0); + if (GET_CODE (addr) == LO_SUM) + addr = XEXP (addr, 1); + if (GET_CODE (addr) != SYMBOL_REF || ! CONSTANT_POOL_ADDRESS_P (addr)) return x; |
