bfd: aarch64: fix word and arrdess size declaration in ilp32 mode
ILP32 has 32-bit word and address, but currently they declared as 64-bit in bfd_aarch64_arch_ilp32, which breaks further logic of bfd. This patch fixes it. Glibc testsuite build with patched binutils shows that next tests stop to fail: iconvdata/mtrace-tst-loading iconvdata/tst-loading iconvdata/tst-tables localedata/mtrace-tst-leaks localedata/tst-leaks posix/tst-getaddrinfo4 posix/tst-getaddrinfo5 posix/tst-regex2
This commit is contained in:
parent
4e25adb395
commit
3145b99715
|
@ -1,3 +1,10 @@
|
|||
2016-12-21: Yury Norov <ynorov@caviumnetworks.com>
|
||||
Andreas Schwab <schwab@suse.de>
|
||||
|
||||
* cpu-aarch64.c: Fix word and address size declaration in
|
||||
ilp32 mode in bfd_arch_info_type bfd_aarch64_arch_ilp32
|
||||
structure.
|
||||
|
||||
2016-12-20 Andrew Waterman <andrew@sifive.com>
|
||||
|
||||
* elfnn-riscv.c (_bfd_riscv_elf_merge_private_bfd_data): Use
|
||||
|
|
|
@ -100,16 +100,16 @@ scan (const struct bfd_arch_info *info, const char *string)
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
#define N(NUMBER, PRINT, DEFAULT, NEXT) \
|
||||
{ 64, 64, 8, bfd_arch_aarch64, NUMBER, \
|
||||
#define N(NUMBER, PRINT, WORDSIZE, DEFAULT, NEXT) \
|
||||
{ WORDSIZE, WORDSIZE, 8, bfd_arch_aarch64, NUMBER, \
|
||||
"aarch64", PRINT, 4, DEFAULT, compatible, scan, \
|
||||
bfd_arch_default_fill, NEXT }
|
||||
|
||||
static const bfd_arch_info_type bfd_aarch64_arch_ilp32 =
|
||||
N (bfd_mach_aarch64_ilp32, "aarch64:ilp32", FALSE, NULL);
|
||||
N (bfd_mach_aarch64_ilp32, "aarch64:ilp32", 32, FALSE, NULL);
|
||||
|
||||
const bfd_arch_info_type bfd_aarch64_arch =
|
||||
N (0, "aarch64", TRUE, &bfd_aarch64_arch_ilp32);
|
||||
N (0, "aarch64", 64, TRUE, &bfd_aarch64_arch_ilp32);
|
||||
|
||||
bfd_boolean
|
||||
bfd_is_aarch64_special_symbol_name (const char *name, int type)
|
||||
|
|
Loading…
Reference in New Issue