All TLS execution tests require tls_runtime, not just tls; pr78796.c is the only exception that is not otherwise limited to platforms known to support it. I suppose that's an oversight. On a platform whose linker is configured to disregard TLS relocations, this test compiles and assembles successfully, but execution fails. The tls_runtime requirement target avoids the noise from the expected failure.
Tested on the affected platform, and on x86_64-linux-gnu. Ok to install? for gcc/testsuite/ChangeLog * gcc.dg/tls/pr78796.c: Require tls_runtime. --- gcc/testsuite/gcc.dg/tls/pr78796.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/testsuite/gcc.dg/tls/pr78796.c b/gcc/testsuite/gcc.dg/tls/pr78796.c index a0b23d6..038e536 100644 --- a/gcc/testsuite/gcc.dg/tls/pr78796.c +++ b/gcc/testsuite/gcc.dg/tls/pr78796.c @@ -2,7 +2,7 @@ /* { dg-do run } */ /* { dg-options "-O2" } */ /* { dg-additional-options "-mcmodel=large" { target aarch64-*-* } } */ -/* { dg-require-effective-target tls } */ +/* { dg-require-effective-target tls_runtime } */ /* { dg-add-options tls } */ struct S { int a, b, c, d, e; }; -- Alexandre Oliva, freedom fighter he/him https://FSFLA.org/blogs/lxo/ Free Software Evangelist Stallman was right, but he's left :( GNU Toolchain Engineer Live long and free, and prosper ethically