aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRoger Sayle <roger@eyesopen.com>2002-10-08 20:49:02 +0000
committerRoger Sayle <sayle@gcc.gnu.org>2002-10-08 20:49:02 +0000
commit11f3e4c7ca8cd3dab7591c4a0ccb2288d2914f59 (patch)
tree3147a52135a663e219c268794a647768c8980166 /gcc
parenta976603e86cbfaf6ddf522d5afd30464835bff01 (diff)
downloadgcc-11f3e4c7ca8cd3dab7591c4a0ccb2288d2914f59.zip
gcc-11f3e4c7ca8cd3dab7591c4a0ccb2288d2914f59.tar.gz
gcc-11f3e4c7ca8cd3dab7591c4a0ccb2288d2914f59.tar.bz2
re PR target/8087 (sparc-sun-solaris2.7 C testsuite failures in execute/20020720-1.c w/-m64 or on sparcv9/sparc64)
PR target/8087 * simplify-rtx.c (avoid_constant_pool_reference): Allow constant pool references that are constructed using LO_SUM. From-SVN: r57942
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/simplify-rtx.c3
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;