aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2004-11-25 17:30:25 +0000
committerUlrich Weigand <uweigand@gcc.gnu.org>2004-11-25 17:30:25 +0000
commit227a39fa4227f67b1dfcbe2e19a9ac0d096b616f (patch)
tree73eb559ac3ad16f54664a6bfc9f0d77db21686db /gcc
parent6aea2f6dfeb4c674321733faafd8e71393fa54ba (diff)
downloadgcc-227a39fa4227f67b1dfcbe2e19a9ac0d096b616f.zip
gcc-227a39fa4227f67b1dfcbe2e19a9ac0d096b616f.tar.gz
gcc-227a39fa4227f67b1dfcbe2e19a9ac0d096b616f.tar.bz2
s390.c (s390_short_displacement): UNSPEC_GOTNTPOFF displacements are not short.
* config/s390/s390.c (s390_short_displacement): UNSPEC_GOTNTPOFF displacements are not short. From-SVN: r91303
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/s390/s390.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 586b35a..afb4d60 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2004-11-25 Ulrich Weigand <uweigand@de.ibm.com>
+ * config/s390/s390.c (s390_short_displacement): UNSPEC_GOTNTPOFF
+ displacements are not short.
+
+2004-11-25 Ulrich Weigand <uweigand@de.ibm.com>
+
* config/s390/s390.c (legitimize_pic_address): Use s390_load_address
to load addresses.
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c
index cca3d87..f624419 100644
--- a/gcc/config/s390/s390.c
+++ b/gcc/config/s390/s390.c
@@ -1565,7 +1565,8 @@ s390_short_displacement (rtx disp)
/* GOT offset is not OK, the GOT can be large. */
if (GET_CODE (disp) == CONST
&& GET_CODE (XEXP (disp, 0)) == UNSPEC
- && XINT (XEXP (disp, 0), 1) == UNSPEC_GOT)
+ && (XINT (XEXP (disp, 0), 1) == UNSPEC_GOT
+ || XINT (XEXP (disp, 0), 1) == UNSPEC_GOTNTPOFF))
return 0;
/* All other symbolic constants are literal pool references,