diff options
author | Roland McGrath <roland@gnu.org> | 2005-10-17 04:52:41 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 2005-10-17 04:52:41 +0000 |
commit | 429f5637242900669167b72c5b9511d12b2bf7c8 (patch) | |
tree | 494ffdb8a47de9f4d23a02687d0ac627e444870c | |
parent | 9871f0a9931125425783141c0821014c043f5f04 (diff) | |
download | glibc-429f5637242900669167b72c5b9511d12b2bf7c8.tar.gz glibc-429f5637242900669167b72c5b9511d12b2bf7c8.tar.xz glibc-429f5637242900669167b72c5b9511d12b2bf7c8.zip |
2005-04-13 Andreas Schwab <schwab@suse.de>
[BZ #721] * sysdeps/ia64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE) [PROF]: Open code strong_alias because the original name is not visible to the compiler. * sysdeps/powerpc/powerpc64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE) [PROF]: Likewise. 2005-02-14 Alan Modra <amodra@bigpond.net.au> [BZ #721] * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Define with auto inline, and attribute always_inline. (elf_machine_rela_relative, elf_machine_lazy_rel): Likewise. (elf_machine_rel, elf_machine_rel_relative): Likewise. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise. (elf_machine_rela_relative, elf_machine_lazy_rel): Likewise. (elf_machine_rel, elf_machine_rel_relative): Likewise. (elf_machine_tprel): Likewise.
-rw-r--r-- | sysdeps/powerpc/powerpc64/dl-machine.h | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/sysdeps/powerpc/powerpc64/dl-machine.h b/sysdeps/powerpc/powerpc64/dl-machine.h index 3fcf77df71..aaec82193e 100644 --- a/sysdeps/powerpc/powerpc64/dl-machine.h +++ b/sysdeps/powerpc/powerpc64/dl-machine.h @@ -190,8 +190,8 @@ BODY_PREFIX #tramp_name ":\n" \ #else #define ELF_MACHINE_RUNTIME_TRAMPOLINE \ TRAMPOLINE_TEMPLATE (_dl_runtime_resolve, fixup); \ - void _dl_runtime_resolve (void); \ - strong_alias (_dl_runtime_resolve, _dl_profile_resolve); + asm (".globl _dl_profile_resolve\n" \ + ".set _dl_profile_resolve, _dl_runtime_resolve"); #endif #ifdef HAVE_INLINED_SYSCALLS @@ -567,7 +567,8 @@ extern void _dl_reloc_overflow (struct link_map *map, const Elf64_Sym *refsym) attribute_hidden; -static inline void +auto inline void +__attribute__ ((always_inline)) elf_machine_rela_relative (Elf64_Addr l_addr, const Elf64_Rela *reloc, void *const reloc_addr_arg) { @@ -577,7 +578,7 @@ elf_machine_rela_relative (Elf64_Addr l_addr, const Elf64_Rela *reloc, #if defined USE_TLS && (!defined RTLD_BOOTSTRAP || USE___THREAD) /* This computes the value used by TPREL* relocs. */ -static Elf64_Addr __attribute__ ((const)) +auto inline Elf64_Addr __attribute__ ((always_inline, const)) elf_machine_tprel (struct link_map *map, struct link_map *sym_map, const Elf64_Sym *sym, @@ -598,7 +599,8 @@ elf_machine_tprel (struct link_map *map, /* Perform the relocation specified by RELOC and SYM (which is fully resolved). MAP is the object containing the reloc. */ -static inline void +auto inline void +__attribute__ ((always_inline)) elf_machine_rela (struct link_map *map, const Elf64_Rela *reloc, const Elf64_Sym *sym, @@ -883,7 +885,8 @@ elf_machine_rela (struct link_map *map, MODIFIED_CODE_NOQUEUE (reloc_addr); } -static inline void +auto inline void +__attribute__ ((always_inline)) elf_machine_lazy_rel (struct link_map *map, Elf64_Addr l_addr, const Elf64_Rela *reloc) { |