Add Changelog ...
[glibc.git] / sysdeps / alpha / configure.in
blobbf8e92665720361821ee62f0c5a3947c17cf0ff8
1 GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
2 # Local configure fragment for sysdeps/alpha.
4 # Check for support of thread-local storage handling in assembler and linker.
5 AC_CACHE_CHECK(for Alpha TLS support, libc_cv_alpha_tls, [dnl
6 cat > conftest.s <<\EOF
7         .section ".tdata", "awT", @progbits
8         .globl foo
9 foo:    .quad   1
10         .section ".tbss", "awT", @nobits
11         .globl bar
12 bar:    .skip   8
13         .text
14 baz:
15         .set nomacro
16         ldq     $27, __tls_get_addr($29)        !literal!1
17         ldq     $16, a($29)                     !tlsgd!1
18         jsr     $26, ($27), __tls_get_addr      !lituse_tlsgd!1
20         jsr     $26, ($27), __tls_get_addr      !lituse_tlsldm!2
21         ldq     $27, __tls_get_addr($29)        !literal!2
22         ldq     $16, b($29)                     !tlsldm!2
24         ldq     $16, c($29)                     !tlsgd
25         ldq     $16, d($29)                     !tlsldm
27         ldq     $16, e($29)                     !tlsgd!3
28         ldq     $16, f($29)                     !tlsldm!4
30         ldq     $16, g($29)                     !gotdtprel
31         ldah    $16, h($31)                     !dtprelhi
32         lda     $16, i($16)                     !dtprello
33         lda     $16, j($31)                     !dtprel
35         ldq     $16, k($29)                     !gottprel
36         ldah    $16, l($31)                     !tprelhi
37         lda     $16, m($16)                     !tprello
38         lda     $16, n($31)                     !tprel
39 EOF
40 dnl
41 if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
42   libc_cv_alpha_tls=yes
43 else
44   libc_cv_alpha_tls=no
46 rm -f conftest*])
47 if test $libc_cv_alpha_tls = no; then
48   AC_MSG_ERROR([the assembler must support TLS])
51 AC_CACHE_CHECK(for GP relative module local relocs, libc_cv_alpha_hidden_gprel, [dnl
52 cat > conftest.c <<\EOF
53 static volatile int bar;
54 int baz __attribute__((visibility("hidden")));
55 int f(void) { return bar + baz; }
56 EOF
57 dnl
59 libc_cv_alpha_hidden_gprel=no
60 if AC_TRY_COMMAND(${CC-cc} -S $CFLAGS -O2 -fpic conftest.c 1>&AS_MESSAGE_LOG_FD); then
61   if grep -q 'bar.*!gprel' conftest.s \
62      && grep -q 'baz.*!gprel' conftest.s \
63      && ! grep -q 'bar.*!literal' conftest.s \
64      && ! grep -q 'baz.*!literal' conftest.s; then
65     libc_cv_alpha_hidden_gprel=yes
66   fi
68 rm -f conftest*])
69 if test $libc_cv_alpha_hidden_gprel = yes; then
70   AC_DEFINE(PI_STATIC_AND_HIDDEN)