[lld] r356117 - [ELF] Simplify RelRo, TLS, NOBITS section ranks and make RW PT_LOAD start with RelRo
Fangrui Song via llvm-commits
llvm-commits at lists.llvm.org
Wed Mar 13 20:47:45 PDT 2019
Author: maskray
Date: Wed Mar 13 20:47:45 2019
New Revision: 356117
URL: http://llvm.org/viewvc/llvm-project?rev=356117&view=rev
Log:
[ELF] Simplify RelRo, TLS, NOBITS section ranks and make RW PT_LOAD start with RelRo
Old: PT_LOAD(.data | PT_GNU_RELRO(.data.rel.ro .bss.rel.ro) | .bss)
New: PT_LOAD(PT_GNU_RELRO(.data.rel.ro .bss.rel.ro) | .data .bss)
The placement of | indicates page alignment caused by PT_GNU_RELRO. The
new layout has simpler rules and saves space for many cases.
Old size: roundup(.data) + roundup(.data.rel.ro)
New size: roundup(.data.rel.ro + .bss.rel.ro) + .data
Other advantages:
* At runtime the 3 memory mappings decrease to 2.
* start(PT_TLS) = start(PT_GNU_RELRO) = start(RW PT_LOAD). This
simplifies binary manipulation tools.
GNU strip before 2.31 discards PT_GNU_RELRO if its
address is not equal to the start of its associated PT_LOAD.
This has been fixed by https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=f2731e0c374e5323ce4cdae2bcc7b7fe22da1a6f
But with this change, we will be compatible with GNU strip before 2.31
* Before, .got.plt (non-relro by default) was placed before .got (relro
by default), which made it impossible to have _GLOBAL_OFFSET_TABLE_
(start of .got.plt on x86-64) equal to the end of .got (R_GOT*_FROM_END)
(https://bugs.llvm.org/show_bug.cgi?id=36555). With the new ordering, we
can improve on this regard if we'd like to.
Reviewers: ruiu, espindola, pcc
Subscribers: emaste, arichardson, llvm-commits, joerg, jdoerfert
Differential Revision: https://reviews.llvm.org/D56828
Modified:
lld/trunk/ELF/Writer.cpp
lld/trunk/test/ELF/aarch64-condb-reloc.s
lld/trunk/test/ELF/aarch64-cortex-a53-843419-large.s
lld/trunk/test/ELF/aarch64-cortex-a53-843419-recognize.s
lld/trunk/test/ELF/aarch64-cortex-a53-843419-thunk.s
lld/trunk/test/ELF/aarch64-gnu-ifunc-address-pie.s
lld/trunk/test/ELF/aarch64-gnu-ifunc-plt.s
lld/trunk/test/ELF/aarch64-ldprel-lo19-invalid.s
lld/trunk/test/ELF/aarch64-load-alignment.s
lld/trunk/test/ELF/aarch64-thunk-pi.s
lld/trunk/test/ELF/aarch64-tstbr14-reloc.s
lld/trunk/test/ELF/amdgpu-relocs.s
lld/trunk/test/ELF/arm-abs32-dyn.s
lld/trunk/test/ELF/arm-exidx-shared.s
lld/trunk/test/ELF/arm-fpic-got.s
lld/trunk/test/ELF/arm-gnu-ifunc-plt.s
lld/trunk/test/ELF/arm-pie-relative.s
lld/trunk/test/ELF/arm-plt-reloc.s
lld/trunk/test/ELF/arm-thumb-interwork-shared.s
lld/trunk/test/ELF/arm-thumb-plt-range-thunk-os.s
lld/trunk/test/ELF/arm-thumb-plt-reloc.s
lld/trunk/test/ELF/arm-thunk-multipass-plt.s
lld/trunk/test/ELF/arm-thunk-re-add.s
lld/trunk/test/ELF/arm-tls-norelax-gd-ie.s
lld/trunk/test/ELF/arm-tls-norelax-gd-le.s
lld/trunk/test/ELF/arm-tls-norelax-ie-le.s
lld/trunk/test/ELF/arm-tls-norelax-ld-le.s
lld/trunk/test/ELF/combrelocs.s
lld/trunk/test/ELF/copy-rel-pie.s
lld/trunk/test/ELF/dynamic-got.s
lld/trunk/test/ELF/dynamic-list-weak-archive.s
lld/trunk/test/ELF/dynamic-reloc-index.s
lld/trunk/test/ELF/dynamic-reloc.s
lld/trunk/test/ELF/emit-relocs-merge.s
lld/trunk/test/ELF/emit-relocs-shared.s
lld/trunk/test/ELF/executable-undefined-ignoreall.s
lld/trunk/test/ELF/gc-sections-linker-defined-symbol.s
lld/trunk/test/ELF/global-offset-table-position-aarch64.s
lld/trunk/test/ELF/global-offset-table-position-arm.s
lld/trunk/test/ELF/global-offset-table-position-i386.s
lld/trunk/test/ELF/global-offset-table-position.s
lld/trunk/test/ELF/global_offset_table_shared.s
lld/trunk/test/ELF/gnu-ifunc-canon.s
lld/trunk/test/ELF/gnu-ifunc-dso.s
lld/trunk/test/ELF/gnu-ifunc-dyntags.s
lld/trunk/test/ELF/gnu-ifunc-plt-i386.s
lld/trunk/test/ELF/gnu-ifunc-plt.s
lld/trunk/test/ELF/gnu-ifunc-shared.s
lld/trunk/test/ELF/got-aarch64.s
lld/trunk/test/ELF/got-plt-header.s
lld/trunk/test/ELF/got32x-i386.s
lld/trunk/test/ELF/gotpc-relax-nopic.s
lld/trunk/test/ELF/hexagon-shared.s
lld/trunk/test/ELF/i386-gotpc.s
lld/trunk/test/ELF/i386-merge.s
lld/trunk/test/ELF/i386-retpoline-nopic-linkerscript.s
lld/trunk/test/ELF/i386-retpoline-nopic.s
lld/trunk/test/ELF/i386-retpoline-pic-linkerscript.s
lld/trunk/test/ELF/i386-retpoline-pic.s
lld/trunk/test/ELF/linkerscript/align-section-offset.test
lld/trunk/test/ELF/linkerscript/emit-reloc.s
lld/trunk/test/ELF/linkerscript/orphan.s
lld/trunk/test/ELF/linkerscript/out-of-order.s
lld/trunk/test/ELF/linkerscript/overlapping-sections.s
lld/trunk/test/ELF/linkerscript/repsection-symbol.s
lld/trunk/test/ELF/linkerscript/sort-non-script.s
lld/trunk/test/ELF/linkerscript/version-linker-symbol.s
lld/trunk/test/ELF/lto/undefined-puts.ll
lld/trunk/test/ELF/lto/visibility.ll
lld/trunk/test/ELF/map-file.s
lld/trunk/test/ELF/merge-section-types.s
lld/trunk/test/ELF/mips-mgot.s
lld/trunk/test/ELF/mips-tls-64.s
lld/trunk/test/ELF/mips-tls-static-64.s
lld/trunk/test/ELF/mips-tls-static.s
lld/trunk/test/ELF/mips-tls.s
lld/trunk/test/ELF/pack-dyn-relocs-loop.s
lld/trunk/test/ELF/pack-dyn-relocs.s
lld/trunk/test/ELF/pack-dyn-relocs2.s
lld/trunk/test/ELF/plt-aarch64.s
lld/trunk/test/ELF/plt-i686.s
lld/trunk/test/ELF/plt.s
lld/trunk/test/ELF/ppc-rela.s
lld/trunk/test/ELF/ppc64-call-reach.s
lld/trunk/test/ELF/ppc64-func-entry-points.s
lld/trunk/test/ELF/ppc64-got-indirect.s
lld/trunk/test/ELF/ppc64-long-branch.s
lld/trunk/test/ELF/ppc64-shared-long_branch.s
lld/trunk/test/ELF/ppc64-toc-rel.s
lld/trunk/test/ELF/pr34660.s
lld/trunk/test/ELF/rel-offset.s
lld/trunk/test/ELF/relative-dynamic-reloc-pie.s
lld/trunk/test/ELF/relative-dynamic-reloc-ppc64.s
lld/trunk/test/ELF/relative-dynamic-reloc.s
lld/trunk/test/ELF/relocation-copy-flags.s
lld/trunk/test/ELF/relocation-i686.s
lld/trunk/test/ELF/relocation-non-alloc.s
lld/trunk/test/ELF/relocation-relative-weak.s
lld/trunk/test/ELF/relocation.s
lld/trunk/test/ELF/relro-non-contiguous.s
lld/trunk/test/ELF/section-layout.s
lld/trunk/test/ELF/section-name.s
lld/trunk/test/ELF/sort-norosegment.s
lld/trunk/test/ELF/startstop.s
lld/trunk/test/ELF/synthetic-got.s
lld/trunk/test/ELF/tls-dynamic-i686.s
lld/trunk/test/ELF/tls-dynamic.s
lld/trunk/test/ELF/undef-with-plt-addr.s
lld/trunk/test/ELF/undefined-versioned-symbol.s
lld/trunk/test/ELF/version-script-weak.s
lld/trunk/test/ELF/wrap-plt.s
lld/trunk/test/ELF/x86-64-plt-high-addr.s
lld/trunk/test/ELF/x86-64-reloc-gotoff64.s
lld/trunk/test/ELF/x86-64-reloc-gotpc64.s
lld/trunk/test/ELF/x86-64-retpoline-linkerscript.s
lld/trunk/test/ELF/x86-64-retpoline.s
lld/trunk/test/ELF/x86-64-tls-gd-local.s
Modified: lld/trunk/ELF/Writer.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Writer.cpp?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/ELF/Writer.cpp (original)
+++ lld/trunk/ELF/Writer.cpp Wed Mar 13 20:47:45 2019
@@ -725,16 +725,15 @@ static bool isRelroSection(const OutputS
// * It is easy to check if a give branch was taken.
// * It is easy two see how similar two ranks are (see getRankProximity).
enum RankFlags {
- RF_NOT_ADDR_SET = 1 << 18,
- RF_NOT_ALLOC = 1 << 17,
- RF_NOT_INTERP = 1 << 16,
- RF_NOT_NOTE = 1 << 15,
- RF_WRITE = 1 << 14,
- RF_EXEC_WRITE = 1 << 13,
- RF_EXEC = 1 << 12,
- RF_RODATA = 1 << 11,
- RF_NON_TLS_BSS = 1 << 10,
- RF_NON_TLS_BSS_RO = 1 << 9,
+ RF_NOT_ADDR_SET = 1 << 17,
+ RF_NOT_ALLOC = 1 << 16,
+ RF_NOT_INTERP = 1 << 15,
+ RF_NOT_NOTE = 1 << 14,
+ RF_WRITE = 1 << 13,
+ RF_EXEC_WRITE = 1 << 12,
+ RF_EXEC = 1 << 11,
+ RF_RODATA = 1 << 10,
+ RF_NOT_RELRO = 1 << 9,
RF_NOT_TLS = 1 << 8,
RF_BSS = 1 << 7,
RF_PPC_NOT_TOCBSS = 1 << 6,
@@ -803,37 +802,26 @@ static unsigned getSectionRank(const Out
Rank |= RF_RODATA;
}
- // If we got here we know that both A and B are in the same PT_LOAD.
-
- bool IsTls = Sec->Flags & SHF_TLS;
- bool IsNoBits = Sec->Type == SHT_NOBITS;
+ // Place RelRo sections first. After considering SHT_NOBITS below, the
+ // ordering is PT_LOAD(PT_GNU_RELRO(.data.rel.ro .bss.rel.ro) | .data .bss),
+ // where | marks where page alignment happens. An alternative ordering is
+ // PT_LOAD(.data | PT_GNU_RELRO( .data.rel.ro .bss.rel.ro) | .bss), but it may
+ // waste more bytes due to 2 alignment places.
+ if (!isRelroSection(Sec))
+ Rank |= RF_NOT_RELRO;
- // The first requirement we have is to put (non-TLS) nobits sections last. The
- // reason is that the only thing the dynamic linker will see about them is a
- // p_memsz that is larger than p_filesz. Seeing that it zeros the end of the
- // PT_LOAD, so that has to correspond to the nobits sections.
- bool IsNonTlsNoBits = IsNoBits && !IsTls;
- if (IsNonTlsNoBits)
- Rank |= RF_NON_TLS_BSS;
-
- // We place nobits RelRo sections before plain r/w ones, and non-nobits RelRo
- // sections after r/w ones, so that the RelRo sections are contiguous.
- bool IsRelRo = isRelroSection(Sec);
- if (IsNonTlsNoBits && !IsRelRo)
- Rank |= RF_NON_TLS_BSS_RO;
- if (!IsNonTlsNoBits && IsRelRo)
- Rank |= RF_NON_TLS_BSS_RO;
+ // If we got here we know that both A and B are in the same PT_LOAD.
// The TLS initialization block needs to be a single contiguous block in a R/W
// PT_LOAD, so stick TLS sections directly before the other RelRo R/W
- // sections. The TLS NOBITS sections are placed here as they don't take up
- // virtual address space in the PT_LOAD.
- if (!IsTls)
+ // sections. Since p_filesz can be less than p_memsz, place NOBITS sections
+ // after PROGBITS.
+ if (!(Sec->Flags & SHF_TLS))
Rank |= RF_NOT_TLS;
- // Within the TLS initialization block, the non-nobits sections need to appear
- // first.
- if (IsNoBits)
+ // Within TLS sections, or within other RelRo sections, or within non-RelRo
+ // sections, place non-NOBITS sections first.
+ if (Sec->Type == SHT_NOBITS)
Rank |= RF_BSS;
// Some architectures have additional ordering restrictions for sections
Modified: lld/trunk/test/ELF/aarch64-condb-reloc.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/aarch64-condb-reloc.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/aarch64-condb-reloc.s (original)
+++ lld/trunk/test/ELF/aarch64-condb-reloc.s Wed Mar 13 20:47:45 2019
@@ -36,8 +36,8 @@
#DSOREL-NEXT: SHF_ALLOC
#DSOREL-NEXT: SHF_WRITE
#DSOREL-NEXT: ]
-#DSOREL-NEXT: Address: 0x20000
-#DSOREL-NEXT: Offset: 0x20000
+#DSOREL-NEXT: Address: 0x30000
+#DSOREL-NEXT: Offset: 0x30000
#DSOREL-NEXT: Size: 48
#DSOREL-NEXT: Link: 0
#DSOREL-NEXT: Info: 0
@@ -46,9 +46,9 @@
#DSOREL-NEXT: }
#DSOREL: Relocations [
#DSOREL-NEXT: Section ({{.*}}) .rela.plt {
-#DSOREL-NEXT: 0x20018 R_AARCH64_JUMP_SLOT _foo
-#DSOREL-NEXT: 0x20020 R_AARCH64_JUMP_SLOT _bar
-#DSOREL-NEXT: 0x20028 R_AARCH64_JUMP_SLOT _dah
+#DSOREL-NEXT: 0x30018 R_AARCH64_JUMP_SLOT _foo
+#DSOREL-NEXT: 0x30020 R_AARCH64_JUMP_SLOT _bar
+#DSOREL-NEXT: 0x30028 R_AARCH64_JUMP_SLOT _dah
#DSOREL-NEXT: }
#DSOREL-NEXT:]
@@ -72,7 +72,7 @@
#DSO-NEXT: Disassembly of section .plt:
#DSO-NEXT: .plt:
#DSO-NEXT: 10030: {{.*}} stp x16, x30, [sp, #-16]!
-#DSO-NEXT: 10034: {{.*}} adrp x16, #65536
+#DSO-NEXT: 10034: {{.*}} adrp x16, #131072
#DSO-NEXT: 10038: {{.*}} ldr x17, [x16, #16]
#DSO-NEXT: 1003c: {{.*}} add x16, x16, #16
#DSO-NEXT: 10040: {{.*}} br x17
@@ -81,19 +81,19 @@
#DSO-NEXT: 1004c: {{.*}} nop
#DSO-EMPTY:
#DSO-NEXT: _foo at plt:
-#DSO-NEXT: 10050: {{.*}} adrp x16, #65536
+#DSO-NEXT: 10050: {{.*}} adrp x16, #131072
#DSO-NEXT: 10054: {{.*}} ldr x17, [x16, #24]
#DSO-NEXT: 10058: {{.*}} add x16, x16, #24
#DSO-NEXT: 1005c: {{.*}} br x17
#DSO-EMPTY:
#DSO-NEXT: _bar at plt:
-#DSO-NEXT: 10060: {{.*}} adrp x16, #65536
+#DSO-NEXT: 10060: {{.*}} adrp x16, #131072
#DSO-NEXT: 10064: {{.*}} ldr x17, [x16, #32]
#DSO-NEXT: 10068: {{.*}} add x16, x16, #32
#DSO-NEXT: 1006c: {{.*}} br x17
#DSO-EMPTY:
#DSO-NEXT: _dah at plt:
-#DSO-NEXT: 10070: {{.*}} adrp x16, #65536
+#DSO-NEXT: 10070: {{.*}} adrp x16, #131072
#DSO-NEXT: 10074: {{.*}} ldr x17, [x16, #40]
#DSO-NEXT: 10078: {{.*}} add x16, x16, #40
#DSO-NEXT: 1007c: {{.*}} br x17
Modified: lld/trunk/test/ELF/aarch64-cortex-a53-843419-large.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/aarch64-cortex-a53-843419-large.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/aarch64-cortex-a53-843419-large.s (original)
+++ lld/trunk/test/ELF/aarch64-cortex-a53-843419-large.s Wed Mar 13 20:47:45 2019
@@ -42,7 +42,7 @@ t3_ff8_ldr:
ret
// CHECK3: t3_ff8_ldr:
-// CHECK3-NEXT: 211ff8: 60 00 04 f0 adrp x0, #134279168
+// CHECK3-NEXT: 211ff8: e0 00 04 f0 adrp x0, #134344704
// CHECK3-NEXT: 211ffc: 21 00 40 f9 ldr x1, [x1]
// CHECK3-NEXT: 212000: 02 08 80 15 b #100671496
// CHECK3-NEXT: 212004: c0 03 5f d6 ret
@@ -63,7 +63,7 @@ t3_ff8_str:
ret
// CHECK4: t3_ff8_str:
-// CHECK4-NEXT: 4213ff8: 60 00 02 b0 adrp x0, #67162112
+// CHECK4-NEXT: 4213ff8: e0 00 02 b0 adrp x0, #67227648
// CHECK4-NEXT: 4213ffc: 21 00 40 f9 ldr x1, [x1]
// CHECK4-NEXT: 4214000: 04 00 80 14 b #33554448
// CHECK4-NEXT: 4214004: c0 03 5f d6 ret
@@ -102,7 +102,7 @@ t3_ffc_ldr:
ret
// CHECK7: t3_ffc_ldr:
-// CHECK7-NEXT: 8211ffc: 60 00 00 f0 adrp x0, #61440
+// CHECK7-NEXT: 8211ffc: e0 00 00 f0 adrp x0, #126976
// CHECK7-NEXT: 8212000: 21 00 40 f9 ldr x1, [x1]
// CHECK7-NEXT: 8212004: 02 00 00 14 b #8
// CHECK7-NEXT: 8212008: c0 03 5f d6 ret
Modified: lld/trunk/test/ELF/aarch64-cortex-a53-843419-recognize.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/aarch64-cortex-a53-843419-recognize.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/aarch64-cortex-a53-843419-recognize.s (original)
+++ lld/trunk/test/ELF/aarch64-cortex-a53-843419-recognize.s Wed Mar 13 20:47:45 2019
@@ -28,7 +28,7 @@
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 211FF8 in unpatched output.
// CHECK: t3_ff8_ldr:
-// CHECK-NEXT: 211ff8: e0 01 00 f0 adrp x0, #258048
+// CHECK-NEXT: 211ff8: 60 02 00 f0 adrp x0, #323584
// CHECK-NEXT: 211ffc: 21 00 40 f9 ldr x1, [x1]
// CHECK-FIX: 212000: 03 c8 00 14 b #204812
// CHECK-NOFIX: 212000: 00 00 40 f9 ldr x0, [x0]
@@ -46,7 +46,7 @@ t3_ff8_ldr:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 213FF8 in unpatched output.
// CHECK: t3_ff8_ldrsimd:
-// CHECK-NEXT: 213ff8: e0 01 00 b0 adrp x0, #249856
+// CHECK-NEXT: 213ff8: 60 02 00 b0 adrp x0, #315392
// CHECK-NEXT: 213ffc: 21 00 40 bd ldr s1, [x1]
// CHECK-FIX: 214000: 05 c0 00 14 b #196628
// CHECK-NOFIX: 214000: 02 04 40 f9 ldr x2, [x0, #8]
@@ -64,7 +64,7 @@ t3_ff8_ldrsimd:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 215FFC in unpatched output.
// CHECK: t3_ffc_ldrpost:
-// CHECK-NEXT: 215ffc: c0 01 00 f0 adrp x0, #241664
+// CHECK-NEXT: 215ffc: 40 02 00 f0 adrp x0, #307200
// CHECK-NEXT: 216000: 21 84 40 bc ldr s1, [x1], #8
// CHECK-FIX: 216004: 06 b8 00 14 b #188440
// CHECK-NOFIX: 216004: 03 08 40 f9 ldr x3, [x0, #16]
@@ -82,7 +82,7 @@ t3_ffc_ldrpost:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 217FF8 in unpatched output.
// CHECK: t3_ff8_strpre:
-// CHECK-NEXT: 217ff8: c0 01 00 b0 adrp x0, #233472
+// CHECK-NEXT: 217ff8: 40 02 00 b0 adrp x0, #299008
// CHECK-NEXT: 217ffc: 21 8c 00 bc str s1, [x1, #8]!
// CHECK-FIX: 218000: 09 b0 00 14 b #180260
// CHECK-NOFIX: 218000: 02 00 40 f9 ldr x2, [x0]
@@ -100,7 +100,7 @@ t3_ff8_strpre:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 219FFC in unpatched output.
// CHECK: t3_ffc_str:
-// CHECK-NEXT: 219ffc: bc 01 00 f0 adrp x28, #225280
+// CHECK-NEXT: 219ffc: 3c 02 00 f0 adrp x28, #290816
// CHECK-NEXT: 21a000: 42 00 00 f9 str x2, [x2]
// CHECK-FIX: 21a004: 0a a8 00 14 b #172072
// CHECK-NOFIX: 21a004: 9c 07 00 f9 str x28, [x28, #8]
@@ -118,7 +118,7 @@ t3_ffc_str:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 21BFFC in unpatched output.
// CHECK: t3_ffc_strsimd:
-// CHECK-NEXT: 21bffc: bc 01 00 b0 adrp x28, #217088
+// CHECK-NEXT: 21bffc: 3c 02 00 b0 adrp x28, #282624
// CHECK-NEXT: 21c000: 44 00 00 b9 str w4, [x2]
// CHECK-FIX: 21c004: 0c a0 00 14 b #163888
// CHECK-NOFIX: 21c004: 84 0b 00 f9 str x4, [x28, #16]
@@ -136,7 +136,7 @@ t3_ffc_strsimd:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 21DFF8 in unpatched output.
// CHECK: t3_ff8_ldrunpriv:
-// CHECK-NEXT: 21dff8: 9d 01 00 f0 adrp x29, #208896
+// CHECK-NEXT: 21dff8: 1d 02 00 f0 adrp x29, #274432
// CHECK-NEXT: 21dffc: 41 08 40 38 ldtrb w1, [x2]
// CHECK-FIX: 21e000: 0f 98 00 14 b #155708
// CHECK-NOFIX: 21e000: bd 03 40 f9 ldr x29, [x29]
@@ -154,7 +154,7 @@ t3_ff8_ldrunpriv:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 21FFFC in unpatched output.
// CHECK: t3_ffc_ldur:
-// CHECK-NEXT: 21fffc: 9d 01 00 b0 adrp x29, #200704
+// CHECK-NEXT: 21fffc: 1d 02 00 b0 adrp x29, #266240
// CHECK-NEXT: 220000: 42 40 40 b8 ldur w2, [x2, #4]
// CHECK-FIX: 220004: 10 90 00 14 b #147520
// CHECK-NOFIX: 220004: bd 07 40 f9 ldr x29, [x29, #8]
@@ -171,7 +171,7 @@ t3_ffc_ldur:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 221FFC in unpatched output.
// CHECK: t3_ffc_sturh:
-// CHECK-NEXT: 221ffc: 72 01 00 f0 adrp x18, #192512
+// CHECK-NEXT: 221ffc: f2 01 00 f0 adrp x18, #258048
// CHECK-NEXT: 222000: 43 40 00 78 sturh w3, [x2, #4]
// CHECK-FIX: 222004: 12 88 00 14 b #139336
// CHECK-NOFIX: 222004: 41 0a 40 f9 ldr x1, [x18, #16]
@@ -189,7 +189,7 @@ t3_ffc_sturh:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 223FF8 in unpatched output.
// CHECK: t3_ff8_literal:
-// CHECK-NEXT: 223ff8: 72 01 00 b0 adrp x18, #184320
+// CHECK-NEXT: 223ff8: f2 01 00 b0 adrp x18, #249856
// CHECK-NEXT: 223ffc: e3 ff ff 58 ldr x3, #-4
// CHECK-FIX: 224000: 15 80 00 14 b #131156
// CHECK-NOFIX: 224000: 52 02 40 f9 ldr x18, [x18]
@@ -207,7 +207,7 @@ t3_ff8_literal:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 225FFC in unpatched output.
// CHECK: t3_ffc_register:
-// CHECK-NEXT: 225ffc: 4f 01 00 f0 adrp x15, #176128
+// CHECK-NEXT: 225ffc: cf 01 00 f0 adrp x15, #241664
// CHECK-NEXT: 226000: 43 68 61 f8 ldr x3, [x2, x1]
// CHECK-FIX: 226004: 16 78 00 14 b #122968
// CHECK-NOFIX: 226004: ea 05 40 f9 ldr x10, [x15, #8]
@@ -225,7 +225,7 @@ t3_ffc_register:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 227FF8 in unpatched output.
// CHECK: t3_ff8_stp:
-// CHECK-NEXT: 227ff8: 50 01 00 b0 adrp x16, #167936
+// CHECK-NEXT: 227ff8: d0 01 00 b0 adrp x16, #233472
// CHECK-NEXT: 227ffc: 61 08 00 a9 stp x1, x2, [x3]
// CHECK-FIX: 228000: 19 70 00 14 b #114788
// CHECK-NOFIX: 228000: 0d 0a 40 f9 ldr x13, [x16, #16]
@@ -243,7 +243,7 @@ t3_ff8_stp:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 229FFC in unpatched output.
// CHECK: t3_ffc_stnp:
-// CHECK-NEXT: 229ffc: 27 01 00 f0 adrp x7, #159744
+// CHECK-NEXT: 229ffc: a7 01 00 f0 adrp x7, #225280
// CHECK-NEXT: 22a000: 61 08 00 a8 stnp x1, x2, [x3]
// CHECK-FIX: 22a004: 1a 68 00 14 b #106600
// CHECK-NOFIX: 22a004: e9 00 40 f9 ldr x9, [x7]
@@ -261,7 +261,7 @@ t3_ffc_stnp:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 22BFFC in unpatched output.
// CHECK: t3_ffc_st1singlepost:
-// CHECK-NEXT: 22bffc: 37 01 00 b0 adrp x23, #151552
+// CHECK-NEXT: 22bffc: b7 01 00 b0 adrp x23, #217088
// CHECK-NEXT: 22c000: 20 04 82 0d st1 { v0.b }[1], [x1], x2
// CHECK-FIX: 22c004: 1c 60 00 14 b #98416
// CHECK-NOFIX: 22c004: f6 06 40 f9 ldr x22, [x23, #8]
@@ -279,7 +279,7 @@ t3_ffc_st1singlepost:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 22DFF8 in unpatched output.
// CHECK: t3_ff8_st1multiple:
-// CHECK-NEXT: 22dff8: 17 01 00 f0 adrp x23, #143360
+// CHECK-NEXT: 22dff8: 97 01 00 f0 adrp x23, #208896
// CHECK-NEXT: 22dffc: 20 a0 00 4c st1 { v0.16b, v1.16b }, [x1]
// CHECK-FIX: 22e000: 1f 58 00 14 b #90236
// CHECK-NOFIX: 22e000: f8 0a 40 f9 ldr x24, [x23, #16]
@@ -297,7 +297,7 @@ t3_ff8_st1multiple:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 22FFF8 in unpatched output.
// CHECK: t4_ff8_ldr:
-// CHECK-NEXT: 22fff8: 00 01 00 b0 adrp x0, #135168
+// CHECK-NEXT: 22fff8: 80 01 00 b0 adrp x0, #200704
// CHECK-NEXT: 22fffc: 21 00 40 f9 ldr x1, [x1]
// CHECK-NEXT: 230000: 42 00 00 8b add x2, x2, x0
// CHECK-FIX: 230004: 20 50 00 14 b #82048
@@ -317,7 +317,7 @@ t4_ff8_ldr:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 231FFC in unpatched output.
// CHECK: t4_ffc_str:
-// CHECK-NEXT: 231ffc: fc 00 00 f0 adrp x28, #126976
+// CHECK-NEXT: 231ffc: 7c 01 00 f0 adrp x28, #192512
// CHECK-NEXT: 232000: 42 00 00 f9 str x2, [x2]
// CHECK-NEXT: 232004: 20 00 02 cb sub x0, x1, x2
// CHECK-FIX: 232008: 21 48 00 14 b #73860
@@ -337,7 +337,7 @@ t4_ffc_str:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 233FF8 in unpatched output.
// CHECK: t4_ff8_stp:
-// CHECK-NEXT: 233ff8: f0 00 00 b0 adrp x16, #118784
+// CHECK-NEXT: 233ff8: 70 01 00 b0 adrp x16, #184320
// CHECK-NEXT: 233ffc: 61 08 00 a9 stp x1, x2, [x3]
// CHECK-NEXT: 234000: 03 7e 10 9b mul x3, x16, x16
// CHECK-FIX: 234004: 24 40 00 14 b #65680
@@ -357,7 +357,7 @@ t4_ff8_stp:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 235FF8 in unpatched output.
// CHECK: t4_ff8_stppre:
-// CHECK-NEXT: 235ff8: d0 00 00 f0 adrp x16, #110592
+// CHECK-NEXT: 235ff8: 50 01 00 f0 adrp x16, #176128
// CHECK-NEXT: 235ffc: 61 08 81 a9 stp x1, x2, [x3, #16]!
// CHECK-NEXT: 236000: 03 7e 10 9b mul x3, x16, x16
// CHECK-FIX: 236004: 26 38 00 14 b #57496
@@ -377,7 +377,7 @@ t4_ff8_stppre:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 237FF8 in unpatched output.
// CHECK: t4_ff8_stppost:
-// CHECK-NEXT: 237ff8: d0 00 00 b0 adrp x16, #102400
+// CHECK-NEXT: 237ff8: 50 01 00 b0 adrp x16, #167936
// CHECK-NEXT: 237ffc: 61 08 81 a8 stp x1, x2, [x3], #16
// CHECK-NEXT: 238000: 03 7e 10 9b mul x3, x16, x16
// CHECK-FIX: 238004: 28 30 00 14 b #49312
@@ -397,7 +397,7 @@ t4_ff8_stppost:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 239FFC in unpatched output.
// CHECK: t4_ffc_stpsimd:
-// CHECK-NEXT: 239ffc: b0 00 00 f0 adrp x16, #94208
+// CHECK-NEXT: 239ffc: 30 01 00 f0 adrp x16, #159744
// CHECK-NEXT: 23a000: 61 08 00 ad stp q1, q2, [x3]
// CHECK-NEXT: 23a004: 03 7e 10 9b mul x3, x16, x16
// CHECK-FIX: 23a008: 29 28 00 14 b #41124
@@ -417,7 +417,7 @@ t4_ffc_stpsimd:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 23BFFC in unpatched output.
// CHECK: t4_ffc_stnp:
-// CHECK-NEXT: 23bffc: a7 00 00 b0 adrp x7, #86016
+// CHECK-NEXT: 23bffc: 27 01 00 b0 adrp x7, #151552
// CHECK-NEXT: 23c000: 61 08 00 a8 stnp x1, x2, [x3]
// CHECK-NEXT: 23c004: 1f 20 03 d5 nop
// CHECK-FIX: 23c008: 2b 20 00 14 b #32940
@@ -437,7 +437,7 @@ t4_ffc_stnp:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 23DFFC in unpatched output.
// CHECK: t4_ffc_st1:
-// CHECK-NEXT: 23dffc: 98 00 00 f0 adrp x24, #77824
+// CHECK-NEXT: 23dffc: 18 01 00 f0 adrp x24, #143360
// CHECK-NEXT: 23e000: 20 80 00 4d st1 { v0.s }[2], [x1]
// CHECK-NEXT: 23e004: f6 06 40 f9 ldr x22, [x23, #8]
// CHECK-FIX: 23e008: 2d 18 00 14 b #24756
@@ -457,7 +457,7 @@ t4_ffc_st1:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 23FFF8 in unpatched output.
// CHECK: t3_ff8_ldr_once:
-// CHECK-NEXT: 23fff8: 80 00 00 b0 adrp x0, #69632
+// CHECK-NEXT: 23fff8: 00 01 00 b0 adrp x0, #135168
// CHECK-NEXT: 23fffc: 20 70 82 4c st1 { v0.16b }, [x1], x2
// CHECK-FIX: 240000: 31 10 00 14 b #16580
// CHECK-NOFIX: 240000: 01 08 40 f9 ldr x1, [x0, #16]
@@ -477,7 +477,7 @@ t3_ff8_ldr_once:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 241FF8 in unpatched output.
// CHECK: t3_ff8_ldxr:
-// CHECK-NEXT: 241ff8: 60 00 00 f0 adrp x0, #61440
+// CHECK-NEXT: 241ff8: e0 00 00 f0 adrp x0, #126976
// CHECK-NEXT: 241ffc: 03 7c 5f c8 ldxr x3, [x0]
// CHECK-FIX: 242000: 33 08 00 14 b #8396
// CHECK-NOFIX: 242000: 01 08 40 f9 ldr x1, [x0, #16]
@@ -497,7 +497,7 @@ t3_ff8_ldxr:
// CHECK-PRINT: detected cortex-a53-843419 erratum sequence starting at 243FF8 in unpatched output.
// CHECK: t3_ff8_stxr:
-// CHECK-NEXT: 243ff8: 60 00 00 b0 adrp x0, #53248
+// CHECK-NEXT: 243ff8: e0 00 00 b0 adrp x0, #118784
// CHECK-NEXT: 243ffc: 03 7c 04 c8 stxr w4, x3, [x0]
// CHECK-FIX: 244000: 35 00 00 14 b #212
// CHECK-NOFIX: 244000: 01 08 40 f9 ldr x1, [x0, #16]
Modified: lld/trunk/test/ELF/aarch64-cortex-a53-843419-thunk.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/aarch64-cortex-a53-843419-thunk.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/aarch64-cortex-a53-843419-thunk.s (original)
+++ lld/trunk/test/ELF/aarch64-cortex-a53-843419-thunk.s Wed Mar 13 20:47:45 2019
@@ -44,7 +44,7 @@ t3_ff8_ldr:
// CHECK-NEXT: 11004: 02 00 00 14 b #8
// CHECK-NEXT: 11008: c0 03 5f d6 ret
// CHECK: __CortexA53843419_11004:
-// CHECK-NEXT: 1100c: 00 08 40 f9 ldr x0, [x0, #16]
+// CHECK-NEXT: 1100c: 00 04 40 f9 ldr x0, [x0, #8]
// CHECK-NEXT: 11010: fe ff ff 17 b #-8
.section .text.04, "ax", %progbits
Modified: lld/trunk/test/ELF/aarch64-gnu-ifunc-address-pie.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/aarch64-gnu-ifunc-address-pie.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/aarch64-gnu-ifunc-address-pie.s (original)
+++ lld/trunk/test/ELF/aarch64-gnu-ifunc-address-pie.s Wed Mar 13 20:47:45 2019
@@ -35,13 +35,13 @@ main:
# CHECK-NEXT: 1000c: c0 03 5f d6 ret
# CHECK-NEXT: Disassembly of section .plt:
# CHECK-NEXT: 0000000000010010 myfunc:
-# CHECK-NEXT: 10010: 90 00 00 90 adrp x16, #65536
+# CHECK-NEXT: 10010: 10 01 00 90 adrp x16, #131072
# CHECK-NEXT: 10014: 11 02 40 f9 ldr x17, [x16]
# CHECK-NEXT: 10018: 10 02 00 91 add x16, x16, #0
# CHECK-NEXT: 1001c: 20 02 1f d6 br x17
# CHECK-RELOCS: Relocations [
# CHECK-RELOCS-NEXT: Section {{.*}} .rela.plt {
-# CHECK-RELOCS-NEXT: 0x20000 R_AARCH64_IRELATIVE - 0x10000
+# CHECK-RELOCS-NEXT: 0x30000 R_AARCH64_IRELATIVE - 0x10000
# CHECK-RELOCS-NEXT: }
# CHECK-RELOCS-NEXT: ]
Modified: lld/trunk/test/ELF/aarch64-gnu-ifunc-plt.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/aarch64-gnu-ifunc-plt.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/aarch64-gnu-ifunc-plt.s (original)
+++ lld/trunk/test/ELF/aarch64-gnu-ifunc-plt.s Wed Mar 13 20:47:45 2019
@@ -10,19 +10,19 @@
// Check that the IRELATIVE relocations are after the JUMP_SLOT in the plt
// CHECK: Relocations [
// CHECK-NEXT: Section (4) .rela.plt {
-// CHECK: 0x220018 R_AARCH64_JUMP_SLOT bar2 0x0
-// CHECK-NEXT: 0x220020 R_AARCH64_JUMP_SLOT zed2 0x0
-// CHECK-NEXT: 0x220028 R_AARCH64_IRELATIVE - 0x210000
-// CHECK-NEXT: 0x220030 R_AARCH64_IRELATIVE - 0x210004
+// CHECK: 0x230018 R_AARCH64_JUMP_SLOT bar2 0x0
+// CHECK-NEXT: 0x230020 R_AARCH64_JUMP_SLOT zed2 0x0
+// CHECK-NEXT: 0x230028 R_AARCH64_IRELATIVE - 0x210000
+// CHECK-NEXT: 0x230030 R_AARCH64_IRELATIVE - 0x210004
// CHECK-NEXT: }
// CHECK-NEXT: ]
// Check that .got.plt entries point back to PLT header
// GOTPLT: Contents of section .got.plt:
-// GOTPLT-NEXT: 220000 00000000 00000000 00000000 00000000
-// GOTPLT-NEXT: 220010 00000000 00000000 20002100 00000000
-// GOTPLT-NEXT: 220020 20002100 00000000 20002100 00000000
-// GOTPLT-NEXT: 220030 20002100 00000000
+// GOTPLT-NEXT: 230000 00000000 00000000 00000000 00000000
+// GOTPLT-NEXT: 230010 00000000 00000000 20002100 00000000
+// GOTPLT-NEXT: 230020 20002100 00000000 20002100 00000000
+// GOTPLT-NEXT: 230030 20002100 00000000
// Check that the PLTRELSZ tag includes the IRELATIVE relocations
// CHECK: DynamicSection [
@@ -42,7 +42,7 @@
// DISASM-NEXT: Disassembly of section .plt:
// DISASM-NEXT: .plt:
// DISASM-NEXT: 210020: {{.*}} stp x16, x30, [sp, #-16]!
-// DISASM-NEXT: 210024: {{.*}} adrp x16, #65536
+// DISASM-NEXT: 210024: {{.*}} adrp x16, #131072
// DISASM-NEXT: 210028: {{.*}} ldr x17, [x16, #16]
// DISASM-NEXT: 21002c: {{.*}} add x16, x16, #16
// DISASM-NEXT: 210030: {{.*}} br x17
@@ -51,21 +51,21 @@
// DISASM-NEXT: 21003c: {{.*}} nop
// DISASM-EMPTY:
// DISASM-NEXT: bar2 at plt:
-// DISASM-NEXT: 210040: {{.*}} adrp x16, #65536
+// DISASM-NEXT: 210040: {{.*}} adrp x16, #131072
// DISASM-NEXT: 210044: {{.*}} ldr x17, [x16, #24]
// DISASM-NEXT: 210048: {{.*}} add x16, x16, #24
// DISASM-NEXT: 21004c: {{.*}} br x17
// DISASM-EMPTY:
// DISASM-NEXT: zed2 at plt:
-// DISASM-NEXT: 210050: {{.*}} adrp x16, #65536
+// DISASM-NEXT: 210050: {{.*}} adrp x16, #131072
// DISASM-NEXT: 210054: {{.*}} ldr x17, [x16, #32]
// DISASM-NEXT: 210058: {{.*}} add x16, x16, #32
// DISASM-NEXT: 21005c: {{.*}} br x17
-// DISASM-NEXT: 210060: {{.*}} adrp x16, #65536
+// DISASM-NEXT: 210060: {{.*}} adrp x16, #131072
// DISASM-NEXT: 210064: {{.*}} ldr x17, [x16, #40]
// DISASM-NEXT: 210068: {{.*}} add x16, x16, #40
// DISASM-NEXT: 21006c: {{.*}} br x17
-// DISASM-NEXT: 210070: {{.*}} adrp x16, #65536
+// DISASM-NEXT: 210070: {{.*}} adrp x16, #131072
// DISASM-NEXT: 210074: {{.*}} ldr x17, [x16, #48]
// DISASM-NEXT: 210078: {{.*}} add x16, x16, #48
// DISASM-NEXT: 21007c: {{.*}} br x17
Modified: lld/trunk/test/ELF/aarch64-ldprel-lo19-invalid.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/aarch64-ldprel-lo19-invalid.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/aarch64-ldprel-lo19-invalid.s (original)
+++ lld/trunk/test/ELF/aarch64-ldprel-lo19-invalid.s Wed Mar 13 20:47:45 2019
@@ -3,7 +3,7 @@
# RUN: llvm-mc -filetype=obj -triple=aarch64-linux-none %s -o %t.o
# RUN: not ld.lld -shared %t.o -o /dev/null 2>&1 | FileCheck %s
-# CHECK: relocation R_AARCH64_LD_PREL_LO19 out of range: 2065536 is not in [-1048576, 1048575]
+# CHECK: relocation R_AARCH64_LD_PREL_LO19 out of range: 2131072 is not in [-1048576, 1048575]
ldr x8, patatino
.data
Modified: lld/trunk/test/ELF/aarch64-load-alignment.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/aarch64-load-alignment.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/aarch64-load-alignment.s (original)
+++ lld/trunk/test/ELF/aarch64-load-alignment.s Wed Mar 13 20:47:45 2019
@@ -3,7 +3,7 @@
# RUN: llvm-mc -filetype=obj -triple=aarch64-linux-none %s -o %t.o
# RUN: not ld.lld -shared %t.o -o /dev/null 2>&1 | FileCheck %s
-# CHECK: improper alignment for relocation R_AARCH64_LD_PREL_LO19: 0x10005 is not aligned to 4 bytes
+# CHECK: improper alignment for relocation R_AARCH64_LD_PREL_LO19: 0x20005 is not aligned to 4 bytes
ldr x8, patatino
.data
Modified: lld/trunk/test/ELF/aarch64-thunk-pi.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/aarch64-thunk-pi.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/aarch64-thunk-pi.s (original)
+++ lld/trunk/test/ELF/aarch64-thunk-pi.s Wed Mar 13 20:47:45 2019
@@ -75,8 +75,8 @@ high_target2:
// CHECK-NEXT: .plt:
// CHECK-NEXT: 10000020: f0 7b bf a9 stp x16, x30, [sp, #-16]!
// CHECK-NEXT: 10000024: 10 00 00 90 adrp x16, #0
-// CHECK-NEXT: 10000028: 11 3a 40 f9 ldr x17, [x16, #112]
-// CHECK-NEXT: 1000002c: 10 c2 01 91 add x16, x16, #112
+// CHECK-NEXT: 10000028: 11 92 40 f9 ldr x17, [x16, #288]
+// CHECK-NEXT: 1000002c: 10 82 04 91 add x16, x16, #288
// CHECK-NEXT: 10000030: 20 02 1f d6 br x17
// CHECK-NEXT: 10000034: 1f 20 03 d5 nop
// CHECK-NEXT: 10000038: 1f 20 03 d5 nop
@@ -84,12 +84,12 @@ high_target2:
// CHECK-EMPTY:
// CHECK-NEXT: high_target at plt:
// CHECK-NEXT: 10000040: 10 00 00 90 adrp x16, #0
-// CHECK-NEXT: 10000044: 11 3e 40 f9 ldr x17, [x16, #120]
-// CHECK-NEXT: 10000048: 10 e2 01 91 add x16, x16, #120
+// CHECK-NEXT: 10000044: 11 96 40 f9 ldr x17, [x16, #296]
+// CHECK-NEXT: 10000048: 10 a2 04 91 add x16, x16, #296
// CHECK-NEXT: 1000004c: 20 02 1f d6 br x17
// CHECK-EMPTY:
// CHECK-NEXT: low_target at plt:
// CHECK-NEXT: 10000050: 10 00 00 90 adrp x16, #0
-// CHECK-NEXT: 10000054: 11 42 40 f9 ldr x17, [x16, #128]
-// CHECK-NEXT: 10000058: 10 02 02 91 add x16, x16, #128
+// CHECK-NEXT: 10000054: 11 9a 40 f9 ldr x17, [x16, #304]
+// CHECK-NEXT: 10000058: 10 c2 04 91 add x16, x16, #304
// CHECK-NEXT: 1000005c: 20 02 1f d6 br x17
Modified: lld/trunk/test/ELF/aarch64-tstbr14-reloc.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/aarch64-tstbr14-reloc.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/aarch64-tstbr14-reloc.s (original)
+++ lld/trunk/test/ELF/aarch64-tstbr14-reloc.s Wed Mar 13 20:47:45 2019
@@ -35,8 +35,8 @@
#DSOREL-NEXT: SHF_ALLOC
#DSOREL-NEXT: SHF_WRITE
#DSOREL-NEXT: ]
-#DSOREL-NEXT: Address: 0x20000
-#DSOREL-NEXT: Offset: 0x20000
+#DSOREL-NEXT: Address: 0x30000
+#DSOREL-NEXT: Offset: 0x30000
#DSOREL-NEXT: Size: 40
#DSOREL-NEXT: Link: 0
#DSOREL-NEXT: Info: 0
@@ -45,8 +45,8 @@
#DSOREL-NEXT: }
#DSOREL: Relocations [
#DSOREL-NEXT: Section ({{.*}}) .rela.plt {
-#DSOREL-NEXT: 0x20018 R_AARCH64_JUMP_SLOT _foo
-#DSOREL-NEXT: 0x20020 R_AARCH64_JUMP_SLOT _bar
+#DSOREL-NEXT: 0x30018 R_AARCH64_JUMP_SLOT _foo
+#DSOREL-NEXT: 0x30020 R_AARCH64_JUMP_SLOT _bar
#DSOREL-NEXT: }
#DSOREL-NEXT:]
@@ -72,7 +72,7 @@
#DSO-NEXT: Disassembly of section .plt:
#DSO-NEXT: .plt:
#DSO-NEXT: 10030: {{.*}} stp x16, x30, [sp, #-16]!
-#DSO-NEXT: 10034: {{.*}} adrp x16, #65536
+#DSO-NEXT: 10034: {{.*}} adrp x16, #131072
#DSO-NEXT: 10038: {{.*}} ldr x17, [x16, #16]
#DSO-NEXT: 1003c: {{.*}} add x16, x16, #16
#DSO-NEXT: 10040: {{.*}} br x17
@@ -81,13 +81,13 @@
#DSO-NEXT: 1004c: {{.*}} nop
#DSO-EMPTY:
#DSO-NEXT: _foo at plt:
-#DSO-NEXT: 10050: {{.*}} adrp x16, #65536
+#DSO-NEXT: 10050: {{.*}} adrp x16, #131072
#DSO-NEXT: 10054: {{.*}} ldr x17, [x16, #24]
#DSO-NEXT: 10058: {{.*}} add x16, x16, #24
#DSO-NEXT: 1005c: {{.*}} br x17
#DSO-EMPTY:
#DSO-NEXT: _bar at plt:
-#DSO-NEXT: 10060: {{.*}} adrp x16, #65536
+#DSO-NEXT: 10060: {{.*}} adrp x16, #131072
#DSO-NEXT: 10064: {{.*}} ldr x17, [x16, #32]
#DSO-NEXT: 10068: {{.*}} add x16, x16, #32
#DSO-NEXT: 1006c: {{.*}} br x17
Modified: lld/trunk/test/ELF/amdgpu-relocs.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/amdgpu-relocs.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/amdgpu-relocs.s (original)
+++ lld/trunk/test/ELF/amdgpu-relocs.s Wed Mar 13 20:47:45 2019
@@ -113,5 +113,5 @@ foo:
# OBJDUMP: d0f8ffff ffffffff
# OBJDUMP: Contents of section nonalloc:
-# OBJDUMP-NEXT: 0000 00000000 04480000 00000000 08440000
-# OBJDUMP-NEXT: 00000000 0c400000
+# OBJDUMP-NEXT: 0000 00000000 14380000 00000000 18340000
+# OBJDUMP-NEXT: 00000000 1c300000
Modified: lld/trunk/test/ELF/arm-abs32-dyn.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-abs32-dyn.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-abs32-dyn.s (original)
+++ lld/trunk/test/ELF/arm-abs32-dyn.s Wed Mar 13 20:47:45 2019
@@ -18,8 +18,8 @@ bar:
// RUN: llvm-readobj -symbols -dyn-relocations %t.so | FileCheck %s
// CHECK: Dynamic Relocations {
-// CHECK-NEXT: 0x1004 R_ARM_RELATIVE
-// CHECK-NEXT: 0x1000 R_ARM_ABS32 foo 0x0
+// CHECK-NEXT: 0x2004 R_ARM_RELATIVE
+// CHECK-NEXT: 0x2000 R_ARM_ABS32 foo 0x0
// CHECK-NEXT: }
// CHECK: Symbols [
Modified: lld/trunk/test/ELF/arm-exidx-shared.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-exidx-shared.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-exidx-shared.s (original)
+++ lld/trunk/test/ELF/arm-exidx-shared.s Wed Mar 13 20:47:45 2019
@@ -38,7 +38,7 @@ __aeabi_unwind_cpp_pr0:
// CHECK: Relocations [
// CHECK-NEXT: Section {{.*}} .rel.plt {
-// CHECK-NEXT: 0x200C R_ARM_JUMP_SLOT __gxx_personality_v0
+// CHECK-NEXT: 0x300C R_ARM_JUMP_SLOT __gxx_personality_v0
// CHECK-EXTAB: Contents of section .ARM.extab:
// 0x0210 + 0x0e20 = 0x1030 = __gxx_personality_v0(PLT)
Modified: lld/trunk/test/ELF/arm-fpic-got.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-fpic-got.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-fpic-got.s (original)
+++ lld/trunk/test/ELF/arm-fpic-got.s Wed Mar 13 20:47:45 2019
@@ -36,7 +36,7 @@ val:
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x13000
+// CHECK-NEXT: Address: 0x12000
// CHECK-NEXT: Offset:
// CHECK-NEXT: Size: 4
// CHECK-NEXT: Link:
@@ -45,7 +45,7 @@ val:
// CHECK-NEXT: EntrySize:
// SYMBOLS: Name: val
-// SYMBOLS-NEXT: Value: 0x12000
+// SYMBOLS-NEXT: Value: 0x13000
// SYMBOLS-NEXT: Size: 4
// SYMBOLS-NEXT: Binding: Global
// SYMBOLS-NEXT: Type: Object
@@ -59,5 +59,5 @@ val:
// CODE-NEXT: 11008: 00 00 90 e5 ldr r0, [r0]
// CODE-NEXT: 1100c: 1e ff 2f e1 bx lr
// CODE: $d.1:
-// 0x11004 + 0x1ff4 + 8 = 0x13000 = .got
-// CODE-NEXT: 11010: f4 1f 00 00
+// 0x11004 + 0x0ff4 + 8 = 0x12000 = .got
+// CODE-NEXT: 11010: f4 0f 00 00
Modified: lld/trunk/test/ELF/arm-gnu-ifunc-plt.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-gnu-ifunc-plt.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-gnu-ifunc-plt.s (original)
+++ lld/trunk/test/ELF/arm-gnu-ifunc-plt.s Wed Mar 13 20:47:45 2019
@@ -10,23 +10,23 @@
// Check that the IRELATIVE relocations are last in the .got
// CHECK: Relocations [
// CHECK-NEXT: Section (4) .rel.dyn {
-// CHECK-NEXT: 0x13078 R_ARM_GLOB_DAT bar2 0x0
-// CHECK-NEXT: 0x1307C R_ARM_GLOB_DAT zed2 0x0
-// CHECK-NEXT: 0x13080 R_ARM_IRELATIVE - 0x0
-// CHECK-NEXT: 0x13084 R_ARM_IRELATIVE - 0x0
+// CHECK-NEXT: 0x12078 R_ARM_GLOB_DAT bar2 0x0
+// CHECK-NEXT: 0x1207C R_ARM_GLOB_DAT zed2 0x0
+// CHECK-NEXT: 0x12080 R_ARM_IRELATIVE - 0x0
+// CHECK-NEXT: 0x12084 R_ARM_IRELATIVE - 0x0
// CHECK-NEXT: }
// CHECK-NEXT: Section (5) .rel.plt {
-// CHECK-NEXT: 0x1200C R_ARM_JUMP_SLOT bar2 0x0
-// CHECK-NEXT: 0x12010 R_ARM_JUMP_SLOT zed2 0x0
+// CHECK-NEXT: 0x1300C R_ARM_JUMP_SLOT bar2 0x0
+// CHECK-NEXT: 0x13010 R_ARM_JUMP_SLOT zed2 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
// Check that the GOT entries refer back to the ifunc resolver
-// GOTPLT: Contents of section .got.plt:
-// GOTPLT-NEXT: 12000 00000000 00000000 00000000 20100100
-// GOTPLT-NEXT: 12010 20100100
// GOTPLT: Contents of section .got:
-// GOTPLT-NEXT: 13078 00000000 00000000 00100100 04100100
+// GOTPLT-NEXT: 12078 00000000 00000000 00100100 04100100
+// GOTPLT: Contents of section .got.plt:
+// GOTPLT-NEXT: 13000 00000000 00000000 00000000 20100100
+// GOTPLT-NEXT: 13010 20100100
// DISASM: Disassembly of section .text:
// DISASM-NEXT: foo:
@@ -45,7 +45,7 @@
// DISASM-NEXT: $a:
// DISASM-NEXT: 11020: 04 e0 2d e5 str lr, [sp, #-4]!
// DISASM-NEXT: 11024: 00 e6 8f e2 add lr, pc, #0, #12
-// DISASM-NEXT: 11028: 00 ea 8e e2 add lr, lr, #0, #20
+// DISASM-NEXT: 11028: 01 ea 8e e2 add lr, lr, #4096
// DISASM-NEXT: 1102c: dc ff be e5 ldr pc, [lr, #4060]!
// DISASM: $d:
// DISASM-NEXT: 11030: d4 d4 d4 d4 .word 0xd4d4d4d4
@@ -54,25 +54,25 @@
// DISASM-NEXT: 1103c: d4 d4 d4 d4 .word 0xd4d4d4d4
// DISASM: $a:
// DISASM-NEXT: 11040: 00 c6 8f e2 add r12, pc, #0, #12
-// DISASM-NEXT: 11044: 00 ca 8c e2 add r12, r12, #0, #20
+// DISASM-NEXT: 11044: 01 ca 8c e2 add r12, r12, #4096
// DISASM-NEXT: 11048: c4 ff bc e5 ldr pc, [r12, #4036]!
// DISASM: $d:
// DISASM-NEXT: 1104c: d4 d4 d4 d4 .word 0xd4d4d4d4
// DISASM: $a:
// DISASM-NEXT: 11050: 00 c6 8f e2 add r12, pc, #0, #12
-// DISASM-NEXT: 11054: 00 ca 8c e2 add r12, r12, #0, #20
+// DISASM-NEXT: 11054: 01 ca 8c e2 add r12, r12, #4096
// DISASM-NEXT: 11058: b8 ff bc e5 ldr pc, [r12, #4024]!
// DISASM: $d:
// DISASM-NEXT: 1105c: d4 d4 d4 d4 .word 0xd4d4d4d4
// DISASM: $a:
// DISASM-NEXT: 11060: 00 c6 8f e2 add r12, pc, #0, #12
-// DISASM-NEXT: 11064: 02 ca 8c e2 add r12, r12, #8192
+// DISASM-NEXT: 11064: 01 ca 8c e2 add r12, r12, #4096
// DISASM-NEXT: 11068: 18 f0 bc e5 ldr pc, [r12, #24]!
// DISASM: $d:
// DISASM-NEXT: 1106c: d4 d4 d4 d4 .word 0xd4d4d4d4
// DISASM: $a:
// DISASM-NEXT: 11070: 00 c6 8f e2 add r12, pc, #0, #12
-// DISASM-NEXT: 11074: 02 ca 8c e2 add r12, r12, #8192
+// DISASM-NEXT: 11074: 01 ca 8c e2 add r12, r12, #4096
// DISASM-NEXT: 11078: 0c f0 bc e5 ldr pc, [r12, #12]!
// DISASM: $d:
// DISASM-NEXT: 1107c: d4 d4 d4 d4 .word 0xd4d4d4d4
Modified: lld/trunk/test/ELF/arm-pie-relative.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-pie-relative.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-pie-relative.s (original)
+++ lld/trunk/test/ELF/arm-pie-relative.s Wed Mar 13 20:47:45 2019
@@ -19,7 +19,7 @@ sym:
// CHECK: Relocations [
// CHECK-NEXT: Section (4) .rel.dyn {
-// CHECK-NEXT: 0x3058 R_ARM_RELATIVE
+// CHECK-NEXT: 0x2058 R_ARM_RELATIVE
// GOT: Contents of section .got:
-// GOT-NEXT: 3058 00200000
+// GOT-NEXT: 2058 00300000
Modified: lld/trunk/test/ELF/arm-plt-reloc.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-plt-reloc.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-plt-reloc.s (original)
+++ lld/trunk/test/ELF/arm-plt-reloc.s Wed Mar 13 20:47:45 2019
@@ -52,7 +52,7 @@ _start:
// DSO-NEXT: 1020: 04 e0 2d e5 str lr, [sp, #-4]!
// (0x1024 + 8) + (0 RoR 12) + (0 RoR 20) + (0xfdc) = 0x2008 = .got.plt[3]
// DSO-NEXT: 1024: 00 e6 8f e2 add lr, pc, #0, #12
-// DSO-NEXT: 1028: 00 ea 8e e2 add lr, lr, #0, #20
+// DSO-NEXT: 1028: 01 ea 8e e2 add lr, lr, #4096
// DSO-NEXT: 102c: dc ff be e5 ldr pc, [lr, #4060]!
// DSO: $d:
// DSO-NEXT: 1030: d4 d4 d4 d4 .word 0xd4d4d4d4
@@ -62,21 +62,21 @@ _start:
// DSO: $a:
// (0x1040 + 8) + (0 RoR 12) + (0 RoR 20) + (0xfc4) = 0x200c
// DSO-NEXT: 1040: 00 c6 8f e2 add r12, pc, #0, #12
-// DSO-NEXT: 1044: 00 ca 8c e2 add r12, r12, #0, #20
+// DSO-NEXT: 1044: 01 ca 8c e2 add r12, r12, #4096
// DSO-NEXT: 1048: c4 ff bc e5 ldr pc, [r12, #4036]!
// DSO: $d:
// DSO-NEXT: 104c: d4 d4 d4 d4 .word 0xd4d4d4d4
// DSO: $a:
// (0x1050 + 8) + (0 RoR 12) + (0 RoR 20) + (0xfb8) = 0x2010
// DSO-NEXT: 1050: 00 c6 8f e2 add r12, pc, #0, #12
-// DSO-NEXT: 1054: 00 ca 8c e2 add r12, r12, #0, #20
+// DSO-NEXT: 1054: 01 ca 8c e2 add r12, r12, #4096
// DSO-NEXT: 1058: b8 ff bc e5 ldr pc, [r12, #4024]!
// DSO: $d:
// DSO-NEXT: 105c: d4 d4 d4 d4 .word 0xd4d4d4d4
// DSO: $a:
// (0x1060 + 8) + (0 RoR 12) + (0 RoR 20) + (0xfac) = 0x2014
// DSO-NEXT: 1060: 00 c6 8f e2 add r12, pc, #0, #12
-// DSO-NEXT: 1064: 00 ca 8c e2 add r12, r12, #0, #20
+// DSO-NEXT: 1064: 01 ca 8c e2 add r12, r12, #4096
// DSO-NEXT: 1068: ac ff bc e5 ldr pc, [r12, #4012]!
// DSO: $d:
// DSO-NEXT: 106c: d4 d4 d4 d4 .word 0xd4d4d4d4
@@ -88,7 +88,7 @@ _start:
// DSOREL-NEXT: SHF_ALLOC
// DSOREL-NEXT: SHF_WRITE
// DSOREL-NEXT: ]
-// DSOREL-NEXT: Address: 0x2000
+// DSOREL-NEXT: Address: 0x3000
// DSOREL-NEXT: Offset:
// DSOREL-NEXT: Size: 24
// DSOREL-NEXT: Link:
@@ -97,9 +97,9 @@ _start:
// DSOREL-NEXT: EntrySize:
// DSOREL: Relocations [
// DSOREL-NEXT: Section {{.*}} .rel.plt {
-// DSOREL-NEXT: 0x200C R_ARM_JUMP_SLOT func1 0x0
-// DSOREL-NEXT: 0x2010 R_ARM_JUMP_SLOT func2 0x0
-// DSOREL-NEXT: 0x2014 R_ARM_JUMP_SLOT func3 0x0
+// DSOREL-NEXT: 0x300C R_ARM_JUMP_SLOT func1 0x0
+// DSOREL-NEXT: 0x3010 R_ARM_JUMP_SLOT func2 0x0
+// DSOREL-NEXT: 0x3014 R_ARM_JUMP_SLOT func3 0x0
// Test a large separation between the .plt and .got.plt
// The .got.plt and .plt displacement is large but still within the range
Modified: lld/trunk/test/ELF/arm-thumb-interwork-shared.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-thumb-interwork-shared.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-thumb-interwork-shared.s (original)
+++ lld/trunk/test/ELF/arm-thumb-interwork-shared.s Wed Mar 13 20:47:45 2019
@@ -33,7 +33,7 @@ sym1:
// PLT-NEXT: $a:
// PLT-NEXT: 1020: 04 e0 2d e5 str lr, [sp, #-4]!
// PLT-NEXT: 1024: 00 e6 8f e2 add lr, pc, #0, #12
-// PLT-NEXT: 1028: 00 ea 8e e2 add lr, lr, #0, #20
+// PLT-NEXT: 1028: 01 ea 8e e2 add lr, lr, #4096
// PLT-NEXT: 102c: dc ff be e5 ldr pc, [lr, #4060]!
// PLT: $d:
// PLT-NEXT: 1030: d4 d4 d4 d4 .word 0xd4d4d4d4
@@ -42,13 +42,13 @@ sym1:
// PLT-NEXT: 103c: d4 d4 d4 d4 .word 0xd4d4d4d4
// PLT: $a:
// PLT-NEXT: 1040: 00 c6 8f e2 add r12, pc, #0, #12
-// PLT-NEXT: 1044: 00 ca 8c e2 add r12, r12, #0, #20
+// PLT-NEXT: 1044: 01 ca 8c e2 add r12, r12, #4096
// PLT-NEXT: 1048: c4 ff bc e5 ldr pc, [r12, #4036]!
// PLT: $d:
// PLT-NEXT: 104c: d4 d4 d4 d4 .word 0xd4d4d4d4
// PLT: $a:
// PLT-NEXT: 1050: 00 c6 8f e2 add r12, pc, #0, #12
-// PLT-NEXT: 1054: 00 ca 8c e2 add r12, r12, #0, #20
+// PLT-NEXT: 1054: 01 ca 8c e2 add r12, r12, #4096
// PLT-NEXT: 1058: b8 ff bc e5 ldr pc, [r12, #4024]!
// PLT: $d:
// PLT-NEXT: 105c: d4 d4 d4 d4 .word 0xd4d4d4d4
Modified: lld/trunk/test/ELF/arm-thumb-plt-range-thunk-os.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-thumb-plt-range-thunk-os.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-thumb-plt-range-thunk-os.s (original)
+++ lld/trunk/test/ELF/arm-thumb-plt-range-thunk-os.s Wed Mar 13 20:47:45 2019
@@ -87,7 +87,7 @@ far_nonpreemptible_alias:
// CHECK4-NEXT: $a:
// CHECK4-NEXT: 4000010: 04 e0 2d e5 str lr, [sp, #-4]!
// CHECK4-NEXT: 4000014: 00 e6 8f e2 add lr, pc, #0, #12
-// CHECK4-NEXT: 4000018: 00 ea 8e e2 add lr, lr, #0, #20
+// CHECK4-NEXT: 4000018: 01 ea 8e e2 add lr, lr, #4096
// CHECK4-NEXT: 400001c: ec ff be e5 ldr pc, [lr, #4076]!
// CHECK4: $d:
// CHECK4-NEXT: 4000020: d4 d4 d4 d4 .word 0xd4d4d4d4
@@ -96,19 +96,19 @@ far_nonpreemptible_alias:
// CHECK4-NEXT: 400002c: d4 d4 d4 d4 .word 0xd4d4d4d4
// CHECK4: $a:
// CHECK4-NEXT: 4000030: 00 c6 8f e2 add r12, pc, #0, #12
-// CHECK4-NEXT: 4000034: 00 ca 8c e2 add r12, r12, #0, #20
+// CHECK4-NEXT: 4000034: 01 ca 8c e2 add r12, r12, #4096
// CHECK4-NEXT: 4000038: d4 ff bc e5 ldr pc, [r12, #4052]!
// CHECK4: $d:
// CHECK4-NEXT: 400003c: d4 d4 d4 d4 .word 0xd4d4d4d4
// CHECK4: $a:
// CHECK4-NEXT: 4000040: 00 c6 8f e2 add r12, pc, #0, #12
-// CHECK4-NEXT: 4000044: 00 ca 8c e2 add r12, r12, #0, #20
+// CHECK4-NEXT: 4000044: 01 ca 8c e2 add r12, r12, #4096
// CHECK4-NEXT: 4000048: c8 ff bc e5 ldr pc, [r12, #4040]!
// CHECK4: $d:
// CHECK4-NEXT: 400004c: d4 d4 d4 d4 .word 0xd4d4d4d4
// CHECK4: $a:
// CHECK4-NEXT: 4000050: 00 c6 8f e2 add r12, pc, #0, #12
-// CHECK4-NEXT: 4000054: 00 ca 8c e2 add r12, r12, #0, #20
+// CHECK4-NEXT: 4000054: 01 ca 8c e2 add r12, r12, #4096
// CHECK4-NEXT: 4000058: bc ff bc e5 ldr pc, [r12, #4028]!
// CHECK4: $d:
// CHECK4-NEXT: 400005c: d4 d4 d4 d4 .word 0xd4d4d4d4
Modified: lld/trunk/test/ELF/arm-thumb-plt-reloc.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-thumb-plt-reloc.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-thumb-plt-reloc.s (original)
+++ lld/trunk/test/ELF/arm-thumb-plt-reloc.s Wed Mar 13 20:47:45 2019
@@ -62,7 +62,7 @@ _start:
// DSOARM-NEXT: 1020: 04 e0 2d e5 str lr, [sp, #-4]!
// (0x1024 + 8) + (0 RoR 12) + (0 RoR 20) + (0xfdc) = 0x2008 = .got.plt[3]
// DSOARM-NEXT: 1024: 00 e6 8f e2 add lr, pc, #0, #12
-// DSOARM-NEXT: 1028: 00 ea 8e e2 add lr, lr, #0, #20
+// DSOARM-NEXT: 1028: 01 ea 8e e2 add lr, lr, #4096
// DSOARM-NEXT: 102c: dc ff be e5 ldr pc, [lr, #4060]!
// DSOARM: $d:
@@ -73,21 +73,21 @@ _start:
// DSOARM: $a:
// (0x1040 + 8) + (0 RoR 12) + (0 RoR 20) + (0xfc4) = 0x200c
// DSOARM-NEXT: 1040: 00 c6 8f e2 add r12, pc, #0, #12
-// DSOARM-NEXT: 1044: 00 ca 8c e2 add r12, r12, #0, #20
+// DSOARM-NEXT: 1044: 01 ca 8c e2 add r12, r12, #4096
// DSOARM-NEXT: 1048: c4 ff bc e5 ldr pc, [r12, #4036]!
// DSOARM: $d:
// DSOARM-NEXT: 104c: d4 d4 d4 d4 .word 0xd4d4d4d4
// DSOARM: $a:
// (0x1050 + 8) + (0 RoR 12) + (0 RoR 20) + (0xfb8) = 0x2010
// DSOARM-NEXT: 1050: 00 c6 8f e2 add r12, pc, #0, #12
-// DSOARM-NEXT: 1054: 00 ca 8c e2 add r12, r12, #0, #20
+// DSOARM-NEXT: 1054: 01 ca 8c e2 add r12, r12, #4096
// DSOARM-NEXT: 1058: b8 ff bc e5 ldr pc, [r12, #4024]!
// DSOARM: $d:
// DSOARM-NEXT: 105c: d4 d4 d4 d4 .word 0xd4d4d4d4
// DSOARM: $a:
// (0x1060 + 8) + (0 RoR 12) + (0 RoR 20) + (0xfac) = 0x2014
// DSOARM-NEXT: 1060: 00 c6 8f e2 add r12, pc, #0, #12
-// DSOARM-NEXT: 1064: 00 ca 8c e2 add r12, r12, #0, #20
+// DSOARM-NEXT: 1064: 01 ca 8c e2 add r12, r12, #4096
// DSOARM-NEXT: 1068: ac ff bc e5 ldr pc, [r12, #4012]!
// DSOARM: $d:
// DSOARM-NEXT: 106c: d4 d4 d4 d4 .word 0xd4d4d4d4
@@ -98,7 +98,7 @@ _start:
// DSOREL-NEXT: SHF_ALLOC
// DSOREL-NEXT: SHF_WRITE
// DSOREL-NEXT: ]
-// DSOREL-NEXT: Address: 0x2000
+// DSOREL-NEXT: Address: 0x3000
// DSOREL-NEXT: Offset:
// DSOREL-NEXT: Size: 24
// DSOREL-NEXT: Link:
@@ -107,6 +107,6 @@ _start:
// DSOREL-NEXT: EntrySize:
// DSOREL: Relocations [
// DSOREL-NEXT: Section (4) .rel.plt {
-// DSOREL-NEXT: 0x200C R_ARM_JUMP_SLOT func1 0x0
-// DSOREL-NEXT: 0x2010 R_ARM_JUMP_SLOT func2 0x0
-// DSOREL-NEXT: 0x2014 R_ARM_JUMP_SLOT func3 0x0
+// DSOREL-NEXT: 0x300C R_ARM_JUMP_SLOT func1 0x0
+// DSOREL-NEXT: 0x3010 R_ARM_JUMP_SLOT func2 0x0
+// DSOREL-NEXT: 0x3014 R_ARM_JUMP_SLOT func3 0x0
Modified: lld/trunk/test/ELF/arm-thunk-multipass-plt.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-thunk-multipass-plt.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-thunk-multipass-plt.s (original)
+++ lld/trunk/test/ELF/arm-thunk-multipass-plt.s Wed Mar 13 20:47:45 2019
@@ -73,7 +73,7 @@ preemptible2:
// CHECK-PLT-NEXT: 0000000000d00020 $a:
// CHECK-PLT-NEXT: d00020: 04 e0 2d e5 str lr, [sp, #-4]!
// CHECK-PLT-NEXT: d00024: 00 e6 8f e2 add lr, pc, #0, #12
-// CHECK-PLT-NEXT: d00028: 00 ea 8e e2 add lr, lr, #0, #20
+// CHECK-PLT-NEXT: d00028: 01 ea 8e e2 add lr, lr, #4096
// CHECK-PLT-NEXT: d0002c: dc ff be e5 ldr pc, [lr, #4060]!
// CHECK-PLT: 0000000000d00030 $d:
// CHECK-PLT-NEXT: d00030: d4 d4 d4 d4 .word 0xd4d4d4d4
@@ -82,13 +82,13 @@ preemptible2:
// CHECK-PLT-NEXT: d0003c: d4 d4 d4 d4 .word 0xd4d4d4d4
// CHECK-PLT: 0000000000d00040 $a:
// CHECK-PLT-NEXT: d00040: 00 c6 8f e2 add r12, pc, #0, #12
-// CHECK-PLT-NEXT: d00044: 00 ca 8c e2 add r12, r12, #0, #20
+// CHECK-PLT-NEXT: d00044: 01 ca 8c e2 add r12, r12, #4096
// CHECK-PLT-NEXT: d00048: c4 ff bc e5 ldr pc, [r12, #4036]!
// CHECK-PLT: 0000000000d0004c $d:
// CHECK-PLT-NEXT: d0004c: d4 d4 d4 d4 .word 0xd4d4d4d4
// CHECK-PLT: 0000000000d00050 $a:
// CHECK-PLT-NEXT: d00050: 00 c6 8f e2 add r12, pc, #0, #12
-// CHECK-PLT-NEXT: d00054: 00 ca 8c e2 add r12, r12, #0, #20
+// CHECK-PLT-NEXT: d00054: 01 ca 8c e2 add r12, r12, #4096
// CHECK-PLT-NEXT: d00058: b8 ff bc e5 ldr pc, [r12, #4024]!
// CHECK-PLT: 0000000000d0005c $d:
// CHECK-PLT-NEXT: d0005c: d4 d4 d4 d4 .word 0xd4d4d4d4
Modified: lld/trunk/test/ELF/arm-thunk-re-add.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-thunk-re-add.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-thunk-re-add.s (original)
+++ lld/trunk/test/ELF/arm-thunk-re-add.s Wed Mar 13 20:47:45 2019
@@ -102,7 +102,7 @@ callers:
// CHECK3-NEXT: $a:
// CHECK3-NEXT: 1100020: 04 e0 2d e5 str lr, [sp, #-4]!
// CHECK3-NEXT: 1100024: 00 e6 8f e2 add lr, pc, #0, #12
-// CHECK3-NEXT: 1100028: 00 ea 8e e2 add lr, lr, #0, #20
+// CHECK3-NEXT: 1100028: 01 ea 8e e2 add lr, lr, #4096
// CHECK3-NEXT: 110002c: dc ff be e5 ldr pc, [lr, #4060]!
// CHECK3: $d:
// CHECK3-NEXT: 1100030: d4 d4 d4 d4 .word 0xd4d4d4d4
@@ -111,13 +111,13 @@ callers:
// CHECK3-NEXT: 110003c: d4 d4 d4 d4 .word 0xd4d4d4d4
// CHECK3: $a:
// CHECK3-NEXT: 1100040: 00 c6 8f e2 add r12, pc, #0, #12
-// CHECK3-NEXT: 1100044: 00 ca 8c e2 add r12, r12, #0, #20
+// CHECK3-NEXT: 1100044: 01 ca 8c e2 add r12, r12, #4096
// CHECK3-NEXT: 1100048: c4 ff bc e5 ldr pc, [r12, #4036]!
// CHECK3: $d:
// CHECK3-NEXT: 110004c: d4 d4 d4 d4 .word 0xd4d4d4d4
// CHECK3: $a:
// CHECK3-NEXT: 1100050: 00 c6 8f e2 add r12, pc, #0, #12
-// CHECK3-NEXT: 1100054: 00 ca 8c e2 add r12, r12, #0, #20
+// CHECK3-NEXT: 1100054: 01 ca 8c e2 add r12, r12, #4096
// CHECK3-NEXT: 1100058: b8 ff bc e5 ldr pc, [r12, #4024]!
// CHECK3: $d:
// CHECK3-NEXT: 110005c: d4 d4 d4 d4 .word 0xd4d4d4d4
Modified: lld/trunk/test/ELF/arm-tls-norelax-gd-ie.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-tls-norelax-gd-ie.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-tls-norelax-gd-ie.s (original)
+++ lld/trunk/test/ELF/arm-tls-norelax-gd-ie.s Wed Mar 13 20:47:45 2019
@@ -25,6 +25,6 @@ func:
.Lt0: .word y(TLSGD) + (. - .L0 - 8)
// CHECK: Dynamic Relocations {
-// CHECK-NEXT: 0x13078 R_ARM_TLS_DTPMOD32 y
-// CHECK-NEXT: 0x1307C R_ARM_TLS_DTPOFF32 y
-// CHECK-NEXT: 0x1200C R_ARM_JUMP_SLOT __tls_get_addr
+// CHECK-NEXT: 0x12078 R_ARM_TLS_DTPMOD32 y
+// CHECK-NEXT: 0x1207C R_ARM_TLS_DTPOFF32 y
+// CHECK-NEXT: 0x1300C R_ARM_JUMP_SLOT __tls_get_addr
Modified: lld/trunk/test/ELF/arm-tls-norelax-gd-le.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-tls-norelax-gd-le.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-tls-norelax-gd-le.s (original)
+++ lld/trunk/test/ELF/arm-tls-norelax-gd-le.s Wed Mar 13 20:47:45 2019
@@ -33,7 +33,7 @@ x:
// CHECK: Contents of section .got:
// Module index is always 1 for executable
-// CHECK-NEXT: 13060 01000000 00000000
+// CHECK-NEXT: 12060 01000000 00000000
// Without any definition of __tls_get_addr we get an error
Modified: lld/trunk/test/ELF/arm-tls-norelax-ie-le.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-tls-norelax-ie-le.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-tls-norelax-ie-le.s (original)
+++ lld/trunk/test/ELF/arm-tls-norelax-ie-le.s Wed Mar 13 20:47:45 2019
@@ -38,4 +38,4 @@ x2:
// CHECK: Contents of section .got:
// x1 at offset 0x20 from TP, x2 at offset 0x24 from TP. Offsets include TCB size of 0x20
-// CHECK-NEXT: 13064 20000000 24000000
+// CHECK-NEXT: 12064 20000000 24000000
Modified: lld/trunk/test/ELF/arm-tls-norelax-ld-le.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/arm-tls-norelax-ld-le.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/arm-tls-norelax-ld-le.s (original)
+++ lld/trunk/test/ELF/arm-tls-norelax-ld-le.s Wed Mar 13 20:47:45 2019
@@ -32,4 +32,4 @@ x:
.word 10
// CHECK: Contents of section .got:
-// CHECK-NEXT: 13064 01000000 00000000
+// CHECK-NEXT: 12064 01000000 00000000
Modified: lld/trunk/test/ELF/combrelocs.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/combrelocs.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/combrelocs.s (original)
+++ lld/trunk/test/ELF/combrelocs.s Wed Mar 13 20:47:45 2019
@@ -10,31 +10,31 @@
# CHECK: Relocations [
# CHECK-NEXT: Section ({{.*}}) .rela.dyn {
# CHECK-NEXT: Relocation {
-# CHECK-NEXT: Offset: 0x1000
+# CHECK-NEXT: Offset: 0x2000
# CHECK-NEXT: Type: R_X86_64_64
# CHECK-NEXT: Symbol: aaa (1)
# CHECK-NEXT: Addend: 0x0
# CHECK-NEXT: }
# CHECK-NEXT: Relocation {
-# CHECK-NEXT: Offset: 0x1018
+# CHECK-NEXT: Offset: 0x2018
# CHECK-NEXT: Type: R_X86_64_64
# CHECK-NEXT: Symbol: aaa (1)
# CHECK-NEXT: Addend: 0x0
# CHECK-NEXT: }
# CHECK-NEXT: Relocation {
-# CHECK-NEXT: Offset: 0x1010
+# CHECK-NEXT: Offset: 0x2010
# CHECK-NEXT: Type: R_X86_64_64
# CHECK-NEXT: Symbol: bbb (2)
# CHECK-NEXT: Addend: 0x0
# CHECK-NEXT: }
# CHECK-NEXT: Relocation {
-# CHECK-NEXT: Offset: 0x1008
+# CHECK-NEXT: Offset: 0x2008
# CHECK-NEXT: Type: R_X86_64_64
# CHECK-NEXT: Symbol: ccc (3)
# CHECK-NEXT: Addend: 0x0
# CHECK-NEXT: }
# CHECK-NEXT: Relocation {
-# CHECK-NEXT: Offset: 0x1020
+# CHECK-NEXT: Offset: 0x2020
# CHECK-NEXT: Type: R_X86_64_64
# CHECK-NEXT: Symbol: ddd (4)
# CHECK-NEXT: Addend: 0x0
@@ -52,31 +52,31 @@
# NOCOMB: Relocations [
# NOCOMB-NEXT: Section ({{.*}}) .rela.dyn {
# NOCOMB-NEXT: Relocation {
-# NOCOMB-NEXT: Offset: 0x1000
+# NOCOMB-NEXT: Offset: 0x2000
# NOCOMB-NEXT: Type: R_X86_64_64
# NOCOMB-NEXT: Symbol: aaa (1)
# NOCOMB-NEXT: Addend: 0x0
# NOCOMB-NEXT: }
# NOCOMB-NEXT: Relocation {
-# NOCOMB-NEXT: Offset: 0x1008
+# NOCOMB-NEXT: Offset: 0x2008
# NOCOMB-NEXT: Type: R_X86_64_64
# NOCOMB-NEXT: Symbol: ccc (3)
# NOCOMB-NEXT: Addend: 0x0
# NOCOMB-NEXT: }
# NOCOMB-NEXT: Relocation {
-# NOCOMB-NEXT: Offset: 0x1010
+# NOCOMB-NEXT: Offset: 0x2010
# NOCOMB-NEXT: Type: R_X86_64_64
# NOCOMB-NEXT: Symbol: bbb (2)
# NOCOMB-NEXT: Addend: 0x0
# NOCOMB-NEXT: }
# NOCOMB-NEXT: Relocation {
-# NOCOMB-NEXT: Offset: 0x1018
+# NOCOMB-NEXT: Offset: 0x2018
# NOCOMB-NEXT: Type: R_X86_64_64
# NOCOMB-NEXT: Symbol: aaa (1)
# NOCOMB-NEXT: Addend: 0x0
# NOCOMB-NEXT: }
# NOCOMB-NEXT: Relocation {
-# NOCOMB-NEXT: Offset: 0x1020
+# NOCOMB-NEXT: Offset: 0x2020
# NOCOMB-NEXT: Type: R_X86_64_64
# NOCOMB-NEXT: Symbol: ddd (4)
# NOCOMB-NEXT: Addend: 0x0
Modified: lld/trunk/test/ELF/copy-rel-pie.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/copy-rel-pie.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/copy-rel-pie.s (original)
+++ lld/trunk/test/ELF/copy-rel-pie.s Wed Mar 13 20:47:45 2019
@@ -27,21 +27,21 @@ _start:
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x4000
+// CHECK-NEXT: Address: 0x3020
// CHECK: Relocations [
// CHECK-NEXT: Section (4) .rela.dyn {
-// CHECK-NEXT: 0x4000 R_X86_64_COPY foo 0x0
+// CHECK-NEXT: 0x3020 R_X86_64_COPY foo 0x0
// CHECK-NEXT: }
// CHECK-NEXT: Section (5) .rela.plt {
-// CHECK-NEXT: 0x2018 R_X86_64_JUMP_SLOT bar 0x0
+// CHECK-NEXT: 0x3018 R_X86_64_JUMP_SLOT bar 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
// (0x1010 + 0x10) - 0x1005 = 27
-// 0x4000 - 0x100a = 12278
+// 0x3020 - 0x100a = 8214
// DISASM: Disassembly of section .text:
// DISASM-NEXT: _start:
// DISASM-NEXT: 1000: e8 1b 00 00 00 callq 27
-// DISASM-NEXT: 1005: e8 f6 2f 00 00 callq 12278 <foo>
+// DISASM-NEXT: 1005: e8 16 20 00 00 callq 8214 <foo>
Modified: lld/trunk/test/ELF/dynamic-got.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/dynamic-got.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/dynamic-got.s (original)
+++ lld/trunk/test/ELF/dynamic-got.s Wed Mar 13 20:47:45 2019
@@ -3,23 +3,6 @@
// RUN: ld.lld --hash-style=sysv %t.o -o %t.so -shared
// RUN: llvm-readobj -s -l -section-data -r %t.so | FileCheck %s
-// CHECK: Name: .got.plt
-// CHECK-NEXT: Type: SHT_PROGBITS
-// CHECK-NEXT: Flags [
-// CHECK-NEXT: SHF_ALLOC
-// CHECK-NEXT: SHF_WRITE
-// CHECK-NEXT: ]
-// CHECK-NEXT: Address:
-// CHECK-NEXT: Offset:
-// CHECK-NEXT: Size:
-// CHECK-NEXT: Link:
-// CHECK-NEXT: Info:
-// CHECK-NEXT: AddressAlignment:
-// CHECK-NEXT: EntrySize:
-// CHECK-NEXT: SectionData (
-// CHECK-NEXT: 0000: 00300000 00000000 00000000
-// CHECK-NEXT: )
-
// CHECK: Name: .got
// CHECK-NEXT: Type: SHT_PROGBITS
// CHECK-NEXT: Flags [
@@ -34,19 +17,36 @@
// CHECK-NEXT: AddressAlignment:
// CHECK-NEXT: EntrySize:
// CHECK-NEXT: SectionData (
-// CHECK-NEXT: 0000: 00300000
+// CHECK-NEXT: 0000: 00200000
// CHECK-NEXT: )
+// CHECK: Name: .got.plt
+// CHECK-NEXT: Type: SHT_PROGBITS
+// CHECK-NEXT: Flags [
+// CHECK-NEXT: SHF_ALLOC
+// CHECK-NEXT: SHF_WRITE
+// CHECK-NEXT: ]
+// CHECK-NEXT: Address:
+// CHECK-NEXT: Offset:
+// CHECK-NEXT: Size:
+// CHECK-NEXT: Link:
+// CHECK-NEXT: Info:
+// CHECK-NEXT: AddressAlignment:
+// CHECK-NEXT: EntrySize:
+// CHECK-NEXT: SectionData (
+// CHECK-NEXT: 0000: 00200000 00000000 00000000
+// CHECK-NEXT: )
+
// CHECK: Relocations [
// CHECK-NEXT: Section ({{.*}}) .rel.dyn {
-// CHECK-NEXT: 0x3050 R_386_RELATIVE - 0x0
+// CHECK-NEXT: 0x2050 R_386_RELATIVE - 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
// CHECK: Type: PT_DYNAMIC
-// CHECK-NEXT: Offset: 0x3000
-// CHECK-NEXT: VirtualAddress: 0x3000
-// CHECK-NEXT: PhysicalAddress: 0x3000
+// CHECK-NEXT: Offset: 0x2000
+// CHECK-NEXT: VirtualAddress: 0x2000
+// CHECK-NEXT: PhysicalAddress: 0x2000
calll .L0$pb
.L0$pb:
Modified: lld/trunk/test/ELF/dynamic-list-weak-archive.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/dynamic-list-weak-archive.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/dynamic-list-weak-archive.s (original)
+++ lld/trunk/test/ELF/dynamic-list-weak-archive.s Wed Mar 13 20:47:45 2019
@@ -10,7 +10,7 @@
# CHECK: Relocations [
# CHECK-NEXT: Section ({{.*}}) .rela.plt {
-# CHECK-NEXT: 0x2018 R_X86_64_JUMP_SLOT foo
+# CHECK-NEXT: 0x3018 R_X86_64_JUMP_SLOT foo
# CHECK-NEXT: }
# CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/dynamic-reloc-index.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/dynamic-reloc-index.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/dynamic-reloc-index.s (original)
+++ lld/trunk/test/ELF/dynamic-reloc-index.s Wed Mar 13 20:47:45 2019
@@ -9,7 +9,7 @@
// CHECK: Relocations [
// CHECK-NEXT: Section ({{.*}}) .rela.plt {
-// CHECK-NEXT: 0x202018 R_X86_64_JUMP_SLOT bar 0x0
+// CHECK-NEXT: 0x203018 R_X86_64_JUMP_SLOT bar 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/dynamic-reloc.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/dynamic-reloc.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/dynamic-reloc.s (original)
+++ lld/trunk/test/ELF/dynamic-reloc.s Wed Mar 13 20:47:45 2019
@@ -18,7 +18,7 @@
// CHECK-NEXT: Offset:
// CHECK-NEXT: Size: [[RELASIZE:.*]]
// CHECK-NEXT: Link: 1
-// CHECK-NEXT: Info: 7
+// CHECK-NEXT: Info: 8
// CHECK-NEXT: AddressAlignment: 8
// CHECK-NEXT: EntrySize: 24
@@ -33,7 +33,7 @@
// CHECK: Relocations [
// CHECK-NEXT: Section ({{.*}}) .rela.plt {
// CHECK-NEXT: Relocation {
-// CHECK-NEXT: Offset: 0x202018
+// CHECK-NEXT: Offset: 0x203018
// CHECK-NEXT: Type: R_X86_64_JUMP_SLOT
// CHECK-NEXT: Symbol: bar
// CHECK-NEXT: Addend: 0x0
Modified: lld/trunk/test/ELF/emit-relocs-merge.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/emit-relocs-merge.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/emit-relocs-merge.s (original)
+++ lld/trunk/test/ELF/emit-relocs-merge.s Wed Mar 13 20:47:45 2019
@@ -5,12 +5,12 @@
# CHECK: Relocations [
# CHECK-NEXT: Section ({{.*}}) .rela.dyn {
-# CHECK-NEXT: 0x1000 R_X86_64_64 zed 0x0
-# CHECK-NEXT: 0x1008 R_X86_64_64 zed 0x0
+# CHECK-NEXT: 0x2000 R_X86_64_64 zed 0x0
+# CHECK-NEXT: 0x2008 R_X86_64_64 zed 0x0
# CHECK-NEXT: }
# CHECK-NEXT: Section ({{.*}}) .rela.data {
-# CHECK-NEXT: 0x1000 R_X86_64_64 zed 0x0
-# CHECK-NEXT: 0x1008 R_X86_64_64 zed 0x0
+# CHECK-NEXT: 0x2000 R_X86_64_64 zed 0x0
+# CHECK-NEXT: 0x2008 R_X86_64_64 zed 0x0
# CHECK-NEXT: }
# CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/emit-relocs-shared.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/emit-relocs-shared.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/emit-relocs-shared.s (original)
+++ lld/trunk/test/ELF/emit-relocs-shared.s Wed Mar 13 20:47:45 2019
@@ -8,9 +8,9 @@
# CHECK: Relocations [
# CHECK-NEXT: Section {{.*}} .rela.dyn {
-# CHECK-NEXT: 0x1000 R_X86_64_64 foo 0x0
+# CHECK-NEXT: 0x2000 R_X86_64_64 foo 0x0
# CHECK-NEXT: }
# CHECK-NEXT: Section {{.*}} .rela.data {
-# CHECK-NEXT: 0x1000 R_X86_64_64 foo 0x0
+# CHECK-NEXT: 0x2000 R_X86_64_64 foo 0x0
# CHECK-NEXT: }
# CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/executable-undefined-ignoreall.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/executable-undefined-ignoreall.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/executable-undefined-ignoreall.s (original)
+++ lld/trunk/test/ELF/executable-undefined-ignoreall.s Wed Mar 13 20:47:45 2019
@@ -5,7 +5,7 @@
# CHECK: Relocations [
# CHECK-NEXT: Section ({{.*}}) .rela.plt {
-# CHECK-NEXT: 0x2018 R_X86_64_JUMP_SLOT foo 0x0
+# CHECK-NEXT: 0x3018 R_X86_64_JUMP_SLOT foo 0x0
# CHECK-NEXT: }
# CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/gc-sections-linker-defined-symbol.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/gc-sections-linker-defined-symbol.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/gc-sections-linker-defined-symbol.s (original)
+++ lld/trunk/test/ELF/gc-sections-linker-defined-symbol.s Wed Mar 13 20:47:45 2019
@@ -10,7 +10,7 @@
# CHECK-NEXT: Binding: Global
# CHECK-NEXT: Type: None
# CHECK-NEXT: Other:
-# CHECK-NEXT: Section: .dynamic
+# CHECK-NEXT: Section: .data
.data
.globl g
Modified: lld/trunk/test/ELF/global-offset-table-position-aarch64.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/global-offset-table-position-aarch64.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/global-offset-table-position-aarch64.s (original)
+++ lld/trunk/test/ELF/global-offset-table-position-aarch64.s Wed Mar 13 20:47:45 2019
@@ -20,7 +20,7 @@ _start:
.long _GLOBAL_OFFSET_TABLE_ - .
// CHECK: Name: _GLOBAL_OFFSET_TABLE_ (11)
-// CHECK-NEXT: Value: 0x20008
+// CHECK-NEXT: Value: 0x30008
// CHECK-NEXT: Size: 0
// CHECK-NEXT: Binding: Local (0x0)
// CHECK-NEXT: Type: None (0x0)
Modified: lld/trunk/test/ELF/global-offset-table-position-arm.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/global-offset-table-position-arm.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/global-offset-table-position-arm.s (original)
+++ lld/trunk/test/ELF/global-offset-table-position-arm.s Wed Mar 13 20:47:45 2019
@@ -25,7 +25,7 @@ _start:
.data
// CHECK: Name: _GLOBAL_OFFSET_TABLE_
-// CHECK-NEXT: Value: 0x3068
+// CHECK-NEXT: Value: 0x2068
// CHECK-NEXT: Size: 0
// CHECK-NEXT: Binding: Local
// CHECK-NEXT: Type: None
Modified: lld/trunk/test/ELF/global-offset-table-position-i386.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/global-offset-table-position-i386.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/global-offset-table-position-i386.s (original)
+++ lld/trunk/test/ELF/global-offset-table-position-i386.s Wed Mar 13 20:47:45 2019
@@ -22,7 +22,7 @@ addl $_GLOBAL_OFFSET_TABLE_, %eax
calll f at PLT
// CHECK: Name: _GLOBAL_OFFSET_TABLE_ (1)
-// CHECK-NEXT: Value: 0x2000
+// CHECK-NEXT: Value: 0x3000
// CHECK-NEXT: Size: 0
// CHECK-NEXT: Binding: Local (0x0)
// CHECK-NEXT: Type: None (0x0)
Modified: lld/trunk/test/ELF/global-offset-table-position.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/global-offset-table-position.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/global-offset-table-position.s (original)
+++ lld/trunk/test/ELF/global-offset-table-position.s Wed Mar 13 20:47:45 2019
@@ -22,7 +22,7 @@ callq f at PLT
.long _GLOBAL_OFFSET_TABLE_ - .
// CHECK: Name: _GLOBAL_OFFSET_TABLE_
-// CHECK-NEXT: Value: 0x2008
+// CHECK-NEXT: Value: 0x3008
// CHECK-NEXT: Size: 0
// CHECK-NEXT: Binding: Local
// CHECK-NEXT: Type: None (0x0)
Modified: lld/trunk/test/ELF/global_offset_table_shared.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/global_offset_table_shared.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/global_offset_table_shared.s (original)
+++ lld/trunk/test/ELF/global_offset_table_shared.s Wed Mar 13 20:47:45 2019
@@ -5,7 +5,7 @@
.long _GLOBAL_OFFSET_TABLE_ - .
// CHECK: Name: _GLOBAL_OFFSET_TABLE_
-// CHECK-NEXT: Value: 0x2000
+// CHECK-NEXT: Value: 0x3000
// CHECK-NEXT: Size: 0
// CHECK-NEXT: Binding: Local
// CHECK-NEXT: Type: None
Modified: lld/trunk/test/ELF/gnu-ifunc-canon.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/gnu-ifunc-canon.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/gnu-ifunc-canon.s (original)
+++ lld/trunk/test/ELF/gnu-ifunc-canon.s Wed Mar 13 20:47:45 2019
@@ -69,17 +69,17 @@
// Make sure the static relocations look right, both with and without headers.
// DUMP: Contents of section .plt:
// DUMP-NEXT: 201010
-// DUMP: Contents of section .data:
-// DUMP-NEXT: 202000 10102000 00000000 11102000 00000000
// DUMP: Contents of section .got:
-// DUMP-NEXT: 203000 10102000 00000000
+// DUMP-NEXT: 202000 10102000 00000000
+// DUMP: Contents of section .data:
+// DUMP-NEXT: 203000 10102000 00000000 11102000 00000000
// DUMP2: Contents of section .plt:
// DUMP2-NEXT: 201010
-// DUMP2: Contents of section .data:
-// DUMP2-NEXT: 202000 40102000 00000000 41102000 00000000
// DUMP2: Contents of section .got:
-// DUMP2-NEXT: 203000 40102000 00000000
+// DUMP2-NEXT: 202000 40102000 00000000
+// DUMP2: Contents of section .data:
+// DUMP2-NEXT: 203000 40102000 00000000 41102000 00000000
lea ifunc at gotpcrel(%rip), %rbx
Modified: lld/trunk/test/ELF/gnu-ifunc-dso.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/gnu-ifunc-dso.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/gnu-ifunc-dso.s (original)
+++ lld/trunk/test/ELF/gnu-ifunc-dso.s Wed Mar 13 20:47:45 2019
@@ -6,7 +6,7 @@
# RUN: llvm-readobj -dyn-relocations %t | FileCheck %s
# CHECK: Dynamic Relocations {
-# CHECK-NEXT: 0x1000 R_X86_64_64 foo 0x0
+# CHECK-NEXT: 0x2000 R_X86_64_64 foo 0x0
# CHECK-NEXT: }
.data
Modified: lld/trunk/test/ELF/gnu-ifunc-dyntags.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/gnu-ifunc-dyntags.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/gnu-ifunc-dyntags.s (original)
+++ lld/trunk/test/ELF/gnu-ifunc-dyntags.s Wed Mar 13 20:47:45 2019
@@ -9,7 +9,7 @@
# CHECK: Name Size VMA
# CHECK: .rela.plt 00000030 0000000000000210
-# CHECK: .got.plt 00000010 0000000000002000
+# CHECK: .got.plt 00000010 0000000000003000
# TAGS: Relocations [
# TAGS-NEXT: Section {{.*}} .rela.plt {
@@ -21,7 +21,7 @@
# TAGS: Tag Type Name/Value
# TAGS: 0x0000000000000017 JMPREL 0x210
# TAGS: 0x0000000000000002 PLTRELSZ 48
-# TAGS: 0x0000000000000003 PLTGOT 0x2000
+# TAGS: 0x0000000000000003 PLTGOT 0x3000
# TAGS: 0x0000000000000014 PLTREL RELA
.text
Modified: lld/trunk/test/ELF/gnu-ifunc-plt-i386.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/gnu-ifunc-plt-i386.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/gnu-ifunc-plt-i386.s (original)
+++ lld/trunk/test/ELF/gnu-ifunc-plt-i386.s Wed Mar 13 20:47:45 2019
@@ -10,16 +10,16 @@
// Check that the IRELATIVE relocations are after the JUMP_SLOT in the plt
// CHECK: Relocations [
// CHECK-NEXT: Section (4) .rel.plt {
-// CHECK-NEXT: 0x40200C R_386_JUMP_SLOT bar2
-// CHECK-NEXT: 0x402010 R_386_JUMP_SLOT zed2
-// CHECK-NEXT: 0x402014 R_386_IRELATIVE
-// CHECK-NEXT: 0x402018 R_386_IRELATIVE
+// CHECK-NEXT: 0x40300C R_386_JUMP_SLOT bar2
+// CHECK-NEXT: 0x403010 R_386_JUMP_SLOT zed2
+// CHECK-NEXT: 0x403014 R_386_IRELATIVE
+// CHECK-NEXT: 0x403018 R_386_IRELATIVE
// Check that IRELATIVE .got.plt entries point to ifunc resolver and not
// back to the plt entry + 6.
// GOTPLT: Contents of section .got.plt:
-// GOTPLT: 402000 00304000 00000000 00000000 36104000
-// GOTPLT-NEXT: 402010 46104000 00104000 01104000
+// GOTPLT: 403000 00204000 00000000 00000000 36104000
+// GOTPLT-NEXT: 403010 46104000 00104000 01104000
// Check that the PLTRELSZ tag includes the IRELATIVE relocations
// CHECK: DynamicSection [
@@ -38,26 +38,26 @@
// DISASM-NEXT: 401011: e8 2a 00 00 00 calll 42
// DISASM-NEXT: Disassembly of section .plt:
// DISASM-NEXT: .plt:
-// DISASM-NEXT: 401020: ff 35 04 20 40 00 pushl 4202500
-// DISASM-NEXT: 401026: ff 25 08 20 40 00 jmpl *4202504
+// DISASM-NEXT: 401020: ff 35 04 30 40 00 pushl 4206596
+// DISASM-NEXT: 401026: ff 25 08 30 40 00 jmpl *4206600
// DISASM-NEXT: 40102c: 90 nop
// DISASM-NEXT: 40102d: 90 nop
// DISASM-NEXT: 40102e: 90 nop
// DISASM-NEXT: 40102f: 90 nop
// DISASM-EMPTY:
// DISASM-NEXT: bar2 at plt:
-// DISASM-NEXT: 401030: ff 25 0c 20 40 00 jmpl *4202508
+// DISASM-NEXT: 401030: ff 25 0c 30 40 00 jmpl *4206604
// DISASM-NEXT: 401036: 68 00 00 00 00 pushl $0
// DISASM-NEXT: 40103b: e9 e0 ff ff ff jmp -32 <.plt>
// DISASM-EMPTY:
// DISASM-NEXT: zed2 at plt:
-// DISASM-NEXT: 401040: ff 25 10 20 40 00 jmpl *4202512
+// DISASM-NEXT: 401040: ff 25 10 30 40 00 jmpl *4206608
// DISASM-NEXT: 401046: 68 08 00 00 00 pushl $8
// DISASM-NEXT: 40104b: e9 d0 ff ff ff jmp -48 <.plt>
-// DISASM-NEXT: 401050: ff 25 14 20 40 00 jmpl *4202516
+// DISASM-NEXT: 401050: ff 25 14 30 40 00 jmpl *4206612
// DISASM-NEXT: 401056: 68 30 00 00 00 pushl $48
// DISASM-NEXT: 40105b: e9 e0 ff ff ff jmp -32 <zed2 at plt>
-// DISASM-NEXT: 401060: ff 25 18 20 40 00 jmpl *4202520
+// DISASM-NEXT: 401060: ff 25 18 30 40 00 jmpl *4206616
// DISASM-NEXT: 401066: 68 38 00 00 00 pushl $56
// DISASM-NEXT: 40106b: e9 d0 ff ff ff jmp -48 <zed2 at plt>
Modified: lld/trunk/test/ELF/gnu-ifunc-plt.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/gnu-ifunc-plt.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/gnu-ifunc-plt.s (original)
+++ lld/trunk/test/ELF/gnu-ifunc-plt.s Wed Mar 13 20:47:45 2019
@@ -10,17 +10,17 @@
// Check that the IRELATIVE relocations are after the JUMP_SLOT in the plt
// CHECK: Relocations [
// CHECK-NEXT: Section (4) .rela.plt {
-// CHECK-NEXT: 0x202018 R_X86_64_JUMP_SLOT bar2 0x0
-// CHECK-NEXT: 0x202020 R_X86_64_JUMP_SLOT zed2 0x0
-// CHECK-NEXT: 0x202028 R_X86_64_IRELATIVE - 0x201000
-// CHECK-NEXT: 0x202030 R_X86_64_IRELATIVE - 0x201001
+// CHECK-NEXT: 0x203018 R_X86_64_JUMP_SLOT bar2 0x0
+// CHECK-NEXT: 0x203020 R_X86_64_JUMP_SLOT zed2 0x0
+// CHECK-NEXT: 0x203028 R_X86_64_IRELATIVE - 0x201000
+// CHECK-NEXT: 0x203030 R_X86_64_IRELATIVE - 0x201001
// Check that .got.plt entries point back to PLT header
// GOTPLT: Contents of section .got.plt:
-// GOTPLT-NEXT: 202000 00302000 00000000 00000000 00000000
-// GOTPLT-NEXT: 202010 00000000 00000000 36102000 00000000
-// GOTPLT-NEXT: 202020 46102000 00000000 56102000 00000000
-// GOTPLT-NEXT: 202030 66102000 00000000
+// GOTPLT-NEXT: 203000 00202000 00000000 00000000 00000000
+// GOTPLT-NEXT: 203010 00000000 00000000 36102000 00000000
+// GOTPLT-NEXT: 203020 46102000 00000000 56102000 00000000
+// GOTPLT-NEXT: 203030 66102000 00000000
// Check that the PLTRELSZ tag includes the IRELATIVE relocations
// CHECK: DynamicSection [
@@ -39,23 +39,23 @@
// DISASM-NEXT: 201011: e8 2a 00 00 00 callq 42
// DISASM-NEXT: Disassembly of section .plt:
// DISASM-NEXT: .plt:
-// DISASM-NEXT: 201020: ff 35 e2 0f 00 00 pushq 4066(%rip)
-// DISASM-NEXT: 201026: ff 25 e4 0f 00 00 jmpq *4068(%rip)
+// DISASM-NEXT: 201020: ff 35 e2 1f 00 00 pushq 8162(%rip)
+// DISASM-NEXT: 201026: ff 25 e4 1f 00 00 jmpq *8164(%rip)
// DISASM-NEXT: 20102c: 0f 1f 40 00 nopl (%rax)
// DISASM-EMPTY:
// DISASM-NEXT: bar2 at plt:
-// DISASM-NEXT: 201030: ff 25 e2 0f 00 00 jmpq *4066(%rip)
+// DISASM-NEXT: 201030: ff 25 e2 1f 00 00 jmpq *8162(%rip)
// DISASM-NEXT: 201036: 68 00 00 00 00 pushq $0
// DISASM-NEXT: 20103b: e9 e0 ff ff ff jmp -32 <.plt>
// DISASM-EMPTY:
// DISASM-NEXT: zed2 at plt:
-// DISASM-NEXT: 201040: ff 25 da 0f 00 00 jmpq *4058(%rip)
+// DISASM-NEXT: 201040: ff 25 da 1f 00 00 jmpq *8154(%rip)
// DISASM-NEXT: 201046: 68 01 00 00 00 pushq $1
// DISASM-NEXT: 20104b: e9 d0 ff ff ff jmp -48 <.plt>
-// DISASM-NEXT: 201050: ff 25 d2 0f 00 00 jmpq *4050(%rip)
+// DISASM-NEXT: 201050: ff 25 d2 1f 00 00 jmpq *8146(%rip)
// DISASM-NEXT: 201056: 68 00 00 00 00 pushq $0
// DISASM-NEXT: 20105b: e9 e0 ff ff ff jmp -32 <zed2 at plt>
-// DISASM-NEXT: 201060: ff 25 ca 0f 00 00 jmpq *4042(%rip)
+// DISASM-NEXT: 201060: ff 25 ca 1f 00 00 jmpq *8138(%rip)
// DISASM-NEXT: 201066: 68 01 00 00 00 pushq $1
// DISASM-NEXT: 20106b: e9 d0 ff ff ff jmp -48 <zed2 at plt>
Modified: lld/trunk/test/ELF/gnu-ifunc-shared.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/gnu-ifunc-shared.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/gnu-ifunc-shared.s (original)
+++ lld/trunk/test/ELF/gnu-ifunc-shared.s Wed Mar 13 20:47:45 2019
@@ -20,28 +20,28 @@
// DISASM-NEXT: 1012: c3 retq
// DISASM-NEXT: Disassembly of section .plt:
// DISASM-NEXT: .plt:
-// DISASM-NEXT: 1020: ff 35 e2 0f 00 00 pushq 4066(%rip)
-// DISASM-NEXT: 1026: ff 25 e4 0f 00 00 jmpq *4068(%rip)
+// DISASM-NEXT: 1020: ff 35 e2 1f 00 00 pushq 8162(%rip)
+// DISASM-NEXT: 1026: ff 25 e4 1f 00 00 jmpq *8164(%rip)
// DISASM-NEXT: 102c: 0f 1f 40 00 nopl (%rax)
// DISASM-EMPTY:
// DISASM-NEXT: fct2 at plt:
-// DISASM-NEXT: 1030: ff 25 e2 0f 00 00 jmpq *4066(%rip)
+// DISASM-NEXT: 1030: ff 25 e2 1f 00 00 jmpq *8162(%rip)
// DISASM-NEXT: 1036: 68 00 00 00 00 pushq $0
// DISASM-NEXT: 103b: e9 e0 ff ff ff jmp -32 <.plt>
// DISASM-EMPTY:
// DISASM-NEXT: f2 at plt:
-// DISASM-NEXT: 1040: ff 25 da 0f 00 00 jmpq *4058(%rip)
+// DISASM-NEXT: 1040: ff 25 da 1f 00 00 jmpq *8154(%rip)
// DISASM-NEXT: 1046: 68 01 00 00 00 pushq $1
// DISASM-NEXT: 104b: e9 d0 ff ff ff jmp -48 <.plt>
-// DISASM-NEXT: 1050: ff 25 d2 0f 00 00 jmpq *4050(%rip)
+// DISASM-NEXT: 1050: ff 25 d2 1f 00 00 jmpq *8146(%rip)
// DISASM-NEXT: 1056: 68 00 00 00 00 pushq $0
// DISASM-NEXT: 105b: e9 e0 ff ff ff jmp -32 <f2 at plt>
// CHECK: Relocations [
// CHECK-NEXT: Section (4) .rela.plt {
-// CHECK-NEXT: 0x2018 R_X86_64_JUMP_SLOT fct2 0x0
-// CHECK-NEXT: 0x2020 R_X86_64_JUMP_SLOT f2 0x0
-// CHECK-NEXT: 0x2028 R_X86_64_IRELATIVE - 0x1000
+// CHECK-NEXT: 0x3018 R_X86_64_JUMP_SLOT fct2 0x0
+// CHECK-NEXT: 0x3020 R_X86_64_JUMP_SLOT f2 0x0
+// CHECK-NEXT: 0x3028 R_X86_64_IRELATIVE - 0x1000
// Hidden expect IRELATIVE
.globl fct
Modified: lld/trunk/test/ELF/got-aarch64.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/got-aarch64.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/got-aarch64.s (original)
+++ lld/trunk/test/ELF/got-aarch64.s Wed Mar 13 20:47:45 2019
@@ -10,7 +10,7 @@
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x30090
+// CHECK-NEXT: Address: 0x20090
// CHECK-NEXT: Offset:
// CHECK-NEXT: Size: 8
// CHECK-NEXT: Link: 0
@@ -19,7 +19,7 @@
// CHECK: Relocations [
// CHECK-NEXT: Section ({{.*}}) .rela.dyn {
-// CHECK-NEXT: 0x30090 R_AARCH64_GLOB_DAT dat 0x0
+// CHECK-NEXT: 0x20090 R_AARCH64_GLOB_DAT dat 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -27,7 +27,7 @@
// 0x20098 & 0xff8 = 0x98 = 152
// DISASM: main:
-// DISASM-NEXT: 10000: 00 01 00 90 adrp x0, #131072
+// DISASM-NEXT: 10000: 80 00 00 90 adrp x0, #65536
// DISASM-NEXT: 10004: 00 48 40 f9 ldr x0, [x0, #144]
.global main,foo,dat
Modified: lld/trunk/test/ELF/got-plt-header.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/got-plt-header.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/got-plt-header.s (original)
+++ lld/trunk/test/ELF/got-plt-header.s Wed Mar 13 20:47:45 2019
@@ -7,25 +7,25 @@
// Check that the first .got.plt entry has the address of the dynamic table.
+// CHECK: Type: SHT_DYNAMIC
+// CHECK-NEXT: Flags [
+// CHECK-NEXT: SHF_ALLOC
+// CHECK-NEXT: SHF_WRITE
+// CHECK-NEXT: ]
+// CHECK-NEXT: Address: 0x2000
+
// CHECK: Name: .got.plt
// CHECK-NEXT: Type: SHT_PROGBITS
// CHECK-NEXT: Flags [
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x2000
-// CHECK-NEXT: Offset: 0x2000
+// CHECK-NEXT: Address: 0x3000
+// CHECK-NEXT: Offset: 0x3000
// CHECK-NEXT: Size: 32
// CHECK-NEXT: Link: 0
// CHECK-NEXT: Info: 0
// CHECK-NEXT: AddressAlignment: 8
// CHECK-NEXT: EntrySize: 0
// CHECK-NEXT: SectionData (
-// CHECK-NEXT: 0000: 00300000 00000000 00000000 00000000
-
-// CHECK: Type: SHT_DYNAMIC
-// CHECK-NEXT: Flags [
-// CHECK-NEXT: SHF_ALLOC
-// CHECK-NEXT: SHF_WRITE
-// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x3000
+// CHECK-NEXT: 0000: 00200000 00000000 00000000 00000000
Modified: lld/trunk/test/ELF/got32x-i386.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/got32x-i386.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/got32x-i386.s (original)
+++ lld/trunk/test/ELF/got32x-i386.s Wed Mar 13 20:47:45 2019
@@ -33,13 +33,13 @@
## 73728 == 0x12000 == ADDR(.got)
# CHECK: _start:
-# CHECK-NEXT: 401001: 8b 05 {{.*}} movl 4206592, %eax
-# CHECK-NEXT: 401007: 8b 1d {{.*}} movl 4206592, %ebx
+# CHECK-NEXT: 401001: 8b 05 {{.*}} movl 4202496, %eax
+# CHECK-NEXT: 401007: 8b 1d {{.*}} movl 4202496, %ebx
# CHECK-NEXT: 40100d: 8b 80 {{.*}} movl -4(%eax), %eax
# CHECK-NEXT: 401013: 8b 83 {{.*}} movl -4(%ebx), %eax
# CHECK: Sections:
# CHECK: Name Size VMA
-# CHECK: .got 00000004 0000000000403000
+# CHECK: .got 00000004 0000000000402000
# RUN: not ld.lld %S/Inputs/i386-got32x-baseless.elf -o %t1 -pie 2>&1 | \
# RUN: FileCheck %s --check-prefix=ERR
Modified: lld/trunk/test/ELF/gotpc-relax-nopic.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/gotpc-relax-nopic.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/gotpc-relax-nopic.s (original)
+++ lld/trunk/test/ELF/gotpc-relax-nopic.s Wed Mar 13 20:47:45 2019
@@ -36,8 +36,8 @@
# SEC-PIC-NEXT: SHF_ALLOC
# SEC-PIC-NEXT: SHF_WRITE
# SEC-PIC-NEXT: ]
-# SEC-PIC-NEXT: Address: 0x30A0
-# SEC-PIC-NEXT: Offset: 0x30A0
+# SEC-PIC-NEXT: Address: 0x20A0
+# SEC-PIC-NEXT: Offset: 0x20A0
# SEC-PIC-NEXT: Size: 8
# SEC-PIC-NEXT: Link:
# SEC-PIC-NEXT: Info:
@@ -46,7 +46,7 @@
# SEC-PIC-NEXT: }
# SEC-PIC: Relocations [
# SEC-PIC-NEXT: Section ({{.*}}) .rela.dyn {
-# SEC-PIC-NEXT: 0x30A0 R_X86_64_RELATIVE - 0x2000
+# SEC-PIC-NEXT: 0x20A0 R_X86_64_RELATIVE - 0x3000
# SEC-PIC-NEXT: }
# SEC-PIC-NEXT: ]
# SEC-PIC: 0x000000006FFFFFF9 RELACOUNT 1
@@ -56,15 +56,15 @@
## 0x102a + 4207 + 7 = 0x20A0
# DISASM-PIC: Disassembly of section .text:
# DISASM-PIC-NEXT: _start:
-# DISASM-PIC-NEXT: 1000: {{.*}} adcq 8345(%rip), %rax
-# DISASM-PIC-NEXT: 1007: {{.*}} addq 8338(%rip), %rbx
-# DISASM-PIC-NEXT: 100e: {{.*}} andq 8331(%rip), %rcx
-# DISASM-PIC-NEXT: 1015: {{.*}} cmpq 8324(%rip), %rdx
-# DISASM-PIC-NEXT: 101c: {{.*}} orq 8317(%rip), %rdi
-# DISASM-PIC-NEXT: 1023: {{.*}} sbbq 8310(%rip), %rsi
-# DISASM-PIC-NEXT: 102a: {{.*}} subq 8303(%rip), %rbp
-# DISASM-PIC-NEXT: 1031: {{.*}} xorq 8296(%rip), %r8
-# DISASM-PIC-NEXT: 1038: {{.*}} testq %r15, 8289(%rip)
+# DISASM-PIC-NEXT: 1000: {{.*}} adcq 4249(%rip), %rax
+# DISASM-PIC-NEXT: 1007: {{.*}} addq 4242(%rip), %rbx
+# DISASM-PIC-NEXT: 100e: {{.*}} andq 4235(%rip), %rcx
+# DISASM-PIC-NEXT: 1015: {{.*}} cmpq 4228(%rip), %rdx
+# DISASM-PIC-NEXT: 101c: {{.*}} orq 4221(%rip), %rdi
+# DISASM-PIC-NEXT: 1023: {{.*}} sbbq 4214(%rip), %rsi
+# DISASM-PIC-NEXT: 102a: {{.*}} subq 4207(%rip), %rbp
+# DISASM-PIC-NEXT: 1031: {{.*}} xorq 4200(%rip), %r8
+# DISASM-PIC-NEXT: 1038: {{.*}} testq %r15, 4193(%rip)
.data
.type bar, @object
Modified: lld/trunk/test/ELF/hexagon-shared.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/hexagon-shared.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/hexagon-shared.s (original)
+++ lld/trunk/test/ELF/hexagon-shared.s Wed Mar 13 20:47:45 2019
@@ -25,22 +25,22 @@ jumpr r0
# R_HEX_GOT_16_X
r0 = add(r1,##bar at GOT)
-# PLT: { immext(#65472
-# PLT: r28 = add(pc,##65488) }
+# PLT: { immext(#131008
+# PLT: r28 = add(pc,##131024) }
# PLT: { r14 -= add(r28,#16)
# PLT: r15 = memw(r28+#8)
# PLT: r28 = memw(r28+#4) }
# PLT: { r14 = asr(r14,#2)
# PLT: jumpr r28 }
# PLT: { trap0(#219) }
-# PLT: immext(#65472)
-# PLT: r14 = add(pc,##65472) }
+# PLT: immext(#131008)
+# PLT: r14 = add(pc,##131008) }
# PLT: r28 = memw(r14+#0) }
# PLT: jumpr r28 }
-# TEXT: 10000: 00 00 02 00 00020000
+# TEXT: 10000: 00 00 01 00 00010000
# TEXT: { call 0x10050 }
-# TEXT: r0 = add(r1,##65664) }
+# TEXT: r0 = add(r1,##-65408) }
# GOT: .got:
-# GOT: 30080: 00 00 00 00 00000000 <unknown>
+# GOT: 20080: 00 00 00 00 00000000 <unknown>
Modified: lld/trunk/test/ELF/i386-gotpc.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/i386-gotpc.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/i386-gotpc.s (original)
+++ lld/trunk/test/ELF/i386-gotpc.s Wed Mar 13 20:47:45 2019
@@ -6,23 +6,23 @@
movl $_GLOBAL_OFFSET_TABLE_, %eax
-// CHECK: Name: .got.plt
+// CHECK: Name: .got
// CHECK-NEXT: Type: SHT_PROGBITS
// CHECK-NEXT: Flags [
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x2000
+// CHECK-NEXT: Address: 0x2030
-// CHECK: Name: .got
+// CHECK: Name: .got.plt
// CHECK-NEXT: Type: SHT_PROGBITS
// CHECK-NEXT: Flags [
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x3030
+// CHECK-NEXT: Address: 0x3000
// DISASM: Disassembly of section .text:
// DISASM-NEXT: .text:
-// DISASM-NEXT: 1000: {{.*}} movl $8240, %eax
-// 0x3030 - 0x1000 = 0x2030
+// DISASM-NEXT: 1000: {{.*}} movl $4144, %eax
+// 0x2030 - 0x1000 = 0x1030
Modified: lld/trunk/test/ELF/i386-merge.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/i386-merge.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/i386-merge.s (original)
+++ lld/trunk/test/ELF/i386-merge.s Wed Mar 13 20:47:45 2019
@@ -27,8 +27,8 @@
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x1000
-// CHECK-NEXT: Offset: 0x1000
+// CHECK-NEXT: Address: 0x2000
+// CHECK-NEXT: Offset: 0x2000
// CHECK-NEXT: Size: 4
// CHECK-NEXT: Link: 0
// CHECK-NEXT: Info: 0
Modified: lld/trunk/test/ELF/i386-retpoline-nopic-linkerscript.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/i386-retpoline-nopic-linkerscript.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/i386-retpoline-nopic-linkerscript.s (original)
+++ lld/trunk/test/ELF/i386-retpoline-nopic-linkerscript.s Wed Mar 13 20:47:45 2019
@@ -14,9 +14,9 @@
// CHECK: Disassembly of section .plt:
// CHECK-NEXT: .plt:
-// CHECK-NEXT: 10: ff 35 84 00 00 00 pushl 132
+// CHECK-NEXT: 10: ff 35 ec 00 00 00 pushl 236
// CHECK-NEXT: 16: 50 pushl %eax
-// CHECK-NEXT: 17: a1 88 00 00 00 movl 136, %eax
+// CHECK-NEXT: 17: a1 f0 00 00 00 movl 240, %eax
// CHECK-NEXT: 1c: e8 0f 00 00 00 calll 15 <.plt+0x20>
// CHECK-NEXT: 21: f3 90 pause
// CHECK-NEXT: 23: 0f ae e8 lfence
@@ -37,7 +37,7 @@
// CHECK-NEXT: 3e: c3 retl
// CHECK-NEXT: 3f: cc int3
// CHECK-NEXT: 40: 50 pushl %eax
-// CHECK-NEXT: 41: a1 8c 00 00 00 movl 140, %eax
+// CHECK-NEXT: 41: a1 f4 00 00 00 movl 244, %eax
// CHECK-NEXT: 46: e8 e5 ff ff ff calll -27 <.plt+0x20>
// CHECK-NEXT: 4b: e9 d1 ff ff ff jmp -47 <.plt+0x11>
// CHECK-NEXT: 50: 68 00 00 00 00 pushl $0
@@ -49,7 +49,7 @@
// CHECK-NEXT: 5e: cc int3
// CHECK-NEXT: 5f: cc int3
// CHECK-NEXT: 60: 50 pushl %eax
-// CHECK-NEXT: 61: a1 90 00 00 00 movl 144, %eax
+// CHECK-NEXT: 61: a1 f8 00 00 00 movl 248, %eax
// CHECK-NEXT: 66: e8 c5 ff ff ff calll -59 <.plt+0x20>
// CHECK-NEXT: 6b: e9 b1 ff ff ff jmp -79 <.plt+0x11>
// CHECK-NEXT: 70: 68 08 00 00 00 pushl $8
Modified: lld/trunk/test/ELF/i386-retpoline-nopic.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/i386-retpoline-nopic.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/i386-retpoline-nopic.s (original)
+++ lld/trunk/test/ELF/i386-retpoline-nopic.s Wed Mar 13 20:47:45 2019
@@ -8,9 +8,9 @@
// CHECK: Disassembly of section .plt:
// CHECK-NEXT: .plt:
-// CHECK-NEXT: 401010: ff 35 04 20 40 00 pushl 4202500
+// CHECK-NEXT: 401010: ff 35 04 30 40 00 pushl 4206596
// CHECK-NEXT: 401016: 50 pushl %eax
-// CHECK-NEXT: 401017: a1 08 20 40 00 movl 4202504, %eax
+// CHECK-NEXT: 401017: a1 08 30 40 00 movl 4206600, %eax
// CHECK-NEXT: 40101c: e8 0f 00 00 00 calll 15 <.plt+0x20>
// CHECK-NEXT: 401021: f3 90 pause
// CHECK-NEXT: 401023: 0f ae e8 lfence
@@ -31,7 +31,7 @@
// CHECK-NEXT: 40103e: c3 retl
// CHECK-NEXT: 40103f: cc int3
// CHECK-NEXT: 401040: 50 pushl %eax
-// CHECK-NEXT: 401041: a1 0c 20 40 00 movl 4202508, %eax
+// CHECK-NEXT: 401041: a1 0c 30 40 00 movl 4206604, %eax
// CHECK-NEXT: 401046: e8 e5 ff ff ff calll -27 <.plt+0x20>
// CHECK-NEXT: 40104b: e9 d1 ff ff ff jmp -47 <.plt+0x11>
// CHECK-NEXT: 401050: 68 00 00 00 00 pushl $0
@@ -43,7 +43,7 @@
// CHECK-NEXT: 40105e: cc int3
// CHECK-NEXT: 40105f: cc int3
// CHECK-NEXT: 401060: 50 pushl %eax
-// CHECK-NEXT: 401061: a1 10 20 40 00 movl 4202512, %eax
+// CHECK-NEXT: 401061: a1 10 30 40 00 movl 4206608, %eax
// CHECK-NEXT: 401066: e8 c5 ff ff ff calll -59 <.plt+0x20>
// CHECK-NEXT: 40106b: e9 b1 ff ff ff jmp -79 <.plt+0x11>
// CHECK-NEXT: 401070: 68 08 00 00 00 pushl $8
@@ -56,7 +56,7 @@
// CHECK-NEXT: 40107f: cc int3
// CHECK: Contents of section .got.plt:
-// CHECK-NEXT: 00304000 00000000 00000000 50104000
+// CHECK-NEXT: 00204000 00000000 00000000 50104000
// CHECK-NEXT: 70104000
.global _start
Modified: lld/trunk/test/ELF/i386-retpoline-pic-linkerscript.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/i386-retpoline-pic-linkerscript.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/i386-retpoline-pic-linkerscript.s (original)
+++ lld/trunk/test/ELF/i386-retpoline-pic-linkerscript.s Wed Mar 13 20:47:45 2019
@@ -14,9 +14,9 @@
// CHECK: Disassembly of section .plt:
// CHECK-NEXT: .plt:
-// CHECK-NEXT: 10: ff b3 84 00 00 00 pushl 132(%ebx)
+// CHECK-NEXT: 10: ff b3 ec 00 00 00 pushl 236(%ebx)
// CHECK-NEXT: 16: 50 pushl %eax
-// CHECK-NEXT: 17: 8b 83 88 00 00 00 movl 136(%ebx), %eax
+// CHECK-NEXT: 17: 8b 83 f0 00 00 00 movl 240(%ebx), %eax
// CHECK-NEXT: 1d: e8 0e 00 00 00 calll 14 <.plt+0x20>
// CHECK-NEXT: 22: f3 90 pause
// CHECK-NEXT: 24: 0f ae e8 lfence
@@ -36,7 +36,7 @@
// CHECK-NEXT: 3e: c3 retl
// CHECK-NEXT: 3f: cc int3
// CHECK-NEXT: 40: 50 pushl %eax
-// CHECK-NEXT: 41: 8b 83 8c 00 00 00 movl 140(%ebx), %eax
+// CHECK-NEXT: 41: 8b 83 f4 00 00 00 movl 244(%ebx), %eax
// CHECK-NEXT: 47: e8 e4 ff ff ff calll -28 <.plt+0x20>
// CHECK-NEXT: 4c: e9 d1 ff ff ff jmp -47 <.plt+0x12>
// CHECK-NEXT: 51: 68 00 00 00 00 pushl $0
@@ -47,7 +47,7 @@
// CHECK-NEXT: 5e: cc int3
// CHECK-NEXT: 5f: cc int3
// CHECK-NEXT: 60: 50 pushl %eax
-// CHECK-NEXT: 61: 8b 83 90 00 00 00 movl 144(%ebx), %eax
+// CHECK-NEXT: 61: 8b 83 f8 00 00 00 movl 248(%ebx), %eax
// CHECK-NEXT: 67: e8 c4 ff ff ff calll -60 <.plt+0x20>
// CHECK-NEXT: 6c: e9 b1 ff ff ff jmp -79 <.plt+0x12>
// CHECK-NEXT: 71: 68 08 00 00 00 pushl $8
Modified: lld/trunk/test/ELF/i386-retpoline-pic.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/i386-retpoline-pic.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/i386-retpoline-pic.s (original)
+++ lld/trunk/test/ELF/i386-retpoline-pic.s Wed Mar 13 20:47:45 2019
@@ -8,9 +8,9 @@
// CHECK: Disassembly of section .plt:
// CHECK-NEXT: .plt:
-// CHECK-NEXT: 1010: ff b3 04 20 00 00 pushl 8196(%ebx)
+// CHECK-NEXT: 1010: ff b3 04 30 00 00 pushl 12292(%ebx)
// CHECK-NEXT: 1016: 50 pushl %eax
-// CHECK-NEXT: 1017: 8b 83 08 20 00 00 movl 8200(%ebx), %eax
+// CHECK-NEXT: 1017: 8b 83 08 30 00 00 movl 12296(%ebx), %eax
// CHECK-NEXT: 101d: e8 0e 00 00 00 calll 14 <.plt+0x20>
// CHECK-NEXT: 1022: f3 90 pause
// CHECK-NEXT: 1024: 0f ae e8 lfence
@@ -30,7 +30,7 @@
// CHECK-NEXT: 103e: c3 retl
// CHECK-NEXT: 103f: cc int3
// CHECK-NEXT: 1040: 50 pushl %eax
-// CHECK-NEXT: 1041: 8b 83 0c 20 00 00 movl 8204(%ebx), %eax
+// CHECK-NEXT: 1041: 8b 83 0c 30 00 00 movl 12300(%ebx), %eax
// CHECK-NEXT: 1047: e8 e4 ff ff ff calll -28 <.plt+0x20>
// CHECK-NEXT: 104c: e9 d1 ff ff ff jmp -47 <.plt+0x12>
// CHECK-NEXT: 1051: 68 00 00 00 00 pushl $0
@@ -41,7 +41,7 @@
// CHECK-NEXT: 105e: cc int3
// CHECK-NEXT: 105f: cc int3
// CHECK-NEXT: 1060: 50 pushl %eax
-// CHECK-NEXT: 1061: 8b 83 10 20 00 00 movl 8208(%ebx), %eax
+// CHECK-NEXT: 1061: 8b 83 10 30 00 00 movl 12304(%ebx), %eax
// CHECK-NEXT: 1067: e8 c4 ff ff ff calll -60 <.plt+0x20>
// CHECK-NEXT: 106c: e9 b1 ff ff ff jmp -79 <.plt+0x12>
// CHECK-NEXT: 1071: 68 08 00 00 00 pushl $8
@@ -53,8 +53,8 @@
// CHECK-NEXT: 107f: cc int3
// CHECK: Contents of section .got.plt:
-// CHECK-NEXT: 2000 00300000 00000000 00000000 51100000
-// CHECK-NEXT: 2010 71100000
+// CHECK-NEXT: 3000 00200000 00000000 00000000 51100000
+// CHECK-NEXT: 3010 71100000
.global _start
_start:
Modified: lld/trunk/test/ELF/linkerscript/align-section-offset.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/linkerscript/align-section-offset.test?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/linkerscript/align-section-offset.test (original)
+++ lld/trunk/test/ELF/linkerscript/align-section-offset.test Wed Mar 13 20:47:45 2019
@@ -8,5 +8,5 @@ SECTIONS {
.foo : ALIGN(2M) { *(.foo) }
}
-# CHECK: .foo PROGBITS 0000000000200000 200000 000008 00 WA 0 0 2097152
-# CHECK: LOAD 0x200000 0x0000000000200000 0x0000000000200000 {{.*}} RW 0x200000
+# CHECK: .foo PROGBITS 0000000000200000 201000 000008 00 WA 0 0 2097152
+# CHECK: LOAD 0x001048 0x0000000000000048 0x0000000000000048 {{.*}} RW 0x200000
Modified: lld/trunk/test/ELF/linkerscript/emit-reloc.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/linkerscript/emit-reloc.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/linkerscript/emit-reloc.s (original)
+++ lld/trunk/test/ELF/linkerscript/emit-reloc.s Wed Mar 13 20:47:45 2019
@@ -9,9 +9,9 @@
# CHECK: Relocations [
# CHECK-NEXT: Section ({{.*}}) .rela.dyn {
-# CHECK-NEXT: 0x68 R_X86_64_64 .foo 0x0
+# CHECK-NEXT: 0xF8 R_X86_64_64 .foo 0x0
# CHECK-NEXT: }
# CHECK-NEXT: Section ({{.*}}) .rela.data {
-# CHECK-NEXT: 0x68 R_X86_64_64 .foo 0x0
+# CHECK-NEXT: 0xF8 R_X86_64_64 .foo 0x0
# CHECK-NEXT: }
# CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/linkerscript/orphan.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/linkerscript/orphan.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/linkerscript/orphan.s (original)
+++ lld/trunk/test/ELF/linkerscript/orphan.s Wed Mar 13 20:47:45 2019
@@ -9,15 +9,15 @@
# RUN: ld.lld -o %t1 --script %t.script %t
# RUN: llvm-objdump -section-headers %t1 | FileCheck %s
-## .jcr is a relro section and should be placed after other RW sections.
+## .jcr is a relro section and should be placed before other RW sections.
## .bss is SHT_NOBITS section and should be last RW section, so some space
## in ELF file could be saved.
# CHECK: 0 00000000 0000000000000000
# CHECK-NEXT: 1 .text 00000000 0000000000000000 TEXT
-# CHECK-NEXT: 2 .rw1 00000008 0000000000000000 DATA
-# CHECK-NEXT: 3 .rw2 00000008 0000000000000008 DATA
-# CHECK-NEXT: 4 .rw3 00000008 0000000000000010 DATA
-# CHECK-NEXT: 5 .jcr 00000008 0000000000000018 DATA
+# CHECK-NEXT: 2 .jcr 00000008 0000000000000000 DATA
+# CHECK-NEXT: 3 .rw1 00000008 0000000000000008 DATA
+# CHECK-NEXT: 4 .rw2 00000008 0000000000000010 DATA
+# CHECK-NEXT: 5 .rw3 00000008 0000000000000018 DATA
# CHECK-NEXT: 6 .bss 00000008 0000000000000020 BSS
.section .rw1, "aw"
Modified: lld/trunk/test/ELF/linkerscript/out-of-order.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/linkerscript/out-of-order.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/linkerscript/out-of-order.s (original)
+++ lld/trunk/test/ELF/linkerscript/out-of-order.s Wed Mar 13 20:47:45 2019
@@ -24,8 +24,8 @@
# CHECK: Sections:
# CHECK-NEXT: Idx Name Size VMA Type
# CHECK-NEXT: 0 00000000 0000000000000000
-# CHECK-NEXT: 1 .data 00000008 0000000000004000
-# CHECK-NEXT: 2 .dynamic 00000060 0000000000004008
+# CHECK-NEXT: 1 .dynamic 00000060 0000000000000000
+# CHECK-NEXT: 2 .data 00000008 0000000000004000
# CHECK-NEXT: 3 .dynsym 00000018 0000000000002000
# CHECK-NEXT: 4 .dynstr 00000001 0000000000002018
# CHECK-NEXT: 5 .hash 00000010 000000000000201c
Modified: lld/trunk/test/ELF/linkerscript/overlapping-sections.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/linkerscript/overlapping-sections.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/linkerscript/overlapping-sections.s (original)
+++ lld/trunk/test/ELF/linkerscript/overlapping-sections.s Wed Mar 13 20:47:45 2019
@@ -24,11 +24,11 @@
# BAD-LMA-LABEL: Program Headers:
# BAD-LMA-NEXT: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
# BAD-LMA-NEXT: LOAD 0x001000 0x0000000000000000 0x0000000000000000 0x000100 0x000100 R E 0x1000
+# BAD-LMA-NEXT: LOAD 0x001100 0x0000000000000100 0x0000000000000100 0x000070 0x000070 RW 0x1000
# BAD-LMA-NEXT: LOAD 0x002000 0x0000000000008000 0x0000000000008000 0x000100 0x000100 RW 0x1000
-# BAD-LMA-NEXT: LOAD 0x002800 0x0000000000008800 0x0000000000008080 0x000170 0x000170 RW 0x1000
# BAD-LMA-LABEL: Section to Segment mapping:
-# BAD-LMA: 01 .sec1
-# BAD-LMA: 02 .sec2 .dynamic
+# BAD-LMA: 01 .text .dynamic
+# BAD-LMA: 02 .sec1
# Now try a script where the virtual memory addresses overlap but ensure that the
# load addresses don't:
@@ -50,11 +50,11 @@
# BAD-VADDR-LABEL: Program Headers:
# BAD-VADDR-NEXT: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
# BAD-VADDR-NEXT: LOAD 0x001000 0x0000000000000000 0x0000000000000000 0x000100 0x000100 R E 0x1000
+# BAD-VADDR-NEXT: LOAD 0x001100 0x0000000000000100 0x0000000000000100 0x000070 0x000070 RW 0x1000
# BAD-VADDR-NEXT: LOAD 0x002000 0x0000000000008000 0x0000000000008000 0x000100 0x000100 RW 0x1000
-# BAD-VADDR-NEXT: LOAD 0x003020 0x0000000000008020 0x0000000000008800 0x000170 0x000170 RW 0x1000
# BAD-VADDR-LABEL: Section to Segment mapping:
-# BAD-VADDR: 01 .sec1
-# BAD-VADDR: 02 .sec2 .dynamic
+# BAD-VADDR: 01 .text .dynamic
+# BAD-VADDR: 02 .sec1
# Finally check the case where both LMA and vaddr overlap
@@ -66,8 +66,8 @@
# RUN: not ld.lld -o %t.so --script %t-both-overlap.script %t.o -shared 2>&1 | FileCheck %s -check-prefix BOTH-OVERLAP-ERR
# BOTH-OVERLAP-ERR: error: section .sec1 file range overlaps with .sec2
-# BOTH-OVERLAP-ERR-NEXT: >>> .sec1 range is [0x2000, 0x20FF]
-# BOTH-OVERLAP-ERR-NEXT: >>> .sec2 range is [0x2040, 0x213F]
+# BOTH-OVERLAP-ERR-NEXT: >>> .sec1 range is [0x9000, 0x90FF]
+# BOTH-OVERLAP-ERR-NEXT: >>> .sec2 range is [0x9040, 0x913F]
# BOTH-OVERLAP-ERR: error: section .sec1 virtual address range overlaps with .sec2
# BOTH-OVERLAP-ERR-NEXT: >>> .sec1 range is [0x8000, 0x80FF]
# BOTH-OVERLAP-ERR-NEXT: >>> .sec2 range is [0x8040, 0x813F]
@@ -93,14 +93,14 @@
# RUN: llvm-readobj -sections -program-headers -elf-output-style=GNU %t.so | FileCheck %s -check-prefix BAD-BOTH
# BAD-BOTH-LABEL: Section Headers:
-# BAD-BOTH: .sec1 PROGBITS 0000000000008000 002000 000100 00 WA 0 0 1
-# BAD-BOTH: .sec2 PROGBITS 0000000000008040 002040 000100 00 WA 0 0 1
+# BAD-BOTH: .sec1 PROGBITS 0000000000008000 009000 000100 00 WA 0 0 1
+# BAD-BOTH: .sec2 PROGBITS 0000000000008040 009040 000100 00 WA 0 0 1
# BAD-BOTH-LABEL: Program Headers:
# BAD-BOTH-NEXT: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
# BAD-BOTH-NEXT: LOAD 0x001000 0x0000000000000000 0x0000000000000000 0x000100 0x000100 R E 0x1000
-# BAD-BOTH-NEXT: LOAD 0x002000 0x0000000000008000 0x0000000000008000 0x0001b0 0x0001b0 RW 0x1000
+# BAD-BOTH-NEXT: LOAD 0x001100 0x0000000000000100 0x0000000000000100 0x008040 0x008040 RW 0x1000
# BAD-BOTH-LABEL: Section to Segment mapping:
-# BAD-BOTH: 01 .sec1 .sec2 .dynamic
+# BAD-BOTH: 01 .text .dynamic .sec1 .sec2
.section .first_sec,"aw", at progbits
.rept 0x100
Modified: lld/trunk/test/ELF/linkerscript/repsection-symbol.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/linkerscript/repsection-symbol.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/linkerscript/repsection-symbol.s (original)
+++ lld/trunk/test/ELF/linkerscript/repsection-symbol.s Wed Mar 13 20:47:45 2019
@@ -10,13 +10,13 @@
# RUN: llvm-readobj -t %t1 | FileCheck %s
# CHECK: Name: foo1
-# CHECK-NEXT: Value: 0x228
+# CHECK-NEXT: Value: 0x288
# CHECK: Name: foo2
-# CHECK-NEXT: Value: 0x230
+# CHECK-NEXT: Value: 0x290
# CHECK: Name: foo3
-# CHECK-NEXT: Value: 0x234
+# CHECK-NEXT: Value: 0x294
.section .foo.1,"a"
.long 1
Modified: lld/trunk/test/ELF/linkerscript/sort-non-script.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/linkerscript/sort-non-script.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/linkerscript/sort-non-script.s (original)
+++ lld/trunk/test/ELF/linkerscript/sort-non-script.s Wed Mar 13 20:47:45 2019
@@ -9,8 +9,8 @@
# CHECK-NEXT: .hash {{.*}} A
# CHECK-NEXT: .dynstr {{.*}} A
# CHECK-NEXT: .text {{.*}} AX
-# CHECK-NEXT: foo {{.*}} WA
# CHECK-NEXT: .dynamic {{.*}} WA
+# CHECK-NEXT: foo {{.*}} WA
.section foo, "aw"
.byte 0
Modified: lld/trunk/test/ELF/linkerscript/version-linker-symbol.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/linkerscript/version-linker-symbol.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/linkerscript/version-linker-symbol.s (original)
+++ lld/trunk/test/ELF/linkerscript/version-linker-symbol.s Wed Mar 13 20:47:45 2019
@@ -11,7 +11,7 @@
# CHECK-NEXT: Binding: Global
# CHECK-NEXT: Type: None
# CHECK-NEXT: Other: 0
-# CHECK-NEXT: Section: .dynamic
+# CHECK-NEXT: Section: .data
# CHECK: Name: foo@@VER1
# CHECK-NEXT: Value: 0
Modified: lld/trunk/test/ELF/lto/undefined-puts.ll
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/lto/undefined-puts.ll?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/lto/undefined-puts.ll (original)
+++ lld/trunk/test/ELF/lto/undefined-puts.ll Wed Mar 13 20:47:45 2019
@@ -20,7 +20,7 @@ declare i32 @printf(i8*, ...)
; Check that puts symbol is present in the dynamic symbol table and
; there's a relocation for it.
; CHECK: Dynamic Relocations {
-; CHECK-NEXT: 0x202018 R_X86_64_JUMP_SLOT puts 0x0
+; CHECK-NEXT: 0x203018 R_X86_64_JUMP_SLOT puts 0x0
; CHECK-NEXT: }
; CHECK: DynamicSymbols [
Modified: lld/trunk/test/ELF/lto/visibility.ll
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/lto/visibility.ll?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/lto/visibility.ll (original)
+++ lld/trunk/test/ELF/lto/visibility.ll Wed Mar 13 20:47:45 2019
@@ -16,7 +16,7 @@
; CHECK-NEXT: Section: .text
; CHECK: Name: a
-; CHECK-NEXT: Value: 0x2000
+; CHECK-NEXT: Value: 0x3000
; CHECK-NEXT: Size: 0
; CHECK-NEXT: Binding: Local
; CHECK-NEXT: Type: None
Modified: lld/trunk/test/ELF/map-file.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/map-file.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/map-file.s (original)
+++ lld/trunk/test/ELF/map-file.s Wed Mar 13 20:47:45 2019
@@ -75,17 +75,17 @@ labs = 0x1AB5
// CHECK-NEXT: 201030 201030 30 16 <internal>:(.plt)
// CHECK-NEXT: 201040 201040 0 1 sharedFunc1
// CHECK-NEXT: 201050 201050 0 1 sharedFunc2
-// CHECK-NEXT: 202000 202000 28 8 .got.plt
-// CHECK-NEXT: 202000 202000 28 8 <internal>:(.got.plt)
-// CHECK-NEXT: 203000 203000 100 8 .dynamic
-// CHECK-NEXT: 203000 203000 100 8 <internal>:(.dynamic)
-// CHECK-NEXT: 204000 204000 10 16 .bss
-// CHECK-NEXT: 204000 204000 4 16 {{.*}}{{/|\\}}map-file.s.tmp1.o:(COMMON)
-// CHECK-NEXT: 204000 204000 4 1 common
-// CHECK-NEXT: 204004 204004 4 1 <internal>:(.bss)
-// CHECK-NEXT: 204004 204004 4 1 sharedFoo
-// CHECK-NEXT: 204008 204008 8 1 <internal>:(.bss)
-// CHECK-NEXT: 204008 204008 8 1 sharedBar
+// CHECK-NEXT: 202000 202000 100 8 .dynamic
+// CHECK-NEXT: 202000 202000 100 8 <internal>:(.dynamic)
+// CHECK-NEXT: 203000 203000 28 8 .got.plt
+// CHECK-NEXT: 203000 203000 28 8 <internal>:(.got.plt)
+// CHECK-NEXT: 203030 203030 10 16 .bss
+// CHECK-NEXT: 203030 203030 4 16 {{.*}}{{/|\\}}map-file.s.tmp1.o:(COMMON)
+// CHECK-NEXT: 203030 203030 4 1 common
+// CHECK-NEXT: 203034 203034 4 1 <internal>:(.bss)
+// CHECK-NEXT: 203034 203034 4 1 sharedFoo
+// CHECK-NEXT: 203038 203038 8 1 <internal>:(.bss)
+// CHECK-NEXT: 203038 203038 8 1 sharedBar
// CHECK-NEXT: 0 0 8 1 .comment
// CHECK-NEXT: 0 0 8 1 <internal>:(.comment)
// CHECK-NEXT: 0 0 198 8 .symtab
Modified: lld/trunk/test/ELF/merge-section-types.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/merge-section-types.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/merge-section-types.s (original)
+++ lld/trunk/test/ELF/merge-section-types.s Wed Mar 13 20:47:45 2019
@@ -9,8 +9,8 @@
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x1000
-// CHECK-NEXT: Offset: 0x1000
+// CHECK-NEXT: Address: 0x2000
+// CHECK-NEXT: Offset: 0x2000
// CHECK-NEXT: Size: 16
.section .foo, "aw", @progbits, unique, 1
Modified: lld/trunk/test/ELF/mips-mgot.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/mips-mgot.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/mips-mgot.s (original)
+++ lld/trunk/test/ELF/mips-mgot.s Wed Mar 13 20:47:45 2019
@@ -11,11 +11,11 @@
# RUN: llvm-readobj -r -dt -mips-plt-got %t.so | FileCheck -check-prefix=GOT %s
# CHECK: Contents of section .got:
-# CHECK-NEXT: 60000 00000000 80000000 00010000 00010030
-# CHECK-NEXT: 60010 00000000 00000004 00020000 00030000
-# CHECK-NEXT: 60020 00040000 00050000 00060000 00070000
-# CHECK-NEXT: 60030 00000000 00000000 00000000 00000000
-# CHECK-NEXT: 60040 00000000 00000000 00000000
+# CHECK-NEXT: 70000 00000000 80000000 00010000 00010030
+# CHECK-NEXT: 70010 00000000 00000004 00030000 00040000
+# CHECK-NEXT: 70020 00050000 00060000 00070000 00080000
+# CHECK-NEXT: 70030 00000000 00000000 00000000 00000000
+# CHECK-NEXT: 70040 00000000 00000000 00000000
# CHECK: SYMBOL TABLE:
# CHECK: 00000000 l O .tdata 00000000 loc0
@@ -28,20 +28,20 @@
# GOT: Relocations [
# GOT-NEXT: Section (7) .rel.dyn {
-# GOT-NEXT: 0x60018 R_MIPS_REL32 - 0x0
-# GOT-NEXT: 0x6001C R_MIPS_REL32 - 0x0
-# GOT-NEXT: 0x60020 R_MIPS_REL32 - 0x0
-# GOT-NEXT: 0x60024 R_MIPS_REL32 - 0x0
-# GOT-NEXT: 0x60028 R_MIPS_REL32 - 0x0
-# GOT-NEXT: 0x6002C R_MIPS_REL32 - 0x0
-# GOT-NEXT: 0x60030 R_MIPS_REL32 foo0 0x0
-# GOT-NEXT: 0x60034 R_MIPS_REL32 foo2 0x0
-# GOT-NEXT: 0x60044 R_MIPS_TLS_DTPMOD32 - 0x0
-# GOT-NEXT: 0x60010 R_MIPS_TLS_TPREL32 tls0 0x0
-# GOT-NEXT: 0x60038 R_MIPS_TLS_TPREL32 tls0 0x0
-# GOT-NEXT: 0x6003C R_MIPS_TLS_DTPMOD32 tls0 0x0
-# GOT-NEXT: 0x60040 R_MIPS_TLS_DTPREL32 tls0 0x0
-# GOT-NEXT: 0x60014 R_MIPS_TLS_TPREL32 tls1 0x0
+# 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: }
# GOT-NEXT: ]
@@ -57,7 +57,7 @@
# GOT-NEXT: ]
# GOT: Primary GOT {
-# GOT-NEXT: Canonical gp value: 0x67FF0
+# GOT-NEXT: Canonical gp value: 0x77FF0
# GOT-NEXT: Reserved entries [
# GOT-NEXT: Entry {
# GOT-NEXT: Address:
Modified: lld/trunk/test/ELF/mips-tls-64.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/mips-tls-64.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/mips-tls-64.s (original)
+++ lld/trunk/test/ELF/mips-tls-64.s Wed Mar 13 20:47:45 2019
@@ -22,11 +22,11 @@
# DIS-NEXT: 20010: 24 62 80 28 addiu $2, $3, -32728
# DIS: Contents of section .got:
-# DIS-NEXT: 30010 00000000 00000000 80000000 00000000
-# DIS-NEXT: 30020 00000000 00000000 ffffffff ffff9004
-# DIS-NEXT: 30030 00000000 00000000 00000000 00000000
-# DIS-NEXT: 30040 00000000 00000001 00000000 00000000
-# DIS-NEXT: 30050 00000000 00000001 ffffffff ffff8004
+# DIS-NEXT: 40010 00000000 00000000 80000000 00000000
+# DIS-NEXT: 40020 00000000 00000000 ffffffff ffff9004
+# DIS-NEXT: 40030 00000000 00000000 00000000 00000000
+# DIS-NEXT: 40040 00000000 00000001 00000000 00000000
+# DIS-NEXT: 40050 00000000 00000001 ffffffff ffff8004
# DIS: 0000000000000000 l O .tdata 00000000 loc
# DIS: 0000000000000004 g O .tdata 00000000 bar
@@ -34,13 +34,13 @@
# CHECK: Relocations [
# CHECK-NEXT: Section (7) .rel.dyn {
-# CHECK-NEXT: 0x30020 R_MIPS_TLS_TPREL64/R_MIPS_NONE/R_MIPS_NONE foo 0x0
-# CHECK-NEXT: 0x30030 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE foo 0x0
-# CHECK-NEXT: 0x30038 R_MIPS_TLS_DTPREL64/R_MIPS_NONE/R_MIPS_NONE foo 0x0
+# CHECK-NEXT: 0x40020 R_MIPS_TLS_TPREL64/R_MIPS_NONE/R_MIPS_NONE foo 0x0
+# CHECK-NEXT: 0x40030 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE foo 0x0
+# CHECK-NEXT: 0x40038 R_MIPS_TLS_DTPREL64/R_MIPS_NONE/R_MIPS_NONE foo 0x0
# CHECK-NEXT: }
# CHECK-NEXT: ]
# CHECK-NEXT: Primary GOT {
-# CHECK-NEXT: Canonical gp value: 0x38000
+# CHECK-NEXT: Canonical gp value: 0x48000
# CHECK-NEXT: Reserved entries [
# CHECK: ]
# CHECK-NEXT: Local entries [
@@ -58,25 +58,25 @@
# ^-- -32680 VA - 0x8000 bar
# DIS-SO: Contents of section .got:
-# DIS-SO-NEXT: 20000 00000000 00000000 80000000 00000000
-# DIS-SO-NEXT: 20010 00000000 00000000 00000000 00000004
-# DIS-SO-NEXT: 20020 00000000 00000000 00000000 00000000
-# DIS-SO-NEXT: 20030 00000000 00000000 00000000 00000000
-# DIS-SO-NEXT: 20040 00000000 00000000 00000000 00000000
+# DIS-SO-NEXT: 30000 00000000 00000000 80000000 00000000
+# DIS-SO-NEXT: 30010 00000000 00000000 00000000 00000004
+# DIS-SO-NEXT: 30020 00000000 00000000 00000000 00000000
+# DIS-SO-NEXT: 30030 00000000 00000000 00000000 00000000
+# DIS-SO-NEXT: 30040 00000000 00000000 00000000 00000000
# SO: Relocations [
# SO-NEXT: Section (7) .rel.dyn {
-# SO-NEXT: 0x20030 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE - 0x0
-# SO-NEXT: 0x20018 R_MIPS_TLS_TPREL64/R_MIPS_NONE/R_MIPS_NONE bar 0x0
-# SO-NEXT: 0x20040 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE bar 0x0
-# SO-NEXT: 0x20048 R_MIPS_TLS_DTPREL64/R_MIPS_NONE/R_MIPS_NONE bar 0x0
-# SO-NEXT: 0x20010 R_MIPS_TLS_TPREL64/R_MIPS_NONE/R_MIPS_NONE foo 0x0
-# SO-NEXT: 0x20020 R_MIPS_TLS_DTPMOD64/R_MIPS_NONE/R_MIPS_NONE foo 0x0
-# SO-NEXT: 0x20028 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 - 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: }
# SO-NEXT: ]
# SO-NEXT: Primary GOT {
-# SO-NEXT: Canonical gp value: 0x27FF0
+# SO-NEXT: Canonical gp value: 0x37FF0
# SO-NEXT: Reserved entries [
# SO: ]
# SO-NEXT: Local entries [
Modified: lld/trunk/test/ELF/mips-tls-static-64.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/mips-tls-static-64.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/mips-tls-static-64.s (original)
+++ lld/trunk/test/ELF/mips-tls-static-64.s Wed Mar 13 20:47:45 2019
@@ -7,8 +7,8 @@
# RUN: llvm-objdump -s -t %t.exe | FileCheck %s
# CHECK: Contents of section .data:
-# CHECK-NEXT: 30000 00020004 ffffffff ffff8004 ffffffff
-# CHECK-NEXT: 30010 ffff9004
+# CHECK-NEXT: 40000 00020004 ffffffff ffff8004 ffffffff
+# CHECK-NEXT: 40010 ffff9004
#
# CHECK: SYMBOL TABLE:
# CHECK: 0000000000020004 .text 00000000 __tls_get_addr
Modified: lld/trunk/test/ELF/mips-tls-static.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/mips-tls-static.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/mips-tls-static.s (original)
+++ lld/trunk/test/ELF/mips-tls-static.s Wed Mar 13 20:47:45 2019
@@ -7,10 +7,10 @@
# RUN: llvm-objdump -s -t %t.exe | FileCheck %s
# CHECK: Contents of section .data:
-# CHECK-NEXT: 30000 0002000c ffff8004 ffff9004
+# CHECK-NEXT: 40000 0002000c ffff8004 ffff9004
# CHECK: Contents of section .got:
-# CHECK-NEXT: 30010 00000000 80000000 ffff9000 00000001
-# CHECK-NEXT: 30020 ffff8000 00000001 00000000
+# CHECK-NEXT: 40010 00000000 80000000 ffff9000 00000001
+# CHECK-NEXT: 40020 ffff8000 00000001 00000000
#
# CHECK: SYMBOL TABLE:
# CHECK: 0002000c .text 00000000 __tls_get_addr
Modified: lld/trunk/test/ELF/mips-tls.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/mips-tls.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/mips-tls.s (original)
+++ lld/trunk/test/ELF/mips-tls.s Wed Mar 13 20:47:45 2019
@@ -22,9 +22,9 @@
# DIS-NEXT: 20010: 24 62 80 1c addiu $2, $3, -32740
# DIS: Contents of section .got:
-# DIS-NEXT: 30010 00000000 80000000 00000000 ffff9004
-# DIS-NEXT: 30020 00000000 00000000 00000001 00000000
-# DIS-NEXT: 30030 00000001 ffff8004
+# DIS-NEXT: 40010 00000000 80000000 00000000 ffff9004
+# DIS-NEXT: 40020 00000000 00000000 00000001 00000000
+# DIS-NEXT: 40030 00000001 ffff8004
# DIS: 00000000 l O .tdata 00000000 loc
# DIS: 00000004 g O .tdata 00000000 bar
@@ -32,13 +32,13 @@
# CHECK: Relocations [
# CHECK-NEXT: Section (7) .rel.dyn {
-# CHECK-NEXT: 0x30018 R_MIPS_TLS_TPREL32 foo 0x0
-# CHECK-NEXT: 0x30020 R_MIPS_TLS_DTPMOD32 foo 0x0
-# CHECK-NEXT: 0x30024 R_MIPS_TLS_DTPREL32 foo 0x0
+# CHECK-NEXT: 0x40018 R_MIPS_TLS_TPREL32 foo 0x0
+# CHECK-NEXT: 0x40020 R_MIPS_TLS_DTPMOD32 foo 0x0
+# CHECK-NEXT: 0x40024 R_MIPS_TLS_DTPREL32 foo 0x0
# CHECK-NEXT: }
# CHECK-NEXT: ]
# CHECK-NEXT: Primary GOT {
-# CHECK-NEXT: Canonical gp value: 0x38000
+# CHECK-NEXT: Canonical gp value: 0x48000
# CHECK-NEXT: Reserved entries [
# CHECK: ]
# CHECK-NEXT: Local entries [
@@ -56,23 +56,23 @@
# ^-- -32716 VA - 0x8000 bar
# DIS-SO: Contents of section .got:
-# DIS-SO-NEXT: 20000 00000000 80000000 00000000 00000004
-# DIS-SO-NEXT: 20010 00000000 00000000 00000000 00000000
-# DIS-SO-NEXT: 20020 00000000 00000000
+# DIS-SO-NEXT: 30000 00000000 80000000 00000000 00000004
+# DIS-SO-NEXT: 30010 00000000 00000000 00000000 00000000
+# DIS-SO-NEXT: 30020 00000000 00000000
# SO: Relocations [
# SO-NEXT: Section (7) .rel.dyn {
-# SO-NEXT: 0x20018 R_MIPS_TLS_DTPMOD32 - 0x0
-# SO-NEXT: 0x2000C R_MIPS_TLS_TPREL32 bar 0x0
-# SO-NEXT: 0x20020 R_MIPS_TLS_DTPMOD32 bar 0x0
-# SO-NEXT: 0x20024 R_MIPS_TLS_DTPREL32 bar 0x0
-# SO-NEXT: 0x20008 R_MIPS_TLS_TPREL32 foo 0x0
-# SO-NEXT: 0x20010 R_MIPS_TLS_DTPMOD32 foo 0x0
-# SO-NEXT: 0x20014 R_MIPS_TLS_DTPREL32 foo 0x0
+# SO-NEXT: 0x30018 R_MIPS_TLS_DTPMOD32 - 0x0
+# SO-NEXT: 0x3000C R_MIPS_TLS_TPREL32 bar 0x0
+# SO-NEXT: 0x30020 R_MIPS_TLS_DTPMOD32 bar 0x0
+# SO-NEXT: 0x30024 R_MIPS_TLS_DTPREL32 bar 0x0
+# SO-NEXT: 0x30008 R_MIPS_TLS_TPREL32 foo 0x0
+# SO-NEXT: 0x30010 R_MIPS_TLS_DTPMOD32 foo 0x0
+# SO-NEXT: 0x30014 R_MIPS_TLS_DTPREL32 foo 0x0
# SO-NEXT: }
# SO-NEXT: ]
# SO-NEXT: Primary GOT {
-# SO-NEXT: Canonical gp value: 0x27FF0
+# SO-NEXT: Canonical gp value: 0x37FF0
# SO-NEXT: Reserved entries [
# SO: ]
# SO-NEXT: Local entries [
Modified: lld/trunk/test/ELF/pack-dyn-relocs-loop.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/pack-dyn-relocs-loop.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/pack-dyn-relocs-loop.s (original)
+++ lld/trunk/test/ELF/pack-dyn-relocs-loop.s Wed Mar 13 20:47:45 2019
@@ -18,15 +18,15 @@
// CHECK-NEXT: ]
// CHECK-NEXT: Address: 0x210
// CHECK-NEXT: Offset: 0x210
-// CHECK-NEXT: Size: 21
+// CHECK-NEXT: Size: 22
// CHECK: Name: x (43)
// CHECK-NEXT: Type: SHT_PROGBITS (0x1)
// CHECK-NEXT: Flags [ (0x2)
// CHECK-NEXT: SHF_ALLOC (0x2)
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x225
-// CHECK-NEXT: Offset: 0x225
+// CHECK-NEXT: Address: 0x226
+// CHECK-NEXT: Offset: 0x226
// CHECK-NEXT: Size: 64980
// CHECK: Name: barr (45)
@@ -38,14 +38,14 @@
// CHECK-NEXT: Offset: 0xFFFA
// CHECK-NEXT: Size: 0
-// CHECK: Name: foo (62)
+// CHECK: Name: foo (71)
// CHECK-NEXT: Type: SHT_PROGBITS (0x1)
// CHECK-NEXT: Flags [ (0x3)
// CHECK-NEXT: SHF_ALLOC (0x2)
// CHECK-NEXT: SHF_WRITE (0x1)
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x10004
-// CHECK-NEXT: Offset: 0x10004
+// CHECK-NEXT: Address: 0x20004
+// CHECK-NEXT: Offset: 0x20004
// CHECK-NEXT: Size: 12
Modified: lld/trunk/test/ELF/pack-dyn-relocs.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/pack-dyn-relocs.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/pack-dyn-relocs.s (original)
+++ lld/trunk/test/ELF/pack-dyn-relocs.s Wed Mar 13 20:47:45 2019
@@ -8,36 +8,36 @@
// Unpacked should have the relative relocations in their natural order.
// UNPACKED32: Section ({{.+}}) .rel.dyn {
-// UNPACKED32-NEXT: 0x1000 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1004 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1008 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x100C R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1010 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1014 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1018 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x101C R_ARM_RELATIVE - 0x0
-
-// UNPACKED32-NEXT: 0x1024 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1028 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x102C R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1030 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1034 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1038 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x103C R_ARM_RELATIVE - 0x0
-
-// UNPACKED32-NEXT: 0x1044 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1048 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x104C R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1050 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1054 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1058 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x105C R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1060 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1064 R_ARM_RELATIVE - 0x0
-
-// UNPACKED32-NEXT: 0x1069 R_ARM_RELATIVE - 0x0
-// UNPACKED32-NEXT: 0x1020 R_ARM_ABS32 bar2 0x0
-// UNPACKED32-NEXT: 0x1040 R_ARM_ABS32 zed2 0x0
+// UNPACKED32-NEXT: 0x2000 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2004 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2008 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x200C R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2010 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2014 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2018 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x201C R_ARM_RELATIVE - 0x0
+
+// UNPACKED32-NEXT: 0x2024 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2028 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x202C R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2030 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2034 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2038 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x203C R_ARM_RELATIVE - 0x0
+
+// UNPACKED32-NEXT: 0x2044 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2048 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x204C R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2050 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2054 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2058 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x205C R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2060 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2064 R_ARM_RELATIVE - 0x0
+
+// UNPACKED32-NEXT: 0x2069 R_ARM_RELATIVE - 0x0
+// UNPACKED32-NEXT: 0x2020 R_ARM_ABS32 bar2 0x0
+// UNPACKED32-NEXT: 0x2040 R_ARM_ABS32 zed2 0x0
// UNPACKED32-NEXT: }
// RUN: ld.lld -pie --pack-dyn-relocs=android %t.a32 %t.a32.so -o %t3.a32
@@ -66,36 +66,36 @@
// Packed should have the larger groups of relative relocations first,
// i.e. the 8 and 9 followed by the 7.
// ANDROID32: Section ({{.+}}) .rel.dyn {
-// ANDROID32-NEXT: 0x1000 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1004 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1008 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x100C R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1010 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1014 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1018 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x101C R_ARM_RELATIVE - 0x0
-
-// ANDROID32-NEXT: 0x1044 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1048 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x104C R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1050 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1054 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1058 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x105C R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1060 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1064 R_ARM_RELATIVE - 0x0
-
-// ANDROID32-NEXT: 0x1024 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1028 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x102C R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1030 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1034 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1038 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x103C R_ARM_RELATIVE - 0x0
-
-// ANDROID32-NEXT: 0x1069 R_ARM_RELATIVE - 0x0
-// ANDROID32-NEXT: 0x1020 R_ARM_ABS32 bar2 0x0
-// ANDROID32-NEXT: 0x1040 R_ARM_ABS32 zed2 0x0
+// ANDROID32-NEXT: 0x2000 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2004 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2008 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x200C R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2010 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2014 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2018 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x201C R_ARM_RELATIVE - 0x0
+
+// ANDROID32-NEXT: 0x2044 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2048 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x204C R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2050 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2054 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2058 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x205C R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2060 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2064 R_ARM_RELATIVE - 0x0
+
+// ANDROID32-NEXT: 0x2024 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2028 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x202C R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2030 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2034 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2038 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x203C R_ARM_RELATIVE - 0x0
+
+// ANDROID32-NEXT: 0x2069 R_ARM_RELATIVE - 0x0
+// ANDROID32-NEXT: 0x2020 R_ARM_ABS32 bar2 0x0
+// ANDROID32-NEXT: 0x2040 R_ARM_ABS32 zed2 0x0
// ANDROID32-NEXT: }
// RUN: ld.lld -pie --pack-dyn-relocs=relr %t.a32 %t.a32.so -o %t4.a32
@@ -126,7 +126,7 @@
// SHT_RELR section contains address/bitmap entries
// encoding the offsets for relative relocation.
// RAW-RELR32: Section ({{.+}}) .relr.dyn {
-// RAW-RELR32-NEXT: 0x1000
+// RAW-RELR32-NEXT: 0x2000
// RAW-RELR32-NEXT: 0x3FEFEFF
// RAW-RELR32-NEXT: }
@@ -134,37 +134,37 @@
// but contains only the relative relocations.
// Any relative relocations with odd offset stay in SHT_REL.
// RELR32: Section ({{.+}}) .rel.dyn {
-// RELR32-NEXT: 0x1069 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1020 R_ARM_ABS32 bar2 0x0
-// RELR32-NEXT: 0x1040 R_ARM_ABS32 zed2 0x0
+// RELR32-NEXT: 0x2069 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2020 R_ARM_ABS32 bar2 0x0
+// RELR32-NEXT: 0x2040 R_ARM_ABS32 zed2 0x0
// RELR32-NEXT: }
// RELR32-NEXT: Section ({{.+}}) .relr.dyn {
-// RELR32-NEXT: 0x1000 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1004 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1008 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x100C R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1010 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1014 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1018 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x101C R_ARM_RELATIVE - 0x0
-
-// RELR32-NEXT: 0x1024 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1028 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x102C R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1030 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1034 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1038 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x103C R_ARM_RELATIVE - 0x0
-
-// RELR32-NEXT: 0x1044 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1048 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x104C R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1050 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1054 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1058 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x105C R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1060 R_ARM_RELATIVE - 0x0
-// RELR32-NEXT: 0x1064 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2000 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2004 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2008 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x200C R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2010 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2014 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2018 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x201C R_ARM_RELATIVE - 0x0
+
+// RELR32-NEXT: 0x2024 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2028 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x202C R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2030 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2034 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2038 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x203C R_ARM_RELATIVE - 0x0
+
+// RELR32-NEXT: 0x2044 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2048 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x204C R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2050 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2054 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2058 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x205C R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2060 R_ARM_RELATIVE - 0x0
+// RELR32-NEXT: 0x2064 R_ARM_RELATIVE - 0x0
// RELR32-NEXT: }
// RUN: llvm-mc -filetype=obj -triple=aarch64-unknown-linux %p/Inputs/shared2.s -o %t.a64.so.o
@@ -174,36 +174,36 @@
// RUN: llvm-readobj -relocations %t2.a64 | FileCheck --check-prefix=UNPACKED64 %s
// UNPACKED64: Section ({{.+}}) .rela.dyn {
-// UNPACKED64-NEXT: 0x10000 R_AARCH64_RELATIVE - 0x1
-// UNPACKED64-NEXT: 0x10008 R_AARCH64_RELATIVE - 0x2
-// UNPACKED64-NEXT: 0x10010 R_AARCH64_RELATIVE - 0x3
-// UNPACKED64-NEXT: 0x10018 R_AARCH64_RELATIVE - 0x4
-// UNPACKED64-NEXT: 0x10020 R_AARCH64_RELATIVE - 0x5
-// UNPACKED64-NEXT: 0x10028 R_AARCH64_RELATIVE - 0x6
-// UNPACKED64-NEXT: 0x10030 R_AARCH64_RELATIVE - 0x7
-// UNPACKED64-NEXT: 0x10038 R_AARCH64_RELATIVE - 0x8
-
-// UNPACKED64-NEXT: 0x10048 R_AARCH64_RELATIVE - 0x1
-// UNPACKED64-NEXT: 0x10050 R_AARCH64_RELATIVE - 0x2
-// UNPACKED64-NEXT: 0x10058 R_AARCH64_RELATIVE - 0x3
-// UNPACKED64-NEXT: 0x10060 R_AARCH64_RELATIVE - 0x4
-// UNPACKED64-NEXT: 0x10068 R_AARCH64_RELATIVE - 0x5
-// UNPACKED64-NEXT: 0x10070 R_AARCH64_RELATIVE - 0x6
-// UNPACKED64-NEXT: 0x10078 R_AARCH64_RELATIVE - 0x7
-
-// UNPACKED64-NEXT: 0x10088 R_AARCH64_RELATIVE - 0x1
-// UNPACKED64-NEXT: 0x10090 R_AARCH64_RELATIVE - 0x2
-// UNPACKED64-NEXT: 0x10098 R_AARCH64_RELATIVE - 0x3
-// UNPACKED64-NEXT: 0x100A0 R_AARCH64_RELATIVE - 0x4
-// UNPACKED64-NEXT: 0x100A8 R_AARCH64_RELATIVE - 0x5
-// UNPACKED64-NEXT: 0x100B0 R_AARCH64_RELATIVE - 0x6
-// UNPACKED64-NEXT: 0x100B8 R_AARCH64_RELATIVE - 0x7
-// UNPACKED64-NEXT: 0x100C0 R_AARCH64_RELATIVE - 0x8
-// UNPACKED64-NEXT: 0x100C8 R_AARCH64_RELATIVE - 0x9
-
-// UNPACKED64-NEXT: 0x100D1 R_AARCH64_RELATIVE - 0xA
-// UNPACKED64-NEXT: 0x10040 R_AARCH64_ABS64 bar2 0x1
-// UNPACKED64-NEXT: 0x10080 R_AARCH64_ABS64 zed2 0x0
+// UNPACKED64-NEXT: 0x20000 R_AARCH64_RELATIVE - 0x1
+// UNPACKED64-NEXT: 0x20008 R_AARCH64_RELATIVE - 0x2
+// UNPACKED64-NEXT: 0x20010 R_AARCH64_RELATIVE - 0x3
+// UNPACKED64-NEXT: 0x20018 R_AARCH64_RELATIVE - 0x4
+// UNPACKED64-NEXT: 0x20020 R_AARCH64_RELATIVE - 0x5
+// UNPACKED64-NEXT: 0x20028 R_AARCH64_RELATIVE - 0x6
+// UNPACKED64-NEXT: 0x20030 R_AARCH64_RELATIVE - 0x7
+// UNPACKED64-NEXT: 0x20038 R_AARCH64_RELATIVE - 0x8
+
+// UNPACKED64-NEXT: 0x20048 R_AARCH64_RELATIVE - 0x1
+// UNPACKED64-NEXT: 0x20050 R_AARCH64_RELATIVE - 0x2
+// UNPACKED64-NEXT: 0x20058 R_AARCH64_RELATIVE - 0x3
+// UNPACKED64-NEXT: 0x20060 R_AARCH64_RELATIVE - 0x4
+// UNPACKED64-NEXT: 0x20068 R_AARCH64_RELATIVE - 0x5
+// UNPACKED64-NEXT: 0x20070 R_AARCH64_RELATIVE - 0x6
+// UNPACKED64-NEXT: 0x20078 R_AARCH64_RELATIVE - 0x7
+
+// UNPACKED64-NEXT: 0x20088 R_AARCH64_RELATIVE - 0x1
+// UNPACKED64-NEXT: 0x20090 R_AARCH64_RELATIVE - 0x2
+// UNPACKED64-NEXT: 0x20098 R_AARCH64_RELATIVE - 0x3
+// UNPACKED64-NEXT: 0x200A0 R_AARCH64_RELATIVE - 0x4
+// UNPACKED64-NEXT: 0x200A8 R_AARCH64_RELATIVE - 0x5
+// UNPACKED64-NEXT: 0x200B0 R_AARCH64_RELATIVE - 0x6
+// UNPACKED64-NEXT: 0x200B8 R_AARCH64_RELATIVE - 0x7
+// UNPACKED64-NEXT: 0x200C0 R_AARCH64_RELATIVE - 0x8
+// UNPACKED64-NEXT: 0x200C8 R_AARCH64_RELATIVE - 0x9
+
+// UNPACKED64-NEXT: 0x200D1 R_AARCH64_RELATIVE - 0xA
+// UNPACKED64-NEXT: 0x20040 R_AARCH64_ABS64 bar2 0x1
+// UNPACKED64-NEXT: 0x20080 R_AARCH64_ABS64 zed2 0x0
// UNPACKED64-NEXT: }
// RUN: ld.lld -pie --pack-dyn-relocs=android %t.a64 %t.a64.so -o %t3.a64
@@ -230,36 +230,36 @@
// ANDROID64-HEADERS: 0x0000000060000012 ANDROID_RELASZ [[SIZE]]
// ANDROID64: Section ({{.+}}) .rela.dyn {
-// ANDROID64-NEXT: 0x10000 R_AARCH64_RELATIVE - 0x1
-// ANDROID64-NEXT: 0x10008 R_AARCH64_RELATIVE - 0x2
-// ANDROID64-NEXT: 0x10010 R_AARCH64_RELATIVE - 0x3
-// ANDROID64-NEXT: 0x10018 R_AARCH64_RELATIVE - 0x4
-// ANDROID64-NEXT: 0x10020 R_AARCH64_RELATIVE - 0x5
-// ANDROID64-NEXT: 0x10028 R_AARCH64_RELATIVE - 0x6
-// ANDROID64-NEXT: 0x10030 R_AARCH64_RELATIVE - 0x7
-// ANDROID64-NEXT: 0x10038 R_AARCH64_RELATIVE - 0x8
-
-// ANDROID64-NEXT: 0x10088 R_AARCH64_RELATIVE - 0x1
-// ANDROID64-NEXT: 0x10090 R_AARCH64_RELATIVE - 0x2
-// ANDROID64-NEXT: 0x10098 R_AARCH64_RELATIVE - 0x3
-// ANDROID64-NEXT: 0x100A0 R_AARCH64_RELATIVE - 0x4
-// ANDROID64-NEXT: 0x100A8 R_AARCH64_RELATIVE - 0x5
-// ANDROID64-NEXT: 0x100B0 R_AARCH64_RELATIVE - 0x6
-// ANDROID64-NEXT: 0x100B8 R_AARCH64_RELATIVE - 0x7
-// ANDROID64-NEXT: 0x100C0 R_AARCH64_RELATIVE - 0x8
-// ANDROID64-NEXT: 0x100C8 R_AARCH64_RELATIVE - 0x9
-
-// ANDROID64-NEXT: 0x10048 R_AARCH64_RELATIVE - 0x1
-// ANDROID64-NEXT: 0x10050 R_AARCH64_RELATIVE - 0x2
-// ANDROID64-NEXT: 0x10058 R_AARCH64_RELATIVE - 0x3
-// ANDROID64-NEXT: 0x10060 R_AARCH64_RELATIVE - 0x4
-// ANDROID64-NEXT: 0x10068 R_AARCH64_RELATIVE - 0x5
-// ANDROID64-NEXT: 0x10070 R_AARCH64_RELATIVE - 0x6
-// ANDROID64-NEXT: 0x10078 R_AARCH64_RELATIVE - 0x7
-
-// ANDROID64-NEXT: 0x100D1 R_AARCH64_RELATIVE - 0xA
-// ANDROID64-NEXT: 0x10040 R_AARCH64_ABS64 bar2 0x1
-// ANDROID64-NEXT: 0x10080 R_AARCH64_ABS64 zed2 0x0
+// ANDROID64-NEXT: 0x20000 R_AARCH64_RELATIVE - 0x1
+// ANDROID64-NEXT: 0x20008 R_AARCH64_RELATIVE - 0x2
+// ANDROID64-NEXT: 0x20010 R_AARCH64_RELATIVE - 0x3
+// ANDROID64-NEXT: 0x20018 R_AARCH64_RELATIVE - 0x4
+// ANDROID64-NEXT: 0x20020 R_AARCH64_RELATIVE - 0x5
+// ANDROID64-NEXT: 0x20028 R_AARCH64_RELATIVE - 0x6
+// ANDROID64-NEXT: 0x20030 R_AARCH64_RELATIVE - 0x7
+// ANDROID64-NEXT: 0x20038 R_AARCH64_RELATIVE - 0x8
+
+// ANDROID64-NEXT: 0x20088 R_AARCH64_RELATIVE - 0x1
+// ANDROID64-NEXT: 0x20090 R_AARCH64_RELATIVE - 0x2
+// ANDROID64-NEXT: 0x20098 R_AARCH64_RELATIVE - 0x3
+// ANDROID64-NEXT: 0x200A0 R_AARCH64_RELATIVE - 0x4
+// ANDROID64-NEXT: 0x200A8 R_AARCH64_RELATIVE - 0x5
+// ANDROID64-NEXT: 0x200B0 R_AARCH64_RELATIVE - 0x6
+// ANDROID64-NEXT: 0x200B8 R_AARCH64_RELATIVE - 0x7
+// ANDROID64-NEXT: 0x200C0 R_AARCH64_RELATIVE - 0x8
+// ANDROID64-NEXT: 0x200C8 R_AARCH64_RELATIVE - 0x9
+
+// ANDROID64-NEXT: 0x20048 R_AARCH64_RELATIVE - 0x1
+// ANDROID64-NEXT: 0x20050 R_AARCH64_RELATIVE - 0x2
+// ANDROID64-NEXT: 0x20058 R_AARCH64_RELATIVE - 0x3
+// ANDROID64-NEXT: 0x20060 R_AARCH64_RELATIVE - 0x4
+// ANDROID64-NEXT: 0x20068 R_AARCH64_RELATIVE - 0x5
+// ANDROID64-NEXT: 0x20070 R_AARCH64_RELATIVE - 0x6
+// ANDROID64-NEXT: 0x20078 R_AARCH64_RELATIVE - 0x7
+
+// ANDROID64-NEXT: 0x200D1 R_AARCH64_RELATIVE - 0xA
+// ANDROID64-NEXT: 0x20040 R_AARCH64_ABS64 bar2 0x1
+// ANDROID64-NEXT: 0x20080 R_AARCH64_ABS64 zed2 0x0
// ANDROID64-NEXT: }
// RUN: ld.lld -pie --pack-dyn-relocs=relr %t.a64 %t.a64.so -o %t4.a64
@@ -290,7 +290,7 @@
// SHT_RELR section contains address/bitmap entries
// encoding the offsets for relative relocation.
// RAW-RELR64: Section ({{.+}}) .relr.dyn {
-// RAW-RELR64-NEXT: 0x10000
+// RAW-RELR64-NEXT: 0x20000
// RAW-RELR64-NEXT: 0x3FEFEFF
// RAW-RELR64-NEXT: }
@@ -298,37 +298,37 @@
// but contains only the relative relocations.
// Any relative relocations with odd offset stay in SHT_RELA.
// RELR64: Section ({{.+}}) .rela.dyn {
-// RELR64-NEXT: 0x100D1 R_AARCH64_RELATIVE - 0xA
-// RELR64-NEXT: 0x10040 R_AARCH64_ABS64 bar2 0x1
-// RELR64-NEXT: 0x10080 R_AARCH64_ABS64 zed2 0x0
+// RELR64-NEXT: 0x200D1 R_AARCH64_RELATIVE - 0xA
+// RELR64-NEXT: 0x20040 R_AARCH64_ABS64 bar2 0x1
+// RELR64-NEXT: 0x20080 R_AARCH64_ABS64 zed2 0x0
// RELR64-NEXT: }
// RELR64-NEXT: Section ({{.+}}) .relr.dyn {
-// RELR64-NEXT: 0x10000 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10008 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10010 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10018 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10020 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10028 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10030 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10038 R_AARCH64_RELATIVE - 0x0
-
-// RELR64-NEXT: 0x10048 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10050 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10058 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10060 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10068 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10070 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10078 R_AARCH64_RELATIVE - 0x0
-
-// RELR64-NEXT: 0x10088 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10090 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x10098 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x100A0 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x100A8 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x100B0 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x100B8 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x100C0 R_AARCH64_RELATIVE - 0x0
-// RELR64-NEXT: 0x100C8 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20000 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20008 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20010 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20018 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20020 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20028 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20030 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20038 R_AARCH64_RELATIVE - 0x0
+
+// RELR64-NEXT: 0x20048 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20050 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20058 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20060 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20068 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20070 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20078 R_AARCH64_RELATIVE - 0x0
+
+// RELR64-NEXT: 0x20088 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20090 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x20098 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x200A0 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x200A8 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x200B0 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x200B8 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x200C0 R_AARCH64_RELATIVE - 0x0
+// RELR64-NEXT: 0x200C8 R_AARCH64_RELATIVE - 0x0
// RELR64-NEXT: }
.data
Modified: lld/trunk/test/ELF/pack-dyn-relocs2.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/pack-dyn-relocs2.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/pack-dyn-relocs2.s (original)
+++ lld/trunk/test/ELF/pack-dyn-relocs2.s Wed Mar 13 20:47:45 2019
@@ -8,40 +8,40 @@
// RUN: llvm-readobj -relocations %t.exe | FileCheck %s
// CHECK: Section (5) .relr.dyn {
-// CHECK-NEXT: 0x1000 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1004 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1008 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x100C R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1010 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1014 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1018 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x101C R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1020 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1024 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1028 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x102C R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1030 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1034 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1038 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x103C R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1040 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1044 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1048 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x104C R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1050 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1054 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1058 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x105C R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1060 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1064 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1068 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x106C R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1070 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1074 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1078 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x107C R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1080 R_ARM_RELATIVE - 0x0
-// CHECK-NEXT: 0x1084 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2000 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2004 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2008 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x200C R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2010 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2014 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2018 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x201C R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2020 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2024 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2028 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x202C R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2030 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2034 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2038 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x203C R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2040 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2044 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2048 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x204C R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2050 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2054 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2058 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x205C R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2060 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2064 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2068 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x206C R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2070 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2074 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2078 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x207C R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2080 R_ARM_RELATIVE - 0x0
+// CHECK-NEXT: 0x2084 R_ARM_RELATIVE - 0x0
// CHECK-NEXT: }
// RUN: llvm-readobj -s -dynamic-table %t.exe | FileCheck --check-prefix=HEADER %s
Modified: lld/trunk/test/ELF/plt-aarch64.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/plt-aarch64.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/plt-aarch64.s (original)
+++ lld/trunk/test/ELF/plt-aarch64.s Wed Mar 13 20:47:45 2019
@@ -30,7 +30,7 @@
// CHECKDSO-NEXT: SHF_ALLOC
// CHECKDSO-NEXT: SHF_WRITE
// CHECKDSO-NEXT: ]
-// CHECKDSO-NEXT: Address: 0x20000
+// CHECKDSO-NEXT: Address: 0x30000
// CHECKDSO-NEXT: Offset:
// CHECKDSO-NEXT: Size: 48
// CHECKDSO-NEXT: Link:
@@ -40,23 +40,23 @@
// CHECKDSO: Relocations [
// CHECKDSO-NEXT: Section ({{.*}}) .rela.plt {
-// &(.got.plt[3]) = 0x20000 + 3 * 8 = 0x30018
-// CHECKDSO-NEXT: 0x20018 R_AARCH64_JUMP_SLOT foo
+// &(.got.plt[3]) = 0x30000 + 3 * 8 = 0x30018
+// CHECKDSO-NEXT: 0x30018 R_AARCH64_JUMP_SLOT foo
-// &(.got.plt[4]) = 0x20000 + 4 * 8 = 0x30020
-// CHECKDSO-NEXT: 0x20020 R_AARCH64_JUMP_SLOT bar
+// &(.got.plt[4]) = 0x30000 + 4 * 8 = 0x30020
+// CHECKDSO-NEXT: 0x30020 R_AARCH64_JUMP_SLOT bar
-// &(.got.plt[5]) = 0x20000 + 5 * 8 = 0x30028
-// CHECKDSO-NEXT: 0x20028 R_AARCH64_JUMP_SLOT weak
+// &(.got.plt[5]) = 0x30000 + 5 * 8 = 0x30028
+// CHECKDSO-NEXT: 0x30028 R_AARCH64_JUMP_SLOT weak
// CHECKDSO-NEXT: }
// CHECKDSO-NEXT: ]
// DUMPDSO: Contents of section .got.plt:
// .got.plt[0..2] = 0 (reserved)
// .got.plt[3..5] = .plt = 0x10010
-// DUMPDSO-NEXT: 20000 00000000 00000000 00000000 00000000 ................
-// DUMPDSO-NEXT: 20010 00000000 00000000 10000100 00000000 ................
-// DUMPDSO-NEXT: 20020 10000100 00000000 10000100 00000000 ................
+// DUMPDSO-NEXT: 30000 00000000 00000000 00000000 00000000 ................
+// DUMPDSO-NEXT: 30010 00000000 00000000 10000100 00000000 ................
+// DUMPDSO-NEXT: 30020 10000100 00000000 10000100 00000000 ................
// DISASMDSO: _start:
// 0x10030 - 0x10000 = 0x30 = 48
@@ -73,8 +73,8 @@
// DISASMDSO-NEXT: .plt:
// DISASMDSO-NEXT: 10010: f0 7b bf a9 stp x16, x30, [sp, #-16]!
// &(.got.plt[2]) = 0x3000 + 2 * 8 = 0x3010
-// Page(0x20010) - Page(0x10014) = 0x20000 - 0x10000 = 0x10000 = 65536
-// DISASMDSO-NEXT: 10014: 90 00 00 90 adrp x16, #65536
+// Page(0x30010) - Page(0x10014) = 0x30000 - 0x10000 = 0x20000 = 131072
+// DISASMDSO-NEXT: 10014: 10 01 00 90 adrp x16, #131072
// 0x3010 & 0xFFF = 0x10 = 16
// DISASMDSO-NEXT: 10018: 11 0a 40 f9 ldr x17, [x16, #16]
// DISASMDSO-NEXT: 1001c: 10 42 00 91 add x16, x16, #16
@@ -84,30 +84,30 @@
// DISASMDSO-NEXT: 1002c: 1f 20 03 d5 nop
// foo at plt
-// Page(0x30018) - Page(0x10030) = 0x20000 - 0x10000 = 0x10000 = 65536
+// Page(0x30018) - Page(0x10030) = 0x30000 - 0x10000 = 0x20000 = 131072
// DISASMDSO-EMPTY:
// DISASMDSO-NEXT: foo at plt:
-// DISASMDSO-NEXT: 10030: 90 00 00 90 adrp x16, #65536
+// DISASMDSO-NEXT: 10030: 10 01 00 90 adrp x16, #131072
// 0x3018 & 0xFFF = 0x18 = 24
// DISASMDSO-NEXT: 10034: 11 0e 40 f9 ldr x17, [x16, #24]
// DISASMDSO-NEXT: 10038: 10 62 00 91 add x16, x16, #24
// DISASMDSO-NEXT: 1003c: 20 02 1f d6 br x17
// bar at plt
-// Page(0x30020) - Page(0x10040) = 0x20000 - 0x10000 = 0x10000 = 65536
+// Page(0x30020) - Page(0x10040) = 0x30000 - 0x10000 = 0x20000 = 131072
// DISASMDSO-EMPTY:
// DISASMDSO-NEXT: bar at plt:
-// DISASMDSO-NEXT: 10040: 90 00 00 90 adrp x16, #65536
+// DISASMDSO-NEXT: 10040: 10 01 00 90 adrp x16, #131072
// 0x3020 & 0xFFF = 0x20 = 32
// DISASMDSO-NEXT: 10044: 11 12 40 f9 ldr x17, [x16, #32]
// DISASMDSO-NEXT: 10048: 10 82 00 91 add x16, x16, #32
// DISASMDSO-NEXT: 1004c: 20 02 1f d6 br x17
// weak at plt
-// Page(0x30028) - Page(0x10050) = 0x20000 - 0x10000 = 0x10000 = 65536
+// Page(0x30028) - Page(0x10050) = 0x30000 - 0x10000 = 0x20000 = 131072
// DISASMDSO-EMPTY:
// DISASMDSO-NEXT: weak at plt:
-// DISASMDSO-NEXT: 10050: 90 00 00 90 adrp x16, #65536
+// DISASMDSO-NEXT: 10050: 10 01 00 90 adrp x16, #131072
// 0x3028 & 0xFFF = 0x28 = 40
// DISASMDSO-NEXT: 10054: 11 16 40 f9 ldr x17, [x16, #40]
// DISASMDSO-NEXT: 10058: 10 a2 00 91 add x16, x16, #40
@@ -132,7 +132,7 @@
// CHECKEXE-NEXT: SHF_ALLOC
// CHECKEXE-NEXT: SHF_WRITE
// CHECKEXE-NEXT: ]
-// CHECKEXE-NEXT: Address: 0x220000
+// CHECKEXE-NEXT: Address: 0x230000
// CHECKEXE-NEXT: Offset:
// CHECKEXE-NEXT: Size: 40
// CHECKEXE-NEXT: Link:
@@ -142,20 +142,20 @@
// CHECKEXE: Relocations [
// CHECKEXE-NEXT: Section ({{.*}}) .rela.plt {
-// &(.got.plt[3]) = 0x220000 + 3 * 8 = 0x220018
-// CHECKEXE-NEXT: 0x220018 R_AARCH64_JUMP_SLOT bar 0x0
+// &(.got.plt[3]) = 0x230000 + 3 * 8 = 0x230018
+// CHECKEXE-NEXT: 0x230018 R_AARCH64_JUMP_SLOT bar 0x0
-// &(.got.plt[4]) = 0x220000 + 4 * 8 = 0x220020
-// CHECKEXE-NEXT: 0x220020 R_AARCH64_JUMP_SLOT weak 0x0
+// &(.got.plt[4]) = 0x230000 + 4 * 8 = 0x230020
+// CHECKEXE-NEXT: 0x230020 R_AARCH64_JUMP_SLOT weak 0x0
// CHECKEXE-NEXT: }
// CHECKEXE-NEXT: ]
// DUMPEXE: Contents of section .got.plt:
// .got.plt[0..2] = 0 (reserved)
// .got.plt[3..4] = .plt = 0x40010
-// DUMPEXE-NEXT: 220000 00000000 00000000 00000000 00000000
-// DUMPEXE-NEXT: 220010 00000000 00000000 10002100 00000000
-// DUMPEXE-NEXT: 220020 10002100 00000000
+// DUMPEXE-NEXT: 230000 00000000 00000000 00000000 00000000
+// DUMPEXE-NEXT: 230010 00000000 00000000 10002100 00000000
+// DUMPEXE-NEXT: 230020 10002100 00000000
// DISASMEXE: _start:
// 0x21000c - 0x210000 = 0xc = 12
@@ -172,8 +172,8 @@
// DISASMEXE-NEXT: .plt:
// DISASMEXE-NEXT: 210010: f0 7b bf a9 stp x16, x30, [sp, #-16]!
// &(.got.plt[2]) = 0x2200B0 + 2 * 8 = 0x2200C0
-// Page(0x220010) - Page(0x210014) = 0x220000 - 0x210000 = 0x10000 = 65536
-// DISASMEXE-NEXT: 210014: 90 00 00 90 adrp x16, #65536
+// Page(0x230010) - Page(0x210014) = 0x230000 - 0x210000 = 0x20000 = 131072
+// DISASMEXE-NEXT: 210014: 10 01 00 90 adrp x16, #131072
// 0x120c0 & 0xFFF = 0xC0 = 192
// DISASMEXE-NEXT: 210018: 11 0a 40 f9 ldr x17, [x16, #16]
// DISASMEXE-NEXT: 21001c: 10 42 00 91 add x16, x16, #16
@@ -183,19 +183,19 @@
// DISASMEXE-NEXT: 21002c: 1f 20 03 d5 nop
// bar at plt
-// Page(0x40018) - Page(0x210030) = 0x220000 - 0x210000 = 0x10000 = 65536
+// Page(0x230018) - Page(0x210030) = 0x230000 - 0x210000 = 0x20000 = 131072
// DISASMEXE-EMPTY:
// DISASMEXE-NEXT: bar at plt:
-// DISASMEXE-NEXT: 210030: 90 00 00 90 adrp x16, #65536
+// DISASMEXE-NEXT: 210030: 10 01 00 90 adrp x16, #131072
// DISASMEXE-NEXT: 210034: 11 0e 40 f9 ldr x17, [x16, #24]
// DISASMEXE-NEXT: 210038: 10 62 00 91 add x16, x16, #24
// DISASMEXE-NEXT: 21003c: 20 02 1f d6 br x17
// weak at plt
-// Page(0x40020) - Page(0x210040) = 0x220000 - 0x210000 = 0x10000 = 65536
+// Page(0x230020) - Page(0x210040) = 0x230000 - 0x210000 = 0x20000 = 131072
// DISASMEXE-EMPTY:
// DISASMEXE-NEXT: weak at plt:
-// DISASMEXE-NEXT: 210040: 90 00 00 90 adrp x16, #65536
+// DISASMEXE-NEXT: 210040: 10 01 00 90 adrp x16, #131072
// DISASMEXE-NEXT: 210044: 11 12 40 f9 ldr x17, [x16, #32]
// DISASMEXE-NEXT: 210048: 10 82 00 91 add x16, x16, #32
// DISASMEXE-NEXT: 21004c: 20 02 1f d6 br x17
Modified: lld/trunk/test/ELF/plt-i686.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/plt-i686.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/plt-i686.s (original)
+++ lld/trunk/test/ELF/plt-i686.s Wed Mar 13 20:47:45 2019
@@ -30,8 +30,8 @@
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x402000
-// CHECK-NEXT: Offset: 0x2000
+// CHECK-NEXT: Address: 0x403000
+// CHECK-NEXT: Offset: 0x3000
// CHECK-NEXT: Size: 20
// CHECK-NEXT: Link: 0
// CHECK-NEXT: Info: 0
@@ -42,8 +42,8 @@
// 0x12000 + got.plt.reserved(12) + 4 = 0x12010
// CHECK: Relocations [
// CHECK-NEXT: Section ({{.*}}) .rel.plt {
-// CHECK-NEXT: 0x40200C R_386_JUMP_SLOT bar 0x0
-// CHECK-NEXT: 0x402010 R_386_JUMP_SLOT zed 0x0
+// CHECK-NEXT: 0x40300C R_386_JUMP_SLOT bar 0x0
+// CHECK-NEXT: 0x403010 R_386_JUMP_SLOT zed 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -67,26 +67,26 @@
// 0x401010 - 0x40102b - 5 = -32
// 0x401010 - 0x40103b - 5 = -48
-// 4202500 = 0x402004 = .got.plt (0x402000) + 4
-// 4202504 = 0x402008 = .got.plt (0x402000) + 8
-// 4202508 = 0x40200C = .got.plt (0x402000) + got.plt.reserved(12)
-// 4202512 = 0x402010 = .got.plt (0x402000) + got.plt.reserved(12) + 4
+// 4206596 = 0x403004 = .got.plt (0x403000) + 4
+// 4206600 = 0x403008 = .got.plt (0x403000) + 8
+// 4206604 = 0x40300C = .got.plt (0x403000) + got.plt.reserved(12)
+// 4206608 = 0x403010 = .got.plt (0x403000) + got.plt.reserved(12) + 4
// DISASM: Disassembly of section .plt:
// DISASM-NEXT: .plt:
-// DISASM-NEXT: 401020: ff 35 04 20 40 00 pushl 4202500
-// DISASM-NEXT: 401026: ff 25 08 20 40 00 jmpl *4202504
+// DISASM-NEXT: 401020: ff 35 04 30 40 00 pushl 4206596
+// DISASM-NEXT: 401026: ff 25 08 30 40 00 jmpl *4206600
// DISASM-NEXT: 40102c: 90 nop
// DISASM-NEXT: 40102d: 90 nop
// DISASM-NEXT: 40102e: 90 nop
// DISASM-NEXT: 40102f: 90 nop
// DISASM-EMPTY:
// DISASM-NEXT: bar at plt:
-// DISASM-NEXT: 401030: ff 25 0c 20 40 00 jmpl *4202508
+// DISASM-NEXT: 401030: ff 25 0c 30 40 00 jmpl *4206604
// DISASM-NEXT: 401036: 68 00 00 00 00 pushl $0
// DISASM-NEXT: 40103b: e9 e0 ff ff ff jmp -32 <.plt>
// DISASM-EMPTY:
// DISASM-NEXT: zed at plt:
-// DISASM-NEXT: 401040: ff 25 10 20 40 00 jmpl *4202512
+// DISASM-NEXT: 401040: ff 25 10 30 40 00 jmpl *4206608
// DISASM-NEXT: 401046: 68 08 00 00 00 pushl $8
// DISASM-NEXT: 40104b: e9 d0 ff ff ff jmp -48 <.plt>
@@ -110,8 +110,8 @@
// CHECKSHARED-NEXT: SHF_ALLOC
// CHECKSHARED-NEXT: SHF_WRITE
// CHECKSHARED-NEXT: ]
-// CHECKSHARED-NEXT: Address: 0x2000
-// CHECKSHARED-NEXT: Offset: 0x2000
+// CHECKSHARED-NEXT: Address: 0x3000
+// CHECKSHARED-NEXT: Offset: 0x3000
// CHECKSHARED-NEXT: Size: 20
// CHECKSHARED-NEXT: Link: 0
// CHECKSHARED-NEXT: Info: 0
@@ -119,12 +119,12 @@
// CHECKSHARED-NEXT: EntrySize: 0
// CHECKSHARED-NEXT: }
-// 0x2000 + got.plt.reserved(12) = 0x200C
-// 0x2000 + got.plt.reserved(12) + 4 = 0x2010
+// 0x3000 + got.plt.reserved(12) = 0x300C
+// 0x3000 + got.plt.reserved(12) + 4 = 0x3010
// CHECKSHARED: Relocations [
// CHECKSHARED-NEXT: Section ({{.*}}) .rel.plt {
-// CHECKSHARED-NEXT: 0x200C R_386_JUMP_SLOT bar 0x0
-// CHECKSHARED-NEXT: 0x2010 R_386_JUMP_SLOT zed 0x0
+// CHECKSHARED-NEXT: 0x300C R_386_JUMP_SLOT bar 0x0
+// CHECKSHARED-NEXT: 0x3010 R_386_JUMP_SLOT zed 0x0
// CHECKSHARED-NEXT: }
// CHECKSHARED-NEXT: ]
@@ -139,31 +139,31 @@
// DISASMSHARED-NEXT: 1013: e9 e8 ff ff ff jmp -24
// DISASMSHARED-NEXT: Disassembly of section .plt:
// DISASMSHARED-NEXT: .plt:
-// DISASMSHARED-NEXT: 1020: ff b3 04 20 00 00 pushl 8196(%ebx)
-// DISASMSHARED-NEXT: 1026: ff a3 08 20 00 00 jmpl *8200(%ebx)
+// DISASMSHARED-NEXT: 1020: ff b3 04 30 00 00 pushl 12292(%ebx)
+// DISASMSHARED-NEXT: 1026: ff a3 08 30 00 00 jmpl *12296(%ebx)
// DISASMSHARED-NEXT: 102c: 90 nop
// DISASMSHARED-NEXT: 102d: 90 nop
// DISASMSHARED-NEXT: 102e: 90 nop
// DISASMSHARED-NEXT: 102f: 90 nop
-// DISASMSHARED-NEXT: 1030: ff a3 0c 20 00 00 jmpl *8204(%ebx)
+// DISASMSHARED-NEXT: 1030: ff a3 0c 30 00 00 jmpl *12300(%ebx)
// DISASMSHARED-NEXT: 1036: 68 00 00 00 00 pushl $0
// DISASMSHARED-NEXT: 103b: e9 e0 ff ff ff jmp -32 <.plt>
-// DISASMSHARED-NEXT: 1040: ff a3 10 20 00 00 jmpl *8208(%ebx)
+// DISASMSHARED-NEXT: 1040: ff a3 10 30 00 00 jmpl *12304(%ebx)
// DISASMSHARED-NEXT: 1046: 68 08 00 00 00 pushl $8
// DISASMSHARED-NEXT: 104b: e9 d0 ff ff ff jmp -48 <.plt>
// DISASMPIE: Disassembly of section .plt:
// DISASMPIE-NEXT: .plt:
-// DISASMPIE-NEXT: 1020: ff b3 04 20 00 00 pushl 8196(%ebx)
-// DISASMPIE-NEXT: 1026: ff a3 08 20 00 00 jmpl *8200(%ebx)
+// DISASMPIE-NEXT: 1020: ff b3 04 30 00 00 pushl 12292(%ebx)
+// DISASMPIE-NEXT: 1026: ff a3 08 30 00 00 jmpl *12296(%ebx)
// DISASMPIE-NEXT: 102c: 90 nop
// DISASMPIE-NEXT: 102d: 90 nop
// DISASMPIE-NEXT: 102e: 90 nop
// DISASMPIE-NEXT: 102f: 90 nop
-// DISASMPIE-NEXT: 1030: ff a3 0c 20 00 00 jmpl *8204(%ebx)
+// DISASMPIE-NEXT: 1030: ff a3 0c 30 00 00 jmpl *12300(%ebx)
// DISASMPIE-NEXT: 1036: 68 00 00 00 00 pushl $0
// DISASMPIE-NEXT: 103b: e9 e0 ff ff ff jmp -32 <.plt>
-// DISASMPIE-NEXT: 1040: ff a3 10 20 00 00 jmpl *8208(%ebx)
+// DISASMPIE-NEXT: 1040: ff a3 10 30 00 00 jmpl *12304(%ebx)
// DISASMPIE-NEXT: 1046: 68 08 00 00 00 pushl $8
// DISASMPIE-NEXT: 104b: e9 d0 ff ff ff jmp -48 <.plt>
Modified: lld/trunk/test/ELF/plt.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/plt.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/plt.s (original)
+++ lld/trunk/test/ELF/plt.s Wed Mar 13 20:47:45 2019
@@ -24,9 +24,9 @@
// CHECK: Relocations [
// CHECK-NEXT: Section ({{.*}}) .rela.plt {
-// CHECK-NEXT: 0x2018 R_X86_64_JUMP_SLOT bar 0x0
-// CHECK-NEXT: 0x2020 R_X86_64_JUMP_SLOT zed 0x0
-// CHECK-NEXT: 0x2028 R_X86_64_JUMP_SLOT _start 0x0
+// CHECK-NEXT: 0x3018 R_X86_64_JUMP_SLOT bar 0x0
+// CHECK-NEXT: 0x3020 R_X86_64_JUMP_SLOT zed 0x0
+// CHECK-NEXT: 0x3028 R_X86_64_JUMP_SLOT _start 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
@@ -45,8 +45,8 @@
// CHECK2: Relocations [
// CHECK2-NEXT: Section ({{.*}}) .rela.plt {
-// CHECK2-NEXT: 0x202018 R_X86_64_JUMP_SLOT bar 0x0
-// CHECK2-NEXT: 0x202020 R_X86_64_JUMP_SLOT zed 0x0
+// CHECK2-NEXT: 0x203018 R_X86_64_JUMP_SLOT bar 0x0
+// CHECK2-NEXT: 0x203020 R_X86_64_JUMP_SLOT zed 0x0
// CHECK2-NEXT: }
// CHECK2-NEXT: ]
@@ -64,28 +64,28 @@
// DISASM-NEXT: 100a: e9 {{.*}} jmp 49
// DISASM-NEXT: 100f: e9 {{.*}} jmp 60
-// 0x2018 - 0x1036 = 4066
-// 0x2020 - 0x1046 = 4058
-// 0x2028 - 0x1056 = 4050
+// 0x3018 - 0x1036 = 8162
+// 0x3020 - 0x1046 = 8154
+// 0x3028 - 0x1056 = 8146
// DISASM: Disassembly of section .plt:
// DISASM-NEXT: .plt:
-// DISASM-NEXT: 1020: ff 35 e2 0f 00 00 pushq 4066(%rip)
-// DISASM-NEXT: 1026: ff 25 e4 0f 00 00 jmpq *4068(%rip)
+// DISASM-NEXT: 1020: ff 35 e2 1f 00 00 pushq 8162(%rip)
+// DISASM-NEXT: 1026: ff 25 e4 1f 00 00 jmpq *8164(%rip)
// DISASM-NEXT: 102c: 0f 1f 40 00 nopl (%rax)
// DISASM-EMPTY:
// DISASM-NEXT: bar at plt:
-// DISASM-NEXT: 1030: ff 25 e2 0f 00 00 jmpq *4066(%rip)
+// DISASM-NEXT: 1030: ff 25 e2 1f 00 00 jmpq *8162(%rip)
// DISASM-NEXT: 1036: 68 00 00 00 00 pushq $0
// DISASM-NEXT: 103b: e9 e0 ff ff ff jmp -32 <.plt>
// DISASM-EMPTY:
// DISASM-NEXT: zed at plt:
-// DISASM-NEXT: 1040: ff 25 da 0f 00 00 jmpq *4058(%rip)
+// DISASM-NEXT: 1040: ff 25 da 1f 00 00 jmpq *8154(%rip)
// DISASM-NEXT: 1046: 68 01 00 00 00 pushq $1
// DISASM-NEXT: 104b: e9 d0 ff ff ff jmp -48 <.plt>
// DISASM-EMPTY:
// DISASM-NEXT: _start at plt:
-// DISASM-NEXT: 1050: ff 25 d2 0f 00 00 jmpq *4050(%rip)
+// DISASM-NEXT: 1050: ff 25 d2 1f 00 00 jmpq *8146(%rip)
// DISASM-NEXT: 1056: 68 02 00 00 00 pushq $2
// DISASM-NEXT: 105b: e9 c0 ff ff ff jmp -64 <.plt>
@@ -105,17 +105,17 @@
// DISASM2: Disassembly of section .plt:
// DISASM2-NEXT: .plt:
-// DISASM2-NEXT: 201020: ff 35 e2 0f 00 00 pushq 4066(%rip)
-// DISASM2-NEXT: 201026: ff 25 e4 0f 00 00 jmpq *4068(%rip)
+// DISASM2-NEXT: 201020: ff 35 e2 1f 00 00 pushq 8162(%rip)
+// DISASM2-NEXT: 201026: ff 25 e4 1f 00 00 jmpq *8164(%rip)
// DISASM2-NEXT: 20102c: 0f 1f 40 00 nopl (%rax)
// DISASM2-EMPTY:
// DISASM2-NEXT: bar at plt:
-// DISASM2-NEXT: 201030: ff 25 e2 0f 00 00 jmpq *4066(%rip)
+// DISASM2-NEXT: 201030: ff 25 e2 1f 00 00 jmpq *8162(%rip)
// DISASM2-NEXT: 201036: 68 00 00 00 00 pushq $0
// DISASM2-NEXT: 20103b: e9 e0 ff ff ff jmp -32 <.plt>
// DISASM2-EMPTY:
// DISASM2-NEXT: zed at plt:
-// DISASM2-NEXT: 201040: ff 25 da 0f 00 00 jmpq *4058(%rip)
+// DISASM2-NEXT: 201040: ff 25 da 1f 00 00 jmpq *8154(%rip)
// DISASM2-NEXT: 201046: 68 01 00 00 00 pushq $1
// DISASM2-NEXT: 20104b: e9 d0 ff ff ff jmp -48 <.plt>
// DISASM2-NOT: 2010C0
Modified: lld/trunk/test/ELF/ppc-rela.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/ppc-rela.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/ppc-rela.s (original)
+++ lld/trunk/test/ELF/ppc-rela.s Wed Mar 13 20:47:45 2019
@@ -7,5 +7,5 @@
.long foo
// CHECK: Section ({{.*}}) .rela.dyn {
-// CHECK-NEXT: 0x1000 R_PPC_ADDR32 foo 0x0
+// CHECK-NEXT: 0x2000 R_PPC_ADDR32 foo 0x0
// CHECK-NEXT: }
Modified: lld/trunk/test/ELF/ppc64-call-reach.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/ppc64-call-reach.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/ppc64-call-reach.s (original)
+++ lld/trunk/test/ELF/ppc64-call-reach.s Wed Mar 13 20:47:45 2019
@@ -67,14 +67,14 @@ test:
# .branch_lt[0]
# THUNK-LABEL: __long_branch_callee:
-# THUNK-NEXT: 10010000: {{.*}} addis 12, 2, -1
+# THUNK-NEXT: 10010000: {{.*}} addis 12, 2, 1
# THUNK-NEXT: ld 12, -32768(12)
# THUNK-NEXT: mtctr 12
# THUNK-NEXT: bctr
# .branch_lt[1]
# THUNK-LABEL: __long_branch_tail_callee:
-# THUNK-NEXT: 10010010: {{.*}} addis 12, 2, -1
+# THUNK-NEXT: 10010010: {{.*}} addis 12, 2, 1
# THUNK-NEXT: ld 12, -32760(12)
# THUNK-NEXT: mtctr 12
# THUNK-NEXT: bctr
@@ -88,7 +88,7 @@ test:
# The offset from the TOC to the .branch_lt section is (-1 << 16) - 32768.
# Name Type Address Off Size
-# BRANCHLT: .branch_lt PROGBITS 0000000010020000 020000 000010
-# BRANCHLT: .got PROGBITS 0000000010030000 030000 000008
+# BRANCHLT: .got PROGBITS 0000000010020000 020000 000008
+# BRANCHLT: .branch_lt PROGBITS 0000000010030000 030000 000010
# BRANCHLT-NOT: .plt
Modified: lld/trunk/test/ELF/ppc64-func-entry-points.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/ppc64-func-entry-points.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/ppc64-func-entry-points.s (original)
+++ lld/trunk/test/ELF/ppc64-func-entry-points.s Wed Mar 13 20:47:45 2019
@@ -73,7 +73,7 @@ glob:
// CHECK: 10010020: {{.*}} bl .+144
// CHECK: 10010034: {{.*}} bl .+84
// CHECK: foo_external_diff:
-// CHECK-NEXT: 10010080: {{.*}} addis 2, 12, 2
+// CHECK-NEXT: 10010080: {{.*}} addis 2, 12, 1
// CHECK-NEXT: 10010084: {{.*}} addi 2, 2, 32640
// CHECK-NEXT: 10010088: {{.*}} nop
// CHECK: foo_external_same:
Modified: lld/trunk/test/ELF/ppc64-got-indirect.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/ppc64-got-indirect.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/ppc64-got-indirect.s (original)
+++ lld/trunk/test/ELF/ppc64-got-indirect.s Wed Mar 13 20:47:45 2019
@@ -81,35 +81,35 @@ glob:
# r3 = r2 - 32760 = 0x10030008 -> .toc entry for glob.
# CHECK: _start:
-# CHECK-NEXT: 10010000: {{.*}} addis 2, 12, 3
+# CHECK-NEXT: 10010000: {{.*}} addis 2, 12, 2
# CHECK-NEXT: 10010004: {{.*}} addi 2, 2, -32768
# CHECK-NEXT: 10010008: {{.*}} nop
# CHECK-NEXT: 1001000c: {{.*}} ld 3, -32760(2)
# CHECK: 1001001c: {{.*}} lwa 3, 0(3)
-# CHECK-LE: Disassembly of section .data:
-# CHECK-LE-NEXT: glob:
-# CHECK-LE-NEXT: 10020000: 37 00 00 00
-
# CHECK-LE: Disassembly of section .got:
# CHECK-LE-NEXT: .got:
-# CHECK-LE-NEXT: 10030000: 00 80 03 10
-# CHECK-LE-NEXT: 10030004: 00 00 00 00
+# CHECK-LE-NEXT: 10020000: 00 80 02 10
+# CHECK-LE-NEXT: 10020004: 00 00 00 00
# Verify that .toc comes right after .got
# CHECK-LE: Disassembly of section .toc:
-# CHECK-LE: 10030008: 00 00 02 10
+# CHECK-LE: 10020008: 00 00 03 10
-# CHECK-BE: Disassembly of section .data:
-# CHECK-BE-NEXT: glob:
-# CHECK-BE-NEXT: 10020000: 00 00 00 37
+# CHECK-LE: Disassembly of section .data:
+# CHECK-LE-NEXT: glob:
+# CHECK-LE-NEXT: 10030000: 37 00 00 00
# CHECK-BE: Disassembly of section .got:
# CHECK-BE-NEXT: .got:
-# CHECK-BE-NEXT: 10030000: 00 00 00 00
-# CHECK-BE-NEXT: 10030004: 10 03 80 00
+# CHECK-BE-NEXT: 10020000: 00 00 00 00
+# CHECK-BE-NEXT: 10020004: 10 02 80 00
# Verify that .toc comes right after .got
# CHECK-BE: Disassembly of section .toc:
-# CHECK-BE: 10030008: 00 00 00 00
-# CHECK-BE: 1003000c: 10 02 00 00
+# CHECK-BE: 10020008: 00 00 00 00
+# CHECK-BE: 1002000c: 10 03 00 00
+
+# CHECK-BE: Disassembly of section .data:
+# CHECK-BE-NEXT: glob:
+# CHECK-BE-NEXT: 10030000: 00 00 00 37
Modified: lld/trunk/test/ELF/ppc64-long-branch.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/ppc64-long-branch.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/ppc64-long-branch.s (original)
+++ lld/trunk/test/ELF/ppc64-long-branch.s Wed Mar 13 20:47:45 2019
@@ -6,7 +6,7 @@
# RUN: ld.lld --no-toc-optimize %t.o %t3.so -o %t
# RUN: llvm-objdump -d -start-address=0x10010000 -stop-address=0x10010018 %t | FileCheck %s -check-prefix=CALLEE_DUMP
# RUN: llvm-objdump -d -start-address=0x12010020 -stop-address=0x12010084 %t | FileCheck %s -check-prefix=CALLER_DUMP
-# RUN: llvm-objdump -D -start-address=0x12020008 -stop-address=0x12020010 %t | FileCheck %s -check-prefix=BRANCH_LT_LE
+# RUN: llvm-objdump -D -start-address=0x12030008 -stop-address=0x12030010 %t | FileCheck %s -check-prefix=BRANCH_LT_LE
# RUN: llvm-readelf --sections %t | FileCheck %s -check-prefix=SECTIONS
# RUN: llvm-mc -filetype=obj -triple=powerpc64-unknown-linux %s -o %t.o
@@ -15,7 +15,7 @@
# RUN: ld.lld --no-toc-optimize %t.o %t3.so -o %t
# RUN: llvm-objdump -d -start-address=0x10010000 -stop-address=0x10010018 %t | FileCheck %s -check-prefix=CALLEE_DUMP
# RUN: llvm-objdump -d -start-address=0x12010020 -stop-address=0x12010084 %t | FileCheck %s -check-prefix=CALLER_DUMP
-# RUN: llvm-objdump -D -start-address=0x12020008 -stop-address=0x12020010 %t | FileCheck %s -check-prefix=BRANCH_LT_BE
+# RUN: llvm-objdump -D -start-address=0x12030008 -stop-address=0x12030010 %t | FileCheck %s -check-prefix=BRANCH_LT_BE
# RUN: llvm-readelf --sections %t | FileCheck %s -check-prefix=SECTIONS
.text
@@ -89,33 +89,33 @@ b:
# Verify address of the callee
# CALLEE_DUMP: callee:
-# CALLEE_DUMP: 10010000: {{.*}} addis 2, 12, 515
+# CALLEE_DUMP: 10010000: {{.*}} addis 2, 12, 514
# CALLEE_DUMP: 10010004: {{.*}} addi 2, 2, -32544
# CALLEE_DUMP: 10010008: {{.*}} addis 4, 2, 0
# Verify the address of _start, and the call to the long-branch thunk.
# CALLER_DUMP: _start:
-# CALLER_DUMP: 12010020: {{.*}} addis 2, 12, 3
+# CALLER_DUMP: 12010020: {{.*}} addis 2, 12, 2
# CALLER_DUMP: 12010038: {{.*}} bl .+56
# Verify the thunks contents: TOC-pointer + offset = .branch_lt[0]
# 0x120380e8 + (-2 << 16 + 32552) = 0x12020008
# CALLER_DUMP: __long_branch_callee:
-# CALLER_DUMP: 12010060: {{.*}} addis 12, 2, -2
+# CALLER_DUMP: 12010060: {{.*}} addis 12, 2, 0
# CALLER_DUMP: 12010064: {{.*}} ld 12, 32552(12)
# CALLER_DUMP: 12010068: {{.*}} mtctr 12
# CALLER_DUMP: 1201006c: {{.*}} bctr
# BRANCH_LT_LE: Disassembly of section .branch_lt:
# BRANCH_LT_LE-NEXT: .branch_lt:
-# BRANCH_LT_LE-NEXT: 12020008: 08 00 01 10
-# BRANCH_LT_LE-NEXT: 1202000c: 00 00 00 00
+# BRANCH_LT_LE-NEXT: 12030008: 08 00 01 10
+# BRANCH_LT_LE-NEXT: 1203000c: 00 00 00 00
# BRANCH_LT_BE: Disassembly of section .branch_lt:
# BRANCH_LT_BE-NEXT: .branch_lt:
-# BRANCH_LT_BE-NEXT: 12020008: 00 00 00 00
-# BRANCH_LT_BE-NEXT: 1202000c: 10 01 00 08
+# BRANCH_LT_BE-NEXT: 12030008: 00 00 00 00
+# BRANCH_LT_BE-NEXT: 1203000c: 10 01 00 08
# [Nr] Name Type Address Off Size
-# SECTIONS: [ 9] .branch_lt PROGBITS 0000000012020008 2020008 000008
-# SECTIONS: [11] .got PROGBITS 00000000120300e0 20300e0 000008
+# SECTIONS: [ 9] .got PROGBITS 00000000120200e0 20200e0 000008
+# SECTIONS: [12] .branch_lt PROGBITS 0000000012030008 2030008 000008
Modified: lld/trunk/test/ELF/ppc64-shared-long_branch.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/ppc64-shared-long_branch.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/ppc64-shared-long_branch.s (original)
+++ lld/trunk/test/ELF/ppc64-shared-long_branch.s Wed Mar 13 20:47:45 2019
@@ -83,32 +83,32 @@ b:
# Verify address of the callee
# CALLEE_DUMP: callee:
-# CALLEE_DUMP: 10000: {{.*}} addis 2, 12, 515
+# CALLEE_DUMP: 10000: {{.*}} addis 2, 12, 514
# CALLEE_DUMP: 10004: {{.*}} addi 2, 2, -32528
# CALLEE_DUMP: 10008: {{.*}} addis 4, 2, 0
# Verify the address of _start, and the call to the long-branch thunk.
# CALLER_DUMP: _start:
-# CALLER_DUMP: 2010020: {{.*}} addis 2, 12, 3
+# CALLER_DUMP: 2010020: {{.*}} addis 2, 12, 2
# CALLER_DUMP: 2010038: {{.*}} bl .+56
# Verify the thunks contents: TOC-pointer + offset = .branch_lt[0]
-# 0x20380F0 + 32552 = 0x2040018
+# 0x20280F0 + 32560 = 0x2030020
# CALLER_DUMP: __long_branch_callee:
# CALLER_DUMP: 2010060: {{.*}} addis 12, 2, 0
-# CALLER_DUMP: 2010064: {{.*}} ld 12, 32552(12)
+# CALLER_DUMP: 2010064: {{.*}} ld 12, 32560(12)
# CALLER_DUMP: 2010068: {{.*}} mtctr 12
# CALLER_DUMP: 201006c: {{.*}} bctr
# .got section is at address 0x20300f0 so TOC pointer points to 0x20400F0.
# .plt section has a 2 entry header and a single entry for the long branch.
# [Nr] Name Type Address Off Size
-# SECTIONS: [11] .got PROGBITS 00000000020300f0 20300f0 000008
-# SECTIONS: [13] .plt NOBITS 0000000002040000 2030108 000018
-# SECTIONS: [14] .branch_lt NOBITS 0000000002040018 2030108 000008
+# SECTIONS: [10] .got PROGBITS 00000000020200f0 20200f0 000008
+# SECTIONS: [13] .plt NOBITS 0000000002030008 2030008 000018
+# SECTIONS: [14] .branch_lt NOBITS 0000000002030020 2030008 000008
# There is a relative dynamic relocation for (.plt + 16 bytes), with a base
# address equal to callees local entry point (0x10000 + 8).
# DYNRELOC: Relocation section '.rela.dyn' at offset 0x{{[0-9a-f]+}} contains 3 entries:
# DYNRELOC: Offset Info Type Symbol's Value
-# DYNRELOC: 0000000002040018 0000000000000016 R_PPC64_RELATIVE 10008
+# DYNRELOC: 0000000002030020 0000000000000016 R_PPC64_RELATIVE 10008
Modified: lld/trunk/test/ELF/ppc64-toc-rel.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/ppc64-toc-rel.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/ppc64-toc-rel.s (original)
+++ lld/trunk/test/ELF/ppc64-toc-rel.s Wed Mar 13 20:47:45 2019
@@ -65,18 +65,18 @@ _start:
# CHECK: Disassembly of section .text:
# CHECK-NEXT: _start:
-# CHECK: 10010008: {{.*}} addis 3, 2, -1
+# CHECK: 10010008: {{.*}} addis 3, 2, 1
# CHECK-NEXT: 1001000c: {{.*}} addi 3, 3, -32768
# CHECK: Disassembly of section .data:
# CHECK-NEXT: global_a:
-# CHECK-NEXT: 10020000: {{.*}}
+# CHECK-NEXT: 10030000: {{.*}}
# CHECK-LE: Disassembly of section .got:
# CHECK-LE-NEXT: .got:
-# CHECK-LE-NEXT: 10030000: 00 80 03 10
+# CHECK-LE-NEXT: 10020000: 00 80 02 10
# CHECK-BE: Disassembly of section .got:
# CHECK-BE-NEXT: .got:
-# CHECK-BE-NEXT: 10030000: 00 00 00 00
-# CHECK-BE-NEXT: 10030004: 10 03 80 00
+# CHECK-BE-NEXT: 10020000: 00 00 00 00
+# CHECK-BE-NEXT: 10020004: 10 02 80 00
Modified: lld/trunk/test/ELF/pr34660.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/pr34660.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/pr34660.s (original)
+++ lld/trunk/test/ELF/pr34660.s Wed Mar 13 20:47:45 2019
@@ -14,10 +14,10 @@
# DISASM: Disassembly of section .text:
# DISASM-NEXT: $x.0:
-# DISASM-NEXT: 10000: 28 00 08 58 ldr x8, #65540
+# DISASM-NEXT: 10000: 28 00 10 58 ldr x8, #131076
# SYM: Symbol table '.symtab'
-# SYM: 0000000000020004 0 NOTYPE LOCAL DEFAULT 5 patatino
+# SYM: 0000000000030004 0 NOTYPE LOCAL DEFAULT 6 patatino
ldr x8, patatino
.data
Modified: lld/trunk/test/ELF/rel-offset.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/rel-offset.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/rel-offset.s (original)
+++ lld/trunk/test/ELF/rel-offset.s Wed Mar 13 20:47:45 2019
@@ -10,6 +10,6 @@
.quad foo
// CHECK: Section ({{.*}}) .rela.dyn {
-// CHECK-NEXT: 0x1000 R_X86_64_64 foo 0x0
-// CHECK-NEXT: 0x1008 R_X86_64_64 foo 0x0
+// CHECK-NEXT: 0x2000 R_X86_64_64 foo 0x0
+// CHECK-NEXT: 0x2008 R_X86_64_64 foo 0x0
// CHECK-NEXT: }
Modified: lld/trunk/test/ELF/relative-dynamic-reloc-pie.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relative-dynamic-reloc-pie.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/relative-dynamic-reloc-pie.s (original)
+++ lld/trunk/test/ELF/relative-dynamic-reloc-pie.s Wed Mar 13 20:47:45 2019
@@ -6,9 +6,9 @@
## Test that we create R_X86_64_RELATIVE relocations with -pie.
# CHECK: Relocations [
# CHECK-NEXT: Section ({{.*}}) .rela.dyn {
-# CHECK-NEXT: 0x2000 R_X86_64_RELATIVE - 0x2000
-# CHECK-NEXT: 0x2008 R_X86_64_RELATIVE - 0x2008
-# CHECK-NEXT: 0x2010 R_X86_64_RELATIVE - 0x2009
+# CHECK-NEXT: 0x3000 R_X86_64_RELATIVE - 0x3000
+# CHECK-NEXT: 0x3008 R_X86_64_RELATIVE - 0x3008
+# CHECK-NEXT: 0x3010 R_X86_64_RELATIVE - 0x3009
# CHECK-NEXT: }
# CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/relative-dynamic-reloc-ppc64.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relative-dynamic-reloc-ppc64.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/relative-dynamic-reloc-ppc64.s (original)
+++ lld/trunk/test/ELF/relative-dynamic-reloc-ppc64.s Wed Mar 13 20:47:45 2019
@@ -14,10 +14,10 @@
// CHECK-NEXT: Section ({{.*}}) .rela.dyn {
// CHECK-NEXT: 0x[[FOO_ADDR:.*]] R_PPC64_RELATIVE - 0x[[FOO_ADDR]]
// CHECK-NEXT: 0x[[BAR_ADDR:.*]] R_PPC64_RELATIVE - 0x[[BAR_ADDR]]
-// CHECK-NEXT: 0x10010 R_PPC64_RELATIVE - 0x10009
+// CHECK-NEXT: 0x20010 R_PPC64_RELATIVE - 0x20009
// CHECK-NEXT: 0x{{.*}} R_PPC64_RELATIVE - 0x[[ZED_ADDR:.*]]
// CHECK-NEXT: 0x{{.*}} R_PPC64_RELATIVE - 0x[[FOO_ADDR]]
-// CHECK-NEXT: 0x10028 R_PPC64_ADDR64 external 0x0
+// CHECK-NEXT: 0x20028 R_PPC64_ADDR64 external 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/relative-dynamic-reloc.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relative-dynamic-reloc.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/relative-dynamic-reloc.s (original)
+++ lld/trunk/test/ELF/relative-dynamic-reloc.s Wed Mar 13 20:47:45 2019
@@ -10,10 +10,10 @@
// CHECK-NEXT: Section ({{.*}}) .rela.dyn {
// CHECK-NEXT: 0x[[FOO_ADDR:.*]] R_X86_64_RELATIVE - 0x[[FOO_ADDR]]
// CHECK-NEXT: 0x[[BAR_ADDR:.*]] R_X86_64_RELATIVE - 0x[[BAR_ADDR]]
-// CHECK-NEXT: 0x1010 R_X86_64_RELATIVE - 0x1009
+// CHECK-NEXT: 0x2010 R_X86_64_RELATIVE - 0x2009
// CHECK-NEXT: 0x{{.*}} R_X86_64_RELATIVE - 0x[[ZED_ADDR:.*]]
// CHECK-NEXT: 0x{{.*}} R_X86_64_RELATIVE - 0x[[FOO_ADDR]]
-// CHECK-NEXT: 0x1028 R_X86_64_64 external 0x0
+// CHECK-NEXT: 0x2028 R_X86_64_64 external 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/relocation-copy-flags.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation-copy-flags.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/relocation-copy-flags.s (original)
+++ lld/trunk/test/ELF/relocation-copy-flags.s Wed Mar 13 20:47:45 2019
@@ -30,7 +30,7 @@ _start:
// CHECK-NEXT: AddressAlignment: 4
// CHECK-NEXT: EntrySize: 0
// CHECK-NEXT: SectionData (
-// CHECK-NEXT: 0000: 00402000
+// CHECK-NEXT: 0000: 10302000
// CHECK-NEXT: )
// CHECK: Name: bar
@@ -39,8 +39,8 @@ _start:
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x202000
-// CHECK-NEXT: Offset: 0x2000
+// CHECK-NEXT: Address: 0x203000
+// CHECK-NEXT: Offset: 0x3000
// CHECK-NEXT: Size: 8
// CHECK-NEXT: Link: 0
// CHECK-NEXT: Info: 0
@@ -55,7 +55,7 @@ _start:
// CHECK-NEXT: Flags [
// CHECK-NEXT: ]
// CHECK-NEXT: Address: 0x0
-// CHECK-NEXT: Offset: 0x30B0
+// CHECK-NEXT: Offset: 0x3008
// CHECK-NEXT: Size: 8
// CHECK-NEXT: Link: 0
// CHECK-NEXT: Info: 0
@@ -67,7 +67,7 @@ _start:
// CHECK: Relocations [
// CHECK-NEXT: Section (4) .rela.dyn {
-// CHECK-NEXT: 0x204000 R_X86_64_COPY x 0x0
-// CHECK-NEXT: 0x202000 R_X86_64_64 z 0x0
+// CHECK-NEXT: 0x203010 R_X86_64_COPY x 0x0
+// CHECK-NEXT: 0x203000 R_X86_64_64 z 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/relocation-i686.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation-i686.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/relocation-i686.s (original)
+++ lld/trunk/test/ELF/relocation-i686.s Wed Mar 13 20:47:45 2019
@@ -55,7 +55,7 @@ movl bar at GOT, %eax
// ADDR-NEXT: SHF_ALLOC
// ADDR-NEXT: SHF_WRITE
// ADDR-NEXT: ]
-// ADDR-NEXT: Address: 0x403078
+// ADDR-NEXT: Address: 0x402078
// ADDR-NEXT: Offset:
// ADDR-NEXT: Size: 8
@@ -63,11 +63,11 @@ movl bar at GOT, %eax
R_386_GOTPC:
movl $_GLOBAL_OFFSET_TABLE_, %eax
-// 0x402078 + 8 - 0x401014 = 4204
+// 0x402078 + 8 - 0x401014 = 8300
// CHECK: Disassembly of section .R_386_GOTPC:
// CHECK-NEXT: R_386_GOTPC:
-// CHECK-NEXT: 401014: {{.*}} movl $8300, %eax
+// CHECK-NEXT: 401014: {{.*}} movl $4204, %eax
.section .dynamic_reloc, "ax", at progbits
call bar
Modified: lld/trunk/test/ELF/relocation-non-alloc.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation-non-alloc.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/relocation-non-alloc.s (original)
+++ lld/trunk/test/ELF/relocation-non-alloc.s Wed Mar 13 20:47:45 2019
@@ -15,15 +15,15 @@
// APPLYDYNREL-NEXT: SHF_ALLOC
// APPLYDYNREL-NEXT: SHF_WRITE
// APPLYDYNREL-NEXT: ]
-// APPLYDYNREL-NEXT: Address: 0x1000
-// APPLYDYNREL-NEXT: Offset: 0x1000
+// APPLYDYNREL-NEXT: Address: 0x2000
+// APPLYDYNREL-NEXT: Offset: 0x2000
// APPLYDYNREL-NEXT: Size: 16
// APPLYDYNREL-NEXT: Link: 0
// APPLYDYNREL-NEXT: Info: 0
// APPLYDYNREL-NEXT: AddressAlignment: 1
// APPLYDYNREL-NEXT: EntrySize: 0
// APPLYDYNREL-NEXT: SectionData (
-// APPLYDYNREL-NEXT: 0000: 00100000 00000000 00000000 00000000
+// APPLYDYNREL-NEXT: 0000: 00200000 00000000 00000000 00000000
// APPLYDYNREL-NEXT: )
// NOAPPLYDYNREL: Name: .data
@@ -32,8 +32,8 @@
// NOAPPLYDYNREL-NEXT: SHF_ALLOC
// NOAPPLYDYNREL-NEXT: SHF_WRITE
// NOAPPLYDYNREL-NEXT: ]
-// NOAPPLYDYNREL-NEXT: Address: 0x1000
-// NOAPPLYDYNREL-NEXT: Offset: 0x1000
+// NOAPPLYDYNREL-NEXT: Address: 0x2000
+// NOAPPLYDYNREL-NEXT: Offset: 0x2000
// NOAPPLYDYNREL-NEXT: Size: 16
// NOAPPLYDYNREL-NEXT: Link: 0
// NOAPPLYDYNREL-NEXT: Info: 0
@@ -55,14 +55,14 @@
// CHECK-NEXT: AddressAlignment: 1
// CHECK-NEXT: EntrySize: 0
// CHECK-NEXT: SectionData (
-// CHECK-NEXT: 0000: 00100000 00000000 00100000 00000000
-// CHECK-NEXT: 0010: 00100000 00000000 00100000 00000000
+// CHECK-NEXT: 0000: 00200000 00000000 00200000 00000000
+// CHECK-NEXT: 0010: 00200000 00000000 00200000 00000000
// CHECK-NEXT: )
// CHECK: Relocations [
// CHECK-NEXT: Section ({{.}}) .rela.dyn {
-// CHECK-NEXT: 0x1000 R_X86_64_RELATIVE - 0x1000
-// CHECK-NEXT: 0x1008 R_X86_64_64 zed 0x0
+// CHECK-NEXT: 0x2000 R_X86_64_RELATIVE - 0x2000
+// CHECK-NEXT: 0x2008 R_X86_64_64 zed 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/relocation-relative-weak.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation-relative-weak.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/relocation-relative-weak.s (original)
+++ lld/trunk/test/ELF/relocation-relative-weak.s Wed Mar 13 20:47:45 2019
@@ -4,7 +4,7 @@
# RUN: llvm-readobj -dyn-relocations %t | FileCheck %s
# CHECK: Dynamic Relocations {
-# CHECK-NEXT: 0x2018 R_X86_64_JUMP_SLOT w 0x0
+# CHECK-NEXT: 0x3018 R_X86_64_JUMP_SLOT w 0x0
# CHECK-NEXT: }
.globl _start
Modified: lld/trunk/test/ELF/relocation.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relocation.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/relocation.s (original)
+++ lld/trunk/test/ELF/relocation.s Wed Mar 13 20:47:45 2019
@@ -16,35 +16,35 @@
// SEC-NEXT: Offset: 0x1030
// SEC-NEXT: Size: 48
-// SEC: Name: .got.plt
+// SEC: Name: .got
// SEC-NEXT: Type: SHT_PROGBITS
// SEC-NEXT: Flags [
// SEC-NEXT: SHF_ALLOC
// SEC-NEXT: SHF_WRITE
// SEC-NEXT: ]
-// SEC-NEXT: Address: 0x202000
-// SEC-NEXT: Offset: 0x2000
-// SEC-NEXT: Size: 40
+// SEC-NEXT: Address: 0x2020F0
+// SEC-NEXT: Offset:
+// SEC-NEXT: Size: 8
// SEC-NEXT: Link: 0
// SEC-NEXT: Info: 0
// SEC-NEXT: AddressAlignment: 8
// SEC-NEXT: EntrySize: 0
-// SEC-NEXT: }
+// SEC-NEXT: }
-// SEC: Name: .got
+// SEC: Name: .got.plt
// SEC-NEXT: Type: SHT_PROGBITS
// SEC-NEXT: Flags [
// SEC-NEXT: SHF_ALLOC
// SEC-NEXT: SHF_WRITE
// SEC-NEXT: ]
-// SEC-NEXT: Address: 0x2030F0
-// SEC-NEXT: Offset:
-// SEC-NEXT: Size: 8
+// SEC-NEXT: Address: 0x203000
+// SEC-NEXT: Offset: 0x3000
+// SEC-NEXT: Size: 40
// SEC-NEXT: Link: 0
// SEC-NEXT: Info: 0
// SEC-NEXT: AddressAlignment: 8
// SEC-NEXT: EntrySize: 0
-// SEC-NEXT: }
+// SEC-NEXT: }
.section .text,"ax", at progbits,unique,1
.global _start
@@ -120,9 +120,9 @@ R_X86_64_64:
R_X86_64_GOTPCREL:
.long zed at gotpcrel
-// 0x2030F0(.got) - 0x2002c8(.R_X86_64_GOTPCREL) = 0x2e28
+// 0x2020F0(.got) - 0x2002c8(.R_X86_64_GOTPCREL) = 0x1e28
// CHECK: Contents of section .R_X86_64_GOTPCREL
-// CHECK-NEXT: 2002c8 282e0000
+// CHECK-NEXT: 2002c8 281e0000
.section .R_X86_64_GOT32,"a", at progbits
.global R_X86_64_GOT32
Modified: lld/trunk/test/ELF/relro-non-contiguous.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/relro-non-contiguous.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/relro-non-contiguous.s (original)
+++ lld/trunk/test/ELF/relro-non-contiguous.s Wed Mar 13 20:47:45 2019
@@ -3,12 +3,12 @@
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %p/Inputs/copy-in-shared.s -o %t2.o
// RUN: ld.lld -shared %t.o %t2.o -o %t.so
-// Place the .got.plt (non relro) immediately after .dynamic. This is the
-// reverse order of the non-linker script case. The linker created .bss.rel.ro
-// section will be placed after .got.plt causing the relro to be non-contiguous.
+// Separate RelRo sections .dynamic .bss.rel.ro with non RelRo .got.plt.
+// This causes the RelRo sections to be non-contiguous.
// RUN: echo "SECTIONS { \
// RUN: .dynamic : { *(.dynamic) } \
// RUN: .got.plt : { *(.got.plt) } \
+// RUN: .bss.rel.ro : { *(.bss.rel.o) } \
// RUN: } " > %t.script
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t3.o
Modified: lld/trunk/test/ELF/section-layout.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/section-layout.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/section-layout.s (original)
+++ lld/trunk/test/ELF/section-layout.s Wed Mar 13 20:47:45 2019
@@ -32,6 +32,7 @@ _start:
// For non-executable and non-writable sections, PROGBITS appear after others.
// CHECK: Name: a
// CHECK: Name: b
+
// CHECK: Name: c
// CHECK: Name: d
@@ -40,13 +41,13 @@ _start:
// CHECK: Name: k
// CHECK: Name: l
-// Writable sections appear before TLS and other relro sections.
-// CHECK: Name: i
-
// TLS sections are only sorted on NOBITS.
// CHECK: Name: e
// CHECK: Name: g
+// Writable sections appear after TLS and other relro sections.
+// CHECK: Name: i
+
// CHECK: Name: j
// Non allocated sections are in input order.
Modified: lld/trunk/test/ELF/section-name.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/section-name.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/section-name.s (original)
+++ lld/trunk/test/ELF/section-name.s Wed Mar 13 20:47:45 2019
@@ -45,12 +45,12 @@ _start:
// CHECK: 1 .rodata 00000002
// CHECK: 2 .gcc_except_table 00000001
// CHECK: 3 .text 00000002
-// CHECK: 4 .data 00000002
-// CHECK: 5 .foo.a 00000001
-// CHECK: 6 .foo 00000001
-// CHECK: 7 .tdata 00000001
-// CHECK: 8 .tbss 00000001
-// CHECK: 9 .data.rel.ro 00000004
+// CHECK: 4 .tdata 00000001
+// CHECK: 5 .tbss 00000001
+// CHECK: 6 .data.rel.ro 00000004
+// CHECK: 7 .data 00000002
+// CHECK: 8 .foo.a 00000001
+// CHECK: 9 .foo 00000001
// CHECK: 10 .bss 00000002
// CHECK: 11 .comment 00000008
// CHECK: 12 .symtab 00000030
Modified: lld/trunk/test/ELF/sort-norosegment.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/sort-norosegment.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/sort-norosegment.s (original)
+++ lld/trunk/test/ELF/sort-norosegment.s Wed Mar 13 20:47:45 2019
@@ -8,8 +8,8 @@
# CHECK-NEXT: .hash {{.*}} A
# CHECK-NEXT: .dynstr {{.*}} A
# CHECK-NEXT: .text {{.*}} AX
-# CHECK-NEXT: foo {{.*}} WA
# CHECK-NEXT: .dynamic {{.*}} WA
+# CHECK-NEXT: foo {{.*}} WA
.section foo, "aw"
.byte 0
Modified: lld/trunk/test/ELF/startstop.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/startstop.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/startstop.s (original)
+++ lld/trunk/test/ELF/startstop.s Wed Mar 13 20:47:45 2019
@@ -50,13 +50,13 @@
// SYMBOL: Symbol {
// SYMBOL: Name: __stop_zed1
-// SYMBOL: Value: 0x2010
+// SYMBOL: Value: 0x3010
// SYMBOL: STV_PROTECTED
// SYMBOL: Section: zed1
// SYMBOL: }
// SYMBOL: Symbol {
// SYMBOL: Name: __stop_zed2
-// SYMBOL: Value: 0x2020
+// SYMBOL: Value: 0x3020
// SYMBOL: STV_PROTECTED
// SYMBOL: Section: zed2
// SYMBOL: }
Modified: lld/trunk/test/ELF/synthetic-got.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/synthetic-got.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/synthetic-got.s (original)
+++ lld/trunk/test/ELF/synthetic-got.s Wed Mar 13 20:47:45 2019
@@ -7,13 +7,13 @@
# RUN: | FileCheck %s --check-prefix=GOTDATA
# GOT: Sections:
-# GOT: 8 .got.plt 00000020 00000000000000e0 DATA
-# GOT: 10 .got 00000008 00000000000001d0 DATA
-# GOTDATA: Contents of section .got.plt:
-# GOTDATA-NEXT: 00e0 00010000 00000000 00000000 00000000
-# GOTDATA-NEXT: 00f0 00000000 00000000 d6000000 00000000
-# GOTDATA-NEXT: Contents of section .got:
-# GOTDATA-NEXT: 01d0 00000000 00000000
+# GOT: 9 .got 00000008 00000000000001b0 DATA
+# GOT: 10 .got.plt 00000020 00000000000001b8 DATA
+# GOTDATA: Contents of section .got:
+# GOTDATA-NEXT: 01b0 00000000 00000000
+# GOTDATA-NEXT: Contents of section .got.plt:
+# GOTDATA-NEXT: 01b8 e0000000 00000000 00000000 00000000
+# GOTDATA-NEXT: 01c8 00000000 00000000 d6000000 00000000
# RUN: echo "SECTIONS { .mygot : { *(.got) *(.got.plt) } }" > %t1.script
# RUN: ld.lld --hash-style=sysv -shared %t.o -o %t1.out --script %t1.script
Modified: lld/trunk/test/ELF/tls-dynamic-i686.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/tls-dynamic-i686.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/tls-dynamic-i686.s (original)
+++ lld/trunk/test/ELF/tls-dynamic-i686.s Wed Mar 13 20:47:45 2019
@@ -56,8 +56,8 @@ addl tls1 at gotntpoff(%ebx),%eax
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x3070
-// CHECK-NEXT: Offset: 0x3070
+// CHECK-NEXT: Address: 0x2070
+// CHECK-NEXT: Offset: 0x2070
// CHECK-NEXT: Size: 32
// CHECK-NEXT: Link: 0
// CHECK-NEXT: Info: 0
@@ -66,13 +66,13 @@ addl tls1 at gotntpoff(%ebx),%eax
// CHECK: Relocations [
// CHECK: Section ({{.+}}) .rel.dyn {
-// CHECK-NEXT: 0x3080 R_386_TLS_DTPMOD32 - 0x0
-// CHECK-NEXT: 0x3070 R_386_TLS_DTPMOD32 tls0 0x0
-// CHECK-NEXT: 0x3074 R_386_TLS_DTPOFF32 tls0 0x0
-// CHECK-NEXT: 0x3088 R_386_TLS_TPOFF tls0 0x0
-// CHECK-NEXT: 0x3078 R_386_TLS_DTPMOD32 tls1 0x0
-// CHECK-NEXT: 0x307C R_386_TLS_DTPOFF32 tls1 0x0
-// CHECK-NEXT: 0x308C R_386_TLS_TPOFF tls1 0x0
+// CHECK-NEXT: 0x2080 R_386_TLS_DTPMOD32 - 0x0
+// CHECK-NEXT: 0x2070 R_386_TLS_DTPMOD32 tls0 0x0
+// CHECK-NEXT: 0x2074 R_386_TLS_DTPOFF32 tls0 0x0
+// CHECK-NEXT: 0x2088 R_386_TLS_TPOFF tls0 0x0
+// CHECK-NEXT: 0x2078 R_386_TLS_DTPMOD32 tls1 0x0
+// CHECK-NEXT: 0x207C R_386_TLS_DTPOFF32 tls1 0x0
+// CHECK-NEXT: 0x208C R_386_TLS_TPOFF tls1 0x0
// CHECK-NEXT: }
// DIS: Disassembly of section .text:
Modified: lld/trunk/test/ELF/tls-dynamic.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/tls-dynamic.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/tls-dynamic.s (original)
+++ lld/trunk/test/ELF/tls-dynamic.s Wed Mar 13 20:47:45 2019
@@ -48,28 +48,28 @@ c:
// CHECK-NEXT: SHF_ALLOC
// CHECK-NEXT: SHF_WRITE
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x30E0
+// CHECK-NEXT: Address: 0x20E0
// CHECK-NEXT: Offset:
// CHECK-NEXT: Size: 40
// CHECK: Relocations [
// CHECK: Section ({{.+}}) .rela.dyn {
-// CHECK-NEXT: 0x30E0 R_X86_64_DTPMOD64 - 0x0
-// CHECK-NEXT: 0x30F0 R_X86_64_DTPMOD64 c 0x0
-// CHECK-NEXT: 0x30F8 R_X86_64_DTPOFF64 c 0x0
-// CHECK-NEXT: 0x3100 R_X86_64_TPOFF64 c 0x0
+// CHECK-NEXT: 0x20E0 R_X86_64_DTPMOD64 - 0x0
+// CHECK-NEXT: 0x20F0 R_X86_64_DTPMOD64 c 0x0
+// CHECK-NEXT: 0x20F8 R_X86_64_DTPOFF64 c 0x0
+// CHECK-NEXT: 0x2100 R_X86_64_TPOFF64 c 0x0
// CHECK-NEXT: }
-// 8409 = (0x30E0 + -4) - (0x1000 + 3) // PC relative offset to got entry.
-// 8397 = (0x30F0 + -4) - (0x100c + 3) // PC relative offset to got entry.
-// 8379 = (0x30F8 + -4) - (0x102e + 3) // PC relative offset to got entry.
-// 8375 = (0x3100 + -4) - (0x1042 + 3) // PC relative offset to got entry.
+// 4313 = (0x20E0 + -4) - (0x1000 + 3) // PC relative offset to got entry.
+// 4301 = (0x20F0 + -4) - (0x100c + 3) // PC relative offset to got entry.
+// 4283 = (0x20F8 + -4) - (0x102e + 3) // PC relative offset to got entry.
+// 4279 = (0x2100 + -4) - (0x1042 + 3) // PC relative offset to got entry.
// DIS: Disassembly of section .text:
// DIS-NEXT: .text:
-// DIS-NEXT: 1000: {{.+}} leaq 8409(%rip), %rdi
+// DIS-NEXT: 1000: {{.+}} leaq 4313(%rip), %rdi
// DIS-NEXT: 1007: {{.+}} callq
-// DIS-NEXT: 100c: {{.+}} leaq 8397(%rip), %rdi
+// DIS-NEXT: 100c: {{.+}} leaq 4301(%rip), %rdi
// DIS-NEXT: 1013: {{.+}} callq
// DIS-NEXT: 1018: {{.+}} leaq (%rax), %rcx
// DIS-NEXT: 101f: {{.+}} leaq 4(%rax), %rcx
@@ -77,10 +77,10 @@ c:
// DIS-NEXT: 1028: 00 00
// DIS-NEXT: 102a: 00 00
// DIS-NEXT: 102c: 00 00
-// DIS-NEXT: 102e: {{.+}} leaq 8379(%rip), %rdi
+// DIS-NEXT: 102e: {{.+}} leaq 4283(%rip), %rdi
// DIS-NEXT: 1035: {{.+}} callq
// DIS-NEXT: 103b: {{.+}} leaq (%rax), %rcx
-// DIS-NEXT: 1042: {{.+}} movq 8375(%rip), %rax
+// DIS-NEXT: 1042: {{.+}} movq 4279(%rip), %rax
// DIS-NEXT: 1049: {{.+}} movq %fs:(%rax), %rax
// DIS-NEXT: 104d: {{.+}} movabsq $0, %rax
// DIS-NEXT: 1057: {{.+}} movabsq $4, %rax
Modified: lld/trunk/test/ELF/undef-with-plt-addr.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/undef-with-plt-addr.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/undef-with-plt-addr.s (original)
+++ lld/trunk/test/ELF/undef-with-plt-addr.s Wed Mar 13 20:47:45 2019
@@ -25,10 +25,10 @@ movabsq $set_data, %rax
// CHECK-NEXT: Address: 0x201010
// CHECK: Section ({{.*}}) .rela.dyn {
-// CHECK-NEXT: 0x202000 R_X86_64_64 foo 0x0
+// CHECK-NEXT: 0x203000 R_X86_64_64 foo 0x0
// CHECK-NEXT: }
// CHECK-NEXT: Section ({{.*}}) .rela.plt {
-// CHECK-NEXT: 0x202020 R_X86_64_JUMP_SLOT set_data 0x0
+// CHECK-NEXT: 0x203020 R_X86_64_JUMP_SLOT set_data 0x0
// CHECK-NEXT: }
// CHECK: Name: foo
Modified: lld/trunk/test/ELF/undefined-versioned-symbol.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/undefined-versioned-symbol.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/undefined-versioned-symbol.s (original)
+++ lld/trunk/test/ELF/undefined-versioned-symbol.s Wed Mar 13 20:47:45 2019
@@ -15,19 +15,19 @@
// CHECK: Section ({{.*}}) .rela.dyn {
// CHECK-NEXT: Relocation {
-// CHECK-NEXT: Offset: 0x1000
+// CHECK-NEXT: Offset: 0x2000
// CHECK-NEXT: Type: R_X86_64_64 (1)
// CHECK-NEXT: Symbol: basename at FBSD_1.1 (1)
// CHECK-NEXT: Addend: 0x0
// CHECK-NEXT: }
// CHECK-NEXT: Relocation {
-// CHECK-NEXT: Offset: 0x1008
+// CHECK-NEXT: Offset: 0x2008
// CHECK-NEXT: Type: R_X86_64_64 (1)
// CHECK-NEXT: Symbol: basename at FBSD_1.0 (2)
// CHECK-NEXT: Addend: 0x0
// CHECK-NEXT: }
// CHECK-NEXT: Relocation {
-// CHECK-NEXT: Offset: 0x1010
+// CHECK-NEXT: Offset: 0x2010
// CHECK-NEXT: Type: R_X86_64_64 (1)
// CHECK-NEXT: Symbol: basename at FBSD_1.1 (3)
// CHECK-NEXT: Addend: 0x0
Modified: lld/trunk/test/ELF/version-script-weak.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/version-script-weak.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/version-script-weak.s (original)
+++ lld/trunk/test/ELF/version-script-weak.s Wed Mar 13 20:47:45 2019
@@ -10,7 +10,7 @@
# CHECK: Relocations [
# CHECK-NEXT: Section ({{.*}}) .rela.plt {
-# CHECK-NEXT: 0x2018 R_X86_64_JUMP_SLOT foo
+# CHECK-NEXT: 0x3018 R_X86_64_JUMP_SLOT foo
# CHECK-NEXT: }
# CHECK-NEXT: ]
# CHECK: Symbol {
Modified: lld/trunk/test/ELF/wrap-plt.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/wrap-plt.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/wrap-plt.s (original)
+++ lld/trunk/test/ELF/wrap-plt.s Wed Mar 13 20:47:45 2019
@@ -20,8 +20,8 @@
// CHECK: Relocations [
// CHECK-NEXT: Section ({{.*}}) .rela.plt {
-// CHECK-NEXT: 0x2018 R_X86_64_JUMP_SLOT __wrap_foo 0x0
-// CHECK-NEXT: 0x2020 R_X86_64_JUMP_SLOT _start 0x0
+// CHECK-NEXT: 0x3018 R_X86_64_JUMP_SLOT __wrap_foo 0x0
+// CHECK-NEXT: 0x3020 R_X86_64_JUMP_SLOT _start 0x0
// CHECK-NEXT: }
// CHECK-NEXT: ]
Modified: lld/trunk/test/ELF/x86-64-plt-high-addr.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/x86-64-plt-high-addr.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/x86-64-plt-high-addr.s (original)
+++ lld/trunk/test/ELF/x86-64-plt-high-addr.s Wed Mar 13 20:47:45 2019
@@ -8,16 +8,16 @@
// RUN: llvm-objdump -s -j .got.plt %t1.exe | FileCheck %s
// CHECK: Contents of section .got.plt:
-// CHECK-NEXT: cafe00002000 00300000 feca0000 00000000 00000000
-// CHECK-NEXT: cafe00002010 00000000 00000000 26100000 feca0000
+// CHECK-NEXT: cafe00003000 00200000 feca0000 00000000 00000000
+// CHECK-NEXT: cafe00003010 00000000 00000000 26100000 feca0000
// RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t2.o
// RUN: ld.lld -o %t2.exe %t2.o %t.so -image-base=0xcafe00000000 -z retpolineplt
// RUN: llvm-objdump -s -j .got.plt %t2.exe | FileCheck -check-prefix=RETPOLINE %s
// RETPOLINE: Contents of section .got.plt:
-// RETPOLINE-NEXT: cafe00002000 00300000 feca0000 00000000 00000000
-// RETPOLINE-NEXT: cafe00002010 00000000 00000000 51100000 feca0000
+// RETPOLINE-NEXT: cafe00003000 00200000 feca0000 00000000 00000000
+// RETPOLINE-NEXT: cafe00003010 00000000 00000000 51100000 feca0000
.global _start
_start:
Modified: lld/trunk/test/ELF/x86-64-reloc-gotoff64.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/x86-64-reloc-gotoff64.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/x86-64-reloc-gotoff64.s (original)
+++ lld/trunk/test/ELF/x86-64-reloc-gotoff64.s Wed Mar 13 20:47:45 2019
@@ -4,8 +4,8 @@
// RUN: llvm-readelf -S %t.so | FileCheck %s -check-prefix=SECTION
// RUN: llvm-objdump -d %t.so | FileCheck %s
-// SECTION: .dynamic DYNAMIC 0000000000003000
-// SECTION: .got PROGBITS 0000000000003070 003070 000000
+// SECTION: .dynamic DYNAMIC 0000000000002000
+// SECTION: .got PROGBITS 0000000000002070 002070 000000
// All the _GLOBAL_OFFSET_TABLE_ occurrences below refer to the address
// of GOT base, not the address of the symbol _GLOBAL_OFFSET_TABLE_. These
@@ -20,9 +20,9 @@
// extern long _DYNAMIC[] __attribute__((visibility("hidden")));
// long* dynamic() { return _DYNAMIC; }
-// 0x3070 (.got end) - 0x1007 = 8297
-// 0x3000 (_DYNAMIC) - 0x3070 (.got end) = -112
-// CHECK: 1000: {{.*}} leaq 8297(%rip), %rdx
+// 0x2070 (.got end) - 0x1007 = 4201
+// 0x2000 (_DYNAMIC) - 0x2070 (.got end) = -112
+// CHECK: 1000: {{.*}} leaq 4201(%rip), %rdx
// CHECK-NEXT: 1007: {{.*}} movabsq $-112, %rax
.global dynamic
dynamic:
Modified: lld/trunk/test/ELF/x86-64-reloc-gotpc64.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/x86-64-reloc-gotpc64.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/x86-64-reloc-gotpc64.s (original)
+++ lld/trunk/test/ELF/x86-64-reloc-gotpc64.s Wed Mar 13 20:47:45 2019
@@ -4,11 +4,11 @@
// RUN: llvm-readelf -S %t.so | FileCheck %s -check-prefix=SECTION
// RUN: llvm-objdump -d %t.so | FileCheck %s
-// SECTION: .got PROGBITS 0000000000003070 003070 000000
+// SECTION: .got PROGBITS 0000000000002070 002070 000000
-// 0x3070 (.got end) - 0x1000 = 8304
+// 0x2070 (.got end) - 0x1000 = 4208
// CHECK: gotpc64:
-// CHECK-NEXT: 1000: {{.*}} movabsq $8304, %r11
+// CHECK-NEXT: 1000: {{.*}} movabsq $4208, %r11
.global gotpc64
gotpc64:
movabsq $_GLOBAL_OFFSET_TABLE_-., %r11
Modified: lld/trunk/test/ELF/x86-64-retpoline-linkerscript.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/x86-64-retpoline-linkerscript.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/x86-64-retpoline-linkerscript.s (original)
+++ lld/trunk/test/ELF/x86-64-retpoline-linkerscript.s Wed Mar 13 20:47:45 2019
@@ -14,8 +14,8 @@
// CHECK: Disassembly of section .plt:
// CHECK-NEXT: .plt:
-// CHECK-NEXT: 10: ff 35 72 00 00 00 pushq 114(%rip)
-// CHECK-NEXT: 16: 4c 8b 1d 73 00 00 00 movq 115(%rip), %r11
+// CHECK-NEXT: 10: ff 35 32 01 00 00 pushq 306(%rip)
+// CHECK-NEXT: 16: 4c 8b 1d 33 01 00 00 movq 307(%rip), %r11
// CHECK-NEXT: 1d: e8 0e 00 00 00 callq 14 <.plt+0x20>
// CHECK-NEXT: 22: f3 90 pause
// CHECK-NEXT: 24: 0f ae e8 lfence
@@ -40,7 +40,7 @@
// CHECK-NEXT: 3d: cc int3
// CHECK-NEXT: 3e: cc int3
// CHECK-NEXT: 3f: cc int3
-// CHECK-NEXT: 40: 4c 8b 1d 51 00 00 00 movq 81(%rip), %r11
+// CHECK-NEXT: 40: 4c 8b 1d 11 01 00 00 movq 273(%rip), %r11
// CHECK-NEXT: 47: e8 e4 ff ff ff callq -28 <.plt+0x20>
// CHECK-NEXT: 4c: e9 d1 ff ff ff jmp -47 <.plt+0x12>
// CHECK-NEXT: 51: 68 00 00 00 00 pushq $0
@@ -50,7 +50,7 @@
// CHECK-NEXT: 5d: cc int3
// CHECK-NEXT: 5e: cc int3
// CHECK-NEXT: 5f: cc int3
-// CHECK-NEXT: 60: 4c 8b 1d 39 00 00 00 movq 57(%rip), %r11
+// CHECK-NEXT: 60: 4c 8b 1d f9 00 00 00 movq 249(%rip), %r11
// CHECK-NEXT: 67: e8 c4 ff ff ff callq -60 <.plt+0x20>
// CHECK-NEXT: 6c: e9 b1 ff ff ff jmp -79 <.plt+0x12>
// CHECK-NEXT: 71: 68 01 00 00 00 pushq $1
Modified: lld/trunk/test/ELF/x86-64-retpoline.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/x86-64-retpoline.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/x86-64-retpoline.s (original)
+++ lld/trunk/test/ELF/x86-64-retpoline.s Wed Mar 13 20:47:45 2019
@@ -8,8 +8,8 @@
// CHECK: Disassembly of section .plt:
// CHECK-NEXT: .plt:
-// CHECK-NEXT: 1010: ff 35 f2 0f 00 00 pushq 4082(%rip)
-// CHECK-NEXT: 1016: 4c 8b 1d f3 0f 00 00 movq 4083(%rip), %r11
+// CHECK-NEXT: 1010: ff 35 f2 1f 00 00 pushq 8178(%rip)
+// CHECK-NEXT: 1016: 4c 8b 1d f3 1f 00 00 movq 8179(%rip), %r11
// CHECK-NEXT: 101d: e8 0e 00 00 00 callq 14 <.plt+0x20>
// CHECK-NEXT: 1022: f3 90 pause
// CHECK-NEXT: 1024: 0f ae e8 lfence
@@ -34,7 +34,7 @@
// CHECK-NEXT: 103d: cc int3
// CHECK-NEXT: 103e: cc int3
// CHECK-NEXT: 103f: cc int3
-// CHECK-NEXT: 1040: 4c 8b 1d d1 0f 00 00 movq 4049(%rip), %r11
+// CHECK-NEXT: 1040: 4c 8b 1d d1 1f 00 00 movq 8145(%rip), %r11
// CHECK-NEXT: 1047: e8 e4 ff ff ff callq -28 <.plt+0x20>
// CHECK-NEXT: 104c: e9 d1 ff ff ff jmp -47 <.plt+0x12>
// CHECK-NEXT: 1051: 68 00 00 00 00 pushq $0
@@ -44,7 +44,7 @@
// CHECK-NEXT: 105d: cc int3
// CHECK-NEXT: 105e: cc int3
// CHECK-NEXT: 105f: cc int3
-// CHECK-NEXT: 1060: 4c 8b 1d b9 0f 00 00 movq 4025(%rip), %r11
+// CHECK-NEXT: 1060: 4c 8b 1d b9 1f 00 00 movq 8121(%rip), %r11
// CHECK-NEXT: 1067: e8 c4 ff ff ff callq -60 <.plt+0x20>
// CHECK-NEXT: 106c: e9 b1 ff ff ff jmp -79 <.plt+0x12>
// CHECK-NEXT: 1071: 68 01 00 00 00 pushq $1
@@ -56,9 +56,9 @@
// CHECK-NEXT: 107f: cc int3
// CHECK: Contents of section .got.plt:
-// CHECK-NEXT: 2000 00300000 00000000 00000000 00000000
-// CHECK-NEXT: 2010 00000000 00000000 51100000 00000000
-// CHECK-NEXT: 2020 71100000 00000000
+// CHECK-NEXT: 3000 00200000 00000000 00000000 00000000
+// CHECK-NEXT: 3010 00000000 00000000 51100000 00000000
+// CHECK-NEXT: 3020 71100000 00000000
.global _start
_start:
Modified: lld/trunk/test/ELF/x86-64-tls-gd-local.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/x86-64-tls-gd-local.s?rev=356117&r1=356116&r2=356117&view=diff
==============================================================================
--- lld/trunk/test/ELF/x86-64-tls-gd-local.s (original)
+++ lld/trunk/test/ELF/x86-64-tls-gd-local.s Wed Mar 13 20:47:45 2019
@@ -34,8 +34,8 @@ bar:
// CHECK-NEXT: SHF_ALLOC (0x2)
// CHECK-NEXT: SHF_WRITE (0x1)
// CHECK-NEXT: ]
-// CHECK-NEXT: Address: 0x30D0
-// CHECK-NEXT: Offset: 0x30D0
+// CHECK-NEXT: Address: 0x20D0
+// CHECK-NEXT: Offset: 0x20D0
// CHECK-NEXT: Size: 32
// CHECK-NEXT: Link: 0
// CHECK-NEXT: Info: 0
@@ -47,6 +47,6 @@ bar:
// CHECK-NEXT: )
// CHECK: Section ({{.*}}) .rela.dyn {
-// CHECK-NEXT: 0x30D0 R_X86_64_DTPMOD64 - 0x0
-// CHECK-NEXT: 0x30E0 R_X86_64_DTPMOD64 - 0x0
+// CHECK-NEXT: 0x20D0 R_X86_64_DTPMOD64 - 0x0
+// CHECK-NEXT: 0x20E0 R_X86_64_DTPMOD64 - 0x0
// CHECK-NEXT: }
More information about the llvm-commits
mailing list