From 67f46fed806465c005b15c97d33947f4c0abb25c Mon Sep 17 00:00:00 2001 From: James Clarke Date: Sat, 13 May 2017 08:01:15 -0700 Subject: Fix assertion failure relaxing TLS for position-independent executables. gold/ PR gold/21444 * gold.cc (Target_sparc::Relocate::relocate_tls): Local variables are final for position-independent executables. This has to be consistent with Target_sparc::Scan::local otherwise they will disagree as to whether local-exec is used. --- gold/sparc.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gold/sparc.cc') diff --git a/gold/sparc.cc b/gold/sparc.cc index a9cb93a..54c7c33 100644 --- a/gold/sparc.cc +++ b/gold/sparc.cc @@ -3730,7 +3730,7 @@ Target_sparc::Relocate::relocate_tls( const bool is_final = (gsym == NULL - ? !parameters->options().output_is_position_independent() + ? !parameters->options().shared() : gsym->final_value_is_known()); const tls::Tls_optimization optimized_type = optimize_tls_reloc(is_final, r_type); -- cgit v1.1