diff mbox

[alpha] : Skip some TLS -pie tests

Message ID BANLkTin5L2RsfYNOfKK7kiY3sgZOdAMiFA@mail.gmail.com
State New
Headers show

Commit Message

Uros Bizjak June 22, 2011, 11:18 a.m. UTC
Hello!

Some -pie TLS tests are unsupported due to "TLS local exec code cannot
be linked into shared objects".

2011-06-22  Uros Bizjak  <ubizjak@gmail.com>

	* gcc.dg/torture/tls/run-le.c: Skip for -pie on alpha*-*-linux*.
	* gcc.dg/torture/tls/tls-test.c: Ditto.
	* gcc.dg/torture/tls/thr-init-1.c: Ditto.
	* gcc.dg/torture/tls/thr-init-2.c: Ditto.

Tested on alphaev68-pc-linux-gnu, committed to mainline SVN.

Uros.

Comments

Joseph Myers June 22, 2011, 1:04 p.m. UTC | #1
On Wed, 22 Jun 2011, Uros Bizjak wrote:

> Hello!
> 
> Some -pie TLS tests are unsupported due to "TLS local exec code cannot
> be linked into shared objects".

Is there something about the Alpha ABI that makes it impossible to support 
for PIEs (which are different from shared libraries)?  The conclusion for 
ARM was that this was a linker bug 
<http://sourceware.org/ml/binutils/2011-06/msg00204.html>.
Uros Bizjak June 22, 2011, 3:32 p.m. UTC | #2
On Wed, Jun 22, 2011 at 3:04 PM, Joseph S. Myers
<joseph@codesourcery.com> wrote:

>> Some -pie TLS tests are unsupported due to "TLS local exec code cannot
>> be linked into shared objects".
>
> Is there something about the Alpha ABI that makes it impossible to support
> for PIEs (which are different from shared libraries)?  The conclusion for
> ARM was that this was a linker bug
> <http://sourceware.org/ml/binutils/2011-06/msg00204.html>.

Let's ask rth about this...

Uros.
Richard Henderson June 22, 2011, 3:56 p.m. UTC | #3
On 06/22/2011 08:32 AM, Uros Bizjak wrote:
> On Wed, Jun 22, 2011 at 3:04 PM, Joseph S. Myers
> <joseph@codesourcery.com> wrote:
> 
>>> Some -pie TLS tests are unsupported due to "TLS local exec code cannot
>>> be linked into shared objects".
>>
>> Is there something about the Alpha ABI that makes it impossible to support
>> for PIEs (which are different from shared libraries)?  The conclusion for
>> ARM was that this was a linker bug
>> <http://sourceware.org/ml/binutils/2011-06/msg00204.html>.
> 
> Let's ask rth about this...

Yep, alpha has the same bug that arm did.


r~
Uros Bizjak June 22, 2011, 4:07 p.m. UTC | #4
On Wed, Jun 22, 2011 at 5:56 PM, Richard Henderson <rth@redhat.com> wrote:

>>>> Some -pie TLS tests are unsupported due to "TLS local exec code cannot
>>>> be linked into shared objects".
>>>
>>> Is there something about the Alpha ABI that makes it impossible to support
>>> for PIEs (which are different from shared libraries)?  The conclusion for
>>> ARM was that this was a linker bug
>>> <http://sourceware.org/ml/binutils/2011-06/msg00204.html>.
>>
>> Let's ask rth about this...
>
> Yep, alpha has the same bug that arm did.

OK, will revert the patch.  Sorry for being impatient, but the patch
looked so obvious, considering the error... :-|

Uros.
diff mbox

Patch

Index: gcc.dg/torture/tls/tls-test.c
===================================================================
--- gcc.dg/torture/tls/tls-test.c	(revision 175285)
+++ gcc.dg/torture/tls/tls-test.c	(working copy)
@@ -2,6 +2,7 @@ 
 /* { dg-require-effective-target tls  }  */
 /* { dg-require-effective-target pthread } */
 /* { dg-options "-pthread" } */
+/* { dg-skip-if "TLS local exec code cannot be linked into shared objects" { alpha*-*-linux* } { "-pie" } { "" } } */
 
 #include <pthread.h>
 extern int printf (char *,...);
Index: gcc.dg/torture/tls/run-le.c
===================================================================
--- gcc.dg/torture/tls/run-le.c	(revision 175285)
+++ gcc.dg/torture/tls/run-le.c	(working copy)
@@ -1,6 +1,7 @@ 
 /* { dg-do run } */
 /* { dg-require-effective-target tls_runtime } */
 /* { dg-add-options tls } */
+/* { dg-skip-if "TLS local exec code cannot be linked into shared objects" { alpha*-*-linux* } { "-pie" } { "" } } */
 
 extern void abort (void);
 
Index: gcc.dg/torture/tls/thr-init-1.c
===================================================================
--- gcc.dg/torture/tls/thr-init-1.c	(revision 175285)
+++ gcc.dg/torture/tls/thr-init-1.c	(working copy)
@@ -1,6 +1,7 @@ 
 /* { dg-do run } */
 /* { dg-require-effective-target tls_runtime } */
 /* { dg-add-options tls } */
+/* { dg-skip-if "TLS local exec code cannot be linked into shared objects" { alpha*-*-linux* } { "-pie" } { "" } } */
 
 extern int printf (char *,...);
 extern void abort() ;
Index: gcc.dg/torture/tls/thr-init-2.c
===================================================================
--- gcc.dg/torture/tls/thr-init-2.c	(revision 175285)
+++ gcc.dg/torture/tls/thr-init-2.c	(working copy)
@@ -1,6 +1,7 @@ 
 /* { dg-do run } */
 /* { dg-require-effective-target tls_runtime } */
 /* { dg-add-options tls } */
+/* { dg-skip-if "TLS local exec code cannot be linked into shared objects" { alpha*-*-linux* } { "-pie" } { "" } } */
 
 extern int printf (char *,...);
 extern void abort() ;