aboutsummaryrefslogtreecommitdiff
path: root/libgcc/configure
diff options
context:
space:
mode:
Diffstat (limited to 'libgcc/configure')
-rw-r--r--libgcc/configure37
1 files changed, 37 insertions, 0 deletions
diff --git a/libgcc/configure b/libgcc/configure
index b6c003c..f522427 100644
--- a/libgcc/configure
+++ b/libgcc/configure
@@ -556,6 +556,7 @@ LIBOBJS
asm_hidden_op
extra_parts
tmake_file
+set_use_emutls
set_have_cc_tls
vis_hide
fixed_point
@@ -3811,6 +3812,42 @@ if test "$enable_tls $gcc_cv_have_cc_tls" = "yes yes"; then
fi
+# See if we have emulated thread-local storage.
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the thread-local storage support is from emutls" >&5
+$as_echo_n "checking whether the thread-local storage support is from emutls... " >&6; }
+if test "${gcc_cv_use_emutls+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+
+ gcc_cv_use_emutls=no
+ echo '__thread int a; int b; int main() { return a = b; }' > conftest.c
+ if { ac_try='${CC-cc} -Werror -S -o conftest.s conftest.c 1>&5'
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then
+ if grep __emutls_get_address conftest.s > /dev/null; then
+ gcc_cv_use_emutls=yes
+ fi
+ fi
+ rm -f conftest.*
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_use_emutls" >&5
+$as_echo "$gcc_cv_use_emutls" >&6; }
+ if test "$gcc_cv_use_emutls" = "yes" ; then
+
+$as_echo "#define USE_EMUTLS 1" >>confdefs.h
+
+ fi
+set_use_emutls=
+if test "$enable_tls $gcc_cv_use_emutls" = "yes yes"; then
+ set_use_emutls="-DUSE_EMUTLS"
+fi
+
+
# Conditionalize the makefile for this target machine.
tmake_file_=
for f in ${tmake_file}