summaryrefslogtreecommitdiff
path: root/gcc/config/pa/pa.c
diff options
context:
space:
mode:
authordanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>2013-01-04 03:55:43 +0000
committerdanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>2013-01-04 03:55:43 +0000
commitdfb5e2bf8aa014d01d6546fa7947a67cc36693c6 (patch)
tree7121d8cfe1fae6f2461df68b11c96af6b69bdcbd /gcc/config/pa/pa.c
parentafc40fc6e6e9e8a9c877d17cad24a8d1595a9e60 (diff)
downloadlinaro-gcc-dfb5e2bf8aa014d01d6546fa7947a67cc36693c6.tar.gz
linaro-gcc-dfb5e2bf8aa014d01d6546fa7947a67cc36693c6.tar.bz2
linaro-gcc-dfb5e2bf8aa014d01d6546fa7947a67cc36693c6.zip
PR target/53789
* config/pa/pa.md (movsi): Revert previous change. * pa.c (pa_legitimate_constant_p): Reject all TLS symbol references. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194879 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/pa/pa.c')
-rw-r--r--gcc/config/pa/pa.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c
index 8b93aa9e5ad..f697fd69ea7 100644
--- a/gcc/config/pa/pa.c
+++ b/gcc/config/pa/pa.c
@@ -10358,14 +10358,10 @@ pa_legitimate_constant_p (enum machine_mode mode, rtx x)
return false;
/* TLS_MODEL_GLOBAL_DYNAMIC and TLS_MODEL_LOCAL_DYNAMIC are not
- legitimate constants. */
+ legitimate constants. The other variants can't be handled by
+ the move patterns after reload starts. */
if (PA_SYMBOL_REF_TLS_P (x))
- {
- enum tls_model model = SYMBOL_REF_TLS_MODEL (x);
-
- if (model == TLS_MODEL_GLOBAL_DYNAMIC || model == TLS_MODEL_LOCAL_DYNAMIC)
- return false;
- }
+ return false;
if (TARGET_64BIT && GET_CODE (x) == CONST_DOUBLE)
return false;