aboutsummaryrefslogtreecommitdiff
path: root/gcc/configure
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@libertysurf.fr>2004-01-19 17:57:05 +0100
committerEric Botcazou <ebotcazou@gcc.gnu.org>2004-01-19 16:57:05 +0000
commit2f3321ca812411919883439797b1865c5c09d786 (patch)
tree664ae70c382114ab2b88d14995496b39032f2880 /gcc/configure
parent6fe37bc4be12d5b9c7369e01224a45f1eed6e73c (diff)
downloadgcc-2f3321ca812411919883439797b1865c5c09d786.zip
gcc-2f3321ca812411919883439797b1865c5c09d786.tar.gz
gcc-2f3321ca812411919883439797b1865c5c09d786.tar.bz2
sol2.h (ASM_DECLARE_OBJECT_NAME): New.
* config/sparc/sol2.h (ASM_DECLARE_OBJECT_NAME): New. Emit "tls_object" for thread-local objects. * config/sparc/sparc.c (sparc_elf_asm_named_section): Emit "#tls" for thread-local sections. * configure.ac (thread-local checks): Specify --fatal-warnings in every binutils-specific checks. For sparc*-*-*, test whether the OS is Solaris and the tools are native and act accordingly. * configure: Rebuild. From-SVN: r76156
Diffstat (limited to 'gcc/configure')
-rwxr-xr-xgcc/configure54
1 files changed, 47 insertions, 7 deletions
diff --git a/gcc/configure b/gcc/configure
index e703d08..73108e5 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -10138,6 +10138,7 @@ foo: .long 25
lda $4,foo($29) !tprel'
tls_first_major=2
tls_first_minor=13
+ tls_as_opt=--fatal-warnings
;;
i[34567]86-*-*)
conftest_s='
@@ -10157,6 +10158,7 @@ foo: .long 25
leal foo@NTPOFF(%ecx), %eax'
tls_first_major=2
tls_first_minor=14
+ tls_as_opt=--fatal-warnings
;;
x86_64-*-*)
conftest_s='
@@ -10171,6 +10173,7 @@ foo: .long 25
movq $foo@TPOFF, %rax'
tls_first_major=2
tls_first_minor=14
+ tls_as_opt=--fatal-warnings
;;
ia64-*-*)
conftest_s='
@@ -10188,6 +10191,7 @@ foo: data8 25
movl r24 = @tprel(foo#)'
tls_first_major=2
tls_first_minor=13
+ tls_as_opt=--fatal-warnings
;;
powerpc-*-*)
conftest_s='
@@ -10213,7 +10217,7 @@ x3: .space 4
addi 9,9,x2@tprel@l'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-a32
+ tls_as_opt="-a32 --fatal-warnings"
;;
powerpc64-*-*)
conftest_s='
@@ -10247,7 +10251,7 @@ x3: .space 8
nop'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-a64
+ tls_as_opt="-a64 --fatal-warnings"
;;
s390-*-*)
conftest_s='
@@ -10266,7 +10270,7 @@ foo: .long 25
bas %r14,0(%r1,%r13):tls_ldcall:foo'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-m31
+ tls_as_opt="-m31 --fatal-warnings"
;;
s390x-*-*)
conftest_s='
@@ -10284,7 +10288,7 @@ foo: .long 25
brasl %r14,__tls_get_offset@PLT:tls_ldcall:foo'
tls_first_major=2
tls_first_minor=14
- tls_as_opt="-m64 -Aesame"
+ tls_as_opt="-m64 -Aesame --fatal-warnings"
;;
sh-*-* | sh[34]-*-*)
conftest_s='
@@ -10298,9 +10302,44 @@ foo: .long 25
.long foo@TPOFF'
tls_first_major=2
tls_first_minor=13
+ tls_as_opt=--fatal-warnings
;;
sparc*-*-*)
- conftest_s='
+ case "$target" in
+ sparc*-sun-solaris2.*)
+ on_solaris=yes
+ ;;
+ *)
+ on_solaris=no
+ ;;
+ esac
+ if test x$on_solaris = xyes && test x$gas_flag = xno; then
+ conftest_s='
+ .section ".tdata",#alloc,#write,#tls
+foo: .long 25
+ .text
+ sethi %tgd_hi22(foo), %o0
+ add %o0, %tgd_lo10(foo), %o1
+ add %l7, %o1, %o0, %tgd_add(foo)
+ call __tls_get_addr, %tgd_call(foo)
+ sethi %tldm_hi22(foo), %l1
+ add %l1, %tldm_lo10(foo), %l2
+ add %l7, %l2, %o0, %tldm_add(foo)
+ call __tls_get_addr, %tldm_call(foo)
+ sethi %tldo_hix22(foo), %l3
+ xor %l3, %tldo_lox10(foo), %l4
+ add %o0, %l4, %l5, %tldo_add(foo)
+ sethi %tie_hi22(foo), %o3
+ add %o3, %tie_lo10(foo), %o3
+ ld [%l7 + %o3], %o2, %tie_ld(foo)
+ add %g7, %o2, %o4, %tie_add(foo)
+ sethi %tle_hix22(foo), %l1
+ xor %l1, %tle_lox10(foo), %o5
+ ld [%g7 + %o5], %o1'
+ tls_first_major=0
+ tls_first_minor=0
+ else
+ conftest_s='
.section ".tdata","awT",@progbits
foo: .long 25
.text
@@ -10324,7 +10363,8 @@ foo: .long 25
ld [%g7 + %o5], %o1'
tls_first_major=2
tls_first_minor=14
- tls_as_opt=-32
+ tls_as_opt="-32 --fatal-warnings"
+ fi
;;
esac
if test -z "$tls_first_major"; then
@@ -10342,7 +10382,7 @@ else
fi
elif test x$gcc_cv_as != x; then
echo "$conftest_s" > conftest.s
- if { ac_try='$gcc_cv_as $tls_as_opt --fatal-warnings -o conftest.o conftest.s >&5'
+ if { ac_try='$gcc_cv_as $tls_as_opt -o conftest.o conftest.s >&5'
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?