diff options
author | Andreas Jaeger <jaegerandi@gmail.com> | 2012-03-28 09:22:05 +0200 |
---|---|---|
committer | Andreas Jaeger <jaegerandi@gmail.com> | 2012-03-28 09:22:05 +0200 |
commit | 02380086699207fc8e58619f35f60da12470137e (patch) | |
tree | 9b337733100552d829ccce5beea1cfb3fe5e5532 /sysdeps/powerpc/powerpc64/configure.in | |
parent | 09ae94c11b4309b425fbbfaa095e64cac2ae8cb8 (diff) | |
download | glibc-02380086699207fc8e58619f35f60da12470137e.zip glibc-02380086699207fc8e58619f35f60da12470137e.tar.gz glibc-02380086699207fc8e58619f35f60da12470137e.tar.bz2 |
Move sysdeps/powerpc/powerpc64/elf files
* sysdeps/powerpc/powerpc64/elf/bzero.S: Moved to ...
* sysdeps/powerpc/powerpc64/bzero.S: ... here.
* sysdeps/powerpc/powerpc64/elf/entry.h: Moved to ...
* sysdeps/powerpc/powerpc64/entry.h: ... here.
* sysdeps/powerpc/powerpc64/elf/start.S: Moved to ...
* sysdeps/powerpc/powerpc64/start.S: here.
* sysdeps/powerpc/powerpc64/elf/Makefile: Merge into ...
* sysdeps/powerpc/powerpc64/Makefile: ... this.
* sysdeps/powerpc/powerpc64/elf/configure.in: Merge into ...
* sysdeps/powerpc/powerpc64/configure.in: ... this.
* sysdeps/powerpc/powerpc64/elf/configure: Delete file.
Diffstat (limited to 'sysdeps/powerpc/powerpc64/configure.in')
-rw-r--r-- | sysdeps/powerpc/powerpc64/configure.in | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/sysdeps/powerpc/powerpc64/configure.in b/sysdeps/powerpc/powerpc64/configure.in index 67aac66..7d333a7 100644 --- a/sysdeps/powerpc/powerpc64/configure.in +++ b/sysdeps/powerpc/powerpc64/configure.in @@ -40,3 +40,56 @@ rm -f conftest.c conftest.s if test x$libc_cv_overlapping_opd = xyes; then AC_DEFINE(USE_PPC64_OVERLAPPING_OPD) fi + +# Check for support of thread-local storage handling in assembler and +# linker. +AC_CACHE_CHECK(for powerpc64 TLS support, libc_cv_powerpc64_tls, [dnl +cat > conftest.s <<\EOF + .section ".tdata","awT",@progbits +x: .quad 1 +x1: .quad 1 +x2: .quad 1 +x3: .quad 1 +x4: .long 1 + .section ".toc","aw" +.LC0: + .quad x@dtpmod + .quad x@dtprel +.LC1: + .quad x1@dtpmod + .quad 0 +.LC2: + .quad x@tprel + .text + addi 3,2,x@got@tlsgd + addi 3,2,.LC0@toc + addi 3,2,x1@got@tlsld + addi 9,3,x1@dtprel + addis 9,3,x2@dtprel@ha + addi 9,9,x2@dtprel@l + ld 9,x3@got@dtprel(2) + addi 3,2,.LC0@toc + lwz 0,x1@dtprel(3) + ld 0,x1@dtprel(3) + addis 9,3,x2@dtprel@ha + lwz 0,x2@dtprel@l(9) + ld 0,x2@dtprel@l(9) + ld 9,x3@got@dtprel(2) + ld 9,x@got@tprel(2) + add 9,9,x@tls + ld 9,.LC2@toc(2) + add 9,9,.LC2@tls + addi 9,13,x1@tprel + addis 9,13,x2@tprel@ha + addi 9,9,x2@tprel@l +EOF +dnl +if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then + libc_cv_powerpc64_tls=yes +else + libc_cv_powerpc64_tls=no +fi +rm -f conftest*]) +if test $libc_cv_powerpc64_tls = no; then + AC_MSG_ERROR([the assembler must support TLS]) +fi |