diff options
author | Ulrich Drepper <drepper@redhat.com> | 2005-04-14 21:46:37 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2005-04-14 21:46:37 +0000 |
commit | edac0e8f443c332821a63e4f26e298a1622827fe (patch) | |
tree | 120a94bb8e7ff4f2fd6bc9975ea3c20758596eda /sysdeps/unix/sysv/linux/configure | |
parent | 506cbf1f43a3bba63b9f4dd6d5a9a1d15f0dcf2c (diff) | |
download | glibc-edac0e8f443c332821a63e4f26e298a1622827fe.tar.gz glibc-edac0e8f443c332821a63e4f26e298a1622827fe.tar.xz glibc-edac0e8f443c332821a63e4f26e298a1622827fe.zip |
Add sparc64 TLS and NPTL support.
* elf/tls-macros.h: Add Sparc64 defines. * sysdeps/sparc/sparc64/dl-machine.h (sparc64_fixup_plt): Mark as always_inline. (elf_machine_fixup_plt): Likewise. (elf_machine_rela): Handle TLS relocations. (elf_machine_type_cleaa): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (SYSCALL_ERROR_HANDLER_ENTRY): Use sethi/or for GOT reloc. It does not always fit in R_SPARC_GOT13 when building -fPIC. Also, add TLS handling. * sysdeps/unix/sysv/linux/configure.in (arch_minimum_kernel): Increase it to 2.4.21 for sparc64. * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S: NULL terminate backtrace by zero'ing out %fp. Store away flags, func_ptr, and func_arg in global registers not local registers. * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Handle PTID, TLS, and CTID arguments properly. Add RESET_PID handling. * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Rework so that we do not invoke __sigprocmask(). We can always assume rt signals are present on sparc64, so just do an inline syscall. 2005-04-13 Jakub Jelinek <jakub@redhat.com> * sysdeps/sparc/sparc64/dl-machine.h: Add dl_machine_h multiple inclusion guard for the first half of the header. (elf_machine_type_class, ELF_MACHINE_JMP_SLOT, ELF_MACHINE_NO_REL, ELF_MACHINE_PLTREL_OVERLAP, elf_machine_runtime_setup, elf_machine_relplt, DL_STACK_END, RTLD_START): Move into the #ifndef dl_machine_h guarded part of the header.
Diffstat (limited to 'sysdeps/unix/sysv/linux/configure')
-rw-r--r-- | sysdeps/unix/sysv/linux/configure | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/configure b/sysdeps/unix/sysv/linux/configure index d059143396..325073c62c 100644 --- a/sysdeps/unix/sysv/linux/configure +++ b/sysdeps/unix/sysv/linux/configure @@ -138,6 +138,10 @@ case "$machine" in arch_minimum_kernel=2.3.99 libc_cv_gcc_unwind_find_fde=yes ;; + sparc/sparc64*) + libc_cv_gcc_unwind_find_fde=yes + arch_minimum_kernel=2.4.21 + ;; sparc*) libc_cv_gcc_unwind_find_fde=yes arch_minimum_kernel=2.0.10 |