Index: lld/test/ELF/arm-abs32-dyn.s =================================================================== --- lld/test/ELF/arm-abs32-dyn.s +++ lld/test/ELF/arm-abs32-dyn.s @@ -26,7 +26,7 @@ // CHECK: Dynamic Relocations { // CHECK-NEXT: 0x30204 R_ARM_RELATIVE // CHECK-NEXT: 0x30208 R_ARM_RELATIVE -// CHECK-NEXT: 0x30200 R_ARM_ABS32 foo 0x0 +// CHECK-NEXT: 0x30200 R_ARM_ABS32 foo // CHECK-NEXT: } // CHECK: Symbols [ Index: lld/test/ELF/arm-copy.s =================================================================== --- lld/test/ELF/arm-copy.s +++ lld/test/ELF/arm-copy.s @@ -38,13 +38,11 @@ // CHECK-NEXT: Offset: 0x40220 // CHECK-NEXT: Type: R_ARM_COPY // CHECK-NEXT: Symbol: y -// CHECK-NEXT: Addend: 0x0 // CHECK-NEXT: } // CHECK-NEXT: Relocation { // CHECK-NEXT: Offset: 0x40224 // CHECK-NEXT: Type: R_ARM_COPY // CHECK-NEXT: Symbol: z -// CHECK-NEXT: Addend: 0x0 // CHECK-NEXT: } // CHECK-NEXT: } Index: lld/test/ELF/arm-gnu-ifunc-plt.s =================================================================== --- lld/test/ELF/arm-gnu-ifunc-plt.s +++ lld/test/ELF/arm-gnu-ifunc-plt.s @@ -10,14 +10,14 @@ // Check that the IRELATIVE relocations are last in the .got // CHECK: Relocations [ // CHECK-NEXT: Section (5) .rel.dyn { -// CHECK-NEXT: 0x302E0 R_ARM_GLOB_DAT bar2 0x0 -// CHECK-NEXT: 0x302E4 R_ARM_GLOB_DAT zed2 0x0 -// CHECK-NEXT: 0x302E8 R_ARM_IRELATIVE - 0x0 -// CHECK-NEXT: 0x302EC R_ARM_IRELATIVE - 0x0 +// CHECK-NEXT: 0x302E0 R_ARM_GLOB_DAT bar2 +// CHECK-NEXT: 0x302E4 R_ARM_GLOB_DAT zed2 +// CHECK-NEXT: 0x302E8 R_ARM_IRELATIVE - +// CHECK-NEXT: 0x302EC R_ARM_IRELATIVE - // CHECK-NEXT: } // CHECK-NEXT: Section (6) .rel.plt { -// CHECK-NEXT: 0x402FC R_ARM_JUMP_SLOT bar2 0x0 -// CHECK-NEXT: 0x40300 R_ARM_JUMP_SLOT zed2 0x0 +// CHECK-NEXT: 0x402FC R_ARM_JUMP_SLOT bar2 +// CHECK-NEXT: 0x40300 R_ARM_JUMP_SLOT zed2 // CHECK-NEXT: } // CHECK-NEXT: ] Index: lld/test/ELF/arm-got-relative.s =================================================================== --- lld/test/ELF/arm-got-relative.s +++ lld/test/ELF/arm-got-relative.s @@ -28,7 +28,7 @@ bx lr // CHECK: Dynamic Relocations { -// CHECK-NEXT: 0x2020C R_ARM_GLOB_DAT function 0x0 +// CHECK-NEXT: 0x2020C R_ARM_GLOB_DAT function // CHECK: Name: _GLOBAL_OFFSET_TABLE_ // CHECK-NEXT: Value: 0x2020C Index: lld/test/ELF/arm-plt-reloc.s =================================================================== --- lld/test/ELF/arm-plt-reloc.s +++ lld/test/ELF/arm-plt-reloc.s @@ -101,9 +101,9 @@ // DSOREL-NEXT: EntrySize: // DSOREL: Relocations [ // DSOREL-NEXT: Section {{.*}} .rel.plt { -// DSOREL-NEXT: 0x302E4 R_ARM_JUMP_SLOT func1 0x0 -// DSOREL-NEXT: 0x302E8 R_ARM_JUMP_SLOT func2 0x0 -// DSOREL-NEXT: 0x302EC R_ARM_JUMP_SLOT func3 0x0 +// DSOREL-NEXT: 0x302E4 R_ARM_JUMP_SLOT func1 +// DSOREL-NEXT: 0x302E8 R_ARM_JUMP_SLOT func2 +// DSOREL-NEXT: 0x302EC R_ARM_JUMP_SLOT func3 // Test a large separation between the .plt and .got.plt // The .got.plt and .plt displacement is large but still within the range @@ -170,9 +170,9 @@ // DSORELHIGH-NEXT: Address: 0x1100000 // DSORELHIGH: Relocations [ // DSORELHIGH-NEXT: Section {{.*}} .rel.plt { -// DSORELHIGH-NEXT: 0x110000C R_ARM_JUMP_SLOT func1 0x0 -// DSORELHIGH-NEXT: 0x1100010 R_ARM_JUMP_SLOT func2 0x0 -// DSORELHIGH-NEXT: 0x1100014 R_ARM_JUMP_SLOT func3 0x0 +// DSORELHIGH-NEXT: 0x110000C R_ARM_JUMP_SLOT func1 +// DSORELHIGH-NEXT: 0x1100010 R_ARM_JUMP_SLOT func2 +// DSORELHIGH-NEXT: 0x1100014 R_ARM_JUMP_SLOT func3 // Test a very large separation between the .plt and .got.plt so we must use // large plt entries that do not have any range restriction. @@ -238,9 +238,9 @@ // DSORELLONG-NEXT: Address: 0x11111100 // DSORELLONG: Relocations [ // DSORELLONG-NEXT: Section {{.*}} .rel.plt { -// DSORELLONG-NEXT: 0x1111110C R_ARM_JUMP_SLOT func1 0x0 -// DSORELLONG-NEXT: 0x11111110 R_ARM_JUMP_SLOT func2 0x0 -// DSORELLONG-NEXT: 0x11111114 R_ARM_JUMP_SLOT func3 0x0 +// DSORELLONG-NEXT: 0x1111110C R_ARM_JUMP_SLOT func1 +// DSORELLONG-NEXT: 0x11111110 R_ARM_JUMP_SLOT func2 +// DSORELLONG-NEXT: 0x11111114 R_ARM_JUMP_SLOT func3 // Test a separation between the .plt and .got.plt that is part in range of // short table entries and part needing long entries. We use the long entries @@ -306,6 +306,6 @@ // DSORELMIX-NEXT: ] // DSORELMIX-NEXT: Address: 0x8002020 // DSORELMIX: Section {{.*}} .rel.plt { -// DSORELMIX-NEXT: 0x800202C R_ARM_JUMP_SLOT func1 0x0 -// DSORELMIX-NEXT: 0x8002030 R_ARM_JUMP_SLOT func2 0x0 -// DSORELMIX-NEXT: 0x8002034 R_ARM_JUMP_SLOT func3 0x0 +// DSORELMIX-NEXT: 0x800202C R_ARM_JUMP_SLOT func1 +// DSORELMIX-NEXT: 0x8002030 R_ARM_JUMP_SLOT func2 +// DSORELMIX-NEXT: 0x8002034 R_ARM_JUMP_SLOT func3 Index: lld/test/ELF/arm-target1.s =================================================================== --- lld/test/ELF/arm-target1.s +++ lld/test/ELF/arm-target1.s @@ -15,7 +15,7 @@ // RELOC: Relocations [ // RELOC: .rel.text { -// RELOC: 0x0 R_ARM_TARGET1 patatino 0x0 +// RELOC: 0x0 R_ARM_TARGET1 patatino // RELOC: } // RELOC: ] Index: lld/test/ELF/arm-thumb-plt-reloc.s =================================================================== --- lld/test/ELF/arm-thumb-plt-reloc.s +++ lld/test/ELF/arm-thumb-plt-reloc.s @@ -109,6 +109,6 @@ // DSOREL-NEXT: EntrySize: // DSOREL: Relocations [ // DSOREL-NEXT: Section (5) .rel.plt { -// DSOREL-NEXT: 0x302E4 R_ARM_JUMP_SLOT func1 0x0 -// DSOREL-NEXT: 0x302E8 R_ARM_JUMP_SLOT func2 0x0 -// DSOREL-NEXT: 0x302EC R_ARM_JUMP_SLOT func3 0x0 +// DSOREL-NEXT: 0x302E4 R_ARM_JUMP_SLOT func1 +// DSOREL-NEXT: 0x302E8 R_ARM_JUMP_SLOT func2 +// DSOREL-NEXT: 0x302EC R_ARM_JUMP_SLOT func3 Index: lld/test/ELF/arm-tls-ldm32.s =================================================================== --- lld/test/ELF/arm-tls-ldm32.s +++ lld/test/ELF/arm-tls-ldm32.s @@ -55,7 +55,7 @@ // SEC: Size: 4 // SEC: Dynamic Relocations { -// SEC-NEXT: 0x20224 R_ARM_TLS_DTPMOD32 - 0x0 +// SEC-NEXT: 0x20224 R_ARM_TLS_DTPMOD32 - // CHECK: Disassembly of section .text: // CHECK-EMPTY: Index: lld/test/ELF/dynamic-got.s =================================================================== --- lld/test/ELF/dynamic-got.s +++ lld/test/ELF/dynamic-got.s @@ -44,7 +44,7 @@ // CHECK: Relocations [ // CHECK-NEXT: Section ({{.*}}) .rel.dyn { -// CHECK-NEXT: 0x21C4 R_386_RELATIVE - 0x0 +// CHECK-NEXT: 0x21C4 R_386_RELATIVE - // CHECK-NEXT: } // CHECK-NEXT: ] Index: lld/test/ELF/gnu-ifunc-plt-i386.s =================================================================== --- lld/test/ELF/gnu-ifunc-plt-i386.s +++ lld/test/ELF/gnu-ifunc-plt-i386.s @@ -16,13 +16,13 @@ /// other regular relocations (e.g. GLOB_DAT). // CHECK: Relocations [ // CHECK-NEXT: Section (4) .rel.dyn { -// CHECK-NEXT: 0x4022C8 R_386_GLOB_DAT bar3 0x0 -// CHECK-NEXT: 0x4032E0 R_386_IRELATIVE - 0x0 -// CHECK-NEXT: 0x4032E4 R_386_IRELATIVE - 0x0 +// CHECK-NEXT: 0x4022C8 R_386_GLOB_DAT bar3 +// CHECK-NEXT: 0x4032E0 R_386_IRELATIVE - +// CHECK-NEXT: 0x4032E4 R_386_IRELATIVE - // CHECK-NEXT: } // CHECK-NEXT: Section (5) .rel.plt { -// CHECK-NEXT: 0x4032D8 R_386_JUMP_SLOT bar2 0x0 -// CHECK-NEXT: 0x4032DC R_386_JUMP_SLOT zed2 0x0 +// CHECK-NEXT: 0x4032D8 R_386_JUMP_SLOT bar2 +// CHECK-NEXT: 0x4032DC R_386_JUMP_SLOT zed2 // CHECK-NEXT: } // Check that IRELATIVE .got.plt entries point to ifunc resolver and not Index: lld/test/ELF/i386-got-value.s =================================================================== --- lld/test/ELF/i386-got-value.s +++ lld/test/ELF/i386-got-value.s @@ -24,7 +24,7 @@ # CHECK-NEXT: 0000: 00000000 # CHECK-NEXT: ) -# CHECK: R_386_GLOB_DAT bar 0x0 +# CHECK: R_386_GLOB_DAT bar movl bar@GOT(%eax), %eax Index: lld/test/ELF/i386-plt.s =================================================================== --- lld/test/ELF/i386-plt.s +++ lld/test/ELF/i386-plt.s @@ -43,8 +43,8 @@ // &.got.plt[4] = 0x403278 + 16 = 0x403288 // CHECK: Relocations [ // CHECK-NEXT: Section ({{.*}}) .rel.plt { -// CHECK-NEXT: 0x403284 R_386_JUMP_SLOT bar 0x0 -// CHECK-NEXT: 0x403288 R_386_JUMP_SLOT zed 0x0 +// CHECK-NEXT: 0x403284 R_386_JUMP_SLOT bar +// CHECK-NEXT: 0x403288 R_386_JUMP_SLOT zed // CHECK-NEXT: } // CHECK-NEXT: ] @@ -113,8 +113,8 @@ // 0x3000 + got.plt.reserved(12) + 4 = 0x3010 // CHECKSHARED: Relocations [ // CHECKSHARED-NEXT: Section ({{.*}}) .rel.plt { -// CHECKSHARED-NEXT: 0x329C R_386_JUMP_SLOT bar 0x0 -// CHECKSHARED-NEXT: 0x32A0 R_386_JUMP_SLOT zed 0x0 +// CHECKSHARED-NEXT: 0x329C R_386_JUMP_SLOT bar +// CHECKSHARED-NEXT: 0x32A0 R_386_JUMP_SLOT zed // CHECKSHARED-NEXT: } // CHECKSHARED-NEXT: ] Index: lld/test/ELF/i386-relative.s =================================================================== --- lld/test/ELF/i386-relative.s +++ lld/test/ELF/i386-relative.s @@ -5,7 +5,7 @@ // CHECK: Relocations [ // CHECK-NEXT: Section ({{.*}}) .rel.dyn { -// CHECK-NEXT: R_386_RELATIVE - 0x0 +// CHECK-NEXT: R_386_RELATIVE - // CHECK-NEXT: } // CHECK-NEXT: ] Index: lld/test/ELF/i386-tls-dynamic.s =================================================================== --- lld/test/ELF/i386-tls-dynamic.s +++ lld/test/ELF/i386-tls-dynamic.s @@ -66,13 +66,13 @@ # CHECK: Relocations [ # CHECK: Section ({{.+}}) .rel.dyn { -# CHECK-NEXT: 0x2368 R_386_TLS_DTPMOD32 - 0x0 -# CHECK-NEXT: 0x2358 R_386_TLS_DTPMOD32 tls0 0x0 -# CHECK-NEXT: 0x235C R_386_TLS_DTPOFF32 tls0 0x0 -# CHECK-NEXT: 0x2370 R_386_TLS_TPOFF tls0 0x0 -# CHECK-NEXT: 0x2360 R_386_TLS_DTPMOD32 tls1 0x0 -# CHECK-NEXT: 0x2364 R_386_TLS_DTPOFF32 tls1 0x0 -# CHECK-NEXT: 0x2374 R_386_TLS_TPOFF tls1 0x0 +# CHECK-NEXT: 0x2368 R_386_TLS_DTPMOD32 - +# CHECK-NEXT: 0x2358 R_386_TLS_DTPMOD32 tls0 +# CHECK-NEXT: 0x235C R_386_TLS_DTPOFF32 tls0 +# CHECK-NEXT: 0x2370 R_386_TLS_TPOFF tls0 +# CHECK-NEXT: 0x2360 R_386_TLS_DTPMOD32 tls1 +# CHECK-NEXT: 0x2364 R_386_TLS_DTPOFF32 tls1 +# CHECK-NEXT: 0x2374 R_386_TLS_TPOFF tls1 # CHECK-NEXT: } # DIS: Disassembly of section .text: Index: lld/test/ELF/i386-tls-gdiele.s =================================================================== --- lld/test/ELF/i386-tls-gdiele.s +++ lld/test/ELF/i386-tls-gdiele.s @@ -8,8 +8,8 @@ // NORELOC: Relocations [ // NORELOC-NEXT: Section ({{.*}}) .rel.dyn { -// NORELOC-NEXT: 0x402258 R_386_TLS_TPOFF tlsshared0 0x0 -// NORELOC-NEXT: 0x40225C R_386_TLS_TPOFF tlsshared1 0x0 +// NORELOC-NEXT: 0x402258 R_386_TLS_TPOFF tlsshared0 +// NORELOC-NEXT: 0x40225C R_386_TLS_TPOFF tlsshared1 // NORELOC-NEXT: } // NORELOC-NEXT: ] Index: lld/test/ELF/i386-tls-ie-local.s =================================================================== --- lld/test/ELF/i386-tls-ie-local.s +++ lld/test/ELF/i386-tls-ie-local.s @@ -22,8 +22,8 @@ # CHECK-NEXT: 0000: 00000000 04000000 # CHECK-NEXT: ) -# CHECK: R_386_TLS_TPOFF - 0x0 -# CHECK-NEXT: R_386_TLS_TPOFF - 0x0 +# CHECK: R_386_TLS_TPOFF - +# CHECK-NEXT: R_386_TLS_TPOFF - movl bar1@GOTNTPOFF(%eax), %ecx movl bar2@GOTNTPOFF(%eax), %eax Index: lld/test/ELF/i386-tls-ie-shared.s =================================================================== --- lld/test/ELF/i386-tls-ie-shared.s +++ lld/test/ELF/i386-tls-ie-shared.s @@ -24,18 +24,18 @@ // GOTRELSHARED: 0x6FFFFFFA RELCOUNT 8 // GOTRELSHARED: Relocations [ // GOTRELSHARED-NEXT: Section ({{.*}}) .rel.dyn { -// GOTRELSHARED-NEXT: 0x22DA R_386_RELATIVE - 0x0 -// GOTRELSHARED-NEXT: 0x22E2 R_386_RELATIVE - 0x0 -// GOTRELSHARED-NEXT: 0x22EB R_386_RELATIVE - 0x0 -// GOTRELSHARED-NEXT: 0x22F4 R_386_RELATIVE - 0x0 -// GOTRELSHARED-NEXT: 0x22FC R_386_RELATIVE - 0x0 -// GOTRELSHARED-NEXT: 0x2305 R_386_RELATIVE - 0x0 -// GOTRELSHARED-NEXT: 0x230E R_386_RELATIVE - 0x0 -// GOTRELSHARED-NEXT: 0x2317 R_386_RELATIVE - 0x0 -// GOTRELSHARED-NEXT: 0x3390 R_386_TLS_TPOFF tlsshared0 0x0 -// GOTRELSHARED-NEXT: 0x3394 R_386_TLS_TPOFF tlsshared1 0x0 -// GOTRELSHARED-NEXT: 0x3388 R_386_TLS_TPOFF tlslocal0 0x0 -// GOTRELSHARED-NEXT: 0x338C R_386_TLS_TPOFF tlslocal1 0x0 +// GOTRELSHARED-NEXT: 0x22DA R_386_RELATIVE - +// GOTRELSHARED-NEXT: 0x22E2 R_386_RELATIVE - +// GOTRELSHARED-NEXT: 0x22EB R_386_RELATIVE - +// GOTRELSHARED-NEXT: 0x22F4 R_386_RELATIVE - +// GOTRELSHARED-NEXT: 0x22FC R_386_RELATIVE - +// GOTRELSHARED-NEXT: 0x2305 R_386_RELATIVE - +// GOTRELSHARED-NEXT: 0x230E R_386_RELATIVE - +// GOTRELSHARED-NEXT: 0x2317 R_386_RELATIVE - +// GOTRELSHARED-NEXT: 0x3390 R_386_TLS_TPOFF tlsshared0 +// GOTRELSHARED-NEXT: 0x3394 R_386_TLS_TPOFF tlsshared1 +// GOTRELSHARED-NEXT: 0x3388 R_386_TLS_TPOFF tlslocal0 +// GOTRELSHARED-NEXT: 0x338C R_386_TLS_TPOFF tlslocal1 // GOTRELSHARED-NEXT: } // GOTRELSHARED-NEXT: ] Index: lld/test/ELF/i386-tls-le.s =================================================================== --- lld/test/ELF/i386-tls-le.s +++ lld/test/ELF/i386-tls-le.s @@ -63,9 +63,9 @@ # RELOCSHARED: Relocations [ # RELOCSHARED-NEXT: Section (5) .rel.dyn { -# RELOCSHARED-NEXT: 0x2219 R_386_TLS_TPOFF32 var 0x0 -# RELOCSHARED-NEXT: 0x223D R_386_TLS_TPOFF var 0x0 -# RELOCSHARED-NEXT: 0x2227 R_386_TLS_TPOFF32 var1 0x0 -# RELOCSHARED-NEXT: 0x224A R_386_TLS_TPOFF var1 0x0 +# RELOCSHARED-NEXT: 0x2219 R_386_TLS_TPOFF32 var +# RELOCSHARED-NEXT: 0x223D R_386_TLS_TPOFF var +# RELOCSHARED-NEXT: 0x2227 R_386_TLS_TPOFF32 var1 +# RELOCSHARED-NEXT: 0x224A R_386_TLS_TPOFF var1 # RELOCSHARED-NEXT: } # RELOCSHARED-NEXT: ] Index: lld/test/ELF/i386-tls-opt-iele-nopic.s =================================================================== --- lld/test/ELF/i386-tls-opt-iele-nopic.s +++ lld/test/ELF/i386-tls-opt-iele-nopic.s @@ -24,8 +24,8 @@ // GOTREL-NEXT: } // GOTREL: Relocations [ // GOTREL-NEXT: Section ({{.*}}) .rel.dyn { -// GOTREL-NEXT: 0x402258 R_386_TLS_TPOFF tlsshared0 0x0 -// GOTREL-NEXT: 0x40225C R_386_TLS_TPOFF tlsshared1 0x0 +// GOTREL-NEXT: 0x402258 R_386_TLS_TPOFF tlsshared0 +// GOTREL-NEXT: 0x40225C R_386_TLS_TPOFF tlsshared1 // GOTREL-NEXT: } // GOTREL-NEXT: ] Index: lld/test/ELF/i386-zrel-zrela.s =================================================================== --- lld/test/ELF/i386-zrel-zrela.s +++ lld/test/ELF/i386-zrel-zrela.s @@ -17,13 +17,13 @@ # REL-NEXT: PLTGOT {{.*}} # REL-NEXT: PLTREL REL{{$}} # REL: .rel.dyn { -# REL-NEXT: R_386_RELATIVE - 0x0 -# REL-NEXT: R_386_GLOB_DAT func 0x0 -# REL-NEXT: R_386_TLS_TPOFF tls 0x0 -# REL-NEXT: R_386_32 _start 0x0 +# REL-NEXT: R_386_RELATIVE - +# REL-NEXT: R_386_GLOB_DAT func +# REL-NEXT: R_386_TLS_TPOFF tls +# REL-NEXT: R_386_32 _start # REL-NEXT: } # REL-NEXT: .rel.plt { -# REL-NEXT: R_386_JUMP_SLOT func 0x0 +# REL-NEXT: R_386_JUMP_SLOT func # REL-NEXT: } # REL: Hex dump of section '.data': Index: lld/test/ELF/mips-26.s =================================================================== --- lld/test/ELF/mips-26.s +++ lld/test/ELF/mips-26.s @@ -62,7 +62,7 @@ # REL: Relocations [ # REL-NEXT: Section (7) .rel.plt { -# REL-NEXT: 0x[[PLTSLOT:[0-9A-F]+]] R_MIPS_JUMP_SLOT foo0 0x0 +# REL-NEXT: 0x[[PLTSLOT:[0-9A-F]+]] R_MIPS_JUMP_SLOT foo0 # REL-NEXT: } # REL-NEXT: ] Index: lld/test/ELF/mips-eh_frame-pic.s =================================================================== --- lld/test/ELF/mips-eh_frame-pic.s +++ lld/test/ELF/mips-eh_frame-pic.s @@ -34,10 +34,10 @@ # RUN: llvm-dwarfdump --eh-frame %t-pic32.so | FileCheck %s --check-prefix=PIC-EH-FRAME # RELOCS: .rel{{a?}}.eh_frame { -# ABS32-RELOCS-NEXT: 0x1C R_MIPS_32 .text 0x0 -# ABS64-RELOCS-NEXT: 0x1C R_MIPS_64/R_MIPS_NONE/R_MIPS_NONE .text 0x0 -# PIC64-RELOCS-NEXT: 0x1C R_MIPS_PC32/R_MIPS_NONE/R_MIPS_NONE - 0x0 -# PIC32-RELOCS-NEXT: 0x1C R_MIPS_PC32 - 0x0 +# ABS32-RELOCS-NEXT: 0x1C R_MIPS_32 .text +# ABS64-RELOCS-NEXT: 0x1C R_MIPS_64/R_MIPS_NONE/R_MIPS_NONE .text +# PIC64-RELOCS-NEXT: 0x1C R_MIPS_PC32/R_MIPS_NONE/R_MIPS_NONE - +# PIC32-RELOCS-NEXT: 0x1C R_MIPS_PC32 - # RELOCS-NEXT: } # ABS64-EH-FRAME: Augmentation data: 0C Index: lld/test/ELF/mips-lo16-not-relative.s =================================================================== --- lld/test/ELF/mips-lo16-not-relative.s +++ lld/test/ELF/mips-lo16-not-relative.s @@ -12,7 +12,7 @@ # CHECK: Relocations [ # CHECK-NEXT: Section (7) .rel.dyn { -# CHECK-NEXT: 0x{{[0-9A-F]+}} R_MIPS_COPY data0 0x0 +# CHECK-NEXT: 0x{{[0-9A-F]+}} R_MIPS_COPY data0 # CHECK-NEXT: } # CHECK-NEXT: ] Index: lld/test/ELF/mips-mgot.s =================================================================== --- lld/test/ELF/mips-mgot.s +++ lld/test/ELF/mips-mgot.s @@ -30,20 +30,20 @@ # GOT: Relocations [ # GOT-NEXT: Section (7) .rel.dyn { -# GOT-NEXT: 0x70018 R_MIPS_REL32 - 0x0 -# GOT-NEXT: 0x7001C R_MIPS_REL32 - 0x0 -# GOT-NEXT: 0x70020 R_MIPS_REL32 - 0x0 -# GOT-NEXT: 0x70024 R_MIPS_REL32 - 0x0 -# GOT-NEXT: 0x70028 R_MIPS_REL32 - 0x0 -# GOT-NEXT: 0x7002C R_MIPS_REL32 - 0x0 -# GOT-NEXT: 0x70030 R_MIPS_REL32 foo0 0x0 -# GOT-NEXT: 0x70034 R_MIPS_REL32 foo2 0x0 -# GOT-NEXT: 0x70044 R_MIPS_TLS_DTPMOD32 - 0x0 -# GOT-NEXT: 0x70010 R_MIPS_TLS_TPREL32 tls0 0x0 -# GOT-NEXT: 0x70038 R_MIPS_TLS_TPREL32 tls0 0x0 -# GOT-NEXT: 0x7003C R_MIPS_TLS_DTPMOD32 tls0 0x0 -# GOT-NEXT: 0x70040 R_MIPS_TLS_DTPREL32 tls0 0x0 -# GOT-NEXT: 0x70014 R_MIPS_TLS_TPREL32 tls1 0x0 +# GOT-NEXT: 0x70018 R_MIPS_REL32 - +# GOT-NEXT: 0x7001C R_MIPS_REL32 - +# GOT-NEXT: 0x70020 R_MIPS_REL32 - +# GOT-NEXT: 0x70024 R_MIPS_REL32 - +# GOT-NEXT: 0x70028 R_MIPS_REL32 - +# GOT-NEXT: 0x7002C R_MIPS_REL32 - +# GOT-NEXT: 0x70030 R_MIPS_REL32 foo0 +# GOT-NEXT: 0x70034 R_MIPS_REL32 foo2 +# GOT-NEXT: 0x70044 R_MIPS_TLS_DTPMOD32 - +# GOT-NEXT: 0x70010 R_MIPS_TLS_TPREL32 tls0 +# GOT-NEXT: 0x70038 R_MIPS_TLS_TPREL32 tls0 +# GOT-NEXT: 0x7003C R_MIPS_TLS_DTPMOD32 tls0 +# GOT-NEXT: 0x70040 R_MIPS_TLS_DTPREL32 tls0 +# GOT-NEXT: 0x70014 R_MIPS_TLS_TPREL32 tls1 # GOT-NEXT: } # GOT-NEXT: ] Index: lld/test/ELF/mips-plt-copy.s =================================================================== --- lld/test/ELF/mips-plt-copy.s +++ lld/test/ELF/mips-plt-copy.s @@ -11,12 +11,12 @@ # CHECK: Relocations [ # CHECK-NEXT: Section ({{.*}}) .rel.dyn { -# CHECK-DAG: 0x{{[0-9A-F]+}} R_MIPS_COPY data0 0x0 -# CHECK-DAG: 0x{{[0-9A-F]+}} R_MIPS_COPY data1 0x0 +# CHECK-DAG: 0x{{[0-9A-F]+}} R_MIPS_COPY data0 +# CHECK-DAG: 0x{{[0-9A-F]+}} R_MIPS_COPY data1 # CHECK-NEXT: } # CHECK-NEXT: Section ({{.*}}) .rel.plt { -# CHECK-DAG: 0x{{[0-9A-F]+}} R_MIPS_JUMP_SLOT foo0 0x0 -# CHECK-DAG: 0x{{[0-9A-F]+}} R_MIPS_JUMP_SLOT foo1 0x0 +# CHECK-DAG: 0x{{[0-9A-F]+}} R_MIPS_JUMP_SLOT foo0 +# CHECK-DAG: 0x{{[0-9A-F]+}} R_MIPS_JUMP_SLOT foo1 # CHECK-NEXT: } # CHECK-NEXT: ] Index: lld/test/ELF/mips-tls-64.s =================================================================== --- lld/test/ELF/mips-tls-64.s +++ lld/test/ELF/mips-tls-64.s @@ -41,9 +41,9 @@ # CHECK: Relocations [ # CHECK-NEXT: Section (7) .rel.dyn { -# CHECK-NEXT: 0x30010 R_MIPS_TLS_TPREL64/R_MIPS_NONE/R_MIPS_NONE foo 0x0 -# CHECK-NEXT: 0x30020 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE foo 0x0 -# CHECK-NEXT: 0x30028 R_MIPS_TLS_DTPREL64/R_MIPS_NONE/R_MIPS_NONE foo 0x0 +# CHECK-NEXT: 0x30010 R_MIPS_TLS_TPREL64/R_MIPS_NONE/R_MIPS_NONE foo +# CHECK-NEXT: 0x30020 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE foo +# CHECK-NEXT: 0x30028 R_MIPS_TLS_DTPREL64/R_MIPS_NONE/R_MIPS_NONE foo # CHECK-NEXT: } # CHECK-NEXT: ] # CHECK: Primary GOT { @@ -73,13 +73,13 @@ # SO: Relocations [ # SO-NEXT: Section (7) .rel.dyn { -# SO-NEXT: 0x30030 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE - 0x0 -# SO-NEXT: 0x30018 R_MIPS_TLS_TPREL64/R_MIPS_NONE/R_MIPS_NONE bar 0x0 -# SO-NEXT: 0x30040 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE bar 0x0 -# SO-NEXT: 0x30048 R_MIPS_TLS_DTPREL64/R_MIPS_NONE/R_MIPS_NONE bar 0x0 -# SO-NEXT: 0x30010 R_MIPS_TLS_TPREL64/R_MIPS_NONE/R_MIPS_NONE foo 0x0 -# SO-NEXT: 0x30020 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE foo 0x0 -# SO-NEXT: 0x30028 R_MIPS_TLS_DTPREL64/R_MIPS_NONE/R_MIPS_NONE foo 0x0 +# SO-NEXT: 0x30030 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE - +# SO-NEXT: 0x30018 R_MIPS_TLS_TPREL64/R_MIPS_NONE/R_MIPS_NONE bar +# SO-NEXT: 0x30040 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE bar +# SO-NEXT: 0x30048 R_MIPS_TLS_DTPREL64/R_MIPS_NONE/R_MIPS_NONE bar +# SO-NEXT: 0x30010 R_MIPS_TLS_TPREL64/R_MIPS_NONE/R_MIPS_NONE foo +# SO-NEXT: 0x30020 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE foo +# SO-NEXT: 0x30028 R_MIPS_TLS_DTPREL64/R_MIPS_NONE/R_MIPS_NONE foo # SO-NEXT: } # SO-NEXT: ] # SO: Primary GOT { Index: lld/test/ELF/mips64-eh-abs-reloc.s =================================================================== --- lld/test/ELF/mips64-eh-abs-reloc.s +++ lld/test/ELF/mips64-eh-abs-reloc.s @@ -21,7 +21,7 @@ # PIC-RELOCS: Relocations [ # PIC-RELOCS-NEXT: Section (7) .rel.dyn { -# PIC-RELOCS-NEXT: {{0x.+}} R_MIPS_REL32/R_MIPS_64/R_MIPS_NONE - 0x0 +# PIC-RELOCS-NEXT: {{0x.+}} R_MIPS_REL32/R_MIPS_64/R_MIPS_NONE - # PIC-RELOCS-NEXT: } # PIC-RELOCS-NEXT:] Index: lld/test/ELF/pack-dyn-relocs-arm2.s =================================================================== --- lld/test/ELF/pack-dyn-relocs-arm2.s +++ lld/test/ELF/pack-dyn-relocs-arm2.s @@ -8,40 +8,40 @@ // RUN: llvm-readobj -r %t.exe | FileCheck %s // CHECK: Section (5) .relr.dyn { -// CHECK-NEXT: 0x301E8 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x301EC R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x301F0 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x301F4 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x301F8 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x301FC R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30200 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30204 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30208 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x3020C R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30210 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30214 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30218 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x3021C R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30220 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30224 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30228 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x3022C R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30230 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30234 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30238 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x3023C R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30240 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30244 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30248 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x3024C R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30250 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30254 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30258 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x3025C R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30260 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30264 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x30268 R_ARM_RELATIVE - 0x0 -// CHECK-NEXT: 0x3026C R_ARM_RELATIVE - 0x0 +// CHECK-NEXT: 0x301E8 R_ARM_RELATIVE - +// CHECK-NEXT: 0x301EC R_ARM_RELATIVE - +// CHECK-NEXT: 0x301F0 R_ARM_RELATIVE - +// CHECK-NEXT: 0x301F4 R_ARM_RELATIVE - +// CHECK-NEXT: 0x301F8 R_ARM_RELATIVE - +// CHECK-NEXT: 0x301FC R_ARM_RELATIVE - +// CHECK-NEXT: 0x30200 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30204 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30208 R_ARM_RELATIVE - +// CHECK-NEXT: 0x3020C R_ARM_RELATIVE - +// CHECK-NEXT: 0x30210 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30214 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30218 R_ARM_RELATIVE - +// CHECK-NEXT: 0x3021C R_ARM_RELATIVE - +// CHECK-NEXT: 0x30220 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30224 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30228 R_ARM_RELATIVE - +// CHECK-NEXT: 0x3022C R_ARM_RELATIVE - +// CHECK-NEXT: 0x30230 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30234 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30238 R_ARM_RELATIVE - +// CHECK-NEXT: 0x3023C R_ARM_RELATIVE - +// CHECK-NEXT: 0x30240 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30244 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30248 R_ARM_RELATIVE - +// CHECK-NEXT: 0x3024C R_ARM_RELATIVE - +// CHECK-NEXT: 0x30250 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30254 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30258 R_ARM_RELATIVE - +// CHECK-NEXT: 0x3025C R_ARM_RELATIVE - +// CHECK-NEXT: 0x30260 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30264 R_ARM_RELATIVE - +// CHECK-NEXT: 0x30268 R_ARM_RELATIVE - +// CHECK-NEXT: 0x3026C R_ARM_RELATIVE - // CHECK-NEXT: } // RUN: llvm-readobj -S --dynamic-table %t.exe | FileCheck --check-prefix=HEADER %s Index: lld/test/ELF/pack-dyn-relocs-relr-loop.s =================================================================== --- lld/test/ELF/pack-dyn-relocs-relr-loop.s +++ lld/test/ELF/pack-dyn-relocs-relr-loop.s @@ -12,9 +12,9 @@ # CHECK: .relr.dyn needs 1 padding word(s) # RELR: .relr.dyn { -# RELR-NEXT: 0x2F30 R_AARCH64_RELATIVE - 0x0 -# RELR-NEXT: 0x2F38 R_AARCH64_RELATIVE - 0x0 -# RELR-NEXT: 0x3000 R_AARCH64_RELATIVE - 0x0 +# RELR-NEXT: 0x2F30 R_AARCH64_RELATIVE - +# RELR-NEXT: 0x2F38 R_AARCH64_RELATIVE - +# RELR-NEXT: 0x3000 R_AARCH64_RELATIVE - # RELR-NEXT: } .section .data.rel.ro Index: lld/test/ELF/pack-dyn-relocs.s =================================================================== --- lld/test/ELF/pack-dyn-relocs.s +++ lld/test/ELF/pack-dyn-relocs.s @@ -8,42 +8,42 @@ /// Unpacked should have the relative relocations in their natural order. /// UNPACKED32: Section ({{.+}}) .rel.dyn { -// UNPACKED32-NEXT: 0x30324 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30328 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x3032C R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30330 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30334 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30338 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x3033C R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30340 R_ARM_RELATIVE - 0x0 - -// UNPACKED32-NEXT: 0x30348 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x3034C R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30350 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30354 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30358 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x3035C R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30360 R_ARM_RELATIVE - 0x0 - -// UNPACKED32-NEXT: 0x3036C R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30370 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30374 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30378 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x3037C R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30380 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30384 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30388 R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x3038C R_ARM_RELATIVE - 0x0 -// UNPACKED32-NEXT: 0x30391 R_ARM_RELATIVE - 0x0 - -// UNPACKED32-NEXT: 0x30344 R_ARM_ABS32 bar2 0x0 -// UNPACKED32-NEXT: 0x30368 R_ARM_ABS32 bar2 0x0 -// UNPACKED32-NEXT: 0x30395 R_ARM_ABS32 bar2 0x0 -// UNPACKED32-NEXT: 0x30399 R_ARM_ABS32 bar2 0x0 -// UNPACKED32-NEXT: 0x3039D R_ARM_ABS32 bar2 0x0 -// UNPACKED32-NEXT: 0x303A1 R_ARM_ABS32 bar2 0x0 -// UNPACKED32-NEXT: 0x303A5 R_ARM_ABS32 bar2 0x0 -// UNPACKED32-NEXT: 0x30364 R_ARM_ABS32 zed2 0x0 +// UNPACKED32-NEXT: 0x30324 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30328 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x3032C R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30330 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30334 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30338 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x3033C R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30340 R_ARM_RELATIVE - + +// UNPACKED32-NEXT: 0x30348 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x3034C R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30350 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30354 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30358 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x3035C R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30360 R_ARM_RELATIVE - + +// UNPACKED32-NEXT: 0x3036C R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30370 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30374 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30378 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x3037C R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30380 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30384 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30388 R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x3038C R_ARM_RELATIVE - +// UNPACKED32-NEXT: 0x30391 R_ARM_RELATIVE - + +// UNPACKED32-NEXT: 0x30344 R_ARM_ABS32 bar2 +// UNPACKED32-NEXT: 0x30368 R_ARM_ABS32 bar2 +// UNPACKED32-NEXT: 0x30395 R_ARM_ABS32 bar2 +// UNPACKED32-NEXT: 0x30399 R_ARM_ABS32 bar2 +// UNPACKED32-NEXT: 0x3039D R_ARM_ABS32 bar2 +// UNPACKED32-NEXT: 0x303A1 R_ARM_ABS32 bar2 +// UNPACKED32-NEXT: 0x303A5 R_ARM_ABS32 bar2 +// UNPACKED32-NEXT: 0x30364 R_ARM_ABS32 zed2 // UNPACKED32-NEXT: } // RUN: ld.lld -pie --pack-dyn-relocs=android %t.a32.o %t.a32.so -o %t3.a32 @@ -73,40 +73,40 @@ /// by the larger groups of relative relocations (i.e. the 8 and 9 followed /// by the 7.) // ANDROID32: Section ({{.+}}) .rel.dyn { -// ANDROID32-NEXT: 0x30254 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x30258 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x3025C R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x30260 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x30264 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x30268 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x3026C R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x30270 R_ARM_RELATIVE - 0x0 - -// ANDROID32-NEXT: 0x3029C R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x302A0 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x302A4 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x302A8 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x302AC R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x302B0 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x302B4 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x302B8 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x302BC R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x30278 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x3027C R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x30280 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x30284 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x30288 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x3028C R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x30290 R_ARM_RELATIVE - 0x0 -// ANDROID32-NEXT: 0x302C1 R_ARM_RELATIVE - 0x0 - -// ANDROID32-NEXT: 0x30274 R_ARM_ABS32 bar2 0x0 -// ANDROID32-NEXT: 0x30298 R_ARM_ABS32 bar2 0x0 -// ANDROID32-NEXT: 0x302C5 R_ARM_ABS32 bar2 0x0 -// ANDROID32-NEXT: 0x302C9 R_ARM_ABS32 bar2 0x0 -// ANDROID32-NEXT: 0x302CD R_ARM_ABS32 bar2 0x0 -// ANDROID32-NEXT: 0x302D1 R_ARM_ABS32 bar2 0x0 -// ANDROID32-NEXT: 0x302D5 R_ARM_ABS32 bar2 0x0 +// ANDROID32-NEXT: 0x30254 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x30258 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x3025C R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x30260 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x30264 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x30268 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x3026C R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x30270 R_ARM_RELATIVE - + +// ANDROID32-NEXT: 0x3029C R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x302A0 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x302A4 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x302A8 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x302AC R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x302B0 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x302B4 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x302B8 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x302BC R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x30278 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x3027C R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x30280 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x30284 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x30288 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x3028C R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x30290 R_ARM_RELATIVE - +// ANDROID32-NEXT: 0x302C1 R_ARM_RELATIVE - + +// ANDROID32-NEXT: 0x30274 R_ARM_ABS32 bar2 +// ANDROID32-NEXT: 0x30298 R_ARM_ABS32 bar2 +// ANDROID32-NEXT: 0x302C5 R_ARM_ABS32 bar2 +// ANDROID32-NEXT: 0x302C9 R_ARM_ABS32 bar2 +// ANDROID32-NEXT: 0x302CD R_ARM_ABS32 bar2 +// ANDROID32-NEXT: 0x302D1 R_ARM_ABS32 bar2 +// ANDROID32-NEXT: 0x302D5 R_ARM_ABS32 bar2 // ANDROID32-NEXT: 0x30294 R_ARM_ABS32 zed2 0x0 // ANDROID32-NEXT: } @@ -147,43 +147,43 @@ /// but contains only the relative relocations. /// Any relative relocations with odd offset stay in SHT_REL. // RELR32: Section ({{.+}}) .rel.dyn { -// RELR32-NEXT: 0x302F1 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302A4 R_ARM_ABS32 bar2 0x0 -// RELR32-NEXT: 0x302C8 R_ARM_ABS32 bar2 0x0 -// RELR32-NEXT: 0x302F5 R_ARM_ABS32 bar2 0x0 -// RELR32-NEXT: 0x302F9 R_ARM_ABS32 bar2 0x0 -// RELR32-NEXT: 0x302FD R_ARM_ABS32 bar2 0x0 -// RELR32-NEXT: 0x30301 R_ARM_ABS32 bar2 0x0 -// RELR32-NEXT: 0x30305 R_ARM_ABS32 bar2 0x0 -// RELR32-NEXT: 0x302C4 R_ARM_ABS32 zed2 0x0 +// RELR32-NEXT: 0x302F1 R_ARM_RELATIVE - +// RELR32-NEXT: 0x302A4 R_ARM_ABS32 bar2 +// RELR32-NEXT: 0x302C8 R_ARM_ABS32 bar2 +// RELR32-NEXT: 0x302F5 R_ARM_ABS32 bar2 +// RELR32-NEXT: 0x302F9 R_ARM_ABS32 bar2 +// RELR32-NEXT: 0x302FD R_ARM_ABS32 bar2 +// RELR32-NEXT: 0x30301 R_ARM_ABS32 bar2 +// RELR32-NEXT: 0x30305 R_ARM_ABS32 bar2 +// RELR32-NEXT: 0x302C4 R_ARM_ABS32 zed2 // RELR32-NEXT: } // RELR32-NEXT: Section ({{.+}}) .relr.dyn { -// RELR32-NEXT: 0x30284 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x30288 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x3028C R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x30290 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x30294 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x30298 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x3029C R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302A0 R_ARM_RELATIVE - 0x0 - -// RELR32-NEXT: 0x302A8 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302AC R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302B0 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302B4 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302B8 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302BC R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302C0 R_ARM_RELATIVE - 0x0 - -// RELR32-NEXT: 0x302CC R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302D0 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302D4 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302D8 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302DC R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302E0 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302E4 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302E8 R_ARM_RELATIVE - 0x0 -// RELR32-NEXT: 0x302EC R_ARM_RELATIVE - 0x0 +// RELR32-NEXT: 0x30284 R_ARM_RELATIVE - +// RELR32-NEXT: 0x30288 R_ARM_RELATIVE - +// RELR32-NEXT: 0x3028C R_ARM_RELATIVE - +// RELR32-NEXT: 0x30290 R_ARM_RELATIVE - +// RELR32-NEXT: 0x30294 R_ARM_RELATIVE - +// RELR32-NEXT: 0x30298 R_ARM_RELATIVE - +// RELR32-NEXT: 0x3029C R_ARM_RELATIVE - +// RELR32-NEXT: 0x302A0 R_ARM_RELATIVE - + +// RELR32-NEXT: 0x302A8 R_ARM_RELATIVE - +// RELR32-NEXT: 0x302AC R_ARM_RELATIVE - +// RELR32-NEXT: 0x302B0 R_ARM_RELATIVE - +// RELR32-NEXT: 0x302B4 R_ARM_RELATIVE - +// RELR32-NEXT: 0x302B8 R_ARM_RELATIVE - +// RELR32-NEXT: 0x302BC R_ARM_RELATIVE - +// RELR32-NEXT: 0x302C0 R_ARM_RELATIVE - + +// RELR32-NEXT: 0x302CC R_ARM_RELATIVE - +// RELR32-NEXT: 0x302D0 R_ARM_RELATIVE - +// RELR32-NEXT: 0x302D4 R_ARM_RELATIVE - +// RELR32-NEXT: 0x302D8 R_ARM_RELATIVE - +// RELR32-NEXT: 0x302DC R_ARM_RELATIVE - +// RELR32-NEXT: 0x302E0 R_ARM_RELATIVE - +// RELR32-NEXT: 0x302E4 R_ARM_RELATIVE - +// RELR32-NEXT: 0x302E8 R_ARM_RELATIVE - +// RELR32-NEXT: 0x302EC R_ARM_RELATIVE - // RELR32-NEXT: } // RUN: llvm-mc -filetype=obj -triple=aarch64-unknown-linux %p/Inputs/shared2.s -o %t.a64.so.o @@ -340,30 +340,30 @@ // RELR64-NEXT: 0x30510 R_AARCH64_ABS64 zed2 0x0 // RELR64-NEXT: } // RELR64-NEXT: Section ({{.+}}) .relr.dyn { -// RELR64-NEXT: 0x30490 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30498 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x304A0 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x304A8 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x304B0 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x304B8 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x304C0 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x304C8 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x304D8 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x304E0 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x304E8 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x304F0 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x304F8 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30500 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30508 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30520 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30528 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30530 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30538 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30540 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30548 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30550 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30558 R_AARCH64_RELATIVE - 0x0 -// RELR64-NEXT: 0x30560 R_AARCH64_RELATIVE - 0x0 +// RELR64-NEXT: 0x30490 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30498 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x304A0 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x304A8 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x304B0 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x304B8 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x304C0 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x304C8 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x304D8 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x304E0 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x304E8 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x304F0 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x304F8 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30500 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30508 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30520 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30528 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30530 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30538 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30540 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30548 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30550 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30558 R_AARCH64_RELATIVE - +// RELR64-NEXT: 0x30560 R_AARCH64_RELATIVE - // RELR64-NEXT: } .data Index: lld/test/ELF/rel-addend-with-rela-input.s =================================================================== --- lld/test/ELF/rel-addend-with-rela-input.s +++ lld/test/ELF/rel-addend-with-rela-input.s @@ -38,7 +38,7 @@ # ^--- Addend for relocation in .rel.dyn # RELA-TO-REL: Relocations [ # RELA-TO-REL-NEXT: Section ({{.+}}) .rel.dyn { -# RELA-TO-REL-NEXT: 0x[[DATA]] R_MIPS_REL32/R_MIPS_64/R_MIPS_NONE foo 0x0 +# RELA-TO-REL-NEXT: 0x[[DATA]] R_MIPS_REL32/R_MIPS_64/R_MIPS_NONE foo # RELA-TO-REL-NEXT: } # RELA-TO-REL-NEXT: ] Index: lld/test/ELF/relocatable-section-symbol.s =================================================================== --- lld/test/ELF/relocatable-section-symbol.s +++ lld/test/ELF/relocatable-section-symbol.s @@ -39,8 +39,8 @@ # REL: Relocations [ # REL-NEXT: Section ({{.*}}) .rel.data { -# REL-NEXT: 0x0 R_386_32 .text 0x0 -# REL-NEXT: 0x4 R_386_32 .text 0x0 +# REL-NEXT: 0x0 R_386_32 .text +# REL-NEXT: 0x4 R_386_32 .text # REL-NEXT: } # REL-NEXT: ] Index: lld/test/ELF/relocation-copy-i686.s =================================================================== --- lld/test/ELF/relocation-copy-i686.s +++ lld/test/ELF/relocation-copy-i686.s @@ -35,19 +35,16 @@ // CHECK-NEXT: Offset: // CHECK-NEXT: Type: R_386_COPY // CHECK-NEXT: Symbol: x -// CHECK-NEXT: Addend: 0x0 // CHECK-NEXT: } // CHECK-NEXT: Relocation { // CHECK-NEXT: Offset: // CHECK-NEXT: Type: R_386_COPY // CHECK-NEXT: Symbol: y -// CHECK-NEXT: Addend: 0x0 // CHECK-NEXT: } // CHECK-NEXT: Relocation { // CHECK-NEXT: Offset: // CHECK-NEXT: Type: R_386_COPY // CHECK-NEXT: Symbol: z -// CHECK-NEXT: Addend: 0x0 // CHECK-NEXT: } // CHECK-NEXT: } // CHECK-NEXT: ] Index: lld/test/ELF/relocation-none-arm.s =================================================================== --- lld/test/ELF/relocation-none-arm.s +++ lld/test/ELF/relocation-none-arm.s @@ -14,7 +14,7 @@ # RUN: llvm-readobj -r %t | FileCheck --check-prefix=RELOC %s # RELOC: Section ({{.*}}) .rel.text { -# RELOC-NEXT: 0x0 R_ARM_NONE .data 0x0 +# RELOC-NEXT: 0x0 R_ARM_NONE .data # RELOC-NEXT: } .globl _start Index: lld/test/ELF/relocation-none-i386.s =================================================================== --- lld/test/ELF/relocation-none-i386.s +++ lld/test/ELF/relocation-none-i386.s @@ -14,7 +14,7 @@ # RUN: llvm-readobj -r %t | FileCheck --check-prefix=RELOC %s # RELOC: Section ({{.*}}) .rel.text { -# RELOC-NEXT: 0x0 R_386_NONE .data 0x0 +# RELOC-NEXT: 0x0 R_386_NONE .data # RELOC-NEXT: } .globl _start Index: lld/test/ELF/x86-64-zrel-zrela.s =================================================================== --- lld/test/ELF/x86-64-zrel-zrela.s +++ lld/test/ELF/x86-64-zrel-zrela.s @@ -37,12 +37,12 @@ # REL-NEXT: PLTGOT {{.*}} # REL-NEXT: PLTREL REL{{$}} # REL: .rel.dyn { -# REL-NEXT: R_X86_64_RELATIVE - 0x0 -# REL-NEXT: R_X86_64_GLOB_DAT func 0x0 -# REL-NEXT: R_X86_64_64 _start 0 +# REL-NEXT: R_X86_64_RELATIVE +# REL-NEXT: R_X86_64_GLOB_DAT func +# REL-NEXT: R_X86_64_64 _start # REL-NEXT: } # REL-NEXT: .rel.plt { -# REL-NEXT: R_X86_64_JUMP_SLOT func 0x0 +# REL-NEXT: R_X86_64_JUMP_SLOT func # REL-NEXT: } # REL: Hex dump of section '.data': Index: llvm/test/CodeGen/AMDGPU/amdgpu-reloc-const.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/amdgpu-reloc-const.ll +++ llvm/test/CodeGen/AMDGPU/amdgpu-reloc-const.ll @@ -12,7 +12,7 @@ ; ELF: Relocations [ ; ELF-NEXT: Section (3) .rel.text { -; ELF-NEXT: 0x{{[0-9]+}} R_AMDGPU_ABS32 doff_0_0_b {{.*}} +; ELF-NEXT: 0x{{[0-9]+}} R_AMDGPU_ABS32 doff_0_0_b{{$}} define amdgpu_ps void @ps_main(i32 %arg, i32 inreg %arg1, i32 inreg %arg2) local_unnamed_addr #0 { %rc = call i32 @llvm.amdgcn.reloc.constant(metadata !1) Index: llvm/test/CodeGen/AMDGPU/lds-relocs.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/lds-relocs.ll +++ llvm/test/CodeGen/AMDGPU/lds-relocs.ll @@ -6,8 +6,8 @@ ; ELF: Relocations [ ; ELF-NEXT: Section (3) .rel.text { -; ELF-NEXT: 0x{{[0-9a-f]*}} R_AMDGPU_ABS32 lds.external 0x0 -; ELF-NEXT: 0x{{[0-9a-f]*}} R_AMDGPU_ABS32 lds.defined 0x0 +; ELF-NEXT: 0x{{[0-9a-f]*}} R_AMDGPU_ABS32 lds.external +; ELF-NEXT: 0x{{[0-9a-f]*}} R_AMDGPU_ABS32 lds.defined ; ELF-NEXT: } ; ELF-NEXT: ] Index: llvm/test/CodeGen/AMDGPU/no-initializer-constant-addrspace.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/no-initializer-constant-addrspace.ll +++ llvm/test/CodeGen/AMDGPU/no-initializer-constant-addrspace.ll @@ -2,7 +2,7 @@ ; RUN: llc -mtriple=amdgcn- -mcpu=tonga -filetype=obj < %s | llvm-readobj -r --symbols - | FileCheck %s -check-prefix=GCN ; RUN: llc -mtriple=r600- -mcpu=cypress -filetype=obj < %s | llvm-readobj -r --symbols - | FileCheck %s -check-prefix=EG -; GCN: R_AMDGPU_GOTPCREL32_LO extern_const_addrspace 0x0 +; GCN: R_AMDGPU_GOTPCREL32_LO extern_const_addrspace ; EG: R_AMDGPU_ABS32 extern_const_addrspace ; CHECK-DAG: Name: extern_const_addrspace Index: llvm/test/CodeGen/AMDGPU/r600-constant-array-fixup.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/r600-constant-array-fixup.ll +++ llvm/test/CodeGen/AMDGPU/r600-constant-array-fixup.ll @@ -4,7 +4,7 @@ ; CHECK: Relocations [ ; CHECK: Section (3) .rel.text { -; CHECK: 0x58 R_AMDGPU_ABS32 .text 0x0 +; CHECK: 0x58 R_AMDGPU_ABS32 .text ; CHECK: } ; CHECK: ] Index: llvm/test/CodeGen/AMDGPU/scratch-simple.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/scratch-simple.ll +++ llvm/test/CodeGen/AMDGPU/scratch-simple.ll @@ -9,8 +9,8 @@ ; RUN: llc -march=amdgcn -mtriple=amdgcn--amdpal -mcpu=gfx900 -mattr=-flat-for-global -amdgpu-use-divergent-register-indexing -amdgpu-enable-flat-scratch -verify-machineinstrs < %s | FileCheck --check-prefixes=GCN,GFX9,GFX9_10,FLATSCR,GFX9-FLATSCR-PAL %s ; RUN: llc -march=amdgcn -mtriple=amdgcn--amdpal -mcpu=gfx1030 -mattr=-flat-for-global -amdgpu-use-divergent-register-indexing -amdgpu-enable-flat-scratch -verify-machineinstrs < %s | FileCheck --check-prefixes=GCN,GFX10_W32,GFX9_10,FLATSCR,GFX10-FLATSCR-PAL,GFX9_10-FLATSCR %s -; RELS: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD0 0x0 -; RELS: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD1 0x0 +; RELS: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD0 +; RELS: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD1 ; This used to fail due to a v_add_i32 instruction with an illegal immediate ; operand that was created during Local Stack Slot Allocation. Test case derived Index: llvm/test/MC/AMDGPU/elf-lds.s =================================================================== --- llvm/test/MC/AMDGPU/elf-lds.s +++ llvm/test/MC/AMDGPU/elf-lds.s @@ -34,8 +34,8 @@ // CHECK: Relocations [ // CHECK: Section (3) .rel.text { -// CHECK-NEXT: 0x4 R_AMDGPU_ABS32 lds0 0x0 -// CHECK-NEXT: 0x1C R_AMDGPU_ABS32 lds4 0x0 +// CHECK-NEXT: 0x4 R_AMDGPU_ABS32 lds0 +// CHECK-NEXT: 0x1C R_AMDGPU_ABS32 lds4 // CHECK-NEXT: } // CHECK: ] Index: llvm/test/MC/AMDGPU/reloc.s =================================================================== --- llvm/test/MC/AMDGPU/reloc.s +++ llvm/test/MC/AMDGPU/reloc.s @@ -2,18 +2,18 @@ // CHECK: Relocations [ // CHECK: .rel.text { -// CHECK: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD0 0x0 -// CHECK: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD1 0x0 -// CHECK: R_AMDGPU_GOTPCREL global_var0 0x0 -// CHECK: R_AMDGPU_GOTPCREL32_LO global_var1 0x0 -// CHECK: R_AMDGPU_GOTPCREL32_HI global_var2 0x0 -// CHECK: R_AMDGPU_REL32_LO global_var3 0x0 -// CHECK: R_AMDGPU_REL32_HI global_var4 0x0 -// CHECK: R_AMDGPU_ABS32 var 0x0 +// CHECK: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD0 +// CHECK: R_AMDGPU_ABS32_LO SCRATCH_RSRC_DWORD1 +// CHECK: R_AMDGPU_GOTPCREL global_var0 +// CHECK: R_AMDGPU_GOTPCREL32_LO global_var1 +// CHECK: R_AMDGPU_GOTPCREL32_HI global_var2 +// CHECK: R_AMDGPU_REL32_LO global_var3 +// CHECK: R_AMDGPU_REL32_HI global_var4 +// CHECK: R_AMDGPU_ABS32 var // CHECK: } // CHECK: .rel.data { -// CHECK: R_AMDGPU_ABS64 temp 0x0 -// CHECK: R_AMDGPU_REL64 temp 0x0 +// CHECK: R_AMDGPU_ABS64 temp +// CHECK: R_AMDGPU_REL64 temp // CHECK: } // CHECK: ] Index: llvm/test/MC/ARM/arm-elf-relocations.s =================================================================== --- llvm/test/MC/ARM/arm-elf-relocations.s +++ llvm/test/MC/ARM/arm-elf-relocations.s @@ -11,8 +11,8 @@ .byte abs8_1 +255 @ CHECK: Section {{.*}} .rel.text.r_arm_abs8 { -@ CHECK: 0x0 R_ARM_ABS8 abs8_0 0x0 -@ CHECK: 0x1 R_ARM_ABS8 abs8_1 0x0 +@ CHECK: 0x0 R_ARM_ABS8 abs8_0 +@ CHECK: 0x1 R_ARM_ABS8 abs8_1 @ CHECK: } .section .text.r_arm_abs16 @@ -21,8 +21,8 @@ .short abs16_1 +65535 @ CHECK: Section {{.*}} .rel.text.r_arm_abs16 { -@ CHECK: 0x0 R_ARM_ABS16 abs16_0 0x0 -@ CHECK: 0x2 R_ARM_ABS16 abs16_1 0x0 +@ CHECK: 0x0 R_ARM_ABS16 abs16_0 +@ CHECK: 0x2 R_ARM_ABS16 abs16_1 @ CHECK: } .section .text.r_arm_sbrel32 @@ -31,7 +31,7 @@ .word target(SBREL) @ CHECK: Section {{.*}} .rel.text.r_arm_sbrel32 { -@ CHECK: 0x0 R_ARM_SBREL32 target 0x0 -@ CHECK: 0x4 R_ARM_SBREL32 target 0x0 +@ CHECK: 0x0 R_ARM_SBREL32 target +@ CHECK: 0x4 R_ARM_SBREL32 target @ CHECK: } Index: llvm/test/MC/ARM/arm-elf-symver.s =================================================================== --- llvm/test/MC/ARM/arm-elf-symver.s +++ llvm/test/MC/ARM/arm-elf-symver.s @@ -24,11 +24,11 @@ @ CHECK: Relocations [ @ CHECK-NEXT: Section {{.*}} .rel.text { -@ CHECK-NEXT: 0x0 R_ARM_ABS32 .text 0x0 -@ CHECK-NEXT: 0x4 R_ARM_ABS32 bar2@zed 0x0 -@ CHECK-NEXT: 0x8 R_ARM_ABS32 .text 0x0 -@ CHECK-NEXT: 0xC R_ARM_ABS32 .text 0x0 -@ CHECK-NEXT: 0x10 R_ARM_ABS32 bar6@zed 0x0 +@ CHECK-NEXT: 0x0 R_ARM_ABS32 .text +@ CHECK-NEXT: 0x4 R_ARM_ABS32 bar2@zed +@ CHECK-NEXT: 0x8 R_ARM_ABS32 .text +@ CHECK-NEXT: 0xC R_ARM_ABS32 .text +@ CHECK-NEXT: 0x10 R_ARM_ABS32 bar6@zed @ CHECK-NEXT: } @ CHECK-NEXT: ] Index: llvm/test/MC/ARM/arm-thumb-tail-call.ll =================================================================== --- llvm/test/MC/ARM/arm-thumb-tail-call.ll +++ llvm/test/MC/ARM/arm-thumb-tail-call.ll @@ -20,6 +20,6 @@ ; CHECK: Relocations [ ; CHECK-NEXT: Section (3) .rel.text { -; CHECK-NEXT: 0x0 R_ARM_JUMP24 thumb_fn 0x0 -; CHECK-NEXT: 0x4 R_ARM_THM_JUMP24 arm_fn 0x0 +; CHECK-NEXT: 0x0 R_ARM_JUMP24 thumb_fn +; CHECK-NEXT: 0x4 R_ARM_THM_JUMP24 arm_fn ; CHECK-NEXT: } Index: llvm/test/MC/ARM/directive-tlsdescseq.s =================================================================== --- llvm/test/MC/ARM/directive-tlsdescseq.s +++ llvm/test/MC/ARM/directive-tlsdescseq.s @@ -18,10 +18,10 @@ .word variable(tlsdesc) + (. - 1b) @ CHECK: Relocations [ -@ CHECK: 0x4 R_ARM_TLS_DESCSEQ variable 0x0 -@ CHECK: 0x8 R_ARM_TLS_DESCSEQ variable 0x0 -@ CHECK: 0xC R_ARM_TLS_DESCSEQ variable 0x0 -@ CHECK: 0x10 R_ARM_TLS_GOTDESC variable 0x0 +@ CHECK: 0x4 R_ARM_TLS_DESCSEQ variable +@ CHECK: 0x8 R_ARM_TLS_DESCSEQ variable +@ CHECK: 0xC R_ARM_TLS_DESCSEQ variable +@ CHECK: 0x10 R_ARM_TLS_GOTDESC variable @ CHECK: ] @ CHECK-ASM: ldr r1, [pc, #8] Index: llvm/test/MC/ARM/eh-compact-pr0.s =================================================================== --- llvm/test/MC/ARM/eh-compact-pr0.s +++ llvm/test/MC/ARM/eh-compact-pr0.s @@ -70,8 +70,8 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.TEST1 @ RELOC: Relocations [ -@ RELOC-NOAND-NEXT: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 0x0 -@ RELOC-NEXT: 0x0 R_ARM_PREL31 .TEST1 0x0 +@ RELOC-NOAND-NEXT: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 +@ RELOC-NEXT: 0x0 R_ARM_PREL31 .TEST1 @ RELOC-NEXT: ] @------------------------------------------------------------------------------- @@ -105,6 +105,6 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.TEST2 @ RELOC: Relocations [ -@ RELOC-NOAND-NEXT: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 0x0 -@ RELOC-NEXT: 0x0 R_ARM_PREL31 .TEST2 0x0 +@ RELOC-NOAND-NEXT: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 +@ RELOC-NEXT: 0x0 R_ARM_PREL31 .TEST2 @ RELOC-NEXT: ] Index: llvm/test/MC/ARM/eh-compact-pr1.s =================================================================== --- llvm/test/MC/ARM/eh-compact-pr1.s +++ llvm/test/MC/ARM/eh-compact-pr1.s @@ -68,7 +68,7 @@ @ will keep __aeabi_unwind_cpp_pr1. @------------------------------------------------------------------------------- @ CHECK: Relocations [ -@ CHECK: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr1 0x0 -@ CHECK: 0x0 R_ARM_PREL31 .TEST1 0x0 -@ CHECK: 0x4 R_ARM_PREL31 .ARM.extab.TEST1 0x0 +@ CHECK: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr1 +@ CHECK: 0x0 R_ARM_PREL31 .TEST1 +@ CHECK: 0x4 R_ARM_PREL31 .ARM.extab.TEST1 @ CHECK: ] Index: llvm/test/MC/ARM/eh-directive-cantunwind.s =================================================================== --- llvm/test/MC/ARM/eh-directive-cantunwind.s +++ llvm/test/MC/ARM/eh-directive-cantunwind.s @@ -47,5 +47,5 @@ @ CHECK: } @ CHECK: ] @ CHECK: Relocations [ -@ CHECK: 0x0 R_ARM_PREL31 .text 0x0 +@ CHECK: 0x0 R_ARM_PREL31 .text @ CHECK: ] Index: llvm/test/MC/ARM/eh-directive-handlerdata.s =================================================================== --- llvm/test/MC/ARM/eh-directive-handlerdata.s +++ llvm/test/MC/ARM/eh-directive-handlerdata.s @@ -48,9 +48,9 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.TEST1 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 0x0 -@ RELOC: 0x0 R_ARM_PREL31 .TEST1 0x0 -@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST1 0x0 +@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 +@ RELOC: 0x0 R_ARM_PREL31 .TEST1 +@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST1 @ RELOC: ] @ RELOC: } @@ -108,8 +108,8 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.TEST2 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr1 0x0 -@ RELOC: 0x0 R_ARM_PREL31 .TEST2 0x0 -@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST2 0x0 +@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr1 +@ RELOC: 0x0 R_ARM_PREL31 .TEST2 +@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST2 @ RELOC: ] @ RELOC: } Index: llvm/test/MC/ARM/eh-directive-personality.s =================================================================== --- llvm/test/MC/ARM/eh-directive-personality.s +++ llvm/test/MC/ARM/eh-directive-personality.s @@ -38,7 +38,7 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.extab.TEST1 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_PREL31 __gxx_personality_v0 0x0 +@ RELOC: 0x0 R_ARM_PREL31 __gxx_personality_v0 @ RELOC: ] @ RELOC: } @@ -52,8 +52,8 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.TEST1 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_PREL31 .TEST1 0x0 -@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST1 0x0 +@ RELOC: 0x0 R_ARM_PREL31 .TEST1 +@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST1 @ RELOC: ] @ RELOC: } @@ -89,7 +89,7 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.extab.TEST2 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_PREL31 __gxx_personality_v0 0x0 +@ RELOC: 0x0 R_ARM_PREL31 __gxx_personality_v0 @ RELOC: ] @ RELOC: } @@ -103,7 +103,7 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.TEST2 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_PREL31 .TEST2 0x0 -@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST2 0x0 +@ RELOC: 0x0 R_ARM_PREL31 .TEST2 +@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST2 @ RELOC: ] @ RELOC: } Index: llvm/test/MC/ARM/eh-directive-personalityindex.s =================================================================== --- llvm/test/MC/ARM/eh-directive-personalityindex.s +++ llvm/test/MC/ARM/eh-directive-personalityindex.s @@ -28,8 +28,8 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.pr0 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 0x0 -@ RELOC: 0x0 R_ARM_PREL31 .pr0 0x0 +@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 +@ RELOC: 0x0 R_ARM_PREL31 .pr0 @ RELOC: ] @ RELOC: } @@ -57,8 +57,8 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.pr0.nontrivial @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 0x0 -@ RELOC: 0x0 R_ARM_PREL31 .pr0.nontrivial 0x0 +@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 +@ RELOC: 0x0 R_ARM_PREL31 .pr0.nontrivial @ RELOC: ] @ RELOC: } @@ -90,9 +90,9 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.pr1 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr1 0x0 -@ RELOC: 0x0 R_ARM_PREL31 .pr1 0x0 -@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.pr1 0x0 +@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr1 +@ RELOC: 0x0 R_ARM_PREL31 .pr1 +@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.pr1 @ RELOC: ] @ RELOC: } @@ -127,9 +127,9 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.pr1.nontrivial @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr1 0x0 -@ RELOC: 0x0 R_ARM_PREL31 .pr1.nontrivial 0x0 -@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.pr1.nontrivial 0x0 +@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr1 +@ RELOC: 0x0 R_ARM_PREL31 .pr1.nontrivial +@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.pr1.nontrivial @ RELOC: ] @ RELOC: } @@ -161,9 +161,9 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.pr2 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr2 0x0 -@ RELOC: 0x0 R_ARM_PREL31 .pr2 0x0 -@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.pr2 0x0 +@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr2 +@ RELOC: 0x0 R_ARM_PREL31 .pr2 +@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.pr2 @ RELOC: ] @ RELOC: } @@ -196,8 +196,8 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.pr2.nontrivial @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr2 0x0 -@ RELOC: 0x0 R_ARM_PREL31 .pr2.nontrivial 0x0 -@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.pr2.nontrivial 0x0 +@ RELOC: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr2 +@ RELOC: 0x0 R_ARM_PREL31 .pr2.nontrivial +@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.pr2.nontrivial @ RELOC: ] @ RELOC: } Index: llvm/test/MC/ARM/eh-directive-section-multiple-func.s =================================================================== --- llvm/test/MC/ARM/eh-directive-section-multiple-func.s +++ llvm/test/MC/ARM/eh-directive-section-multiple-func.s @@ -76,8 +76,8 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.extab.TEST1 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_PREL31 __gxx_personality_v0 0x0 -@ RELOC: 0x8 R_ARM_PREL31 __gxx_personality_v0 0x0 +@ RELOC: 0x0 R_ARM_PREL31 __gxx_personality_v0 +@ RELOC: 0x8 R_ARM_PREL31 __gxx_personality_v0 @ RELOC: ] @ RELOC: } @@ -105,10 +105,10 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.TEST1 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_PREL31 .TEST1 0x0 -@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST1 0x0 -@ RELOC: 0x8 R_ARM_PREL31 .TEST1 0x0 -@ RELOC: 0xC R_ARM_PREL31 .ARM.extab.TEST1 0x0 +@ RELOC: 0x0 R_ARM_PREL31 .TEST1 +@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST1 +@ RELOC: 0x8 R_ARM_PREL31 .TEST1 +@ RELOC: 0xC R_ARM_PREL31 .ARM.extab.TEST1 @ RELOC: ] @ RELOC: } Index: llvm/test/MC/ARM/eh-directive-section.s =================================================================== --- llvm/test/MC/ARM/eh-directive-section.s +++ llvm/test/MC/ARM/eh-directive-section.s @@ -70,7 +70,7 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.extab.TEST1 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_PREL31 __gxx_personality_v0 0x0 +@ RELOC: 0x0 R_ARM_PREL31 __gxx_personality_v0 @ RELOC: ] @ RELOC: } @@ -99,8 +99,8 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidx.TEST1 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_PREL31 .TEST1 0x0 -@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST1 0x0 +@ RELOC: 0x0 R_ARM_PREL31 .TEST1 +@ RELOC: 0x4 R_ARM_PREL31 .ARM.extab.TEST1 @ RELOC: ] @ RELOC: } @@ -129,7 +129,7 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.extabTEST2 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_PREL31 __gxx_personality_v0 0x0 +@ RELOC: 0x0 R_ARM_PREL31 __gxx_personality_v0 @ RELOC: ] @ RELOC: } @@ -158,8 +158,8 @@ @ RELOC: Section { @ RELOC: Name: .rel.ARM.exidxTEST2 @ RELOC: Relocations [ -@ RELOC: 0x0 R_ARM_PREL31 TEST2 0x0 -@ RELOC: 0x4 R_ARM_PREL31 .ARM.extabTEST2 0x0 +@ RELOC: 0x0 R_ARM_PREL31 TEST2 +@ RELOC: 0x4 R_ARM_PREL31 .ARM.extabTEST2 @ RELOC: ] @ RELOC: } Index: llvm/test/MC/ARM/eh-directive-text-section-multiple-func.s =================================================================== --- llvm/test/MC/ARM/eh-directive-text-section-multiple-func.s +++ llvm/test/MC/ARM/eh-directive-text-section-multiple-func.s @@ -60,9 +60,9 @@ @ The first word of each entry should be relocated to .text section. @------------------------------------------------------------------------------- @ CHECK: Relocations [ -@ CHECK: 0x0 R_ARM_PREL31 .text 0x0 -@ CHECK: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 0x0 -@ CHECK: 0x8 R_ARM_PREL31 .text 0x0 +@ CHECK: 0x0 R_ARM_PREL31 .text +@ CHECK: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 +@ CHECK: 0x8 R_ARM_PREL31 .text @ CHECK: ] Index: llvm/test/MC/ARM/eh-directive-text-section.s =================================================================== --- llvm/test/MC/ARM/eh-directive-text-section.s +++ llvm/test/MC/ARM/eh-directive-text-section.s @@ -77,6 +77,6 @@ @ add an relocation to __aeabi_unwind_cpp_pr0. @------------------------------------------------------------------------------- @ CHECK: Relocations [ -@ CHECK: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 0x0 -@ CHECK: 0x0 R_ARM_PREL31 .text 0x0 +@ CHECK: 0x0 R_ARM_NONE __aeabi_unwind_cpp_pr0 +@ CHECK: 0x0 R_ARM_PREL31 .text @ CHECK: ] Index: llvm/test/MC/ARM/elf-reloc-condcall.s =================================================================== --- llvm/test/MC/ARM/elf-reloc-condcall.s +++ llvm/test/MC/ARM/elf-reloc-condcall.s @@ -9,10 +9,10 @@ // OBJ: Relocations [ // OBJ-NEXT: Section {{.*}} .rel.text { -// OBJ-NEXT: 0x0 R_ARM_JUMP24 some_label 0x0 -// OBJ-NEXT: 0x4 R_ARM_CALL some_label 0x0 -// OBJ-NEXT: 0x8 R_ARM_CALL some_label 0x0 -// OBJ-NEXT: 0xC R_ARM_JUMP24 some_label 0x0 -// OBJ-NEXT: 0x10 R_ARM_JUMP24 some_label 0x0 +// OBJ-NEXT: 0x0 R_ARM_JUMP24 some_label +// OBJ-NEXT: 0x4 R_ARM_CALL some_label +// OBJ-NEXT: 0x8 R_ARM_CALL some_label +// OBJ-NEXT: 0xC R_ARM_JUMP24 some_label +// OBJ-NEXT: 0x10 R_ARM_JUMP24 some_label // OBJ-NEXT: } // OBJ-NEXT: ] Index: llvm/test/MC/ARM/elf-thumbfunc-reloc.s =================================================================== --- llvm/test/MC/ARM/elf-thumbfunc-reloc.s +++ llvm/test/MC/ARM/elf-thumbfunc-reloc.s @@ -23,13 +23,13 @@ @@ make sure an R_ARM_THM_CALL relocation is generated for the call to g @CHECK: Relocations [ @CHECK-NEXT: Section {{.*}} .rel.text { -@CHECK-NEXT: 0x4 R_ARM_THM_CALL g 0x0 +@CHECK-NEXT: 0x4 R_ARM_THM_CALL g @CHECK-NEXT: } @@ make sure the relocation is with f. That is one way to make sure it includes @@ the thumb bit. @CHECK-NEXT: Section ({{.*}}) .rel.data.rel.local { -@CHECK-NEXT: 0x0 R_ARM_ABS32 f 0x0 +@CHECK-NEXT: 0x0 R_ARM_ABS32 f @CHECK-NEXT: } @CHECK-NEXT: ] Index: llvm/test/MC/ARM/elf-thumbfunc-reloc2.s =================================================================== --- llvm/test/MC/ARM/elf-thumbfunc-reloc2.s +++ llvm/test/MC/ARM/elf-thumbfunc-reloc2.s @@ -29,11 +29,11 @@ // CHECK: Relocations [ // CHECK-NEXT: Section {{.*}} .rel.text { -// CHECK-NEXT: 0x4 R_ARM_THM_CALL foo 0x0 +// CHECK-NEXT: 0x4 R_ARM_THM_CALL foo // CHECK-NEXT: } // CHECK-NEXT: Section {{.*}} .rel.ARM.exidx { -// CHECK-NEXT: 0x0 R_ARM_PREL31 .text 0x0 -// CHECK-NEXT: 0x8 R_ARM_PREL31 .text 0x0 +// CHECK-NEXT: 0x0 R_ARM_PREL31 .text +// CHECK-NEXT: 0x8 R_ARM_PREL31 .text // CHECK-NEXT: } // CHECK-NEXT: ] Index: llvm/test/MC/ARM/mixed-arm-thumb-bl-fixup.ll =================================================================== --- llvm/test/MC/ARM/mixed-arm-thumb-bl-fixup.ll +++ llvm/test/MC/ARM/mixed-arm-thumb-bl-fixup.ll @@ -56,13 +56,13 @@ attributes #1 = { "target-features"="-thumb-mode" } ; LINUX: Section (3) .rel.text { -; LINUX-NEXT: 0x2 R_ARM_THM_CALL internal_arm_fn 0x0 -; LINUX-NEXT: 0x6 R_ARM_THM_CALL global_arm_fn 0x0 -; LINUX-NEXT: 0xE R_ARM_THM_CALL global_thumb_fn 0x0 -; LINUX-NEXT: 0x1C R_ARM_CALL internal_arm_fn 0x0 -; LINUX-NEXT: 0x20 R_ARM_CALL global_arm_fn 0x0 -; LINUX-NEXT: 0x24 R_ARM_CALL internal_thumb_fn 0x0 -; LINUX-NEXT: 0x28 R_ARM_CALL global_thumb_fn 0x0 +; LINUX-NEXT: 0x2 R_ARM_THM_CALL internal_arm_fn +; LINUX-NEXT: 0x6 R_ARM_THM_CALL global_arm_fn +; LINUX-NEXT: 0xE R_ARM_THM_CALL global_thumb_fn +; LINUX-NEXT: 0x1C R_ARM_CALL internal_arm_fn +; LINUX-NEXT: 0x20 R_ARM_CALL global_arm_fn +; LINUX-NEXT: 0x24 R_ARM_CALL internal_thumb_fn +; LINUX-NEXT: 0x28 R_ARM_CALL global_thumb_fn ; LINUX-NEXT: } ; IOS: Section __text { Index: llvm/test/MC/ARM/reloc-directive.s =================================================================== --- llvm/test/MC/ARM/reloc-directive.s +++ llvm/test/MC/ARM/reloc-directive.s @@ -37,11 +37,11 @@ # ARM relocations use the Elf32_Rel format. Addends are neither stored in the # relocation entries nor applied in the referenced locations. -# CHECK: 0x8 R_ARM_NONE .data 0x0 -# CHECK-NEXT: 0x4 R_ARM_NONE foo 0x0 -# CHECK-NEXT: 0x0 R_ARM_NONE - 0x0 -# CHECK-NEXT: 0x0 R_ARM_ALU_PC_G0 .data 0x0 -# CHECK-NEXT: 0x0 R_ARM_LDR_PC_G0 foo 0x0 -# CHECK-NEXT: 0x0 R_ARM_THM_ALU_PREL_11_0 - 0x0 +# CHECK: 0x8 R_ARM_NONE .data +# CHECK-NEXT: 0x4 R_ARM_NONE foo +# CHECK-NEXT: 0x0 R_ARM_NONE - +# CHECK-NEXT: 0x0 R_ARM_ALU_PC_G0 .data +# CHECK-NEXT: 0x0 R_ARM_LDR_PC_G0 foo +# CHECK-NEXT: 0x0 R_ARM_THM_ALU_PREL_11_0 - # HEX: 0x00000000 00000000 00000000 Index: llvm/test/MC/ARM/target-expressions.s =================================================================== --- llvm/test/MC/ARM/target-expressions.s +++ llvm/test/MC/ARM/target-expressions.s @@ -68,13 +68,13 @@ @ CHECK: movt r3, :upper16:(32) @ CHECK-RELOCATIONS: Relocations [ -@ CHECK-RELOCATIONS: 0x4 R_ARM_MOVW_ABS_NC function 0x0 -@ CHECK-RELOCATIONS: 0x8 R_ARM_MOVT_ABS function 0x0 -@ CHECK-RELOCATIONS: 0xC R_ARM_MOVW_ABS_NC function 0x0 -@ CHECK-RELOCATIONS: 0x10 R_ARM_MOVT_ABS function 0x0 -@ CHECK-RELOCATIONS: 0x34 R_ARM_MOVW_ABS_NC external 0x0 -@ CHECK-RELOCATIONS: 0x38 R_ARM_MOVT_ABS external 0x0 -@ CHECK-RELOCATIONS: 0x3C R_ARM_MOVW_ABS_NC external 0x0 -@ CHECK-RELOCATIONS: 0x40 R_ARM_MOVT_ABS external 0x0 +@ CHECK-RELOCATIONS: 0x4 R_ARM_MOVW_ABS_NC function +@ CHECK-RELOCATIONS: 0x8 R_ARM_MOVT_ABS function +@ CHECK-RELOCATIONS: 0xC R_ARM_MOVW_ABS_NC function +@ CHECK-RELOCATIONS: 0x10 R_ARM_MOVT_ABS function +@ CHECK-RELOCATIONS: 0x34 R_ARM_MOVW_ABS_NC external +@ CHECK-RELOCATIONS: 0x38 R_ARM_MOVT_ABS external +@ CHECK-RELOCATIONS: 0x3C R_ARM_MOVW_ABS_NC external +@ CHECK-RELOCATIONS: 0x40 R_ARM_MOVT_ABS external @ CHECK-RELOCATIONS: ] Index: llvm/test/MC/ARM/thumb-far-jump.s =================================================================== --- llvm/test/MC/ARM/thumb-far-jump.s +++ llvm/test/MC/ARM/thumb-far-jump.s @@ -22,5 +22,5 @@ main2: bx lr -@ CHECK-NOT: 0x0 R_ARM_THM_CALL end 0x0 -@ CHECK: 0x2004 R_ARM_THM_CALL main2 0x0 +@ CHECK-NOT: 0x0 R_ARM_THM_CALL end +@ CHECK: 0x2004 R_ARM_THM_CALL main2 \ No newline at end of file Index: llvm/test/MC/ARM/thumb-movwt-reloc.s =================================================================== --- llvm/test/MC/ARM/thumb-movwt-reloc.s +++ llvm/test/MC/ARM/thumb-movwt-reloc.s @@ -21,7 +21,7 @@ @ CHECK: movt r0, :upper16:function @ CHECK-RELOCATIONS: Relocations [ -@ CHECK-RELOCATIONS: 0x2 R_ARM_THM_MOVW_ABS_NC function 0x0 -@ CHECK-RELOCATIONS: 0x6 R_ARM_THM_MOVT_ABS function 0x0 +@ CHECK-RELOCATIONS: 0x2 R_ARM_THM_MOVW_ABS_NC function +@ CHECK-RELOCATIONS: 0x6 R_ARM_THM_MOVT_ABS function @ CHECK-RELOCATIONS: ] Index: llvm/test/MC/ARM/thumb1-branch-reloc.s =================================================================== --- llvm/test/MC/ARM/thumb1-branch-reloc.s +++ llvm/test/MC/ARM/thumb1-branch-reloc.s @@ -27,5 +27,5 @@ b global @CHECK: Section {{.*}} .rel.text.insection { -@CHECK-NEXT: 0x2 R_ARM_THM_JUMP11 global 0x0 +@CHECK-NEXT: 0x2 R_ARM_THM_JUMP11 global @CHECK-NEXT: } Index: llvm/test/MC/ARM/thumb2-beq-fixup.s =================================================================== --- llvm/test/MC/ARM/thumb2-beq-fixup.s +++ llvm/test/MC/ARM/thumb2-beq-fixup.s @@ -34,7 +34,7 @@ bx lr @ CHECK: Section (3) .rel.text -@ CHECK-NEXT: 0x0 R_ARM_THM_JUMP19 internal_arm_fn 0x0 -@ CHECK-NEXT: 0x4 R_ARM_THM_JUMP19 global_arm_fn 0x0 -@ CHECK-NEXT: 0x8 R_ARM_THM_JUMP19 global_thumb_fn 0x0 +@ CHECK-NEXT: 0x0 R_ARM_THM_JUMP19 internal_arm_fn +@ CHECK-NEXT: 0x4 R_ARM_THM_JUMP19 global_arm_fn +@ CHECK-NEXT: 0x8 R_ARM_THM_JUMP19 global_thumb_fn @ CHECK-NEXT: } Index: llvm/test/MC/ELF/discriminator.s =================================================================== --- llvm/test/MC/ELF/discriminator.s +++ llvm/test/MC/ELF/discriminator.s @@ -53,7 +53,7 @@ # CHECK: Relocations [ # CHECK: Section ({{[^ ]+}}) .rel.debug_line { -# CHECK-NEXT: 0x2E R_386_32 .text 0x0 +# CHECK-NEXT: 0x2E R_386_32 .text # CHECK-NEXT: } # DWARF-DUMP: Address Line Column File ISA Discriminator Flags Index: llvm/test/MC/ELF/gen-dwarf.s =================================================================== --- llvm/test/MC/ELF/gen-dwarf.s +++ llvm/test/MC/ELF/gen-dwarf.s @@ -22,12 +22,12 @@ // CHECK: Relocations [ // CHECK: Section ({{[^ ]+}}) .rel.debug_info { -// CHECK-NEXT: 0x6 R_386_32 .debug_abbrev 0x0 -// CHECK-NEXT: 0xC R_386_32 .debug_line 0x0 +// CHECK-NEXT: 0x6 R_386_32 .debug_abbrev +// CHECK-NEXT: 0xC R_386_32 .debug_line // CHECK: } // CHECK-NEXT: Section ({{[^ ]+}}) .rel.debug_aranges { -// CHECK-NEXT: 0x6 R_386_32 .debug_info 0x0 -// CHECK-NEXT: 0x10 R_386_32 .text 0x0 +// CHECK-NEXT: 0x6 R_386_32 .debug_info +// CHECK-NEXT: 0x10 R_386_32 .text // CHECK-NEXT: } // CHECK: ] Index: llvm/test/MC/ELF/relocation-386.s =================================================================== --- llvm/test/MC/ELF/relocation-386.s +++ llvm/test/MC/ELF/relocation-386.s @@ -8,69 +8,69 @@ // I386: Format: elf32-i386 // CHECK: Relocations [ // CHECK-NEXT: Section {{.*}} .rel.text { -// CHECK-NEXT: 0x2 R_386_GOTOFF .Lfoo 0x0 -// CHECK-NEXT: 0x{{[^ ]+}} R_386_PLT32 bar2 0x0 -// CHECK-NEXT: 0x{{[^ ]+}} R_386_GOTPC _GLOBAL_OFFSET_TABLE_ 0x0 +// CHECK-NEXT: 0x2 R_386_GOTOFF .Lfoo +// CHECK-NEXT: 0x{{[^ ]+}} R_386_PLT32 bar2 +// CHECK-NEXT: 0x{{[^ ]+}} R_386_GOTPC _GLOBAL_OFFSET_TABLE_ // Relocation 3 (bar3@GOTOFF) is done with symbol 7 (bss) -// CHECK-NEXT: 0x{{[^ ]+}} R_386_GOTOFF .bss 0x0 +// CHECK-NEXT: 0x{{[^ ]+}} R_386_GOTOFF .bss // Relocation 4 (bar2@GOT) is of type R_386_GOT32 -// CHECK-NEXT: 0x{{[^ ]+}} R_386_GOT32 bar2j 0x0 +// CHECK-NEXT: 0x{{[^ ]+}} R_386_GOT32 bar2j // Relocation 5 (foo@TLSGD) is of type R_386_TLS_GD -// CHECK-NEXT: 0x20 R_386_TLS_GD foo 0x0 +// CHECK-NEXT: 0x20 R_386_TLS_GD foo // Relocation 6 ($foo@TPOFF) is of type R_386_TLS_LE_32 -// CHECK-NEXT: 0x25 R_386_TLS_LE_32 foo 0x0 +// CHECK-NEXT: 0x25 R_386_TLS_LE_32 foo // Relocation 7 (foo@INDNTPOFF) is of type R_386_TLS_IE -// CHECK-NEXT: 0x2B R_386_TLS_IE foo 0x0 +// CHECK-NEXT: 0x2B R_386_TLS_IE foo // Relocation 8 (foo@NTPOFF) is of type R_386_TLS_LE -// CHECK-NEXT: 0x31 R_386_TLS_LE foo 0x0 +// CHECK-NEXT: 0x31 R_386_TLS_LE foo // Relocation 9 (foo@GOTNTPOFF) is of type R_386_TLS_GOTIE -// CHECK-NEXT: 0x37 R_386_TLS_GOTIE foo 0x0 +// CHECK-NEXT: 0x37 R_386_TLS_GOTIE foo // Relocation 10 (foo@TLSLDM) is of type R_386_TLS_LDM -// CHECK-NEXT: 0x3D R_386_TLS_LDM foo 0x0 +// CHECK-NEXT: 0x3D R_386_TLS_LDM foo // Relocation 11 (foo@DTPOFF) is of type R_386_TLS_LDO_32 -// CHECK-NEXT: 0x43 R_386_TLS_LDO_32 foo 0x0 +// CHECK-NEXT: 0x43 R_386_TLS_LDO_32 foo // Relocation 12 (calll 4096) is of type R_386_PC32 -// CHECK-NEXT: 0x48 R_386_PC32 - 0x0 +// CHECK-NEXT: 0x48 R_386_PC32 - // Relocation 13 (zed@GOT) is of type R_386_GOT32 and uses the symbol -// CHECK-NEXT: 0x4E R_386_GOT32 zed 0x0 +// CHECK-NEXT: 0x4E R_386_GOT32 zed // Relocation 14 (zed@GOTOFF) is of type R_386_GOTOFF and uses the symbol -// CHECK-NEXT: 0x54 R_386_GOTOFF zed 0x0 +// CHECK-NEXT: 0x54 R_386_GOTOFF zed // Relocation 15 (zed@INDNTPOFF) is of type R_386_TLS_IE and uses the symbol -// CHECK-NEXT: 0x5A R_386_TLS_IE zed 0x0 +// CHECK-NEXT: 0x5A R_386_TLS_IE zed // Relocation 16 (zed@NTPOFF) is of type R_386_TLS_LE and uses the symbol -// CHECK-NEXT: 0x60 R_386_TLS_LE zed 0x0 +// CHECK-NEXT: 0x60 R_386_TLS_LE zed // Relocation 17 (zed@GOTNTPOFF) is of type R_386_TLS_GOTIE and uses the symbol -// CHECK-NEXT: 0x66 R_386_TLS_GOTIE zed 0x0 +// CHECK-NEXT: 0x66 R_386_TLS_GOTIE zed // Relocation 18 (zed@PLT) is of type R_386_PLT32 and uses the symbol -// CHECK-NEXT: 0x6B R_386_PLT32 zed 0x0 +// CHECK-NEXT: 0x6B R_386_PLT32 zed // Relocation 19 (zed@TLSGD) is of type R_386_TLS_GD and uses the symbol -// CHECK-NEXT: 0x71 R_386_TLS_GD zed 0x0 +// CHECK-NEXT: 0x71 R_386_TLS_GD zed // Relocation 20 (zed@TLSLDM) is of type R_386_TLS_LDM and uses the symbol -// CHECK-NEXT: 0x77 R_386_TLS_LDM zed 0x0 +// CHECK-NEXT: 0x77 R_386_TLS_LDM zed // Relocation 21 (zed@TPOFF) is of type R_386_TLS_LE_32 and uses the symbol -// CHECK-NEXT: 0x7D R_386_TLS_LE_32 zed 0x0 +// CHECK-NEXT: 0x7D R_386_TLS_LE_32 zed // Relocation 22 (zed@DTPOFF) is of type R_386_TLS_LDO_32 and uses the symbol -// CHECK-NEXT: 0x83 R_386_TLS_LDO_32 zed 0x0 +// CHECK-NEXT: 0x83 R_386_TLS_LDO_32 zed // Relocation 23 ($bar) is of type R_386_32 and uses the section -// CHECK-NEXT: 0x{{[^ ]+}} R_386_32 .text 0x0 +// CHECK-NEXT: 0x{{[^ ]+}} R_386_32 .text // Relocation 24 (foo@GOTTPOFF(%edx)) is of type R_386_TLS_IE_32 and uses the // symbol -// CHECK-NEXT: 0x8E R_386_TLS_IE_32 foo 0x0 +// CHECK-NEXT: 0x8E R_386_TLS_IE_32 foo // Relocation 25 (_GLOBAL_OFFSET_TABLE_-bar2) is of type R_386_GOTPC. -// CHECK-NEXT: 0x94 R_386_GOTPC _GLOBAL_OFFSET_TABLE_ 0x0 +// CHECK-NEXT: 0x94 R_386_GOTPC _GLOBAL_OFFSET_TABLE_ // Relocation 26 (und_symbol-bar2) is of type R_386_PC32 -// CHECK-NEXT: 0x9A R_386_PC32 und_symbol 0x0 +// CHECK-NEXT: 0x9A R_386_PC32 und_symbol // Relocation 27 (und_symbol-bar2) is of type R_386_PC16 -// CHECK-NEXT: 0x9E R_386_PC16 und_symbol 0x0 +// CHECK-NEXT: 0x9E R_386_PC16 und_symbol // Relocation 28 (und_symbol-bar2) is of type R_386_PC8 -// CHECK-NEXT: 0xA0 R_386_PC8 und_symbol 0x0 -// CHECK-NEXT: 0xA3 R_386_GOTOFF und_symbol 0x0 +// CHECK-NEXT: 0xA0 R_386_PC8 und_symbol +// CHECK-NEXT: 0xA3 R_386_GOTOFF und_symbol // Relocation 29 (zed@PLT) is of type R_386_PLT32 and uses the symbol -// CHECK-NEXT: 0xA9 R_386_PLT32 zed 0x0 -// CHECK-NEXT: 0xAF R_386_PC32 tr_start 0x0 -// CHECK-NEXT: 0xB3 R_386_16 foo 0x0 -// CHECK-NEXT: 0xB5 R_386_8 foo 0x0 +// CHECK-NEXT: 0xA9 R_386_PLT32 zed +// CHECK-NEXT: 0xAF R_386_PC32 tr_start +// CHECK-NEXT: 0xB3 R_386_16 foo +// CHECK-NEXT: 0xB5 R_386_8 foo // CHECK-NEXT: } // CHECK-NEXT: ] Index: llvm/test/MC/Mips/micromips-func-addr.s =================================================================== --- llvm/test/MC/Mips/micromips-func-addr.s +++ llvm/test/MC/Mips/micromips-func-addr.s @@ -2,8 +2,8 @@ # RUN: -mattr=micromips | llvm-readobj -r - \ # RUN: | FileCheck %s # CHECK: Relocations [ -# CHECK: 0x0 R_MIPS_32 bar 0x0 -# CHECK: 0x4 R_MIPS_32 L1 0x0 +# CHECK: 0x0 R_MIPS_32 bar +# CHECK: 0x4 R_MIPS_32 L1 .set micromips .type bar,@function Index: llvm/test/MC/Mips/micromips32r6/relocations.s =================================================================== --- llvm/test/MC/Mips/micromips32r6/relocations.s +++ llvm/test/MC/Mips/micromips32r6/relocations.s @@ -36,15 +36,15 @@ # Check that the appropriate relocations were created. #------------------------------------------------------------------------------ # CHECK-ELF: Relocations [ -# CHECK-ELF: 0x0 R_MICROMIPS_PC26_S1 bar 0x0 -# CHECK-ELF: 0x4 R_MICROMIPS_PC26_S1 bar 0x0 -# CHECK-ELF: 0x8 R_MICROMIPS_PC19_S2 bar 0x0 -# CHECK-ELF: 0xC R_MICROMIPS_PC19_S2 bar 0x0 -# CHECK-ELF: 0x10 R_MICROMIPS_PC19_S2 bar 0x0 -# CHECK-ELF: 0x14 R_MICROMIPS_PC21_S1 bar 0x0 -# CHECK-ELF: 0x18 R_MICROMIPS_PC21_S1 bar 0x0 -# CHECK-ELF: 0x1C R_MICROMIPS_LO16 bar 0x0 -# CHECK-ELF: 0x20 R_MICROMIPS_LO16 bar 0x0 +# CHECK-ELF: 0x0 R_MICROMIPS_PC26_S1 bar +# CHECK-ELF: 0x4 R_MICROMIPS_PC26_S1 bar +# CHECK-ELF: 0x8 R_MICROMIPS_PC19_S2 bar +# CHECK-ELF: 0xC R_MICROMIPS_PC19_S2 bar +# CHECK-ELF: 0x10 R_MICROMIPS_PC19_S2 bar +# CHECK-ELF: 0x14 R_MICROMIPS_PC21_S1 bar +# CHECK-ELF: 0x18 R_MICROMIPS_PC21_S1 bar +# CHECK-ELF: 0x1C R_MICROMIPS_LO16 bar +# CHECK-ELF: 0x20 R_MICROMIPS_LO16 bar # CHECK-ELF: ] balc bar Index: llvm/test/MC/Mips/mips-data-directives.s =================================================================== --- llvm/test/MC/Mips/mips-data-directives.s +++ llvm/test/MC/Mips/mips-data-directives.s @@ -24,9 +24,9 @@ # CHECK-OBJ: Section { # CHECK-OBJ: Name: .rel.data # CHECK-OBJ: Relocations [ -# CHECK-OBJ: 0xE R_MIPS_32 .data 0x0 -# CHECK-OBJ: 0x12 R_MIPS_64 .data 0x0 -# CHECK-OBJ: 0x1A R_MIPS_16 .data 0x0 +# CHECK-OBJ: 0xE R_MIPS_32 .data +# CHECK-OBJ: 0x12 R_MIPS_64 .data +# CHECK-OBJ: 0x1A R_MIPS_16 .data # CHECK-OBJ: ] # CHECK-OBJ: } Index: llvm/test/MC/Mips/mips-pdr.s =================================================================== --- llvm/test/MC/Mips/mips-pdr.s +++ llvm/test/MC/Mips/mips-pdr.s @@ -34,8 +34,8 @@ # We should also check if relocation information was correctly generated. # OBJOUT: Relocations [ # OBJOUT-NEXT: Section ({{.*}}) .rel.pdr { -# OBJOUT-NEXT: 0x0 R_MIPS_32 .text 0x0 -# OBJOUT-NEXT: 0x20 R_MIPS_32 _global_foo 0x0 +# OBJOUT-NEXT: 0x0 R_MIPS_32 .text +# OBJOUT-NEXT: 0x20 R_MIPS_32 _global_foo # OBJOUT-NEXT: } # OBJOUT-NEXT: ] Index: llvm/test/MC/Mips/mips32r6/relocations.s =================================================================== --- llvm/test/MC/Mips/mips32r6/relocations.s +++ llvm/test/MC/Mips/mips32r6/relocations.s @@ -50,19 +50,19 @@ # Check that the appropriate relocations were created. #------------------------------------------------------------------------------ # CHECK-ELF: Relocations [ -# CHECK-ELF: 0x0 R_MIPS_PC19_S2 bar 0x0 -# CHECK-ELF: 0x4 R_MIPS_PC16 bar 0x0 -# CHECK-ELF: 0x8 R_MIPS_PC16 bar 0x0 -# CHECK-ELF: 0xC R_MIPS_PC21_S2 bar 0x0 -# CHECK-ELF: 0x10 R_MIPS_PC21_S2 bar 0x0 -# CHECK-ELF: 0x14 R_MIPS_PC26_S2 bar 0x0 -# CHECK-ELF: 0x18 R_MIPS_PC26_S2 bar 0x0 -# CHECK-ELF: 0x1C R_MIPS_PCHI16 bar 0x0 -# CHECK-ELF: 0x20 R_MIPS_PCLO16 bar 0x0 -# CHECK-ELF: 0x24 R_MIPS_PC19_S2 bar 0x0 -# CHECK-ELF: 0x28 R_MIPS_PC19_S2 bar 0x0 -# CHECK-ELF: 0x2C R_MIPS_LO16 bar 0x0 -# CHECK-ELF: 0x30 R_MIPS_LO16 bar 0x0 +# CHECK-ELF: 0x0 R_MIPS_PC19_S2 bar +# CHECK-ELF: 0x4 R_MIPS_PC16 bar +# CHECK-ELF: 0x8 R_MIPS_PC16 bar +# CHECK-ELF: 0xC R_MIPS_PC21_S2 bar +# CHECK-ELF: 0x10 R_MIPS_PC21_S2 bar +# CHECK-ELF: 0x14 R_MIPS_PC26_S2 bar +# CHECK-ELF: 0x18 R_MIPS_PC26_S2 bar +# CHECK-ELF: 0x1C R_MIPS_PCHI16 bar +# CHECK-ELF: 0x20 R_MIPS_PCLO16 bar +# CHECK-ELF: 0x24 R_MIPS_PC19_S2 bar +# CHECK-ELF: 0x28 R_MIPS_PC19_S2 bar +# CHECK-ELF: 0x2C R_MIPS_LO16 bar +# CHECK-ELF: 0x30 R_MIPS_LO16 bar # CHECK-ELF: ] addiupc $2,bar Index: llvm/test/MC/Mips/reloc-directive-label-offset.s =================================================================== --- llvm/test/MC/Mips/reloc-directive-label-offset.s +++ llvm/test/MC/Mips/reloc-directive-label-offset.s @@ -48,22 +48,22 @@ nop # OBJ-O32-LABEL: Relocations [ -# OBJ-O32: 0x0 R_MIPS_32 .text 0x0 -# OBJ-O32-NEXT: 0x4 R_MIPS_NONE .text 0x0 -# OBJ-O32-NEXT: 0xC R_MIPS_32 .text 0x0 -# OBJ-O32-NEXT: 0x10 R_MIPS_CALL16 foo 0x0 -# OBJ-O32-NEXT: 0x1C R_MIPS_GOT_OFST .text 0x0 -# OBJ-O32-NEXT: 0x20 R_MIPS_GOT_DISP foo 0x0 -# OBJ-O32-NEXT: 0x24 R_MIPS_GOT_PAGE .text 0x0 +# OBJ-O32: 0x0 R_MIPS_32 .text +# OBJ-O32-NEXT: 0x4 R_MIPS_NONE .text +# OBJ-O32-NEXT: 0xC R_MIPS_32 .text +# OBJ-O32-NEXT: 0x10 R_MIPS_CALL16 foo +# OBJ-O32-NEXT: 0x1C R_MIPS_GOT_OFST .text +# OBJ-O32-NEXT: 0x20 R_MIPS_GOT_DISP foo +# OBJ-O32-NEXT: 0x24 R_MIPS_GOT_PAGE .text # OBJ-N32-LABEL: Relocations [ -# OBJ-N32: 0x4 R_MIPS_NONE .text 0x0 -# OBJ-N32-NEXT: 0x1C R_MIPS_GOT_OFST .text 0x0 -# OBJ-N32-NEXT: 0x0 R_MIPS_32 .text 0x0 -# OBJ-N32-NEXT: 0xC R_MIPS_32 .text 0x0 -# OBJ-N32-NEXT: 0x10 R_MIPS_CALL16 foo 0x0 -# OBJ-N32-NEXT: 0x20 R_MIPS_GOT_DISP foo 0x0 -# OBJ-N32-NEXT: 0x24 R_MIPS_GOT_PAGE .text 0x0 +# OBJ-N32: 0x4 R_MIPS_NONE .text +# OBJ-N32-NEXT: 0x1C R_MIPS_GOT_OFST .text +# OBJ-N32-NEXT: 0x0 R_MIPS_32 .text +# OBJ-N32-NEXT: 0xC R_MIPS_32 .text +# OBJ-N32-NEXT: 0x10 R_MIPS_CALL16 foo +# OBJ-N32-NEXT: 0x20 R_MIPS_GOT_DISP foo +# OBJ-N32-NEXT: 0x24 R_MIPS_GOT_PAGE .text # OBJ-N64-LABEL: Relocations [ # OBJ-N64: 0x4 R_MIPS_NONE/R_MIPS_NONE/R_MIPS_NONE .text 0x0 Index: llvm/test/MC/Mips/reloc-directive.s =================================================================== --- llvm/test/MC/Mips/reloc-directive.s +++ llvm/test/MC/Mips/reloc-directive.s @@ -96,40 +96,40 @@ # OBJ-O32-NEXT: 0080: 00000000 00000000 # OBJ-O32-LABEL: } # OBJ-O32-LABEL: Relocations [ -# OBJ-O32: 0x0 R_MIPS_NONE .text 0x0 -# OBJ-O32-NEXT: 0x4 R_MIPS_NONE .text 0x0 -# OBJ-O32-NEXT: 0x8 R_MIPS_32 .text 0x0 -# OBJ-O32-NEXT: 0xC R_MIPS_NONE - 0x0 -# OBJ-O32-NEXT: 0x10 R_MIPS_CALL_HI16 - 0x0 -# OBJ-O32-NEXT: 0x14 R_MIPS_CALL_LO16 - 0x0 -# OBJ-O32-NEXT: 0x18 R_MIPS_CALL16 - 0x0 -# OBJ-O32-NEXT: 0x20 R_MIPS_GOT_PAGE - 0x0 -# OBJ-O32-NEXT: 0x24 R_MIPS_GOT_OFST - 0x0 -# OBJ-O32-NEXT: 0x28 R_MIPS_GOT_DISP - 0x0 -# OBJ-O32-NEXT: 0x2C R_MIPS_GOT_HI16 - 0x0 -# OBJ-O32-NEXT: 0x30 R_MIPS_GOT_LO16 - 0x0 -# OBJ-O32-NEXT: 0x34 R_MIPS_TLS_GOTTPREL - 0x0 -# OBJ-O32-NEXT: 0x38 R_MIPS_TLS_DTPREL_HI16 - 0x0 -# OBJ-O32-NEXT: 0x3C R_MIPS_TLS_DTPREL_LO16 - 0x0 -# OBJ-O32-NEXT: 0x40 R_MIPS_TLS_GD - 0x0 -# OBJ-O32-NEXT: 0x44 R_MIPS_TLS_LDM - 0x0 -# OBJ-O32-NEXT: 0x48 R_MIPS_TLS_TPREL_HI16 - 0x0 -# OBJ-O32-NEXT: 0x4C R_MIPS_TLS_TPREL_LO16 - 0x0 -# OBJ-O32-NEXT: 0x50 R_MICROMIPS_CALL16 - 0x0 -# OBJ-O32-NEXT: 0x54 R_MICROMIPS_GOT_DISP - 0x0 -# OBJ-O32-NEXT: 0x58 R_MICROMIPS_GOT_PAGE - 0x0 -# OBJ-O32-NEXT: 0x5C R_MICROMIPS_GOT_OFST - 0x0 -# OBJ-O32-NEXT: 0x64 R_MICROMIPS_TLS_GOTTPREL - 0x0 -# OBJ-O32-NEXT: 0x68 R_MICROMIPS_TLS_DTPREL_HI16 - 0x0 -# OBJ-O32-NEXT: 0x6C R_MICROMIPS_TLS_DTPREL_LO16 - 0x0 -# OBJ-O32-NEXT: 0x70 R_MICROMIPS_TLS_GD - 0x0 -# OBJ-O32-NEXT: 0x74 R_MICROMIPS_TLS_LDM - 0x0 -# OBJ-O32-NEXT: 0x78 R_MICROMIPS_TLS_TPREL_HI16 - 0x0 -# OBJ-O32-NEXT: 0x7C R_MICROMIPS_TLS_TPREL_LO16 - 0x0 -# OBJ-O32-NEXT: 0x80 R_MIPS_JALR - 0x0 -# OBJ-O32-NEXT: 0x84 R_MICROMIPS_JALR - 0x0 -# OBJ-O32-NEXT: 0x1C R_MIPS_GOT16 - 0x0 -# OBJ-O32-NEXT: 0x60 R_MICROMIPS_GOT16 - 0x0 +# OBJ-O32: 0x0 R_MIPS_NONE .text +# OBJ-O32-NEXT: 0x4 R_MIPS_NONE .text +# OBJ-O32-NEXT: 0x8 R_MIPS_32 .text +# OBJ-O32-NEXT: 0xC R_MIPS_NONE - +# OBJ-O32-NEXT: 0x10 R_MIPS_CALL_HI16 - +# OBJ-O32-NEXT: 0x14 R_MIPS_CALL_LO16 - +# OBJ-O32-NEXT: 0x18 R_MIPS_CALL16 - +# OBJ-O32-NEXT: 0x20 R_MIPS_GOT_PAGE - +# OBJ-O32-NEXT: 0x24 R_MIPS_GOT_OFST - +# OBJ-O32-NEXT: 0x28 R_MIPS_GOT_DISP - +# OBJ-O32-NEXT: 0x2C R_MIPS_GOT_HI16 - +# OBJ-O32-NEXT: 0x30 R_MIPS_GOT_LO16 - +# OBJ-O32-NEXT: 0x34 R_MIPS_TLS_GOTTPREL - +# OBJ-O32-NEXT: 0x38 R_MIPS_TLS_DTPREL_HI16 - +# OBJ-O32-NEXT: 0x3C R_MIPS_TLS_DTPREL_LO16 - +# OBJ-O32-NEXT: 0x40 R_MIPS_TLS_GD - +# OBJ-O32-NEXT: 0x44 R_MIPS_TLS_LDM - +# OBJ-O32-NEXT: 0x48 R_MIPS_TLS_TPREL_HI16 - +# OBJ-O32-NEXT: 0x4C R_MIPS_TLS_TPREL_LO16 - +# OBJ-O32-NEXT: 0x50 R_MICROMIPS_CALL16 - +# OBJ-O32-NEXT: 0x54 R_MICROMIPS_GOT_DISP - +# OBJ-O32-NEXT: 0x58 R_MICROMIPS_GOT_PAGE - +# OBJ-O32-NEXT: 0x5C R_MICROMIPS_GOT_OFST - +# OBJ-O32-NEXT: 0x64 R_MICROMIPS_TLS_GOTTPREL - +# OBJ-O32-NEXT: 0x68 R_MICROMIPS_TLS_DTPREL_HI16 - +# OBJ-O32-NEXT: 0x6C R_MICROMIPS_TLS_DTPREL_LO16 - +# OBJ-O32-NEXT: 0x70 R_MICROMIPS_TLS_GD - +# OBJ-O32-NEXT: 0x74 R_MICROMIPS_TLS_LDM - +# OBJ-O32-NEXT: 0x78 R_MICROMIPS_TLS_TPREL_HI16 - +# OBJ-O32-NEXT: 0x7C R_MICROMIPS_TLS_TPREL_LO16 - +# OBJ-O32-NEXT: 0x80 R_MIPS_JALR - +# OBJ-O32-NEXT: 0x84 R_MICROMIPS_JALR - +# OBJ-O32-NEXT: 0x1C R_MIPS_GOT16 - +# OBJ-O32-NEXT: 0x60 R_MICROMIPS_GOT16 - # OBJ-N32-LABEL: Name: .text # OBJ-N32: 0000: 00000000 00000000 00000000 00000000 Index: llvm/test/MC/X86/reloc-directive-elf-32.s =================================================================== --- llvm/test/MC/X86/reloc-directive-elf-32.s +++ llvm/test/MC/X86/reloc-directive-elf-32.s @@ -13,12 +13,12 @@ # X86 relocations use the Elf32_Rel format. Addends are neither stored in the # relocation entries nor applied in the referenced locations. -# CHECK: 0x2 R_386_NONE .data 0x0 -# CHECK-NEXT: 0x1 R_386_NONE foo 0x0 -# CHECK-NEXT: 0x0 R_386_NONE - 0x0 -# CHECK-NEXT: 0x0 R_386_32 .data 0x0 -# CHECK-NEXT: 0x0 R_386_IRELATIVE foo 0x0 -# CHECK-NEXT: 0x0 R_386_GOT32X - 0x0 +# CHECK: 0x2 R_386_NONE .data +# CHECK-NEXT: 0x1 R_386_NONE foo +# CHECK-NEXT: 0x0 R_386_NONE - +# CHECK-NEXT: 0x0 R_386_32 .data +# CHECK-NEXT: 0x0 R_386_IRELATIVE foo +# CHECK-NEXT: 0x0 R_386_GOT32X - # HEX: 0x00000000 00000000 00000000 Index: llvm/test/Object/Lanai/yaml2obj-elf-lanai-rel.yaml =================================================================== --- llvm/test/Object/Lanai/yaml2obj-elf-lanai-rel.yaml +++ llvm/test/Object/Lanai/yaml2obj-elf-lanai-rel.yaml @@ -3,13 +3,13 @@ # CHECK: Relocations [ # CHECK-NEXT: Section (2) .rel.text { -# CHECK-NEXT: 0x0 R_LANAI_32 main 0x0 -# CHECK-NEXT: 0x4 R_LANAI_NONE - 0x0 -# CHECK-NEXT: 0x8 R_LANAI_21 - 0x0 -# CHECK-NEXT: 0xC R_LANAI_21_F - 0x0 -# CHECK-NEXT: 0x10 R_LANAI_25 - 0x0 -# CHECK-NEXT: 0x14 R_LANAI_HI16 - 0x0 -# CHECK-NEXT: 0x18 R_LANAI_LO16 - 0x0 +# CHECK-NEXT: 0x0 R_LANAI_32 main +# CHECK-NEXT: 0x4 R_LANAI_NONE - +# CHECK-NEXT: 0x8 R_LANAI_21 - +# CHECK-NEXT: 0xC R_LANAI_21_F - +# CHECK-NEXT: 0x10 R_LANAI_25 - +# CHECK-NEXT: 0x14 R_LANAI_HI16 - +# CHECK-NEXT: 0x18 R_LANAI_LO16 - # CHECK-NEXT: } # CHECK-NEXT: ] Index: llvm/test/Object/X86/yaml2obj-elf-x86-rel.yaml =================================================================== --- llvm/test/Object/X86/yaml2obj-elf-x86-rel.yaml +++ llvm/test/Object/X86/yaml2obj-elf-x86-rel.yaml @@ -3,7 +3,7 @@ # CHECK: Relocations [ # CHECK-NEXT: Section (2) .rel.text { -# CHECK-NEXT: 0x0 R_386_32 main 0x0 +# CHECK-NEXT: 0x0 R_386_32 main # CHECK-NEXT: } # CHECK-NEXT: ] Index: llvm/test/Object/dyn-rel-relocation.test =================================================================== --- llvm/test/Object/dyn-rel-relocation.test +++ llvm/test/Object/dyn-rel-relocation.test @@ -32,19 +32,16 @@ // CHECK-NEXT: Offset: 0x0 // CHECK-NEXT: Type: R_MIPS_NONE (0) // CHECK-NEXT: Symbol: - (0) -// CHECK-NEXT: Addend: 0x0 // CHECK-NEXT: } // CHECK-NEXT: Relocation { // CHECK-NEXT: Offset: 0x102F8 // CHECK-NEXT: Type: R_MIPS_REL32 (3) // CHECK-NEXT: Symbol: - (0) -// CHECK-NEXT: Addend: 0x0 // CHECK-NEXT: } // CHECK-NEXT: Relocation { // CHECK-NEXT: Offset: 0x102F4 // CHECK-NEXT: Type: R_MIPS_REL32 (3) // CHECK-NEXT: Symbol: v2 (9) -// CHECK-NEXT: Addend: 0x0 // CHECK-NEXT: } // CHECK-NEXT: } // CHECK-NEXT: ] @@ -54,18 +51,15 @@ // CHECK-NEXT: Offset: 0x0 // CHECK-NEXT: Type: R_MIPS_NONE (0) // CHECK-NEXT: Symbol: - -// CHECK-NEXT: Addend: 0x0 // CHECK-NEXT: } // CHECK-NEXT: Relocation { // CHECK-NEXT: Offset: 0x102F8 // CHECK-NEXT: Type: R_MIPS_REL32 (3) // CHECK-NEXT: Symbol: - -// CHECK-NEXT: Addend: 0x0 // CHECK-NEXT: } // CHECK-NEXT: Relocation { // CHECK-NEXT: Offset: 0x102F4 // CHECK-NEXT: Type: R_MIPS_REL32 (3) // CHECK-NEXT: Symbol: v2 -// CHECK-NEXT: Addend: 0x0 // CHECK-NEXT: } // CHECK-NEXT: } Index: llvm/test/Object/yaml2obj-elf-rel-noref.yaml =================================================================== --- llvm/test/Object/yaml2obj-elf-rel-noref.yaml +++ llvm/test/Object/yaml2obj-elf-rel-noref.yaml @@ -70,6 +70,6 @@ # CHECK: } # CHECK: Relocations [ # CHECK-NEXT: Section (2) .rel.text { -# CHECK-NEXT: 0xC R_ARM_V4BX - 0x0 +# CHECK-NEXT: 0xC R_ARM_V4BX - # CHECK-NEXT: } # CHECK-NEXT: ] Index: llvm/test/Object/yaml2obj-elf-rel.yaml =================================================================== --- llvm/test/Object/yaml2obj-elf-rel.yaml +++ llvm/test/Object/yaml2obj-elf-rel.yaml @@ -106,9 +106,9 @@ # CHECK: } # CHECK: Relocations [ # CHECK-NEXT: Section (2) .rel.text { -# CHECK-NEXT: 0x1 R_MIPS_32 glob1 0x0 -# CHECK-NEXT: 0x1 R_MIPS_CALL16 glob2 0x0 -# CHECK-NEXT: 0x2 R_MIPS_LO16 loc1 0x0 +# CHECK-NEXT: 0x1 R_MIPS_32 glob1 +# CHECK-NEXT: 0x1 R_MIPS_CALL16 glob2 +# CHECK-NEXT: 0x2 R_MIPS_LO16 loc1 # CHECK-NEXT: } # CHECK-NEXT: Section (3) .rela.text { # CHECK-NEXT: 0x1 R_MIPS_32 glob1 0x1 Index: llvm/test/tools/llvm-objcopy/ELF/basic-relocations.test =================================================================== --- llvm/test/tools/llvm-objcopy/ELF/basic-relocations.test +++ llvm/test/tools/llvm-objcopy/ELF/basic-relocations.test @@ -81,10 +81,10 @@ # CHECK: Relocations [ # CHECK-NEXT: Section (2) .rel.text { -# CHECK-NEXT: 0x1000 R_X86_64_PC32 foo 0x0 +# CHECK-NEXT: 0x1000 R_X86_64_PC32 foo # CHECK-NEXT: } # CHECK-NEXT: Section (4) .rel.data { -# CHECK-NEXT: 0x2000 R_X86_64_PC32 bar 0x0 +# CHECK-NEXT: 0x2000 R_X86_64_PC32 bar # CHECK-NEXT: } # CHECK-NEXT: Section (5) .rela.data { # CHECK-NEXT: 0x2000 R_X86_64_PC32 barA 0x17 Index: llvm/test/tools/llvm-objcopy/ELF/localize-hidden.test =================================================================== --- llvm/test/tools/llvm-objcopy/ELF/localize-hidden.test +++ llvm/test/tools/llvm-objcopy/ELF/localize-hidden.test @@ -83,7 +83,7 @@ #CHECK: Relocations [ #CHECK-NEXT: Section (3) .rel.text { -#CHECK-NEXT: 0x1000 R_X86_64_PC32 undefGlobal 0x0 +#CHECK-NEXT: 0x1000 R_X86_64_PC32 undefGlobal #CHECK-NEXT: } #CHECK-NEXT:] Index: llvm/test/tools/llvm-objcopy/ELF/no-symbol-relocation.test =================================================================== --- llvm/test/tools/llvm-objcopy/ELF/no-symbol-relocation.test +++ llvm/test/tools/llvm-objcopy/ELF/no-symbol-relocation.test @@ -24,7 +24,7 @@ # CHECK: Relocations [ # CHECK-NEXT: Section (2) .rel.text { -# CHECK-NEXT: 0x1000 R_X86_64_RELATIVE - 0x0 +# CHECK-NEXT: 0x1000 R_X86_64_RELATIVE - # CHECK-NEXT: } # CHECK-NEXT:] @@ -37,7 +37,7 @@ # STRIP: Relocations [ # STRIP-NEXT: Section {{.*}} .rel.text { -# STRIP-NEXT: 0x1000 R_X86_64_NONE - 0x0 +# STRIP-NEXT: 0x1000 R_X86_64_NONE - # STRIP-NEXT: } # STRIP-NEXT: ] # STRIP-NEXT: Symbols [ Index: llvm/test/tools/llvm-objcopy/ELF/relocations-no-symtab.test =================================================================== --- llvm/test/tools/llvm-objcopy/ELF/relocations-no-symtab.test +++ llvm/test/tools/llvm-objcopy/ELF/relocations-no-symtab.test @@ -7,7 +7,7 @@ # CHECK: Relocations [ # CHECK-NEXT: Section {{.*}} .rel.text { -# CHECK-NEXT: 0x1000 R_X86_64_RELATIVE - 0x0 +# CHECK-NEXT: 0x1000 R_X86_64_RELATIVE - # CHECK-NEXT: } # CHECK-NEXT:] Index: llvm/test/tools/llvm-readobj/ELF/broken-dynamic-reloc.test =================================================================== --- llvm/test/tools/llvm-readobj/ELF/broken-dynamic-reloc.test +++ llvm/test/tools/llvm-readobj/ELF/broken-dynamic-reloc.test @@ -315,8 +315,8 @@ # RUN: llvm-readelf --dyn-relocations %t13 2>&1 | FileCheck %s -DFILE=%t13 --check-prefix=BOTH-RELA-REL-GNU # BOTH-RELA-REL-LLVM: Dynamic Relocations { -# BOTH-RELA-REL-LLVM-NEXT: 0x1 R_X86_64_NONE - 0x0 -# BOTH-RELA-REL-LLVM-NEXT: 0x2 R_X86_64_NONE - 0x0 +# BOTH-RELA-REL-LLVM-NEXT: 0x1 R_X86_64_NONE - 0x0{{$}} +# BOTH-RELA-REL-LLVM-NEXT: 0x2 R_X86_64_NONE -{{$}} # BOTH-RELA-REL-LLVM-NEXT: } # BOTH-RELA-REL-GNU: 'RELA' relocation section at offset 0x78 contains 24 bytes: Index: llvm/test/tools/llvm-readobj/ELF/dynamic-reloc.test =================================================================== --- llvm/test/tools/llvm-readobj/ELF/dynamic-reloc.test +++ llvm/test/tools/llvm-readobj/ELF/dynamic-reloc.test @@ -33,9 +33,9 @@ # LLVM-RELOCS: Dynamic Relocations { # LLVM-RELOCS-NEXT: 0x1 R_X86_64_NONE foo 0x0 -# LLVM-RELOCS-NEXT: 0x2 R_X86_64_NONE foo 0x0 -# LLVM-RELOCS-NEXT: 0x4 R_X86_64_RELATIVE - 0x0 -# LLVM-RELOCS-NEXT: 0x8 R_X86_64_NONE foo 0x0 +# LLVM-RELOCS-NEXT: 0x2 R_X86_64_NONE foo +# LLVM-RELOCS-NEXT: 0x4 R_X86_64_RELATIVE +# LLVM-RELOCS-NEXT: 0x8 R_X86_64_NONE foo # LLVM-RELOCS-NEXT: } # GNU-RELOCS:'RELA' relocation section at offset 0x78 contains 24 bytes: @@ -141,8 +141,8 @@ # PLTRELUNKNOWN-LLVM: warning: '[[FILE]]': unknown DT_PLTREL value of 255 # PLTRELUNKNOWN-LLVM: Dynamic Relocations { # PLTRELUNKNOWN-LLVM-NEXT: 0x1 R_X86_64_NONE foo 0x0 -# PLTRELUNKNOWN-LLVM-NEXT: 0x2 R_X86_64_NONE foo 0x0 -# PLTRELUNKNOWN-LLVM-NEXT: 0x4 R_X86_64_RELATIVE - 0x0 +# PLTRELUNKNOWN-LLVM-NEXT: 0x2 R_X86_64_NONE foo{{$}} +# PLTRELUNKNOWN-LLVM-NEXT: 0x4 R_X86_64_RELATIVE -{{$}} # PLTRELUNKNOWN-LLVM-NEXT: warning: '[[FILE]]': invalid DT_PLTRELSZ value (0x10) or PLTREL entry size (0x0) # PLTRELUNKNOWN-LLVM-NEXT: } Index: llvm/test/tools/llvm-readobj/ELF/reloc-addends.test =================================================================== --- llvm/test/tools/llvm-readobj/ELF/reloc-addends.test +++ llvm/test/tools/llvm-readobj/ELF/reloc-addends.test @@ -31,10 +31,7 @@ # RUN: llvm-readobj -r %t.le64.rel | FileCheck %s --check-prefix=LLVM-REL64 # RUN: llvm-readelf -r %t.le64.rel | FileCheck %s --check-prefix=GNU-REL64 -## FIXME: We either should not dump an addend or should read it from a -## destination location for a SHT_REL case. -## See https://bugs.llvm.org/show_bug.cgi?id=44257. -# LLVM-REL64-COUNT-7: R_X86_64_NONE - 0x0{{$}} +# LLVM-REL64-COUNT-7: R_X86_64_NONE -{{$}} # LLVM-REL64-NOT: R_ # GNU-REL64: Type Symbol's Value Symbol's Name{{$}} @@ -108,10 +105,7 @@ # RUN: llvm-readobj -r %t.le32.rel | FileCheck %s --check-prefix=LLVM-REL32 # RUN: llvm-readelf -r %t.le32.rel | FileCheck %s --check-prefix=GNU-REL32 -## FIXME: We either should not dump an addend or should read it from a -## destination location for a SHT_REL case. -## See https://bugs.llvm.org/show_bug.cgi?id=44257. -# LLVM-REL32-COUNT-7: R_386_NONE - 0x0{{$}} +# LLVM-REL32-COUNT-7: R_386_NONE -{{$}} # LLVM-REL32-NOT: R_ # GNU-REL32: Type Index: llvm/test/tools/llvm-readobj/ELF/relocation-errors.test =================================================================== --- llvm/test/tools/llvm-readobj/ELF/relocation-errors.test +++ llvm/test/tools/llvm-readobj/ELF/relocation-errors.test @@ -8,13 +8,13 @@ # LLVM-NEXT: Section (3) .rel.text { # LLVM-NEXT: warning: '[[FILE]]': unable to print relocation 1 in SHT_REL section with index 3: unable to access section [index 6] data at 0x17e7e7e8d0: offset goes past the end of file # LLVM-NEXT: warning: '[[FILE]]': unable to print relocation 2 in SHT_REL section with index 3: unable to access section [index 6] data at 0x17e7e7e8d0: offset goes past the end of file -# LLVM-NEXT: 0x2 R_X86_64_NONE - 0x0 -# LLVM-NEXT: 0x3 R_X86_64_NONE .sec.symbol1 0x0 +# LLVM-NEXT: 0x2 R_X86_64_NONE -{{$}} +# LLVM-NEXT: 0x3 R_X86_64_NONE .sec.symbol1{{$}} # LLVM-NEXT: warning: '[[FILE]]': invalid section index: 255 -# LLVM-NEXT: 0x4 R_X86_64_NONE
0x0 -# LLVM-NEXT: 0x5 R_X86_64_NONE .sec.symbol2 0x0 +# LLVM-NEXT: 0x4 R_X86_64_NONE
{{$}} +# LLVM-NEXT: 0x5 R_X86_64_NONE .sec.symbol2{{$}} # LLVM-NEXT: warning: '[[FILE]]': a section [index 2] has an invalid sh_name (0xfefefefe) offset which goes past the end of the section name string table -# LLVM-NEXT: 0x6 R_X86_64_NONE
0x0 +# LLVM-NEXT: 0x6 R_X86_64_NONE
{{$}} # LLVM-NEXT: } # LLVM-NEXT: Section (4) .rela.text { # LLVM-NEXT: warning: '[[FILE]]': unable to print relocation 1 in SHT_RELA section with index 4: invalid sh_type for symbol table, expected SHT_SYMTAB or SHT_DYNSYM Index: llvm/test/tools/llvm-readobj/ELF/relocations.test =================================================================== --- llvm/test/tools/llvm-readobj/ELF/relocations.test +++ llvm/test/tools/llvm-readobj/ELF/relocations.test @@ -11,10 +11,10 @@ # LLVM-64:Relocations [ # LLVM-64-NEXT: Section (2) .rel.text { -# LLVM-64-NEXT: 0x0 R_X86_64_NONE rel_0 0x0 -# LLVM-64-NEXT: 0x1 R_X86_64_PC32 rel_neg 0x0 -# LLVM-64-NEXT: 0x5 R_X86_64_PLT32 rel_pos 0x0 -# LLVM-64-NEXT: 0x9 R_X86_64_64 rel_64 0x0 +# LLVM-64-NEXT: 0x0 R_X86_64_NONE rel_0 +# LLVM-64-NEXT: 0x1 R_X86_64_PC32 rel_neg +# LLVM-64-NEXT: 0x5 R_X86_64_PLT32 rel_pos +# LLVM-64-NEXT: 0x9 R_X86_64_64 rel_64 # LLVM-64-NEXT: } # LLVM-64-NEXT: Section (3) .rela.text { # LLVM-64-NEXT: 0x0 R_X86_64_NONE rela_0 0x0 @@ -60,25 +60,21 @@ # LLVM-EXPAND-64-NEXT: Offset: 0x0 # LLVM-EXPAND-64-NEXT: Type: R_X86_64_NONE (0) # LLVM-EXPAND-64-NEXT: Symbol: rel_0 (1) -# LLVM-EXPAND-64-NEXT: Addend: 0x0 # LLVM-EXPAND-64-NEXT: } # LLVM-EXPAND-64-NEXT: Relocation { # LLVM-EXPAND-64-NEXT: Offset: 0x1 # LLVM-EXPAND-64-NEXT: Type: R_X86_64_PC32 (2) # LLVM-EXPAND-64-NEXT: Symbol: rel_neg (2) -# LLVM-EXPAND-64-NEXT: Addend: 0x0 # LLVM-EXPAND-64-NEXT: } # LLVM-EXPAND-64-NEXT: Relocation { # LLVM-EXPAND-64-NEXT: Offset: 0x5 # LLVM-EXPAND-64-NEXT: Type: R_X86_64_PLT32 (4) # LLVM-EXPAND-64-NEXT: Symbol: rel_pos (3) -# LLVM-EXPAND-64-NEXT: Addend: 0x0 # LLVM-EXPAND-64-NEXT: } # LLVM-EXPAND-64-NEXT: Relocation { # LLVM-EXPAND-64-NEXT: Offset: 0x9 # LLVM-EXPAND-64-NEXT: Type: R_X86_64_64 (1) # LLVM-EXPAND-64-NEXT: Symbol: rel_64 (4) -# LLVM-EXPAND-64-NEXT: Addend: 0x0 # LLVM-EXPAND-64-NEXT: } # LLVM-EXPAND-64-NEXT: } # LLVM-EXPAND-64-NEXT: Section (3) .rela.text { @@ -243,10 +239,10 @@ # BROKEN-RELA-LLVM: Relocations [ # BROKEN-RELA-LLVM-NEXT: Section (2) .rel.text { -# BROKEN-RELA-LLVM-NEXT: 0x0 R_X86_64_NONE rel_0 0x0 -# BROKEN-RELA-LLVM-NEXT: 0x1 R_X86_64_PC32 rel_neg 0x0 -# BROKEN-RELA-LLVM-NEXT: 0x5 R_X86_64_PLT32 rel_pos 0x0 -# BROKEN-RELA-LLVM-NEXT: 0x9 R_X86_64_64 rel_64 0x0 +# BROKEN-RELA-LLVM-NEXT: 0x0 R_X86_64_NONE rel_0{{$}} +# BROKEN-RELA-LLVM-NEXT: 0x1 R_X86_64_PC32 rel_neg{{$}} +# BROKEN-RELA-LLVM-NEXT: 0x5 R_X86_64_PLT32 rel_pos{{$}} +# BROKEN-RELA-LLVM-NEXT: 0x9 R_X86_64_64 rel_64{{$}} # BROKEN-RELA-LLVM-NEXT: } # BROKEN-RELA-LLVM-NEXT: Section (3) .rela.text { # BROKEN-RELA-LLVM-NEXT: warning: '[[FILE]]': unable to read relocations from SHT_RELA section with index 3: section [index 3] has an invalid sh_entsize: 1 @@ -300,9 +296,9 @@ # LLVM-32:Relocations [ # LLVM-32-NEXT: Section (2) .rel.text { -# LLVM-32-NEXT: 0x0 R_386_NONE rel_0 0x0 -# LLVM-32-NEXT: 0x1 R_386_PC32 rel_neg 0x0 -# LLVM-32-NEXT: 0x5 R_386_PLT32 rel_pos 0x0 +# LLVM-32-NEXT: 0x0 R_386_NONE rel_0 +# LLVM-32-NEXT: 0x1 R_386_PC32 rel_neg +# LLVM-32-NEXT: 0x5 R_386_PLT32 rel_pos # LLVM-32-NEXT: } # LLVM-32-NEXT: Section (3) .rela.text { # LLVM-32-NEXT: 0x0 R_386_NONE rela_0 0x0 @@ -347,19 +343,16 @@ # LLVM-EXPAND-32-NEXT: Offset: 0x0 # LLVM-EXPAND-32-NEXT: Type: R_386_NONE (0) # LLVM-EXPAND-32-NEXT: Symbol: rel_0 (1) -# LLVM-EXPAND-32-NEXT: Addend: 0x0 # LLVM-EXPAND-32-NEXT: } # LLVM-EXPAND-32-NEXT: Relocation { # LLVM-EXPAND-32-NEXT: Offset: 0x1 # LLVM-EXPAND-32-NEXT: Type: R_386_PC32 (2) # LLVM-EXPAND-32-NEXT: Symbol: rel_neg (2) -# LLVM-EXPAND-32-NEXT: Addend: 0x0 # LLVM-EXPAND-32-NEXT: } # LLVM-EXPAND-32-NEXT: Relocation { # LLVM-EXPAND-32-NEXT: Offset: 0x5 # LLVM-EXPAND-32-NEXT: Type: R_386_PLT32 (4) # LLVM-EXPAND-32-NEXT: Symbol: rel_pos (3) -# LLVM-EXPAND-32-NEXT: Addend: 0x0 # LLVM-EXPAND-32-NEXT: } # LLVM-EXPAND-32-NEXT: } # LLVM-EXPAND-32-NEXT: Section (3) .rela.text { @@ -475,10 +468,10 @@ # LLVM-SHNAME: Relocations [ # LLVM-SHNAME-NEXT: warning: '[[FILE]]': unable to get the name of SHT_REL section with index 2: a section [index 2] has an invalid sh_name (0xffffffff) offset which goes past the end of the section name string table # LLVM-SHNAME-NEXT: Section (2) { -# LLVM-SHNAME-NEXT: 0x0 R_X86_64_NONE rel_0 0x0 -# LLVM-SHNAME-NEXT: 0x1 R_X86_64_PC32 rel_neg 0x0 -# LLVM-SHNAME-NEXT: 0x5 R_X86_64_PLT32 rel_pos 0x0 -# LLVM-SHNAME-NEXT: 0x9 R_X86_64_64 rel_64 0x0 +# LLVM-SHNAME-NEXT: 0x0 R_X86_64_NONE rel_0{{$}} +# LLVM-SHNAME-NEXT: 0x1 R_X86_64_PC32 rel_neg{{$}} +# LLVM-SHNAME-NEXT: 0x5 R_X86_64_PLT32 rel_pos{{$}} +# LLVM-SHNAME-NEXT: 0x9 R_X86_64_64 rel_64{{$}} # LLVM-SHNAME-NEXT: } # LLVM-SHNAME-NEXT: warning: '[[FILE]]': unable to get the name of SHT_RELA section with index 3: a section [index 3] has an invalid sh_name (0xffffffff) offset which goes past the end of the section name string table # LLVM-SHNAME-NEXT: Section (3) { Index: llvm/test/tools/llvm-readobj/ELF/relr-relocs.test =================================================================== --- llvm/test/tools/llvm-readobj/ELF/relr-relocs.test +++ llvm/test/tools/llvm-readobj/ELF/relr-relocs.test @@ -11,29 +11,31 @@ # RAW-LLVM1-NEXT: 0xA700550400009 # RAW-LLVM1-NEXT: } -# RUN: llvm-readobj --relocations %t1 | FileCheck --check-prefix=LLVM1 %s +# RUN: llvm-readobj --relocations %t1 | \ +# RUN: FileCheck --match-full-lines --check-prefix=LLVM1 %s + # LLVM1: Section (1) .relr.dyn { -# LLVM1-NEXT: 0x10D60 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x10D68 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x10DA0 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20000 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20040 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20050 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20080 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20088 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20090 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20098 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20210 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x202A8 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x202D8 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x202E8 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x202F8 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20308 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20358 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20360 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20368 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20380 R_X86_64_RELATIVE - 0x0 -# LLVM1-NEXT: 0x20390 R_X86_64_RELATIVE - 0x0 +# LLVM1-NEXT: 0x10D60 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x10D68 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x10DA0 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20000 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20040 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20050 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20080 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20088 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20090 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20098 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20210 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x202A8 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x202D8 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x202E8 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x202F8 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20308 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20358 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20360 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20368 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20380 R_X86_64_RELATIVE - +# LLVM1-NEXT: 0x20390 R_X86_64_RELATIVE - # LLVM1-NEXT: } # RUN: llvm-readelf --relocations --raw-relr %t1 \ @@ -93,22 +95,24 @@ # RAW-LLVM2-NEXT: 0x50400009 # RAW-LLVM2-NEXT: } -# RUN: llvm-readobj --relocations %t2 | FileCheck --check-prefix=LLVM2 %s +# RUN: llvm-readobj --relocations %t2 | \ +# RUN: FileCheck --match-full-lines --check-prefix=LLVM2 %s + # LLVM2: Section (1) .relr.dyn { -# LLVM2-NEXT: 0x10D60 R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x10D64 R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x10D80 R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x20000 R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x20020 R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x20028 R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x20040 R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x20044 R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x20048 R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x2004C R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x20088 R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x200D4 R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x200EC R_386_RELATIVE - 0x0 -# LLVM2-NEXT: 0x200F4 R_386_RELATIVE - 0x0 +# LLVM2-NEXT: 0x10D60 R_386_RELATIVE - +# LLVM2-NEXT: 0x10D64 R_386_RELATIVE - +# LLVM2-NEXT: 0x10D80 R_386_RELATIVE - +# LLVM2-NEXT: 0x20000 R_386_RELATIVE - +# LLVM2-NEXT: 0x20020 R_386_RELATIVE - +# LLVM2-NEXT: 0x20028 R_386_RELATIVE - +# LLVM2-NEXT: 0x20040 R_386_RELATIVE - +# LLVM2-NEXT: 0x20044 R_386_RELATIVE - +# LLVM2-NEXT: 0x20048 R_386_RELATIVE - +# LLVM2-NEXT: 0x2004C R_386_RELATIVE - +# LLVM2-NEXT: 0x20088 R_386_RELATIVE - +# LLVM2-NEXT: 0x200D4 R_386_RELATIVE - +# LLVM2-NEXT: 0x200EC R_386_RELATIVE - +# LLVM2-NEXT: 0x200F4 R_386_RELATIVE - # LLVM2-NEXT: } # RUN: llvm-readelf --relocations --raw-relr %t2 | \ Index: llvm/test/tools/yaml2obj/ELF/relocation-implicit-symbol-index.yaml =================================================================== --- llvm/test/tools/yaml2obj/ELF/relocation-implicit-symbol-index.yaml +++ llvm/test/tools/yaml2obj/ELF/relocation-implicit-symbol-index.yaml @@ -5,8 +5,8 @@ # CHECK: Relocations [ # CHECK-NEXT: Section (2) .rel.text { -# CHECK-NEXT: 0x1000 R_X86_64_RELATIVE - 0x0 -# CHECK-NEXT: 0x1001 R_X86_64_PC32 - 0x0 +# CHECK-NEXT: 0x1000 R_X86_64_RELATIVE - +# CHECK-NEXT: 0x1001 R_X86_64_PC32 - # CHECK-NEXT: } # CHECK-NEXT:] Index: llvm/tools/llvm-readobj/ELFDumper.cpp =================================================================== --- llvm/tools/llvm-readobj/ELFDumper.cpp +++ llvm/tools/llvm-readobj/ELFDumper.cpp @@ -6407,18 +6407,20 @@ SmallString<32> RelocName; this->Obj.getRelocationTypeName(R.Type, RelocName); - uintX_t Addend = R.Addend.getValueOr(0); if (opts::ExpandRelocs) { DictScope Group(W, "Relocation"); W.printHex("Offset", R.Offset); W.printNumber("Type", RelocName, R.Type); W.printNumber("Symbol", !SymbolName.empty() ? SymbolName : "-", R.Symbol); - W.printHex("Addend", Addend); + if (R.Addend) + W.printHex("Addend", (uintX_t)*R.Addend); } else { raw_ostream &OS = W.startLine(); OS << W.hex(R.Offset) << " " << RelocName << " " - << (!SymbolName.empty() ? SymbolName : "-") << " " << W.hex(Addend) - << "\n"; + << (!SymbolName.empty() ? SymbolName : "-"); + if (R.Addend) + OS << " " << W.hex((uintX_t)*R.Addend); + OS << "\n"; } }