This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.
Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Thu, Jan 30, 2003 at 06:08:18PM +0100, Jakub Jelinek wrote: > Hi! > > GCC inliner needs to be improved, but in the mean time we can help > it a little bit. This patch broke ppc{32,64}, because on that arch elf_machine_lazy_rel was declared in the dl_machine_h, not RESOLVE section of dl-machine.h, thus the always_inline prototype for it came after that and gcc got upset. Bootstrapped and regtested on ppc32. 2003-01-30 Jakub Jelinek <jakub@redhat.com> * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel): Move to RESOLVE protected part of the header. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel): Likewise. --- libc/sysdeps/powerpc/powerpc32/dl-machine.h.jj 2002-09-05 04:24:49.000000000 -0400 +++ libc/sysdeps/powerpc/powerpc32/dl-machine.h 2003-01-30 13:52:40.000000000 -0500 @@ -1,5 +1,5 @@ /* Machine-dependent ELF dynamic relocation inline functions. PowerPC version. - Copyright (C) 1995-2000,01,02 Free Software Foundation, Inc. + Copyright (C) 1995-2002, 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 @@ -295,13 +295,6 @@ extern int __elf_machine_runtime_setup ( int lazy, int profile); #define elf_machine_runtime_setup __elf_machine_runtime_setup -static inline void -elf_machine_lazy_rel (struct link_map *map, - Elf32_Addr l_addr, const Elf32_Rela *reloc) -{ - /* elf_machine_runtime_setup handles this. */ -} - /* Change the PLT entry whose reloc is 'reloc' to call the actual routine. */ extern Elf32_Addr __elf_machine_fixup_plt (struct link_map *map, const Elf32_Rela *reloc, @@ -411,6 +404,13 @@ elf_machine_rela_relative (Elf32_Addr l_ *reloc_addr = l_addr + reloc->r_addend; } +static inline void +elf_machine_lazy_rel (struct link_map *map, + Elf32_Addr l_addr, const Elf32_Rela *reloc) +{ + /* elf_machine_runtime_setup handles this. */ +} + /* The SVR4 ABI specifies that the JMPREL relocs must be inside the DT_RELA table. */ #define ELF_MACHINE_PLTREL_OVERLAP 1 --- libc/sysdeps/powerpc/powerpc64/dl-machine.h.jj 2002-10-10 08:05:06.000000000 -0400 +++ libc/sysdeps/powerpc/powerpc64/dl-machine.h 2003-01-30 13:52:27.000000000 -0500 @@ -1,6 +1,6 @@ /* Machine-dependent ELF dynamic relocation inline functions. PowerPC64 version. - Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 + Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -452,13 +452,6 @@ elf_machine_runtime_setup (struct link_m return lazy; } -static inline void -elf_machine_lazy_rel (struct link_map *map, - Elf64_Addr l_addr, const Elf64_Rela *reloc) -{ - /* elf_machine_runtime_setup handles this. */ -} - /* Change the PLT entry whose reloc is 'reloc' to call the actual routine. */ static inline Elf64_Addr @@ -747,4 +740,11 @@ elf_machine_rela (struct link_map *map, MODIFIED_CODE_NOQUEUE (reloc_addr); } +static inline void +elf_machine_lazy_rel (struct link_map *map, + Elf64_Addr l_addr, const Elf64_Rela *reloc) +{ + /* elf_machine_runtime_setup handles this. */ +} + #endif /* RESOLVE */ Jakub
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |