From e584065d68f543b9c8dcc4fde3b82caab9dca73e Mon Sep 17 00:00:00 2001 From: Richard Henderson <rth@redhat.com> Date: Thu, 23 Mar 2006 07:51:10 -0800 Subject: [PATCH] alpha.c (alpha_legitimate_constant_p): Reject tls symbols. * config/alpha/alpha.c (alpha_legitimate_constant_p): Reject tls symbols. From-SVN: r112323 --- gcc/ChangeLog | 3 +++ gcc/config/alpha/alpha.c | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 600619cb2c3a..72fa4a5ee7ba 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ 2006-03-23 Richard Henderson <rth@redhat.com> + * config/alpha/alpha.c (alpha_legitimate_constant_p): Reject + tls symbols. + PR target/26347 * config/alpha/predicates.md (local_symbolic_operand): Reject weak symbols. diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c index 14d54388e608..6b1cef70bb01 100644 --- a/gcc/config/alpha/alpha.c +++ b/gcc/config/alpha/alpha.c @@ -2124,10 +2124,13 @@ alpha_legitimate_constant_p (rtx x) { case CONST: case LABEL_REF: - case SYMBOL_REF: case HIGH: return true; + case SYMBOL_REF: + /* TLS symbols are never valid. */ + return SYMBOL_REF_TLS_MODEL (x) == 0; + case CONST_DOUBLE: if (x == CONST0_RTX (mode)) return true; -- GitLab