generalize ELF hash table types not to assume 32-bit entries

alpha and s390x gratuitously use 64-bit entries (wasting 2x space and
cache utilization) despite the values always being 32-bit.

based on patch by Bobby Bingham, with changes suggested by Alexander
Monakov to use the public Elf_Symndx type from link.h (and make it
properly variable by arch) rather than adding new internal
infrastructure for handling the type.
This commit is contained in:
Rich Felker
2016-11-11 12:46:06 -05:00
parent 4078a5c31f
commit b418ea1b66
4 changed files with 6 additions and 5 deletions
+1 -2
View File
@@ -16,8 +16,7 @@ extern "C" {
#define ElfW(type) Elf32_ ## type
#endif
/* this is the same everywhere except alpha and s390 */
typedef uint32_t Elf_Symndx;
#include <bits/link.h>
struct dl_phdr_info {
ElfW(Addr) dlpi_addr;