From 58f451f0930a31bb8b9975817ffedc2020450179 Mon Sep 17 00:00:00 2001 From: Joseph Myers <joseph@codesourcery.com> Date: Wed, 21 Oct 2009 16:16:24 +0100 Subject: [PATCH] sh.c (nonpic_symbol_mentioned_p): Allow UNSPEC_TPOFF. * config/sh/sh.c (nonpic_symbol_mentioned_p): Allow UNSPEC_TPOFF. testsuite: * gcc.dg/tls/pie-1.c: New test. From-SVN: r153060 --- gcc/ChangeLog | 4 ++++ gcc/config/sh/sh.c | 1 + gcc/testsuite/ChangeLog | 4 ++++ gcc/testsuite/gcc.dg/tls/pie-1.c | 6 ++++++ 4 files changed, 15 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/tls/pie-1.c diff --git a/gcc/ChangeLog b/gcc/ChangeLog index dc8d5936f52a..cf2bc8f38573 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2009-10-21 Joseph Myers <joseph@codesourcery.com> + + * config/sh/sh.c (nonpic_symbol_mentioned_p): Allow UNSPEC_TPOFF. + 2009-10-21 Jakub Jelinek <jakub@redhat.com> PR other/25507 diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 7758bfa0f3bd..26bceea670d2 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -9431,6 +9431,7 @@ nonpic_symbol_mentioned_p (rtx x) || XINT (x, 1) == UNSPEC_GOTPLT || XINT (x, 1) == UNSPEC_GOTTPOFF || XINT (x, 1) == UNSPEC_DTPOFF + || XINT (x, 1) == UNSPEC_TPOFF || XINT (x, 1) == UNSPEC_PLT || XINT (x, 1) == UNSPEC_SYMOFF || XINT (x, 1) == UNSPEC_PCREL_SYMOFF)) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b1c3fdcb2de5..ec986f3270ba 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2009-10-21 Joseph Myers <joseph@codesourcery.com> + + * gcc.dg/tls/pie-1.c: New test. + 2009-10-21 Jakub Jelinek <jakub@redhat.com> * g++.dg/abi/mangle33.C: New test. diff --git a/gcc/testsuite/gcc.dg/tls/pie-1.c b/gcc/testsuite/gcc.dg/tls/pie-1.c new file mode 100644 index 000000000000..07eb5f1ad25c --- /dev/null +++ b/gcc/testsuite/gcc.dg/tls/pie-1.c @@ -0,0 +1,6 @@ +/* { dg-do compile } */ +/* { dg-require-effective-target fpic } */ +/* { dg-options "-fpie" } */ +/* { dg-require-effective-target tls } */ + +__thread int a; int b; int main() { return a = b; } -- GitLab