diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 83605903ee4..3879b81ae48 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2024-10-18 WANG Xuerui + + * elfnn-loongarch.c (ELF_MAXPAGESIZE): Bump to 64KiB. + (ELF_MINPAGESIZE): Define as 4KiB. + (ELF_COMMONPAGESIZE): Define as 16KiB. + 2024-07-20 Nick Clifton * 2.43 branch point. diff --git a/bfd/elfnn-loongarch.c b/bfd/elfnn-loongarch.c index 7451153270f..2ce5f73ae80 100644 --- a/bfd/elfnn-loongarch.c +++ b/bfd/elfnn-loongarch.c @@ -6270,7 +6270,9 @@ elf_loongarch64_hash_symbol (struct elf_link_hash_entry *h) #define ELF_ARCH bfd_arch_loongarch #define ELF_TARGET_ID LARCH_ELF_DATA #define ELF_MACHINE_CODE EM_LOONGARCH -#define ELF_MAXPAGESIZE 0x4000 +#define ELF_MINPAGESIZE 0x1000 +#define ELF_MAXPAGESIZE 0x10000 +#define ELF_COMMONPAGESIZE 0x4000 #define bfd_elfNN_bfd_reloc_type_lookup loongarch_reloc_type_lookup #define bfd_elfNN_bfd_link_hash_table_create \ loongarch_elf_link_hash_table_create diff --git a/ld/ChangeLog b/ld/ChangeLog index 55c8d7793e1..99151455314 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,14 @@ +2024-10-18 WANG Xuerui + + * testsuite/ld-loongarch-elf/64_pcrel.d: Update assertions after + changing the target max page size to 64KiB. + * testsuite/ld-loongarch-elf/data-got.d: Likewise. + * testsuite/ld-loongarch-elf/desc-relex.d: Likewise. + * testsuite/ld-loongarch-elf/relax-align-ignore-start.d: Likewise. + * testsuite/ld-loongarch-elf/tlsdesc_abs.d: Make the fuzzy match work + as intended by not checking exact instruction words. + * testsuite/ld-loongarch-elf/tlsdesc_extreme.d: Likewise. + 2024-07-20 Nick Clifton * 2.43 branch point. diff --git a/ld/testsuite/ld-loongarch-elf/64_pcrel.d b/ld/testsuite/ld-loongarch-elf/64_pcrel.d index 2ea063b7554..1f4664ea4d7 100644 --- a/ld/testsuite/ld-loongarch-elf/64_pcrel.d +++ b/ld/testsuite/ld-loongarch-elf/64_pcrel.d @@ -1,4 +1,4 @@ #... -.*0xffffbffc.* +.*0xfffefffc.* .*0xffffffff.* #pass diff --git a/ld/testsuite/ld-loongarch-elf/data-got.d b/ld/testsuite/ld-loongarch-elf/data-got.d index a754478a655..4a26c72d46d 100644 --- a/ld/testsuite/ld-loongarch-elf/data-got.d +++ b/ld/testsuite/ld-loongarch-elf/data-got.d @@ -8,7 +8,7 @@ #skip: loongarch32-*-* #... - GNU_RELRO 0x003c10 0x0000000000007c10 0x0000000000007c10 0x0003f0 0x0003f0 R 0x1 + GNU_RELRO 0x00fc10 0x000000000001fc10 0x000000000001fc10 0x0003f0 0x0003f0 R 0x1 #... 01 .dynamic .got .got.plt .data #... diff --git a/ld/testsuite/ld-loongarch-elf/desc-relax.d b/ld/testsuite/ld-loongarch-elf/desc-relax.d index c885953c727..48f2d1e389c 100644 --- a/ld/testsuite/ld-loongarch-elf/desc-relax.d +++ b/ld/testsuite/ld-loongarch-elf/desc-relax.d @@ -9,7 +9,7 @@ Disassembly of section .text: 0+188 <.*>: - 188: 18020844 pcaddi \$a0, 4162 + 188: 18080844 pcaddi \$a0, 16450 18c: 28c00081 ld.d \$ra, \$a0, 0 190: 4c000021 jirl \$ra, \$ra, 0 194: 0010888c add.d \$t0, \$a0, \$tp diff --git a/ld/testsuite/ld-loongarch-elf/relax-align-ignore-start.d b/ld/testsuite/ld-loongarch-elf/relax-align-ignore-start.d index 939cf427b4b..70763ff0fc8 100644 --- a/ld/testsuite/ld-loongarch-elf/relax-align-ignore-start.d +++ b/ld/testsuite/ld-loongarch-elf/relax-align-ignore-start.d @@ -12,5 +12,5 @@ Disassembly of section bbb: 0000000120000080 : [ ]+120000080:[ ]+4c000020[ ]+ret Disassembly of section ccc: -0000000120000090 <__bss_start-0x4004>: +0000000120000090 <__bss_start-0x10004>: [ ]+120000090:[ ]+4c000020[ ]+ret diff --git a/ld/testsuite/ld-loongarch-elf/tlsdesc_abs.d b/ld/testsuite/ld-loongarch-elf/tlsdesc_abs.d index 62f5a2a077b..7e23454bac7 100644 --- a/ld/testsuite/ld-loongarch-elf/tlsdesc_abs.d +++ b/ld/testsuite/ld-loongarch-elf/tlsdesc_abs.d @@ -9,15 +9,15 @@ Disassembly of section .text: 0+120000100 <.*>: - 120000100: 14400084 lu12i.w \$a0, .* - 120000104: 03850084 ori \$a0, \$a0, .* - 120000108: 16000024 lu32i.d \$a0, .* + 120000100: ........ lu12i.w \$a0, .* + 120000104: ........ ori \$a0, \$a0, .* + 120000108: ........ lu32i.d \$a0, .* 12000010c: 03000084 lu52i.d \$a0, \$a0, 0 120000110: 28c00081 ld.d \$ra, \$a0, 0 120000114: 4c000021 jirl \$ra, \$ra, 0 - 120000118: 14400084 lu12i.w \$a0, .* - 12000011c: 03850084 ori \$a0, \$a0, .* - 120000120: 16000024 lu32i.d \$a0, .* + 120000118: ........ lu12i.w \$a0, .* + 12000011c: ........ ori \$a0, \$a0, .* + 120000120: ........ lu32i.d \$a0, .* 120000124: 03000084 lu52i.d \$a0, \$a0, 0 120000128: 28c00081 ld.d \$ra, \$a0, 0 12000012c: 4c000021 jirl \$ra, \$ra, 0 diff --git a/ld/testsuite/ld-loongarch-elf/tlsdesc_extreme.d b/ld/testsuite/ld-loongarch-elf/tlsdesc_extreme.d index 5517999733d..fbc1d945d71 100644 --- a/ld/testsuite/ld-loongarch-elf/tlsdesc_extreme.d +++ b/ld/testsuite/ld-loongarch-elf/tlsdesc_extreme.d @@ -9,15 +9,15 @@ Disassembly of section .text: 0+120000100 <.*>: - 120000100: 1a000084 pcalau12i \$a0, .* - 120000104: 02c52001 li.d \$ra, .* + 120000100: ........ pcalau12i \$a0, .* + 120000104: ........ li.d \$ra, .* 120000108: 16000001 lu32i.d \$ra, 0 12000010c: 03000021 lu52i.d \$ra, \$ra, 0 120000110: 00108484 add.d \$a0, \$a0, \$ra 120000114: 28c00081 ld.d \$ra, \$a0, 0 120000118: 4c000021 jirl \$ra, \$ra, 0 - 12000011c: 1a000084 pcalau12i \$a0, .* - 120000120: 02c5200d li.d \$t1, .* + 12000011c: ........ pcalau12i \$a0, .* + 120000120: ........ li.d \$t1, .* 120000124: 1600000d lu32i.d \$t1, 0 120000128: 030001ad lu52i.d \$t1, \$t1, 0 12000012c: 0010b484 add.d \$a0, \$a0, \$t1