diff options
author | Joseph Myers <joseph@codesourcery.com> | 2012-07-01 13:08:59 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2012-07-01 13:08:59 +0000 |
commit | e84eabb3871c9b39e59323bf3f6b98c2ca9d1cd0 (patch) | |
tree | dff3f1b79454b518d15a7b9bbedeb57ff156bbe8 /ports/sysdeps/ia64/configure.in | |
parent | 75f0d3040a2c2de8842bfa7a09e11da1a73e17d0 (diff) | |
parent | e64ac02c24b43659048622714afdc92fedf561fa (diff) | |
download | glibc-2.16.90.tar glibc-2.16.90.tar.gz glibc-2.16.90.tar.bz2 glibc-2.16.90.zip |
Merge glibc-ports into ports/ directory.glibc-2.16.90glibc-2.16-ports-merge
Diffstat (limited to 'ports/sysdeps/ia64/configure.in')
-rw-r--r-- | ports/sysdeps/ia64/configure.in | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/ports/sysdeps/ia64/configure.in b/ports/sysdeps/ia64/configure.in new file mode 100644 index 0000000000..5f1b1123f9 --- /dev/null +++ b/ports/sysdeps/ia64/configure.in @@ -0,0 +1,67 @@ +GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. +# Local configure fragment for sysdeps/ia64. + +AC_CACHE_CHECK(if -g produces usable source locations for assembler-with-cpp, + libc_cv_cpp_asm_debuginfo, [dnl +cat > conftest.S <<EOF +#include "confdefs.h" + +/* comment on + two lines */ + ${libc_cv_dot_text} + ${libc_cv_asm_global_directive} foo +foo: + /* Unfortunately this test only works for a real instruction, + not for any of the machine-independent pseudo-ops. + So we just have to assume everybody has a "nop". */ + nop.b 0;; + /* comment */ + nop.b 0;; + /* comment */ + nop.b 0;; +EOF +if AC_TRY_COMMAND([${CC-cc} $CPPFLAGS $ASFLAGS -g -c conftest.S 1>&AS_MESSAGE_LOG_FD]) && { + ac_pattern='conftest\.S' + AC_TRY_COMMAND([readelf --debug-dump=line conftest.o | + grep $ac_pattern 1>&AS_MESSAGE_LOG_FD]) + }; then + libc_cv_cpp_asm_debuginfo=yes +else + libc_cv_cpp_asm_debuginfo=no +fi +rm -f conftest*])AC_SUBST(libc_cv_cpp_asm_debuginfo) +if test $libc_cv_cpp_asm_debuginfo = yes; then + AC_DEFINE(HAVE_CPP_ASM_DEBUGINFO) +fi + +# Check for support of thread-local storage handling in assembler and +# linker. +AC_CACHE_CHECK(for ia64 TLS support, libc_cv_ia64_tls, [dnl +cat > conftest.s <<\EOF + .section ".tdata","awT",@progbits +foo: data8 25 + .text + addl r16 = @ltoff(@dtpmod(foo#)), gp + addl r17 = @ltoff(@dtprel(foo#)), gp + addl r18 = @ltoff(@tprel(foo#)), gp + addl r19 = @dtprel(foo#), gp + adds r21 = @dtprel(foo#), r13 + movl r23 = @dtprel(foo#) + addl r20 = @tprel(foo#), gp + adds r22 = @tprel(foo#), r13 + movl r24 = @tprel(foo#) +EOF +dnl +if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then + libc_cv_ia64_tls=yes +else + libc_cv_ia64_tls=no +fi +rm -f conftest*]) +if test $libc_cv_ia64_tls = no; then + AC_MSG_ERROR([the assembler must support TLS]) +fi + +dnl It is always possible to access static and hidden symbols in an +dnl position independent way. +AC_DEFINE(PI_STATIC_AND_HIDDEN) |