This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[testsuite] Robustify target_tls_runtime check
- From: Eric Botcazou <ebotcazou at adacore dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 13 Jul 2018 10:54:19 +0200
- Subject: [testsuite] Robustify target_tls_runtime check
As witnessed by the kludge added for MSP430 and Visium, the check doesn't
really work (that's also visible for arm-eabi).
Tested on x86_64-suse-linux, visium-elf and arm-eabi, OK for mainline?
2018-07-13 Eric Botcazou <ebotcazou@adacore.com>
* lib/target-supports.exp (check_effective_target_tls_runtime): Force
global-dynamic model for thread variable and remove kludge.
--
Eric Botcazou
Index: lib/target-supports.exp
===================================================================
--- lib/target-supports.exp (revision 262551)
+++ lib/target-supports.exp (working copy)
@@ -878,13 +878,8 @@ proc check_effective_target_tls_emulated
# Return 1 if TLS executables can run correctly, 0 otherwise.
proc check_effective_target_tls_runtime {} {
- # The runtime does not have TLS support, but just
- # running the test below is insufficient to show this.
- if { [istarget msp430-*-*] || [istarget visium-*-*] } {
- return 0
- }
return [check_runtime tls_runtime {
- __thread int thr = 0;
+ __thread int thr __attribute__((tls_model("global-dynamic"))) = 0;
int main (void) { return thr; }
} [add_options_for_tls ""]]
}