diff options
author | Ulrich Drepper <drepper@redhat.com> | 2003-12-10 23:02:33 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2003-12-10 23:02:33 +0000 |
commit | c776b3d717593ee3fdd2120f80217f0abe0dec74 (patch) | |
tree | 48e533ed0c7fd5ed1064c2872567493eccd5a82e /linuxthreads/sysdeps/unix/sysv | |
parent | 26b30508e02c05d506295954d453d797e0c23cb5 (diff) | |
download | glibc-c776b3d717593ee3fdd2120f80217f0abe0dec74.tar glibc-c776b3d717593ee3fdd2120f80217f0abe0dec74.tar.gz glibc-c776b3d717593ee3fdd2120f80217f0abe0dec74.tar.bz2 glibc-c776b3d717593ee3fdd2120f80217f0abe0dec74.zip |
Update.
2003-12-02 David Mosberger <davidm@hpl.hp.com>
* sysdeps/ia64/elf/initfini.c: Add unwind info.
* sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
attribute "unused".
(elf_machine_dynamic): Mark with attributes "unused" and "const".
(elf_machine_runtime_setup): Likewise.
* sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
attribute "always_inline".
* sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
Likewise.
* configure.in: Check whether compiler has libunwind support.
* config.make.in (have-cc-with-libunwind): New variable.
* config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
* Makeconfig (gnulib): If have-cc-withh-libunwind is "yes", also
mention -lunwind.
003-11-12 David Mosberger <davidm@hpl.hp.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
Likewise for DO_INLINE_SYSCALL. Make INTERNAL_SYSCALL use
DO_INLINE_SYSCALL.
* sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
instead of DO_CALL().
* sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
of DO_CALL().
* sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
to take advantage of DO_CALL() macro.
* sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
* sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
* elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
program header. On ia64, the check failed previously because
there are two program headers.
* sysdeps/generic/s_nexttowardf.c: Likewise.
* math/bug-nexttoward.c: New file.
Diffstat (limited to 'linuxthreads/sysdeps/unix/sysv')
-rw-r--r-- | linuxthreads/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/linuxthreads/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h b/linuxthreads/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h new file mode 100644 index 0000000000..abc25ddd48 --- /dev/null +++ b/linuxthreads/sysdeps/unix/sysv/linux/ia64/dl-sysdep.h @@ -0,0 +1,45 @@ +/* System-specific settings for dynamic linker code. IA-64 version. + Copyright (C) 2003 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#ifndef _DL_SYSDEP_H +#define _DL_SYSDEP_H 1 + +#define NEED_DL_SYSINFO 1 +#undef USE_DL_SYSINFO + +#if defined NEED_DL_SYSINFO && !defined __ASSEMBLER__ +/* Don't declare this as a function---we want it's entry-point, not + it's function descriptor... */ +extern int _dl_sysinfo_break attribute_hidden; +# define DL_SYSINFO_DEFAULT ((uintptr_t) &_dl_sysinfo_break) +# define DL_SYSINFO_IMPLEMENTATION \ + asm (".text\n\t" \ + ".hidden _dl_sysinfo_break\n\t" \ + ".proc _dl_sysinfo_break\n\t" \ + "_dl_sysinfo_break:\n\t" \ + ".prologue\n\t" \ + ".altrp b6\n\t" \ + ".body\n\t" \ + "break 0x100000;\n\t" \ + "br.ret.sptk.many b6;\n\t" \ + ".endp _dl_sysinfo_break" \ + ".previous"); +#endif + +#endif /* dl-sysdep.h */ |