aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorJiong Wang <jiong.wang@arm.com>2015-01-14 19:11:54 +0000
committerJiong Wang <jiong.wang@arm.com>2015-01-14 19:11:54 +0000
commit52db4ec2d13f511ef3dfe5b9a159869da6e4c3eb (patch)
treecbef8491a91ce1b7751e669435ffe0269066b565 /ld
parent3d0064a95d413e7d19ff9c7f6db53fefe44a697b (diff)
downloadgdb-52db4ec2d13f511ef3dfe5b9a159869da6e4c3eb.zip
gdb-52db4ec2d13f511ef3dfe5b9a159869da6e4c3eb.tar.gz
gdb-52db4ec2d13f511ef3dfe5b9a159869da6e4c3eb.tar.bz2
[ARM] Reject R_ARM_REL32 when trying to defer it to runtime
bfd/ * elf32-arm.c (elf32_arm_final_link_relocate): Reject R_ARM_32/_NOI when trying to defer them to runtime. ld/testsuite/ * ld-arm/elf32-reject.s: New testcase. * ld-arm/elf32-reject.d: Likewise. * ld-arm/elf32-reject-pie.s: Likewise. * ld-arm/elf32-reject-pie.d: Likewise. * ld-arm/arm-elf.exp: Run new testcases. * ld-arm/ifunc-7.s: Delete f2/f4 test items. * ld-arm/ifunc-7.rd: Likewise. * ld-arm/ifunc-7.gd: Likewise. * ld-arm/ifunc-7.dd: Likewise. * ld-arm/ifunc-8.s: Likewise. * ld-arm/ifunc-8.rd: Likewise. * ld-arm/ifunc-8.gd: Likewise. * ld-arm/ifunc-8.dd: Likewise.
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog16
-rw-r--r--ld/testsuite/ld-arm/arm-elf.exp2
-rw-r--r--ld/testsuite/ld-arm/ifunc-7.dd86
-rw-r--r--ld/testsuite/ld-arm/ifunc-7.gd32
-rw-r--r--ld/testsuite/ld-arm/ifunc-7.rd23
-rw-r--r--ld/testsuite/ld-arm/ifunc-7.s2
-rw-r--r--ld/testsuite/ld-arm/ifunc-8.dd824
-rw-r--r--ld/testsuite/ld-arm/ifunc-8.gd160
-rw-r--r--ld/testsuite/ld-arm/ifunc-8.rd93
-rw-r--r--ld/testsuite/ld-arm/ifunc-8.s6
-rw-r--r--ld/testsuite/ld-arm/rel32-reject-pie.d3
-rw-r--r--ld/testsuite/ld-arm/rel32-reject-pie.s8
-rw-r--r--ld/testsuite/ld-arm/rel32-reject.d3
-rw-r--r--ld/testsuite/ld-arm/rel32-reject.s9
14 files changed, 299 insertions, 968 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index be4617f..c7847a1 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,19 @@
+2015-01-14 Jiong Wang <jiong.wang@arm.com>
+
+ * ld-arm/elf32-reject.s: New testcase.
+ * ld-arm/elf32-reject.d: Likewise.
+ * ld-arm/elf32-reject-pie.s: Likewise.
+ * ld-arm/elf32-reject-pie.d: Likewise.
+ * ld-arm/arm-elf.exp: Run new testcases.
+ * ld-arm/ifunc-7.s: Delete f2/f4 test items.
+ * ld-arm/ifunc-7.rd: Likewise.
+ * ld-arm/ifunc-7.gd: Likewise.
+ * ld-arm/ifunc-7.dd: Likewise.
+ * ld-arm/ifunc-8.s: Likewise.
+ * ld-arm/ifunc-8.rd: Likewise.
+ * ld-arm/ifunc-8.gd: Likewise.
+ * ld-arm/ifunc-8.dd: Likewise.
+
2015-01-01 Alan Modra <amodra@gmail.com>
* ldver.c (ldversion): Just print current year.
diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp
index 0efbde4..9d946e0 100644
--- a/ld/testsuite/ld-arm/arm-elf.exp
+++ b/ld/testsuite/ld-arm/arm-elf.exp
@@ -299,6 +299,8 @@ run_dump_test "movw-shared-1"
run_dump_test "movw-shared-2"
run_dump_test "movw-shared-3"
run_dump_test "movw-shared-4"
+run_dump_test "rel32-reject"
+run_dump_test "rel32-reject-pie"
# Exclude non-ARM-EABI targets.
diff --git a/ld/testsuite/ld-arm/ifunc-7.dd b/ld/testsuite/ld-arm/ifunc-7.dd
index f82fd37..c2c5e9c 100644
--- a/ld/testsuite/ld-arm/ifunc-7.dd
+++ b/ld/testsuite/ld-arm/ifunc-7.dd
@@ -2,47 +2,21 @@
.*
-Disassembly of section \.plt:
-
-00009000 <f2@plt-0x14>:
- 9000: e52de004 push {lr} ; \(str lr, \[sp, #-4\]!\)
- 9004: e59fe004 ldr lr, \[pc, #4\] ; 9010 <f2@plt-0x4>
- 9008: e08fe00e add lr, pc, lr
- 900c: e5bef008 ldr pc, \[lr, #8\]!
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got.plt
-#------------------------------------------------------------------------------
- 9010: 00007ff0 \.word 0x00007ff0
-#------------------------------------------------------------------------------
-#------ f2's .plt entry
-#------------------------------------------------------------------------------
-00009014 <f2@plt>:
- 9014: e28fc600 add ip, pc, #0, 12
- 9018: e28cca07 add ip, ip, #28672 ; 0x7000
- 901c: e5bcfff0 ldr pc, \[ip, #4080\]! ; 0xff0
-#------------------------------------------------------------------------------
-#------ f4's .plt entry
-#------------------------------------------------------------------------------
-00009020 <f4@plt>:
- 9020: e28fc600 add ip, pc, #0, 12
- 9024: e28cca07 add ip, ip, #28672 ; 0x7000
- 9028: e5bcffe8 ldr pc, \[ip, #4072\]! ; 0xfe8
-
Disassembly of section \.iplt:
-0000902c <\.iplt>:
+00009000 <\.iplt>:
#------------------------------------------------------------------------------
#------ f1's .iplt entry
#------------------------------------------------------------------------------
- 902c: e28fc600 add ip, pc, #0, 12
- 9030: e28cca07 add ip, ip, #28672 ; 0x7000
- 9034: e5bcffe0 ldr pc, \[ip, #4064\]! ; 0xfe0
+ 9000: e28fc600 add ip, pc, #0, 12
+ 9004: e28cca08 add ip, ip, #8, 20 ; 0x8000
+ 9008: e5bcf004 ldr pc, \[ip, #4\]!
#------------------------------------------------------------------------------
#------ f3's .iplt entry
#------------------------------------------------------------------------------
- 9038: e28fc600 add ip, pc, #0, 12
- 903c: e28cca07 add ip, ip, #28672 ; 0x7000
- 9040: e5bcffd8 ldr pc, \[ip, #4056\]! ; 0xfd8
+ 900c: e28fc600 add ip, pc, #0, 12
+ 9010: e28cca07 add ip, ip, #28672 ; 0x7000
+ 9014: e5bcfffc ldr pc, \[ip, #4092\]! ; 0xffc
Disassembly of section \.text:
@@ -59,64 +33,36 @@ Disassembly of section \.text:
#------------------------------------------------------------------------------
#------ .got offset for foo
#------------------------------------------------------------------------------
- a014: 00000020 \.word 0x00000020
+ a014: 00000018 \.word 0x00000018
#------------------------------------------------------------------------------
#------ PC-relative offset of .got entry for foo
#------------------------------------------------------------------------------
- a018: 00007004 \.word 0x00007004
+ a018: 00006ffc \.word 0x00006ffc
#------------------------------------------------------------------------------
#------ f1's .iplt entry
#------------------------------------------------------------------------------
- a01c: ebfffc02 bl 902c <f4@plt\+0xc>
+ a01c: ebfffbf7 bl 9000 <f1-0x1000>
a020: e59f4000 ldr r4, \[pc\] ; a028 <arm\+0x20>
a024: e59f4000 ldr r4, \[pc\] ; a02c <arm\+0x24>
#------------------------------------------------------------------------------
#------ GP-relative offset of f1's .igot.plt entry
#------------------------------------------------------------------------------
- a028: 00000014 \.word 0x00000014
+ a028: 0000000c \.word 0x0000000c
#------------------------------------------------------------------------------
#------ PC-relative offset of f1's .igot.plt entry
#------------------------------------------------------------------------------
- a02c: 00006fe8 \.word 0x00006fe8
+ a02c: 00006fe0 \.word 0x00006fe0
#------------------------------------------------------------------------------
-#------ f2's .plt entry
+#------ f3's .iplt entry
#------------------------------------------------------------------------------
- a030: ebfffbf7 bl 9014 <f2@plt>
+ a030: ebfffbf5 bl 900c <f1-0xff4>
a034: e59f4000 ldr r4, \[pc\] ; a03c <arm\+0x34>
a038: e59f4000 ldr r4, \[pc\] ; a040 <arm\+0x38>
#------------------------------------------------------------------------------
-#------ .got offset for f2
-#------------------------------------------------------------------------------
- a03c: 00000024 \.word 0x00000024
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for f2
-#------------------------------------------------------------------------------
- a040: 00006fe4 \.word 0x00006fe4
-#------------------------------------------------------------------------------
-#------ f3's .iplt entry
-#------------------------------------------------------------------------------
- a044: ebfffbfb bl 9038 <f4@plt\+0x18>
- a048: e59f4000 ldr r4, \[pc\] ; a050 <arm\+0x48>
- a04c: e59f4000 ldr r4, \[pc\] ; a054 <arm\+0x4c>
-#------------------------------------------------------------------------------
#------ GP-relative offset of f3's .igot.plt entry
#------------------------------------------------------------------------------
- a050: 00000018 \.word 0x00000018
+ a03c: 00000010 \.word 0x00000010
#------------------------------------------------------------------------------
#------ PC-relative offset of f3's .igot.plt entry
#------------------------------------------------------------------------------
- a054: 00006fc4 \.word 0x00006fc4
-#------------------------------------------------------------------------------
-#------ f4's .plt entry
-#------------------------------------------------------------------------------
- a058: ebfffbf0 bl 9020 <f4@plt>
- a05c: e59f4000 ldr r4, \[pc\] ; a064 <arm\+0x5c>
- a060: e59f4000 ldr r4, \[pc\] ; a068 <arm\+0x60>
-#------------------------------------------------------------------------------
-#------ .got offset for f4
-#------------------------------------------------------------------------------
- a064: 00000028 \.word 0x00000028
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for f4
-#------------------------------------------------------------------------------
- a068: 00006fc0 \.word 0x00006fc0
+ a040: 00006fd0 \.word 0x00006fd0
diff --git a/ld/testsuite/ld-arm/ifunc-7.gd b/ld/testsuite/ld-arm/ifunc-7.gd
index 3251c45..da1bb45 100644
--- a/ld/testsuite/ld-arm/ifunc-7.gd
+++ b/ld/testsuite/ld-arm/ifunc-7.gd
@@ -11,35 +11,21 @@ Contents of section \.data:
10000 (44332211 00000100 f8ffffff 00a00000|11223344 00010000 fffffff8 0000a000) .*
#------------------------------------------------------------------------------
#------ 00010010: contains PC-relative offset of f1's .iplt entry
-#------ 00010014: f2 [R_ARM_ABS32]
-#------ 00010018: f2 [R_ARM_REL32]
-#------ 0001001c: contains f3 [R_ARM_IRELATIVE]
+#------ 00010014: contains f3 [R_ARM_IRELATIVE]
+#------ 00010018: contains PC-relative offset of f3's .iplt entry
#------------------------------------------------------------------------------
- 10010 (1c90ffff 00000000 00000000 04a00000|ffff901c 00000000 00000000 0000a004) .*
-#------------------------------------------------------------------------------
-#------ 00010020: contains PC-relative offset of f3's .iplt entry
-#------ 00010024: f4 [R_ARM_ABS32]
-#------ 00010028: f4 [R_ARM_REL32]
-#------------------------------------------------------------------------------
- 10020 (1890ffff|ffff9018) 00000000 00000000 .*
+ 10010 (f08fffff 04a00000 f48fffff|ffff8ff0 0000a004 ffff8ff4) .*
Contents of section \.got:
#------------------------------------------------------------------------------
#------ 00011000: .got.plt
#------ 00011004: reserved .got.plt entry
#------ 00011008: reserved .got.plt entry
-#------ 0001100c: f2's .got.plt entry [R_ARM_JUMP_SLOT]
-#------------------------------------------------------------------------------
- 11000 (00200100 00000000 00000000 00900000|00012000 00000000 00000000 00009000) .*
-#------------------------------------------------------------------------------
-#------ 00011010: f4's .got.plt entry [R_ARM_JUMP_SLOT]
-#------ 00011014: f1's .igot.plt entry [R_ARM_IRELATIVE]
-#------ 00011018: f3's .igot.plt entry [R_ARM_IRELATIVE]
-#------ 0001101c: .got entry for foo [R_ARM_RELATIVE]
+#------ 0001100c: f1's .igot.plt entry [R_ARM_IRELATIVE]
#------------------------------------------------------------------------------
- 11010 (00900000 00a00000 04a00000 00000100|00009000 0000a000 0000a004 00010000) .*
+ 11000 (00200100 00000000 00000000 00a00000|00012000 00000000 00000000 0000a000) .*
#------------------------------------------------------------------------------
-#------ 00011020: .got entry for foo [R_ARM_RELATIVE]
-#------ 00011024: .got entry for f2 [R_ARM_GLOB_DAT]
-#------ 00011028: .got entry for f4 [R_ARM_GLOB_DAT]
+#------ 00011010: f3's .igot.plt entry [R_ARM_IRELATIVE]
+#------ 00011014: .got entry for foo [R_ARM_RELATIVE]
+#------ 00011018: .got entry for foo [R_ARM_RELATIVE]
#------------------------------------------------------------------------------
- 11020 (00000100|00010000) 00000000 00000000 .*
+ 11010 (04a00000 00000100 00000100|0000a004 00010000 00010000) .*
diff --git a/ld/testsuite/ld-arm/ifunc-7.rd b/ld/testsuite/ld-arm/ifunc-7.rd
index a29b184..f250bb7 100644
--- a/ld/testsuite/ld-arm/ifunc-7.rd
+++ b/ld/testsuite/ld-arm/ifunc-7.rd
@@ -1,21 +1,10 @@
-Relocation section '\.rel\.dyn' at offset 0x8000 contains 13 entries:
+Relocation section '\.rel\.dyn' at offset 0x8000 contains 7 entries:
Offset Info Type Sym\.Value Sym\. Name
00010004 ......17 R_ARM_RELATIVE
-0001101c ......17 R_ARM_RELATIVE
-00011020 ......17 R_ARM_RELATIVE
+00011014 ......17 R_ARM_RELATIVE
+00011018 ......17 R_ARM_RELATIVE
0001000c ......a0 R_ARM_IRELATIVE
-0001001c ......a0 R_ARM_IRELATIVE
-00011014 ......a0 R_ARM_IRELATIVE
-00011018 ......a0 R_ARM_IRELATIVE
-00010014 ......02 R_ARM_ABS32 00000000 f2
-00010018 ......03 R_ARM_REL32 00000000 f2
-00011024 ......15 R_ARM_GLOB_DAT 00000000 f2
-00010024 ......02 R_ARM_ABS32 00000000 f4
-00010028 ......03 R_ARM_REL32 00000000 f4
-00011028 ......15 R_ARM_GLOB_DAT 00000000 f4
-
-Relocation section '\.rel\.plt' at offset 0x8068 contains 2 entries:
- Offset Info Type Sym\.Value Sym\. Name
-0001100c ......16 R_ARM_JUMP_SLOT 00000000 f2
-00011010 ......16 R_ARM_JUMP_SLOT 00000000 f4
+00010014 ......a0 R_ARM_IRELATIVE
+0001100c ......a0 R_ARM_IRELATIVE
+00011010 ......a0 R_ARM_IRELATIVE
diff --git a/ld/testsuite/ld-arm/ifunc-7.s b/ld/testsuite/ld-arm/ifunc-7.s
index 85ffb68..1159768 100644
--- a/ld/testsuite/ld-arm/ifunc-7.s
+++ b/ld/testsuite/ld-arm/ifunc-7.s
@@ -36,7 +36,5 @@ foo:
arm:
test_relocs foo
test_relocs f1
- test_relocs f2
test_relocs f3
- test_relocs f4
.size arm,.-arm
diff --git a/ld/testsuite/ld-arm/ifunc-8.dd b/ld/testsuite/ld-arm/ifunc-8.dd
index 3cca17c..50a9177 100644
--- a/ld/testsuite/ld-arm/ifunc-8.dd
+++ b/ld/testsuite/ld-arm/ifunc-8.dd
@@ -2,257 +2,121 @@
.*
-Disassembly of section \.plt:
-
-00009000 <atf2@plt-0x14>:
- 9000: e52de004 push {lr} ; \(str lr, \[sp, #-4\]!\)
- 9004: e59fe004 ldr lr, \[pc, #4\] ; 9010 <atf2@plt-0x4>
- 9008: e08fe00e add lr, pc, lr
- 900c: e5bef008 ldr pc, \[lr, #8\]!
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got.plt
-#------------------------------------------------------------------------------
- 9010: 00007ff0 \.word 0x00007ff0
-#------------------------------------------------------------------------------
-#------ thumb entry to atf2's .plt entry
-#------------------------------------------------------------------------------
-00009014 <atf2@plt>:
- 9014: 4778 bx pc
- 9016: 46c0 nop ; \(mov r8, r8\)
-#------------------------------------------------------------------------------
-#------ atf2's .plt entry
-#------------------------------------------------------------------------------
- 9018: e28fc600 add ip, pc, #0, 12
- 901c: e28cca07 add ip, ip, #28672 ; 0x7000
- 9020: e5bcffec ldr pc, \[ip, #4076\]! ; 0xfec
-#------------------------------------------------------------------------------
-#------ aaf4's .plt entry
-#------------------------------------------------------------------------------
-00009024 <aaf4@plt>:
- 9024: e28fc600 add ip, pc, #0, 12
- 9028: e28cca07 add ip, ip, #28672 ; 0x7000
- 902c: e5bcffe4 ldr pc, \[ip, #4068\]! ; 0xfe4
-#------------------------------------------------------------------------------
-#------ thumb entry to ttf2's .plt entry
-#------------------------------------------------------------------------------
-00009030 <ttf2@plt>:
- 9030: 4778 bx pc
- 9032: 46c0 nop ; \(mov r8, r8\)
-#------------------------------------------------------------------------------
-#------ ttf2's .plt entry
-#------------------------------------------------------------------------------
- 9034: e28fc600 add ip, pc, #0, 12
- 9038: e28cca07 add ip, ip, #28672 ; 0x7000
- 903c: e5bcffd8 ldr pc, \[ip, #4056\]! ; 0xfd8
-#------------------------------------------------------------------------------
-#------ thumb entry to tbf2's .plt entry
-#------------------------------------------------------------------------------
-00009040 <tbf2@plt>:
- 9040: 4778 bx pc
- 9042: 46c0 nop ; \(mov r8, r8\)
-#------------------------------------------------------------------------------
-#------ tbf2's .plt entry
-#------------------------------------------------------------------------------
- 9044: e28fc600 add ip, pc, #0, 12
- 9048: e28cca07 add ip, ip, #28672 ; 0x7000
- 904c: e5bcffcc ldr pc, \[ip, #4044\]! ; 0xfcc
-#------------------------------------------------------------------------------
-#------ taf2's .plt entry
-#------------------------------------------------------------------------------
-00009050 <taf2@plt>:
- 9050: e28fc600 add ip, pc, #0, 12
- 9054: e28cca07 add ip, ip, #28672 ; 0x7000
- 9058: e5bcffc4 ldr pc, \[ip, #4036\]! ; 0xfc4
-#------------------------------------------------------------------------------
-#------ aaf2's .plt entry
-#------------------------------------------------------------------------------
-0000905c <aaf2@plt>:
- 905c: e28fc600 add ip, pc, #0, 12
- 9060: e28cca07 add ip, ip, #28672 ; 0x7000
- 9064: e5bcffbc ldr pc, \[ip, #4028\]! ; 0xfbc
-#------------------------------------------------------------------------------
-#------ thumb entry to abf4's .plt entry
-#------------------------------------------------------------------------------
-00009068 <abf4@plt>:
- 9068: 4778 bx pc
- 906a: 46c0 nop ; \(mov r8, r8\)
-#------------------------------------------------------------------------------
-#------ abf4's .plt entry
-#------------------------------------------------------------------------------
- 906c: e28fc600 add ip, pc, #0, 12
- 9070: e28cca07 add ip, ip, #28672 ; 0x7000
- 9074: e5bcffb0 ldr pc, \[ip, #4016\]! ; 0xfb0
-#------------------------------------------------------------------------------
-#------ thumb entry to tbf4's .plt entry
-#------------------------------------------------------------------------------
-00009078 <tbf4@plt>:
- 9078: 4778 bx pc
- 907a: 46c0 nop ; \(mov r8, r8\)
-#------------------------------------------------------------------------------
-#------ tbf4's .plt entry
-#------------------------------------------------------------------------------
- 907c: e28fc600 add ip, pc, #0, 12
- 9080: e28cca07 add ip, ip, #28672 ; 0x7000
- 9084: e5bcffa4 ldr pc, \[ip, #4004\]! ; 0xfa4
-#------------------------------------------------------------------------------
-#------ thumb entry to ttf4's .plt entry
-#------------------------------------------------------------------------------
-00009088 <ttf4@plt>:
- 9088: 4778 bx pc
- 908a: 46c0 nop ; \(mov r8, r8\)
-#------------------------------------------------------------------------------
-#------ ttf4's .plt entry
-#------------------------------------------------------------------------------
- 908c: e28fc600 add ip, pc, #0, 12
- 9090: e28cca07 add ip, ip, #28672 ; 0x7000
- 9094: e5bcff98 ldr pc, \[ip, #3992\]! ; 0xf98
-#------------------------------------------------------------------------------
-#------ thumb entry to atf4's .plt entry
-#------------------------------------------------------------------------------
-00009098 <atf4@plt>:
- 9098: 4778 bx pc
- 909a: 46c0 nop ; \(mov r8, r8\)
-#------------------------------------------------------------------------------
-#------ atf4's .plt entry
-#------------------------------------------------------------------------------
- 909c: e28fc600 add ip, pc, #0, 12
- 90a0: e28cca07 add ip, ip, #28672 ; 0x7000
- 90a4: e5bcff8c ldr pc, \[ip, #3980\]! ; 0xf8c
-#------------------------------------------------------------------------------
-#------ taf4's .plt entry
-#------------------------------------------------------------------------------
-000090a8 <taf4@plt>:
- 90a8: e28fc600 add ip, pc, #0, 12
- 90ac: e28cca07 add ip, ip, #28672 ; 0x7000
- 90b0: e5bcff84 ldr pc, \[ip, #3972\]! ; 0xf84
-#------------------------------------------------------------------------------
-#------ thumb entry to abf2's .plt entry
-#------------------------------------------------------------------------------
-000090b4 <abf2@plt>:
- 90b4: 4778 bx pc
- 90b6: 46c0 nop ; \(mov r8, r8\)
-#------------------------------------------------------------------------------
-#------ abf2's .plt entry
-#------------------------------------------------------------------------------
- 90b8: e28fc600 add ip, pc, #0, 12
- 90bc: e28cca07 add ip, ip, #28672 ; 0x7000
- 90c0: e5bcff78 ldr pc, \[ip, #3960\]! ; 0xf78
-
Disassembly of section \.iplt:
-000090c4 <\.iplt>:
+00009000 <\.iplt>:
#------------------------------------------------------------------------------
#------ aaf1's .iplt entry
#------------------------------------------------------------------------------
- 90c4: e28fc600 add ip, pc, #0, 12
- 90c8: e28cca07 add ip, ip, #28672 ; 0x7000
- 90cc: e5bcff70 ldr pc, \[ip, #3952\]! ; 0xf70
+ 9000: e28fc600 add ip, pc, #0, 12
+ 9004: e28cca08 add ip, ip, #8, 20 ; 0x8000
+ 9008: e5bcf004 ldr pc, \[ip, #4\]!
#------------------------------------------------------------------------------
#------ thumb entry to atf1's .iplt entry
#------------------------------------------------------------------------------
- 90d0: 4778 bx pc
- 90d2: 46c0 nop ; \(mov r8, r8\)
+ 900c: 4778 bx pc
+ 900e: 46c0 nop ; \(mov r8, r8\)
#------------------------------------------------------------------------------
#------ atf1's .iplt entry
#------------------------------------------------------------------------------
- 90d4: e28fc600 add ip, pc, #0, 12
- 90d8: e28cca07 add ip, ip, #28672 ; 0x7000
- 90dc: e5bcff64 ldr pc, \[ip, #3940\]! ; 0xf64
+ 9010: e28fc600 add ip, pc, #0, 12
+ 9014: e28cca07 add ip, ip, #28672 ; 0x7000
+ 9018: e5bcfff8 ldr pc, \[ip, #4088\]! ; 0xff8
#------------------------------------------------------------------------------
#------ thumb entry to abf1's .iplt entry
#------------------------------------------------------------------------------
- 90e0: 4778 bx pc
- 90e2: 46c0 nop ; \(mov r8, r8\)
+ 901c: 4778 bx pc
+ 901e: 46c0 nop ; \(mov r8, r8\)
#------------------------------------------------------------------------------
#------ abf1's .iplt entry
#------------------------------------------------------------------------------
- 90e4: e28fc600 add ip, pc, #0, 12
- 90e8: e28cca07 add ip, ip, #28672 ; 0x7000
- 90ec: e5bcff58 ldr pc, \[ip, #3928\]! ; 0xf58
+ 9020: e28fc600 add ip, pc, #0, 12
+ 9024: e28cca07 add ip, ip, #28672 ; 0x7000
+ 9028: e5bcffec ldr pc, \[ip, #4076\]! ; 0xfec
#------------------------------------------------------------------------------
#------ taf1's .iplt entry
#------------------------------------------------------------------------------
- 90f0: e28fc600 add ip, pc, #0, 12
- 90f4: e28cca07 add ip, ip, #28672 ; 0x7000
- 90f8: e5bcff50 ldr pc, \[ip, #3920\]! ; 0xf50
+ 902c: e28fc600 add ip, pc, #0, 12
+ 9030: e28cca07 add ip, ip, #28672 ; 0x7000
+ 9034: e5bcffe4 ldr pc, \[ip, #4068\]! ; 0xfe4
#------------------------------------------------------------------------------
#------ thumb entry to ttf1's .iplt entry
#------------------------------------------------------------------------------
- 90fc: 4778 bx pc
- 90fe: 46c0 nop ; \(mov r8, r8\)
+ 9038: 4778 bx pc
+ 903a: 46c0 nop ; \(mov r8, r8\)
#------------------------------------------------------------------------------
#------ ttf1's .iplt entry
#------------------------------------------------------------------------------
- 9100: e28fc600 add ip, pc, #0, 12
- 9104: e28cca07 add ip, ip, #28672 ; 0x7000
- 9108: e5bcff44 ldr pc, \[ip, #3908\]! ; 0xf44
+ 903c: e28fc600 add ip, pc, #0, 12
+ 9040: e28cca07 add ip, ip, #28672 ; 0x7000
+ 9044: e5bcffd8 ldr pc, \[ip, #4056\]! ; 0xfd8
#------------------------------------------------------------------------------
#------ thumb entry to tbf1's .iplt entry
#------------------------------------------------------------------------------
- 910c: 4778 bx pc
- 910e: 46c0 nop ; \(mov r8, r8\)
+ 9048: 4778 bx pc
+ 904a: 46c0 nop ; \(mov r8, r8\)
#------------------------------------------------------------------------------
#------ tbf1's .iplt entry
#------------------------------------------------------------------------------
- 9110: e28fc600 add ip, pc, #0, 12
- 9114: e28cca07 add ip, ip, #28672 ; 0x7000
- 9118: e5bcff38 ldr pc, \[ip, #3896\]! ; 0xf38
+ 904c: e28fc600 add ip, pc, #0, 12
+ 9050: e28cca07 add ip, ip, #28672 ; 0x7000
+ 9054: e5bcffcc ldr pc, \[ip, #4044\]! ; 0xfcc
#------------------------------------------------------------------------------
#------ thumb entry to atf3's .iplt entry
#------------------------------------------------------------------------------
- 911c: 4778 bx pc
- 911e: 46c0 nop ; \(mov r8, r8\)
+ 9058: 4778 bx pc
+ 905a: 46c0 nop ; \(mov r8, r8\)
#------------------------------------------------------------------------------
#------ atf3's .iplt entry
#------------------------------------------------------------------------------
- 9120: e28fc600 add ip, pc, #0, 12
- 9124: e28cca07 add ip, ip, #28672 ; 0x7000
- 9128: e5bcff2c ldr pc, \[ip, #3884\]! ; 0xf2c
+ 905c: e28fc600 add ip, pc, #0, 12
+ 9060: e28cca07 add ip, ip, #28672 ; 0x7000
+ 9064: e5bcffc0 ldr pc, \[ip, #4032\]! ; 0xfc0
#------------------------------------------------------------------------------
#------ thumb entry to abf3's .iplt entry
#------------------------------------------------------------------------------
- 912c: 4778 bx pc
- 912e: 46c0 nop ; \(mov r8, r8\)
+ 9068: 4778 bx pc
+ 906a: 46c0 nop ; \(mov r8, r8\)
#------------------------------------------------------------------------------
#------ abf3's .iplt entry
#------------------------------------------------------------------------------
- 9130: e28fc600 add ip, pc, #0, 12
- 9134: e28cca07 add ip, ip, #28672 ; 0x7000
- 9138: e5bcff20 ldr pc, \[ip, #3872\]! ; 0xf20
+ 906c: e28fc600 add ip, pc, #0, 12
+ 9070: e28cca07 add ip, ip, #28672 ; 0x7000
+ 9074: e5bcffb4 ldr pc, \[ip, #4020\]! ; 0xfb4
#------------------------------------------------------------------------------
#------ thumb entry to ttf3's .iplt entry
#------------------------------------------------------------------------------
- 913c: 4778 bx pc
- 913e: 46c0 nop ; \(mov r8, r8\)
+ 9078: 4778 bx pc
+ 907a: 46c0 nop ; \(mov r8, r8\)
#------------------------------------------------------------------------------
#------ ttf3's .iplt entry
#------------------------------------------------------------------------------
- 9140: e28fc600 add ip, pc, #0, 12
- 9144: e28cca07 add ip, ip, #28672 ; 0x7000
- 9148: e5bcff14 ldr pc, \[ip, #3860\]! ; 0xf14
+ 907c: e28fc600 add ip, pc, #0, 12
+ 9080: e28cca07 add ip, ip, #28672 ; 0x7000
+ 9084: e5bcffa8 ldr pc, \[ip, #4008\]! ; 0xfa8
#------------------------------------------------------------------------------
#------ thumb entry to tbf3's .iplt entry
#------------------------------------------------------------------------------
- 914c: 4778 bx pc
- 914e: 46c0 nop ; \(mov r8, r8\)
+ 9088: 4778 bx pc
+ 908a: 46c0 nop ; \(mov r8, r8\)
#------------------------------------------------------------------------------
#------ tbf3's .iplt entry
#------------------------------------------------------------------------------
- 9150: e28fc600 add ip, pc, #0, 12
- 9154: e28cca07 add ip, ip, #28672 ; 0x7000
- 9158: e5bcff08 ldr pc, \[ip, #3848\]! ; 0xf08
+ 908c: e28fc600 add ip, pc, #0, 12
+ 9090: e28cca07 add ip, ip, #28672 ; 0x7000
+ 9094: e5bcff9c ldr pc, \[ip, #3996\]! ; 0xf9c
#------------------------------------------------------------------------------
#------ taf3's .iplt entry
#------------------------------------------------------------------------------
- 915c: e28fc600 add ip, pc, #0, 12
- 9160: e28cca07 add ip, ip, #28672 ; 0x7000
- 9164: e5bcff00 ldr pc, \[ip, #3840\]! ; 0xf00
+ 9098: e28fc600 add ip, pc, #0, 12
+ 909c: e28cca07 add ip, ip, #28672 ; 0x7000
+ 90a0: e5bcff94 ldr pc, \[ip, #3988\]! ; 0xf94
#------------------------------------------------------------------------------
#------ aaf3's .iplt entry
#------------------------------------------------------------------------------
- 9168: e28fc600 add ip, pc, #0, 12
- 916c: e28cca07 add ip, ip, #28672 ; 0x7000
- 9170: e5bcfef8 ldr pc, \[ip, #3832\]! ; 0xef8
+ 90a4: e28fc600 add ip, pc, #0, 12
+ 90a8: e28cca07 add ip, ip, #28672 ; 0x7000
+ 90ac: e5bcff8c ldr pc, \[ip, #3980\]! ; 0xf8c
Disassembly of section \.text:
@@ -303,727 +167,375 @@ Disassembly of section \.text:
#------------------------------------------------------------------------------
#------ .got offset for foo
#------------------------------------------------------------------------------
- a03c: 00000070 \.word 0x00000070
+ a03c: 00000040 \.word 0x00000040
#------------------------------------------------------------------------------
#------ PC-relative offset of .got entry for foo
#------------------------------------------------------------------------------
- a040: 0000702c \.word 0x0000702c
+ a040: 00006ffc \.word 0x00006ffc
#------------------------------------------------------------------------------
#------ aaf1's .iplt entry
#------------------------------------------------------------------------------
- a044: ebfffc1e bl 90c4 <abf2@plt\+0x10>
+ a044: ebfffbed bl 9000 <aaf1-0x1000>
#------------------------------------------------------------------------------
#------ aaf1's .iplt entry
#------------------------------------------------------------------------------
- a048: eafffc1d b 90c4 <abf2@plt\+0x10>
+ a048: eafffbec b 9000 <aaf1-0x1000>
#------------------------------------------------------------------------------
#------ aaf1's .iplt entry
#------------------------------------------------------------------------------
- a04c: 0afffc1c beq 90c4 <abf2@plt\+0x10>
+ a04c: 0afffbeb beq 9000 <aaf1-0x1000>
a050: e59f4000 ldr r4, \[pc\] ; a058 <arm\+0x30>
a054: e59f4000 ldr r4, \[pc\] ; a05c <arm\+0x34>
#------------------------------------------------------------------------------
#------ GP-relative offset of aaf1's .igot.plt entry
#------------------------------------------------------------------------------
- a058: 0000003c \.word 0x0000003c
+ a058: 0000000c \.word 0x0000000c
#------------------------------------------------------------------------------
#------ PC-relative offset of aaf1's .igot.plt entry
#------------------------------------------------------------------------------
- a05c: 00006fe0 \.word 0x00006fe0
+ a05c: 00006fb0 \.word 0x00006fb0
#------------------------------------------------------------------------------
#------ taf1's .iplt entry
#------------------------------------------------------------------------------
- a060: ebfffc22 bl 90f0 <abf2@plt\+0x3c>
+ a060: ebfffbf1 bl 902c <aaf1-0xfd4>
#------------------------------------------------------------------------------
#------ taf1's .iplt entry
#------------------------------------------------------------------------------
- a064: eafffc21 b 90f0 <abf2@plt\+0x3c>
+ a064: eafffbf0 b 902c <aaf1-0xfd4>
#------------------------------------------------------------------------------
#------ taf1's .iplt entry
#------------------------------------------------------------------------------
- a068: 0afffc20 beq 90f0 <abf2@plt\+0x3c>
+ a068: 0afffbef beq 902c <aaf1-0xfd4>
a06c: e59f4000 ldr r4, \[pc\] ; a074 <arm\+0x4c>
a070: e59f4000 ldr r4, \[pc\] ; a078 <arm\+0x50>
#------------------------------------------------------------------------------
#------ GP-relative offset of taf1's .igot.plt entry
#------------------------------------------------------------------------------
- a074: 00000048 \.word 0x00000048
+ a074: 00000018 \.word 0x00000018
#------------------------------------------------------------------------------
#------ PC-relative offset of taf1's .igot.plt entry
#------------------------------------------------------------------------------
- a078: 00006fd0 \.word 0x00006fd0
+ a078: 00006fa0 \.word 0x00006fa0
#------------------------------------------------------------------------------
#------ abf1's .iplt entry
#------------------------------------------------------------------------------
- a07c: ebfffc18 bl 90e4 <abf2@plt\+0x30>
+ a07c: ebfffbe7 bl 9020 <aaf1-0xfe0>
#------------------------------------------------------------------------------
#------ abf1's .iplt entry
#------------------------------------------------------------------------------
- a080: eafffc17 b 90e4 <abf2@plt\+0x30>
+ a080: eafffbe6 b 9020 <aaf1-0xfe0>
#------------------------------------------------------------------------------
#------ abf1's .iplt entry
#------------------------------------------------------------------------------
- a084: 0afffc16 beq 90e4 <abf2@plt\+0x30>
+ a084: 0afffbe5 beq 9020 <aaf1-0xfe0>
a088: e59f4000 ldr r4, \[pc\] ; a090 <arm\+0x68>
a08c: e59f4000 ldr r4, \[pc\] ; a094 <arm\+0x6c>
#------------------------------------------------------------------------------
#------ GP-relative offset of abf1's .igot.plt entry
#------------------------------------------------------------------------------
- a090: 00000044 \.word 0x00000044
+ a090: 00000014 \.word 0x00000014
#------------------------------------------------------------------------------
#------ PC-relative offset of abf1's .igot.plt entry
#------------------------------------------------------------------------------
- a094: 00006fb0 \.word 0x00006fb0
+ a094: 00006f80 \.word 0x00006f80
#------------------------------------------------------------------------------
#------ tbf1's .iplt entry
#------------------------------------------------------------------------------
- a098: ebfffc1c bl 9110 <abf2@plt\+0x5c>
+ a098: ebfffbeb bl 904c <aaf1-0xfb4>
#------------------------------------------------------------------------------
#------ tbf1's .iplt entry
#------------------------------------------------------------------------------
- a09c: eafffc1b b 9110 <abf2@plt\+0x5c>
+ a09c: eafffbea b 904c <aaf1-0xfb4>
#------------------------------------------------------------------------------
#------ tbf1's .iplt entry
#------------------------------------------------------------------------------
- a0a0: 0afffc1a beq 9110 <abf2@plt\+0x5c>
+ a0a0: 0afffbe9 beq 904c <aaf1-0xfb4>
a0a4: e59f4000 ldr r4, \[pc\] ; a0ac <arm\+0x84>
a0a8: e59f4000 ldr r4, \[pc\] ; a0b0 <arm\+0x88>
#------------------------------------------------------------------------------
#------ GP-relative offset of tbf1's .igot.plt entry
#------------------------------------------------------------------------------
- a0ac: 00000050 \.word 0x00000050
+ a0ac: 00000020 \.word 0x00000020
#------------------------------------------------------------------------------
#------ PC-relative offset of tbf1's .igot.plt entry
#------------------------------------------------------------------------------
- a0b0: 00006fa0 \.word 0x00006fa0
+ a0b0: 00006f70 \.word 0x00006f70
#------------------------------------------------------------------------------
-#------ aaf2's .plt entry
+#------ aaf3's .plt entry
#------------------------------------------------------------------------------
- a0b4: ebfffbe8 bl 905c <aaf2@plt>
+ a0b4: ebfffbfa bl 90a4 <aaf1-0xf5c>
#------------------------------------------------------------------------------
-#------ aaf2's .plt entry
+#------ aaf3's .plt entry
#------------------------------------------------------------------------------
- a0b8: eafffbe7 b 905c <aaf2@plt>
+ a0b8: eafffbf9 b 90a4 <aaf1-0xf5c>
#------------------------------------------------------------------------------
-#------ aaf2's .plt entry
+#------ aaf3's .plt entry
#------------------------------------------------------------------------------
- a0bc: 0afffbe6 beq 905c <aaf2@plt>
+ a0bc: 0afffbf8 beq 90a4 <aaf1-0xf5c>
a0c0: e59f4000 ldr r4, \[pc\] ; a0c8 <arm\+0xa0>
a0c4: e59f4000 ldr r4, \[pc\] ; a0cc <arm\+0xa4>
#------------------------------------------------------------------------------
-#------ .got offset for aaf2
-#------------------------------------------------------------------------------
- a0c8: 00000088 \.word 0x00000088
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for aaf2
-#------------------------------------------------------------------------------
- a0cc: 00006fbc \.word 0x00006fbc
-#------------------------------------------------------------------------------
-#------ taf2's .plt entry
-#------------------------------------------------------------------------------
- a0d0: ebfffbde bl 9050 <taf2@plt>
-#------------------------------------------------------------------------------
-#------ taf2's .plt entry
-#------------------------------------------------------------------------------
- a0d4: eafffbdd b 9050 <taf2@plt>
-#------------------------------------------------------------------------------
-#------ taf2's .plt entry
-#------------------------------------------------------------------------------
- a0d8: 0afffbdc beq 9050 <taf2@plt>
- a0dc: e59f4000 ldr r4, \[pc\] ; a0e4 <arm\+0xbc>
- a0e0: e59f4000 ldr r4, \[pc\] ; a0e8 <arm\+0xc0>
-#------------------------------------------------------------------------------
-#------ .got offset for taf2
-#------------------------------------------------------------------------------
- a0e4: 00000084 \.word 0x00000084
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for taf2
-#------------------------------------------------------------------------------
- a0e8: 00006f9c \.word 0x00006f9c
-#------------------------------------------------------------------------------
-#------ abf2's .plt entry
-#------------------------------------------------------------------------------
- a0ec: ebfffbf1 bl 90b8 <abf2@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ abf2's .plt entry
-#------------------------------------------------------------------------------
- a0f0: eafffbf0 b 90b8 <abf2@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ abf2's .plt entry
-#------------------------------------------------------------------------------
- a0f4: 0afffbef beq 90b8 <abf2@plt\+0x4>
- a0f8: e59f4000 ldr r4, \[pc\] ; a100 <arm\+0xd8>
- a0fc: e59f4000 ldr r4, \[pc\] ; a104 <arm\+0xdc>
-#------------------------------------------------------------------------------
-#------ .got offset for abf2
-#------------------------------------------------------------------------------
- a100: 000000a0 \.word 0x000000a0
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for abf2
-#------------------------------------------------------------------------------
- a104: 00006f9c \.word 0x00006f9c
-#------------------------------------------------------------------------------
-#------ tbf2's .plt entry
-#------------------------------------------------------------------------------
- a108: ebfffbcd bl 9044 <tbf2@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ tbf2's .plt entry
-#------------------------------------------------------------------------------
- a10c: eafffbcc b 9044 <tbf2@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ tbf2's .plt entry
-#------------------------------------------------------------------------------
- a110: 0afffbcb beq 9044 <tbf2@plt\+0x4>
- a114: e59f4000 ldr r4, \[pc\] ; a11c <arm\+0xf4>
- a118: e59f4000 ldr r4, \[pc\] ; a120 <arm\+0xf8>
-#------------------------------------------------------------------------------
-#------ .got offset for tbf2
-#------------------------------------------------------------------------------
- a11c: 00000080 \.word 0x00000080
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for tbf2
-#------------------------------------------------------------------------------
- a120: 00006f60 \.word 0x00006f60
-#------------------------------------------------------------------------------
-#------ aaf3's .iplt entry
-#------------------------------------------------------------------------------
- a124: ebfffc0f bl 9168 <abf2@plt\+0xb4>
-#------------------------------------------------------------------------------
-#------ aaf3's .iplt entry
-#------------------------------------------------------------------------------
- a128: eafffc0e b 9168 <abf2@plt\+0xb4>
-#------------------------------------------------------------------------------
-#------ aaf3's .iplt entry
-#------------------------------------------------------------------------------
- a12c: 0afffc0d beq 9168 <abf2@plt\+0xb4>
- a130: e59f4000 ldr r4, \[pc\] ; a138 <arm\+0x110>
- a134: e59f4000 ldr r4, \[pc\] ; a13c <arm\+0x114>
-#------------------------------------------------------------------------------
#------ GP-relative offset of aaf3's .igot.plt entry
#------------------------------------------------------------------------------
- a138: 00000068 \.word 0x00000068
+ a0c8: 00000038 \.word 0x00000038
#------------------------------------------------------------------------------
#------ PC-relative offset of aaf3's .igot.plt entry
#------------------------------------------------------------------------------
- a13c: 00006f2c \.word 0x00006f2c
+ a0cc: 00006f6c \.word 0x00006f6c
#------------------------------------------------------------------------------
#------ taf3's .iplt entry
#------------------------------------------------------------------------------
- a140: ebfffc05 bl 915c <abf2@plt\+0xa8>
+ a0d0: ebfffbf0 bl 9098 <aaf1-0xf68>
#------------------------------------------------------------------------------
#------ taf3's .iplt entry
#------------------------------------------------------------------------------
- a144: eafffc04 b 915c <abf2@plt\+0xa8>
+ a0d4: eafffbef b 9098 <aaf1-0xf68>
#------------------------------------------------------------------------------
#------ taf3's .iplt entry
#------------------------------------------------------------------------------
- a148: 0afffc03 beq 915c <abf2@plt\+0xa8>
- a14c: e59f4000 ldr r4, \[pc\] ; a154 <arm\+0x12c>
- a150: e59f4000 ldr r4, \[pc\] ; a158 <arm\+0x130>
+ a0d8: 0afffbee beq 9098 <aaf1-0xf68>
+ a0dc: e59f4000 ldr r4, \[pc\] ; a0e4 <arm\+0xbc>
+ a0e0: e59f4000 ldr r4, \[pc\] ; a0e8 <arm\+0xc0>
#------------------------------------------------------------------------------
#------ GP-relative offset of taf3's .igot.plt entry
#------------------------------------------------------------------------------
- a154: 00000064 \.word 0x00000064
+ a0e4: 00000034 \.word 0x00000034
#------------------------------------------------------------------------------
#------ PC-relative offset of taf3's .igot.plt entry
#------------------------------------------------------------------------------
- a158: 00006f0c \.word 0x00006f0c
+ a0e8: 00006f4c \.word 0x00006f4c
#------------------------------------------------------------------------------
#------ abf3's .iplt entry
#------------------------------------------------------------------------------
- a15c: ebfffbf3 bl 9130 <abf2@plt\+0x7c>
+ a0ec: ebfffbde bl 906c <aaf1-0xf94>
#------------------------------------------------------------------------------
#------ abf3's .iplt entry
#------------------------------------------------------------------------------
- a160: eafffbf2 b 9130 <abf2@plt\+0x7c>
+ a0f0: eafffbdd b 906c <aaf1-0xf94>
#------------------------------------------------------------------------------
#------ abf3's .iplt entry
#------------------------------------------------------------------------------
- a164: 0afffbf1 beq 9130 <abf2@plt\+0x7c>
- a168: e59f4000 ldr r4, \[pc\] ; a170 <arm\+0x148>
- a16c: e59f4000 ldr r4, \[pc\] ; a174 <arm\+0x14c>
+ a0f4: 0afffbdc beq 906c <aaf1-0xf94>
+ a0f8: e59f4000 ldr r4, \[pc\] ; a100 <arm\+0xd8>
+ a0fc: e59f4000 ldr r4, \[pc\] ; a104 <arm\+0xdc>
#------------------------------------------------------------------------------
#------ GP-relative offset of abf3's .igot.plt entry
#------------------------------------------------------------------------------
- a170: 00000058 \.word 0x00000058
+ a100: 00000028 \.word 0x00000028
#------------------------------------------------------------------------------
#------ PC-relative offset of abf3's .igot.plt entry
#------------------------------------------------------------------------------
- a174: 00006ee4 \.word 0x00006ee4
+ a104: 00006f24 \.word 0x00006f24
#------------------------------------------------------------------------------
#------ tbf3's .iplt entry
#------------------------------------------------------------------------------
- a178: ebfffbf4 bl 9150 <abf2@plt\+0x9c>
+ a108: ebfffbdf bl 908c <aaf1-0xf74>
#------------------------------------------------------------------------------
#------ tbf3's .iplt entry
#------------------------------------------------------------------------------
- a17c: eafffbf3 b 9150 <abf2@plt\+0x9c>
+ a10c: eafffbde b 908c <aaf1-0xf74>
#------------------------------------------------------------------------------
#------ tbf3's .iplt entry
#------------------------------------------------------------------------------
- a180: 0afffbf2 beq 9150 <abf2@plt\+0x9c>
- a184: e59f4000 ldr r4, \[pc\] ; a18c <arm\+0x164>
- a188: e59f4000 ldr r4, \[pc\] ; a190 <arm\+0x168>
+ a110: 0afffbdd beq 908c <aaf1-0xf74>
+ a114: e59f4000 ldr r4, \[pc\] ; a11c <arm\+0xf4>
+ a118: e59f4000 ldr r4, \[pc\] ; a120 <arm\+0xf8>
#------------------------------------------------------------------------------
#------ GP-relative offset of tbf3's .igot.plt entry
#------------------------------------------------------------------------------
- a18c: 00000060 \.word 0x00000060
+ a11c: 00000030 \.word 0x00000030
#------------------------------------------------------------------------------
#------ PC-relative offset of tbf3's .igot.plt entry
#------------------------------------------------------------------------------
- a190: 00006ed0 \.word 0x00006ed0
-#------------------------------------------------------------------------------
-#------ aaf4's .plt entry
-#------------------------------------------------------------------------------
- a194: ebfffba2 bl 9024 <aaf4@plt>
-#------------------------------------------------------------------------------
-#------ aaf4's .plt entry
-#------------------------------------------------------------------------------
- a198: eafffba1 b 9024 <aaf4@plt>
-#------------------------------------------------------------------------------
-#------ aaf4's .plt entry
-#------------------------------------------------------------------------------
- a19c: 0afffba0 beq 9024 <aaf4@plt>
- a1a0: e59f4000 ldr r4, \[pc\] ; a1a8 <arm\+0x180>
- a1a4: e59f4000 ldr r4, \[pc\] ; a1ac <arm\+0x184>
-#------------------------------------------------------------------------------
-#------ .got offset for aaf4
-#------------------------------------------------------------------------------
- a1a8: 00000078 \.word 0x00000078
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for aaf4
-#------------------------------------------------------------------------------
- a1ac: 00006ecc \.word 0x00006ecc
-#------------------------------------------------------------------------------
-#------ taf4's .plt entry
-#------------------------------------------------------------------------------
- a1b0: ebfffbbc bl 90a8 <taf4@plt>
-#------------------------------------------------------------------------------
-#------ taf4's .plt entry
-#------------------------------------------------------------------------------
- a1b4: eafffbbb b 90a8 <taf4@plt>
-#------------------------------------------------------------------------------
-#------ taf4's .plt entry
-#------------------------------------------------------------------------------
- a1b8: 0afffbba beq 90a8 <taf4@plt>
- a1bc: e59f4000 ldr r4, \[pc\] ; a1c4 <arm\+0x19c>
- a1c0: e59f4000 ldr r4, \[pc\] ; a1c8 <arm\+0x1a0>
-#------------------------------------------------------------------------------
-#------ .got offset for taf4
-#------------------------------------------------------------------------------
- a1c4: 0000009c \.word 0x0000009c
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for taf4
-#------------------------------------------------------------------------------
- a1c8: 00006ed4 \.word 0x00006ed4
-#------------------------------------------------------------------------------
-#------ abf4's .plt entry
-#------------------------------------------------------------------------------
- a1cc: ebfffba6 bl 906c <abf4@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ abf4's .plt entry
-#------------------------------------------------------------------------------
- a1d0: eafffba5 b 906c <abf4@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ abf4's .plt entry
-#------------------------------------------------------------------------------
- a1d4: 0afffba4 beq 906c <abf4@plt\+0x4>
- a1d8: e59f4000 ldr r4, \[pc\] ; a1e0 <arm\+0x1b8>
- a1dc: e59f4000 ldr r4, \[pc\] ; a1e4 <arm\+0x1bc>
-#------------------------------------------------------------------------------
-#------ .got offset for abf4
-#------------------------------------------------------------------------------
- a1e0: 0000008c \.word 0x0000008c
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for abf4
-#------------------------------------------------------------------------------
- a1e4: 00006ea8 \.word 0x00006ea8
-#------------------------------------------------------------------------------
-#------ tbf4's .plt entry
-#------------------------------------------------------------------------------
- a1e8: ebfffba3 bl 907c <tbf4@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ tbf4's .plt entry
-#------------------------------------------------------------------------------
- a1ec: eafffba2 b 907c <tbf4@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ tbf4's .plt entry
-#------------------------------------------------------------------------------
- a1f0: 0afffba1 beq 907c <tbf4@plt\+0x4>
- a1f4: e59f4000 ldr r4, \[pc\] ; a1fc <arm\+0x1d4>
- a1f8: e59f4000 ldr r4, \[pc\] ; a200 <arm\+0x1d8>
-#------------------------------------------------------------------------------
-#------ .got offset for tbf4
-#------------------------------------------------------------------------------
- a1fc: 00000090 \.word 0x00000090
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for tbf4
-#------------------------------------------------------------------------------
- a200: 00006e90 \.word 0x00006e90
+ a120: 00006f10 \.word 0x00006f10
-0000a204 <_thumb>:
- a204: f005 fefc bl 10000 <foo>
- a208: f005 befa b\.w 10000 <foo>
- a20c: f005 86f8 beq\.w 10000 <foo>
- a210: 4c00 ldr r4, \[pc, #0\] ; \(a214 <_thumb\+0x10>\)
- a212: 4c01 ldr r4, \[pc, #4\] ; \(a218 <_thumb\+0x14>\)
+0000a124 <_thumb>:
+ a124: f005 ff6c bl 10000 <foo>
+ a128: f005 bf6a b\.w 10000 <foo>
+ a12c: f005 8768 beq\.w 10000 <foo>
+ a130: 4c00 ldr r4, \[pc, #0\] ; \(a134 <_thumb\+0x10>\)
+ a132: 4c01 ldr r4, \[pc, #4\] ; \(a138 <_thumb\+0x14>\)
#------------------------------------------------------------------------------
#------ .got offset for foo
#------------------------------------------------------------------------------
- a214: 00000070 \.word 0x00000070
+ a134: 00000040 \.word 0x00000040
#------------------------------------------------------------------------------
#------ PC-relative offset of .got entry for foo
#------------------------------------------------------------------------------
- a218: 00006e54 \.word 0x00006e54
+ a138: 00006f04 \.word 0x00006f04
#------------------------------------------------------------------------------
#------ atf1's .iplt entry
#------------------------------------------------------------------------------
- a21c: f7fe ef5a blx 90d4 <abf2@plt\+0x20>
+ a13c: f7fe ef68 blx 9010 <aaf1-0xff0>
#------------------------------------------------------------------------------
#------ thumb entry to atf1's .iplt entry
#------------------------------------------------------------------------------
- a220: f7fe bf56 b\.w 90d0 <abf2@plt\+0x1c>
+ a140: f7fe bf64 b\.w 900c <aaf1-0xff4>
#------------------------------------------------------------------------------
#------ thumb entry to atf1's .iplt entry
#------------------------------------------------------------------------------
- a224: f43e af54 beq\.w 90d0 <abf2@plt\+0x1c>
- a228: 4c00 ldr r4, \[pc, #0\] ; \(a22c <_thumb\+0x28>\)
- a22a: 4c01 ldr r4, \[pc, #4\] ; \(a230 <_thumb\+0x2c>\)
+ a144: f43e af62 beq\.w 900c <aaf1-0xff4>
+ a148: 4c00 ldr r4, \[pc, #0\] ; \(a14c <_thumb\+0x28>\)
+ a14a: 4c01 ldr r4, \[pc, #4\] ; \(a150 <_thumb\+0x2c>\)
#------------------------------------------------------------------------------
#------ GP-relative offset of atf1's .igot.plt entry
#------------------------------------------------------------------------------
- a22c: 00000040 \.word 0x00000040
+ a14c: 00000010 \.word 0x00000010
#------------------------------------------------------------------------------
#------ PC-relative offset of atf1's .igot.plt entry
#------------------------------------------------------------------------------
- a230: 00006e10 \.word 0x00006e10
+ a150: 00006ec0 \.word 0x00006ec0
#------------------------------------------------------------------------------
#------ ttf1's .iplt entry
#------------------------------------------------------------------------------
- a234: f7fe ef64 blx 9100 <abf2@plt\+0x4c>
+ a154: f7fe ef72 blx 903c <aaf1-0xfc4>
#------------------------------------------------------------------------------
#------ thumb entry to ttf1's .iplt entry
#------------------------------------------------------------------------------
- a238: f7fe bf60 b\.w 90fc <abf2@plt\+0x48>
+ a158: f7fe bf6e b\.w 9038 <aaf1-0xfc8>
#------------------------------------------------------------------------------
#------ thumb entry to ttf1's .iplt entry
#------------------------------------------------------------------------------
- a23c: f43e af5e beq\.w 90fc <abf2@plt\+0x48>
- a240: 4c00 ldr r4, \[pc, #0\] ; \(a244 <_thumb\+0x40>\)
- a242: 4c01 ldr r4, \[pc, #4\] ; \(a248 <_thumb\+0x44>\)
+ a15c: f43e af6c beq\.w 9038 <aaf1-0xfc8>
+ a160: 4c00 ldr r4, \[pc, #0\] ; \(a164 <_thumb\+0x40>\)
+ a162: 4c01 ldr r4, \[pc, #4\] ; \(a168 <_thumb\+0x44>\)
#------------------------------------------------------------------------------
#------ GP-relative offset of ttf1's .igot.plt entry
#------------------------------------------------------------------------------
- a244: 0000004c \.word 0x0000004c
+ a164: 0000001c \.word 0x0000001c
#------------------------------------------------------------------------------
#------ PC-relative offset of ttf1's .igot.plt entry
#------------------------------------------------------------------------------
- a248: 00006e04 \.word 0x00006e04
+ a168: 00006eb4 \.word 0x00006eb4
#------------------------------------------------------------------------------
#------ abf1's .iplt entry
#------------------------------------------------------------------------------
- a24c: f7fe ef4a blx 90e4 <abf2@plt\+0x30>
+ a16c: f7fe ef58 blx 9020 <aaf1-0xfe0>
#------------------------------------------------------------------------------
#------ thumb entry to abf1's .iplt entry
#------------------------------------------------------------------------------
- a250: f7fe bf46 b\.w 90e0 <abf2@plt\+0x2c>
+ a170: f7fe bf54 b\.w 901c <aaf1-0xfe4>
#------------------------------------------------------------------------------
#------ thumb entry to abf1's .iplt entry
#------------------------------------------------------------------------------
- a254: f43e af44 beq\.w 90e0 <abf2@plt\+0x2c>
- a258: 4c00 ldr r4, \[pc, #0\] ; \(a25c <_thumb\+0x58>\)
- a25a: 4c01 ldr r4, \[pc, #4\] ; \(a260 <_thumb\+0x5c>\)
+ a174: f43e af52 beq\.w 901c <aaf1-0xfe4>
+ a178: 4c00 ldr r4, \[pc, #0\] ; \(a17c <_thumb\+0x58>\)
+ a17a: 4c01 ldr r4, \[pc, #4\] ; \(a180 <_thumb\+0x5c>\)
#------------------------------------------------------------------------------
#------ GP-relative offset of abf1's .igot.plt entry
#------------------------------------------------------------------------------
- a25c: 00000044 \.word 0x00000044
+ a17c: 00000014 \.word 0x00000014
#------------------------------------------------------------------------------
#------ PC-relative offset of abf1's .igot.plt entry
#------------------------------------------------------------------------------
- a260: 00006de4 \.word 0x00006de4
+ a180: 00006e94 \.word 0x00006e94
#------------------------------------------------------------------------------
#------ tbf1's .iplt entry
#------------------------------------------------------------------------------
- a264: f7fe ef54 blx 9110 <abf2@plt\+0x5c>
+ a184: f7fe ef62 blx 904c <aaf1-0xfb4>
#------------------------------------------------------------------------------
#------ thumb entry to tbf1's .iplt entry
#------------------------------------------------------------------------------
- a268: f7fe bf50 b\.w 910c <abf2@plt\+0x58>
+ a188: f7fe bf5e b\.w 9048 <aaf1-0xfb8>
#------------------------------------------------------------------------------
#------ thumb entry to tbf1's .iplt entry
#------------------------------------------------------------------------------
- a26c: f43e af4e beq\.w 910c <abf2@plt\+0x58>
- a270: 4c00 ldr r4, \[pc, #0\] ; \(a274 <_thumb\+0x70>\)
- a272: 4c01 ldr r4, \[pc, #4\] ; \(a278 <_thumb\+0x74>\)
+ a18c: f43e af5c beq\.w 9048 <aaf1-0xfb8>
+ a190: 4c00 ldr r4, \[pc, #0\] ; \(a194 <_thumb\+0x70>\)
+ a192: 4c01 ldr r4, \[pc, #4\] ; \(a198 <_thumb\+0x74>\)
#------------------------------------------------------------------------------
#------ GP-relative offset of tbf1's .igot.plt entry
#------------------------------------------------------------------------------
- a274: 00000050 \.word 0x00000050
+ a194: 00000020 \.word 0x00000020
#------------------------------------------------------------------------------
#------ PC-relative offset of tbf1's .igot.plt entry
#------------------------------------------------------------------------------
- a278: 00006dd8 \.word 0x00006dd8
-#------------------------------------------------------------------------------
-#------ atf2's .plt entry
-#------------------------------------------------------------------------------
- a27c: f7fe eecc blx 9018 <atf2@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ thumb entry to atf2's .plt entry
-#------------------------------------------------------------------------------
- a280: f7fe bec8 b\.w 9014 <atf2@plt>
-#------------------------------------------------------------------------------
-#------ thumb entry to atf2's .plt entry
-#------------------------------------------------------------------------------
- a284: f43e aec6 beq\.w 9014 <atf2@plt>
- a288: 4c00 ldr r4, \[pc, #0\] ; \(a28c <_thumb\+0x88>\)
- a28a: 4c01 ldr r4, \[pc, #4\] ; \(a290 <_thumb\+0x8c>\)
-#------------------------------------------------------------------------------
-#------ .got offset for atf2
-#------------------------------------------------------------------------------
- a28c: 00000074 \.word 0x00000074
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for atf2
-#------------------------------------------------------------------------------
- a290: 00006de4 \.word 0x00006de4
-#------------------------------------------------------------------------------
-#------ ttf2's .plt entry
-#------------------------------------------------------------------------------
- a294: f7fe eece blx 9034 <ttf2@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ thumb entry to ttf2's .plt entry
-#------------------------------------------------------------------------------
- a298: f7fe beca b\.w 9030 <ttf2@plt>
-#------------------------------------------------------------------------------
-#------ thumb entry to ttf2's .plt entry
-#------------------------------------------------------------------------------
- a29c: f43e aec8 beq\.w 9030 <ttf2@plt>
- a2a0: 4c00 ldr r4, \[pc, #0\] ; \(a2a4 <_thumb\+0xa0>\)
- a2a2: 4c01 ldr r4, \[pc, #4\] ; \(a2a8 <_thumb\+0xa4>\)
-#------------------------------------------------------------------------------
-#------ .got offset for ttf2
-#------------------------------------------------------------------------------
- a2a4: 0000007c \.word 0x0000007c
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for ttf2
-#------------------------------------------------------------------------------
- a2a8: 00006dd4 \.word 0x00006dd4
-#------------------------------------------------------------------------------
-#------ abf2's .plt entry
-#------------------------------------------------------------------------------
- a2ac: f7fe ef04 blx 90b8 <abf2@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ thumb entry to abf2's .plt entry
-#------------------------------------------------------------------------------
- a2b0: f7fe bf00 b\.w 90b4 <abf2@plt>
-#------------------------------------------------------------------------------
-#------ thumb entry to abf2's .plt entry
-#------------------------------------------------------------------------------
- a2b4: f43e aefe beq\.w 90b4 <abf2@plt>
- a2b8: 4c00 ldr r4, \[pc, #0\] ; \(a2bc <_thumb\+0xb8>\)
- a2ba: 4c01 ldr r4, \[pc, #4\] ; \(a2c0 <_thumb\+0xbc>\)
-#------------------------------------------------------------------------------
-#------ .got offset for abf2
-#------------------------------------------------------------------------------
- a2bc: 000000a0 \.word 0x000000a0
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for abf2
-#------------------------------------------------------------------------------
- a2c0: 00006de0 \.word 0x00006de0
-#------------------------------------------------------------------------------
-#------ tbf2's .plt entry
-#------------------------------------------------------------------------------
- a2c4: f7fe eebe blx 9044 <tbf2@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ thumb entry to tbf2's .plt entry
-#------------------------------------------------------------------------------
- a2c8: f7fe beba b\.w 9040 <tbf2@plt>
-#------------------------------------------------------------------------------
-#------ thumb entry to tbf2's .plt entry
-#------------------------------------------------------------------------------
- a2cc: f43e aeb8 beq\.w 9040 <tbf2@plt>
- a2d0: 4c00 ldr r4, \[pc, #0\] ; \(a2d4 <_thumb\+0xd0>\)
- a2d2: 4c01 ldr r4, \[pc, #4\] ; \(a2d8 <_thumb\+0xd4>\)
-#------------------------------------------------------------------------------
-#------ .got offset for tbf2
-#------------------------------------------------------------------------------
- a2d4: 00000080 \.word 0x00000080
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for tbf2
-#------------------------------------------------------------------------------
- a2d8: 00006da8 \.word 0x00006da8
+ a198: 00006e88 \.word 0x00006e88
#------------------------------------------------------------------------------
#------ atf3's .iplt entry
#------------------------------------------------------------------------------
- a2dc: f7fe ef20 blx 9120 <abf2@plt\+0x6c>
+ a19c: f7fe ef5e blx 905c <aaf1-0xfa4>
#------------------------------------------------------------------------------
#------ thumb entry to atf3's .iplt entry
#------------------------------------------------------------------------------
- a2e0: f7fe bf1c b\.w 911c <abf2@plt\+0x68>
+ a1a0: f7fe bf5a b\.w 9058 <aaf1-0xfa8>
#------------------------------------------------------------------------------
#------ thumb entry to atf3's .iplt entry
#------------------------------------------------------------------------------
- a2e4: f43e af1a beq\.w 911c <abf2@plt\+0x68>
- a2e8: 4c00 ldr r4, \[pc, #0\] ; \(a2ec <_thumb\+0xe8>\)
- a2ea: 4c01 ldr r4, \[pc, #4\] ; \(a2f0 <_thumb\+0xec>\)
+ a1a4: f43e af58 beq\.w 9058 <aaf1-0xfa8>
+ a1a8: 4c00 ldr r4, \[pc, #0\] ; \(a1ac <_thumb\+0x88>\)
+ a1aa: 4c01 ldr r4, \[pc, #4\] ; \(a1b0 <_thumb\+0x8c>\)
#------------------------------------------------------------------------------
#------ GP-relative offset of atf3's .igot.plt entry
#------------------------------------------------------------------------------
- a2ec: 00000054 \.word 0x00000054
+ a1ac: 00000024 \.word 0x00000024
#------------------------------------------------------------------------------
#------ PC-relative offset of atf3's .igot.plt entry
#------------------------------------------------------------------------------
- a2f0: 00006d64 \.word 0x00006d64
+ a1b0: 00006e74 \.word 0x00006e74
#------------------------------------------------------------------------------
#------ ttf3's .iplt entry
#------------------------------------------------------------------------------
- a2f4: f7fe ef24 blx 9140 <abf2@plt\+0x8c>
+ a1b4: f7fe ef62 blx 907c <aaf1-0xf84>
#------------------------------------------------------------------------------
#------ thumb entry to ttf3's .iplt entry
#------------------------------------------------------------------------------
- a2f8: f7fe bf20 b\.w 913c <abf2@plt\+0x88>
+ a1b8: f7fe bf5e b\.w 9078 <aaf1-0xf88>
#------------------------------------------------------------------------------
#------ thumb entry to ttf3's .iplt entry
#------------------------------------------------------------------------------
- a2fc: f43e af1e beq\.w 913c <abf2@plt\+0x88>
- a300: 4c00 ldr r4, \[pc, #0\] ; \(a304 <_thumb\+0x100>\)
- a302: 4c01 ldr r4, \[pc, #4\] ; \(a308 <_thumb\+0x104>\)
+ a1bc: f43e af5c beq\.w 9078 <aaf1-0xf88>
+ a1c0: 4c00 ldr r4, \[pc, #0\] ; \(a1c4 <_thumb\+0xa0>\)
+ a1c2: 4c01 ldr r4, \[pc, #4\] ; \(a1c8 <_thumb\+0xa4>\)
#------------------------------------------------------------------------------
#------ GP-relative offset of ttf3's .igot.plt entry
#------------------------------------------------------------------------------
- a304: 0000005c \.word 0x0000005c
+ a1c4: 0000002c \.word 0x0000002c
#------------------------------------------------------------------------------
#------ PC-relative offset of ttf3's .igot.plt entry
#------------------------------------------------------------------------------
- a308: 00006d54 \.word 0x00006d54
+ a1c8: 00006e64 \.word 0x00006e64
#------------------------------------------------------------------------------
#------ abf3's .iplt entry
#------------------------------------------------------------------------------
- a30c: f7fe ef10 blx 9130 <abf2@plt\+0x7c>
+ a1cc: f7fe ef4e blx 906c <aaf1-0xf94>
#------------------------------------------------------------------------------
#------ thumb entry to abf3's .iplt entry
#------------------------------------------------------------------------------
- a310: f7fe bf0c b\.w 912c <abf2@plt\+0x78>
+ a1d0: f7fe bf4a b\.w 9068 <aaf1-0xf98>
#------------------------------------------------------------------------------
#------ thumb entry to abf3's .iplt entry
#------------------------------------------------------------------------------
- a314: f43e af0a beq\.w 912c <abf2@plt\+0x78>
- a318: 4c00 ldr r4, \[pc, #0\] ; \(a31c <_thumb\+0x118>\)
- a31a: 4c01 ldr r4, \[pc, #4\] ; \(a320 <_thumb\+0x11c>\)
+ a1d4: f43e af48 beq\.w 9068 <aaf1-0xf98>
+ a1d8: 4c00 ldr r4, \[pc, #0\] ; \(a1dc <_thumb\+0xb8>\)
+ a1da: 4c01 ldr r4, \[pc, #4\] ; \(a1e0 <_thumb\+0xbc>\)
#------------------------------------------------------------------------------
#------ GP-relative offset of abf3's .igot.plt entry
#------------------------------------------------------------------------------
- a31c: 00000058 \.word 0x00000058
+ a1dc: 00000028 \.word 0x00000028
#------------------------------------------------------------------------------
#------ PC-relative offset of abf3's .igot.plt entry
#------------------------------------------------------------------------------
- a320: 00006d38 \.word 0x00006d38
+ a1e0: 00006e48 \.word 0x00006e48
#------------------------------------------------------------------------------
#------ tbf3's .iplt entry
#------------------------------------------------------------------------------
- a324: f7fe ef14 blx 9150 <abf2@plt\+0x9c>
+ a1e4: f7fe ef52 blx 908c <aaf1-0xf74>
#------------------------------------------------------------------------------
#------ thumb entry to tbf3's .iplt entry
#------------------------------------------------------------------------------
- a328: f7fe bf10 b\.w 914c <abf2@plt\+0x98>
+ a1e8: f7fe bf4e b\.w 9088 <aaf1-0xf78>
#------------------------------------------------------------------------------
#------ thumb entry to tbf3's .iplt entry
#------------------------------------------------------------------------------
- a32c: f43e af0e beq\.w 914c <abf2@plt\+0x98>
- a330: 4c00 ldr r4, \[pc, #0\] ; \(a334 <_thumb\+0x130>\)
- a332: 4c01 ldr r4, \[pc, #4\] ; \(a338 <_thumb\+0x134>\)
+ a1ec: f43e af4c beq\.w 9088 <aaf1-0xf78>
+ a1f0: 4c00 ldr r4, \[pc, #0\] ; \(a1f4 <_thumb\+0xd0>\)
+ a1f2: 4c01 ldr r4, \[pc, #4\] ; \(a1f8 <_thumb\+0xd4>\)
#------------------------------------------------------------------------------
#------ GP-relative offset of tbf3's .igot.plt entry
#------------------------------------------------------------------------------
- a334: 00000060 \.word 0x00000060
+ a1f4: 00000030 \.word 0x00000030
#------------------------------------------------------------------------------
#------ PC-relative offset of tbf3's .igot.plt entry
#------------------------------------------------------------------------------
- a338: 00006d28 \.word 0x00006d28
-#------------------------------------------------------------------------------
-#------ atf4's .plt entry
-#------------------------------------------------------------------------------
- a33c: f7fe eeae blx 909c <atf4@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ thumb entry to atf4's .plt entry
-#------------------------------------------------------------------------------
- a340: f7fe beaa b\.w 9098 <atf4@plt>
-#------------------------------------------------------------------------------
-#------ thumb entry to atf4's .plt entry
-#------------------------------------------------------------------------------
- a344: f43e aea8 beq\.w 9098 <atf4@plt>
- a348: 4c00 ldr r4, \[pc, #0\] ; \(a34c <_thumb\+0x148>\)
- a34a: 4c01 ldr r4, \[pc, #4\] ; \(a350 <_thumb\+0x14c>\)
-#------------------------------------------------------------------------------
-#------ .got offset for atf4
-#------------------------------------------------------------------------------
- a34c: 00000098 \.word 0x00000098
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for atf4
-#------------------------------------------------------------------------------
- a350: 00006d48 \.word 0x00006d48
-#------------------------------------------------------------------------------
-#------ ttf4's .plt entry
-#------------------------------------------------------------------------------
- a354: f7fe ee9a blx 908c <ttf4@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ thumb entry to ttf4's .plt entry
-#------------------------------------------------------------------------------
- a358: f7fe be96 b\.w 9088 <ttf4@plt>
-#------------------------------------------------------------------------------
-#------ thumb entry to ttf4's .plt entry
-#------------------------------------------------------------------------------
- a35c: f43e ae94 beq\.w 9088 <ttf4@plt>
- a360: 4c00 ldr r4, \[pc, #0\] ; \(a364 <_thumb\+0x160>\)
- a362: 4c01 ldr r4, \[pc, #4\] ; \(a368 <_thumb\+0x164>\)
-#------------------------------------------------------------------------------
-#------ .got offset for ttf4
-#------------------------------------------------------------------------------
- a364: 00000094 \.word 0x00000094
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for ttf4
-#------------------------------------------------------------------------------
- a368: 00006d2c \.word 0x00006d2c
-#------------------------------------------------------------------------------
-#------ abf4's .plt entry
-#------------------------------------------------------------------------------
- a36c: f7fe ee7e blx 906c <abf4@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ thumb entry to abf4's .plt entry
-#------------------------------------------------------------------------------
- a370: f7fe be7a b\.w 9068 <abf4@plt>
-#------------------------------------------------------------------------------
-#------ thumb entry to abf4's .plt entry
-#------------------------------------------------------------------------------
- a374: f43e ae78 beq\.w 9068 <abf4@plt>
- a378: 4c00 ldr r4, \[pc, #0\] ; \(a37c <_thumb\+0x178>\)
- a37a: 4c01 ldr r4, \[pc, #4\] ; \(a380 <_thumb\+0x17c>\)
-#------------------------------------------------------------------------------
-#------ .got offset for abf4
-#------------------------------------------------------------------------------
- a37c: 0000008c \.word 0x0000008c
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for abf4
-#------------------------------------------------------------------------------
- a380: 00006d0c \.word 0x00006d0c
-#------------------------------------------------------------------------------
-#------ tbf4's .plt entry
-#------------------------------------------------------------------------------
- a384: f7fe ee7a blx 907c <tbf4@plt\+0x4>
-#------------------------------------------------------------------------------
-#------ thumb entry to tbf4's .plt entry
-#------------------------------------------------------------------------------
- a388: f7fe be76 b\.w 9078 <tbf4@plt>
-#------------------------------------------------------------------------------
-#------ thumb entry to tbf4's .plt entry
-#------------------------------------------------------------------------------
- a38c: f43e ae74 beq\.w 9078 <tbf4@plt>
- a390: 4c00 ldr r4, \[pc, #0\] ; \(a394 <_thumb\+0x190>\)
- a392: 4c01 ldr r4, \[pc, #4\] ; \(a398 <_thumb\+0x194>\)
-#------------------------------------------------------------------------------
-#------ .got offset for tbf4
-#------------------------------------------------------------------------------
- a394: 00000090 \.word 0x00000090
-#------------------------------------------------------------------------------
-#------ PC-relative offset of .got entry for tbf4
-#------------------------------------------------------------------------------
- a398: 00006cf8 \.word 0x00006cf8
+ a1f8: 00006e38 \.word 0x00006e38
diff --git a/ld/testsuite/ld-arm/ifunc-8.gd b/ld/testsuite/ld-arm/ifunc-8.gd
index 356f042..92377c9 100644
--- a/ld/testsuite/ld-arm/ifunc-8.gd
+++ b/ld/testsuite/ld-arm/ifunc-8.gd
@@ -8,160 +8,76 @@ Contents of section \.data:
#------ 00010008: contains PC-relative offset of aaf1's .iplt entry
#------ 0001000c: contains atf1 [R_ARM_IRELATIVE]
#------------------------------------------------------------------------------
- 10000 (44332211 00a00000 bc90ffff 04a00000|11223344 0000a000 ffff90bc 0000a004) .*
+ 10000 (44332211 00a00000 f88fffff 04a00000|11223344 0000a000 ffff8ff8 0000a004) .*
#------------------------------------------------------------------------------
#------ 00010010: contains PC-relative offset of atf1's .iplt entry
#------ 00010014: contains abf1 [R_ARM_IRELATIVE]
#------ 00010018: contains PC-relative offset of abf1's .iplt entry
#------ 0001001c: contains taf1 [R_ARM_IRELATIVE]
#------------------------------------------------------------------------------
- 10010 (c490ffff 08a00000 cc90ffff 0da00000|ffff90c4 0000a008 ffff90cc 0000a00d) .*
+ 10010 (0090ffff 08a00000 0890ffff 0da00000|ffff9000 0000a008 ffff9008 0000a00d) .*
#------------------------------------------------------------------------------
#------ 00010020: contains PC-relative offset of taf1's .iplt entry
#------ 00010024: contains ttf1 [R_ARM_IRELATIVE]
#------ 00010028: contains PC-relative offset of ttf1's .iplt entry
#------ 0001002c: contains tbf1 [R_ARM_IRELATIVE]
#------------------------------------------------------------------------------
- 10020 (d090ffff 0fa00000 d890ffff 11a00000|ffff90d0 0000a00f ffff90d8 0000a011) .*
+ 10020 (0c90ffff 0fa00000 1490ffff 11a00000|ffff900c 0000a00f ffff9014 0000a011) .*
#------------------------------------------------------------------------------
#------ 00010030: contains PC-relative offset of tbf1's .iplt entry
-#------ 00010034: aaf2 [R_ARM_ABS32]
-#------ 00010038: aaf2 [R_ARM_REL32]
-#------ 0001003c: atf2 [R_ARM_ABS32]
+#------ 00010034: contains aaf3 [R_ARM_IRELATIVE]
+#------ 00010038: contains PC-relative offset of aaf3's .iplt entry
+#------ 0001003c: contains atf3 [R_ARM_IRELATIVE]
#------------------------------------------------------------------------------
- 10030 (e090ffff|ffff90e0) 00000000 00000000 00000000 .*
+ 10030 (1c90ffff 14a00000 6c90ffff 18a00000|ffff901c 0000a014 ffff906c 0000a018) .*
#------------------------------------------------------------------------------
-#------ 00010040: atf2 [R_ARM_REL32]
-#------ 00010044: abf2 [R_ARM_ABS32]
-#------ 00010048: abf2 [R_ARM_REL32]
-#------ 0001004c: taf2 [R_ARM_ABS32]
+#------ 00010040: contains PC-relative offset of atf3's .iplt entry
+#------ 00010044: contains abf3 [R_ARM_IRELATIVE]
+#------ 00010048: contains PC-relative offset of abf3's .iplt entry
+#------ 0001004c: contains taf3 [R_ARM_IRELATIVE]
#------------------------------------------------------------------------------
- 10040 00000000 00000000 00000000 00000000 .*
+ 10040 (1c90ffff 1ca00000 2490ffff 21a00000|ffff901c 0000a01c ffff9024 0000a021) .*
#------------------------------------------------------------------------------
-#------ 00010050: taf2 [R_ARM_REL32]
-#------ 00010054: ttf2 [R_ARM_ABS32]
-#------ 00010058: ttf2 [R_ARM_REL32]
-#------ 0001005c: tbf2 [R_ARM_ABS32]
+#------ 00010050: contains PC-relative offset of taf3's .iplt entry
+#------ 00010054: contains ttf3 [R_ARM_IRELATIVE]
+#------ 00010058: contains PC-relative offset of ttf3's .iplt entry
+#------ 0001005c: contains tbf3 [R_ARM_IRELATIVE]
#------------------------------------------------------------------------------
- 10050 00000000 00000000 00000000 00000000 .*
+ 10050 (4890ffff 23a00000 2490ffff 25a00000|ffff9048 0000a023 ffff9024 0000a025) .*
#------------------------------------------------------------------------------
-#------ 00010060: tbf2 [R_ARM_REL32]
-#------ 00010064: contains aaf3 [R_ARM_IRELATIVE]
-#------ 00010068: contains PC-relative offset of aaf3's .iplt entry
-#------ 0001006c: contains atf3 [R_ARM_IRELATIVE]
+#------ 00010060: contains PC-relative offset of tbf3's .iplt entry
#------------------------------------------------------------------------------
- 10060 00000000 (14a00000 0091ffff 18a00000|0000a014 ffff9100 0000a018) .*
-#------------------------------------------------------------------------------
-#------ 00010070: contains PC-relative offset of atf3's .iplt entry
-#------ 00010074: contains abf3 [R_ARM_IRELATIVE]
-#------ 00010078: contains PC-relative offset of abf3's .iplt entry
-#------ 0001007c: contains taf3 [R_ARM_IRELATIVE]
-#------------------------------------------------------------------------------
- 10070 (b090ffff 1ca00000 b890ffff 21a00000|ffff90b0 0000a01c ffff90b8 0000a021) .*
-#------------------------------------------------------------------------------
-#------ 00010080: contains PC-relative offset of taf3's .iplt entry
-#------ 00010084: contains ttf3 [R_ARM_IRELATIVE]
-#------ 00010088: contains PC-relative offset of ttf3's .iplt entry
-#------ 0001008c: contains tbf3 [R_ARM_IRELATIVE]
-#------------------------------------------------------------------------------
- 10080 (dc90ffff 23a00000 b890ffff 25a00000|ffff90dc 0000a023 ffff90b8 0000a025) .*
-#------------------------------------------------------------------------------
-#------ 00010090: contains PC-relative offset of tbf3's .iplt entry
-#------ 00010094: aaf4 [R_ARM_ABS32]
-#------ 00010098: aaf4 [R_ARM_REL32]
-#------ 0001009c: atf4 [R_ARM_ABS32]
-#------------------------------------------------------------------------------
- 10090 (c090ffff|ffff90c0) 00000000 00000000 00000000 .*
-#------------------------------------------------------------------------------
-#------ 000100a0: atf4 [R_ARM_REL32]
-#------ 000100a4: abf4 [R_ARM_ABS32]
-#------ 000100a8: abf4 [R_ARM_REL32]
-#------ 000100ac: taf4 [R_ARM_ABS32]
-#------------------------------------------------------------------------------
- 100a0 00000000 00000000 00000000 00000000 .*
-#------------------------------------------------------------------------------
-#------ 000100b0: taf4 [R_ARM_REL32]
-#------ 000100b4: ttf4 [R_ARM_ABS32]
-#------ 000100b8: ttf4 [R_ARM_REL32]
-#------ 000100bc: tbf4 [R_ARM_ABS32]
-#------------------------------------------------------------------------------
- 100b0 00000000 00000000 00000000 00000000 .*
-#------------------------------------------------------------------------------
-#------ 000100c0: tbf4 [R_ARM_REL32]
-#------------------------------------------------------------------------------
- 100c0 00000000 .*
+ 10060 (2c90ffff|ffff902c) .*
Contents of section \.got:
#------------------------------------------------------------------------------
#------ 00011000: .got.plt
#------ 00011004: reserved .got.plt entry
#------ 00011008: reserved .got.plt entry
-#------ 0001100c: atf2's .got.plt entry [R_ARM_JUMP_SLOT]
-#------------------------------------------------------------------------------
- 11000 (00200100 00000000 00000000 00900000|00012000 00000000 00000000 00009000) .*
-#------------------------------------------------------------------------------
-#------ 00011010: aaf4's .got.plt entry [R_ARM_JUMP_SLOT]
-#------ 00011014: ttf2's .got.plt entry [R_ARM_JUMP_SLOT]
-#------ 00011018: tbf2's .got.plt entry [R_ARM_JUMP_SLOT]
-#------ 0001101c: taf2's .got.plt entry [R_ARM_JUMP_SLOT]
-#------------------------------------------------------------------------------
- 11010 (00900000 00900000 00900000 00900000|00009000 00009000 00009000 00009000) .*
-#------------------------------------------------------------------------------
-#------ 00011020: aaf2's .got.plt entry [R_ARM_JUMP_SLOT]
-#------ 00011024: abf4's .got.plt entry [R_ARM_JUMP_SLOT]
-#------ 00011028: tbf4's .got.plt entry [R_ARM_JUMP_SLOT]
-#------ 0001102c: ttf4's .got.plt entry [R_ARM_JUMP_SLOT]
-#------------------------------------------------------------------------------
- 11020 (00900000 00900000 00900000 00900000|00009000 00009000 00009000 00009000) .*
-#------------------------------------------------------------------------------
-#------ 00011030: atf4's .got.plt entry [R_ARM_JUMP_SLOT]
-#------ 00011034: taf4's .got.plt entry [R_ARM_JUMP_SLOT]
-#------ 00011038: abf2's .got.plt entry [R_ARM_JUMP_SLOT]
-#------ 0001103c: aaf1's .igot.plt entry [R_ARM_IRELATIVE]
-#------------------------------------------------------------------------------
- 11030 (00900000 00900000 00900000 00a00000|00009000 00009000 00009000 0000a000) .*
-#------------------------------------------------------------------------------
-#------ 00011040: atf1's .igot.plt entry [R_ARM_IRELATIVE]
-#------ 00011044: abf1's .igot.plt entry [R_ARM_IRELATIVE]
-#------ 00011048: taf1's .igot.plt entry [R_ARM_IRELATIVE]
-#------ 0001104c: ttf1's .igot.plt entry [R_ARM_IRELATIVE]
-#------------------------------------------------------------------------------
- 11040 (04a00000 08a00000 0da00000 0fa00000|0000a004 0000a008 0000a00d 0000a00f) .*
-#------------------------------------------------------------------------------
-#------ 00011050: tbf1's .igot.plt entry [R_ARM_IRELATIVE]
-#------ 00011054: atf3's .igot.plt entry [R_ARM_IRELATIVE]
-#------ 00011058: abf3's .igot.plt entry [R_ARM_IRELATIVE]
-#------ 0001105c: ttf3's .igot.plt entry [R_ARM_IRELATIVE]
-#------------------------------------------------------------------------------
- 11050 (11a00000 18a00000 1ca00000 23a00000|0000a011 0000a018 0000a01c 0000a023) .*
-#------------------------------------------------------------------------------
-#------ 00011060: tbf3's .igot.plt entry [R_ARM_IRELATIVE]
-#------ 00011064: taf3's .igot.plt entry [R_ARM_IRELATIVE]
-#------ 00011068: aaf3's .igot.plt entry [R_ARM_IRELATIVE]
-#------ 0001106c: .got entry for foo [R_ARM_RELATIVE]
+#------ 0001100c: aaf1's .igot.plt entry [R_ARM_IRELATIVE]
#------------------------------------------------------------------------------
- 11060 (25a00000 21a00000 14a00000 00000100|0000a025 0000a021 0000a014 00010000) .*
+ 11000 (00200100 00000000 00000000 00a00000|00012000 00000000 00000000 0000a000) .*
#------------------------------------------------------------------------------
-#------ 00011070: .got entry for foo [R_ARM_RELATIVE]
-#------ 00011074: .got entry for atf2 [R_ARM_GLOB_DAT]
-#------ 00011078: .got entry for aaf4 [R_ARM_GLOB_DAT]
-#------ 0001107c: .got entry for ttf2 [R_ARM_GLOB_DAT]
+#------ 00011010: atf1's .igot.plt entry [R_ARM_IRELATIVE]
+#------ 00011014: abf1's .igot.plt entry [R_ARM_IRELATIVE]
+#------ 00011018: taf1's .igot.plt entry [R_ARM_IRELATIVE]
+#------ 0001101c: ttf1's .igot.plt entry [R_ARM_IRELATIVE]
#------------------------------------------------------------------------------
- 11070 (00000100|00010000) 00000000 00000000 00000000 .*
+ 11010 (04a00000 08a00000 0da00000 0fa00000|0000a004 0000a008 0000a00d 0000a00f) .*
#------------------------------------------------------------------------------
-#------ 00011080: .got entry for tbf2 [R_ARM_GLOB_DAT]
-#------ 00011084: .got entry for taf2 [R_ARM_GLOB_DAT]
-#------ 00011088: .got entry for aaf2 [R_ARM_GLOB_DAT]
-#------ 0001108c: .got entry for abf4 [R_ARM_GLOB_DAT]
+#------ 00011020: tbf1's .igot.plt entry [R_ARM_IRELATIVE]
+#------ 00011024: atf3's .igot.plt entry [R_ARM_IRELATIVE]
+#------ 00011028: abf3's .igot.plt entry [R_ARM_IRELATIVE]
+#------ 0001102c: ttf3's .igot.plt entry [R_ARM_IRELATIVE]
#------------------------------------------------------------------------------
- 11080 00000000 00000000 00000000 00000000 .*
+ 11020 (11a00000 18a00000 1ca00000 23a00000|0000a011 0000a018 0000a01c 0000a023) .*
#------------------------------------------------------------------------------
-#------ 00011090: .got entry for tbf4 [R_ARM_GLOB_DAT]
-#------ 00011094: .got entry for ttf4 [R_ARM_GLOB_DAT]
-#------ 00011098: .got entry for atf4 [R_ARM_GLOB_DAT]
-#------ 0001109c: .got entry for taf4 [R_ARM_GLOB_DAT]
+#------ 00011030: tbf3's .igot.plt entry [R_ARM_IRELATIVE]
+#------ 00011034: taf3's .igot.plt entry [R_ARM_IRELATIVE]
+#------ 00011038: aaf3's .igot.plt entry [R_ARM_IRELATIVE]
+#------ 0001103c: .got entry for foo [R_ARM_RELATIVE]
#------------------------------------------------------------------------------
- 11090 00000000 00000000 00000000 00000000 .*
+ 11030 (25a00000 21a00000 14a00000 00000100|0000a025 0000a021 0000a014 00010000) .*
#------------------------------------------------------------------------------
-#------ 000110a0: .got entry for abf2 [R_ARM_GLOB_DAT]
+#------ 00011040: .got entry for foo [R_ARM_RELATIVE]
#------------------------------------------------------------------------------
- 110a0 00000000 .*
+ 11040 (00000100|00010000) .*
diff --git a/ld/testsuite/ld-arm/ifunc-8.rd b/ld/testsuite/ld-arm/ifunc-8.rd
index a8ad1f2..c7c7975 100644
--- a/ld/testsuite/ld-arm/ifunc-8.rd
+++ b/ld/testsuite/ld-arm/ifunc-8.rd
@@ -1,80 +1,29 @@
-Relocation section '\.rel\.dyn' at offset 0x8000 contains 62 entries:
+Relocation section '\.rel\.dyn' at offset 0x8000 contains 26 entries:
Offset Info Type Sym\.Value Sym\. Name
-0001106c ......17 R_ARM_RELATIVE
-00011070 ......17 R_ARM_RELATIVE
+0001103c ......17 R_ARM_RELATIVE
+00011040 ......17 R_ARM_RELATIVE
00010004 ......a0 R_ARM_IRELATIVE
0001000c ......a0 R_ARM_IRELATIVE
00010014 ......a0 R_ARM_IRELATIVE
0001001c ......a0 R_ARM_IRELATIVE
00010024 ......a0 R_ARM_IRELATIVE
0001002c ......a0 R_ARM_IRELATIVE
-00010064 ......a0 R_ARM_IRELATIVE
-0001006c ......a0 R_ARM_IRELATIVE
-00010074 ......a0 R_ARM_IRELATIVE
-0001007c ......a0 R_ARM_IRELATIVE
-00010084 ......a0 R_ARM_IRELATIVE
-0001008c ......a0 R_ARM_IRELATIVE
-0001103c ......a0 R_ARM_IRELATIVE
-00011040 ......a0 R_ARM_IRELATIVE
-00011044 ......a0 R_ARM_IRELATIVE
-00011048 ......a0 R_ARM_IRELATIVE
-0001104c ......a0 R_ARM_IRELATIVE
-00011050 ......a0 R_ARM_IRELATIVE
-00011054 ......a0 R_ARM_IRELATIVE
-00011058 ......a0 R_ARM_IRELATIVE
-0001105c ......a0 R_ARM_IRELATIVE
-00011060 ......a0 R_ARM_IRELATIVE
-00011064 ......a0 R_ARM_IRELATIVE
-00011068 ......a0 R_ARM_IRELATIVE
-00010034 ......02 R_ARM_ABS32 00000000 aaf2
-00010038 ......03 R_ARM_REL32 00000000 aaf2
-00011088 ......15 R_ARM_GLOB_DAT 00000000 aaf2
-0001003c ......02 R_ARM_ABS32 00000000 atf2
-00010040 ......03 R_ARM_REL32 00000000 atf2
-00011074 ......15 R_ARM_GLOB_DAT 00000000 atf2
-00010044 ......02 R_ARM_ABS32 00000000 abf2
-00010048 ......03 R_ARM_REL32 00000000 abf2
-000110a0 ......15 R_ARM_GLOB_DAT 00000000 abf2
-0001004c ......02 R_ARM_ABS32 00000000 taf2
-00010050 ......03 R_ARM_REL32 00000000 taf2
-00011084 ......15 R_ARM_GLOB_DAT 00000000 taf2
-00010054 ......02 R_ARM_ABS32 00000000 ttf2
-00010058 ......03 R_ARM_REL32 00000000 ttf2
-0001107c ......15 R_ARM_GLOB_DAT 00000000 ttf2
-0001005c ......02 R_ARM_ABS32 00000000 tbf2
-00010060 ......03 R_ARM_REL32 00000000 tbf2
-00011080 ......15 R_ARM_GLOB_DAT 00000000 tbf2
-00010094 ......02 R_ARM_ABS32 00000000 aaf4
-00010098 ......03 R_ARM_REL32 00000000 aaf4
-00011078 ......15 R_ARM_GLOB_DAT 00000000 aaf4
-0001009c ......02 R_ARM_ABS32 00000000 atf4
-000100a0 ......03 R_ARM_REL32 00000000 atf4
-00011098 ......15 R_ARM_GLOB_DAT 00000000 atf4
-000100a4 ......02 R_ARM_ABS32 00000000 abf4
-000100a8 ......03 R_ARM_REL32 00000000 abf4
-0001108c ......15 R_ARM_GLOB_DAT 00000000 abf4
-000100ac ......02 R_ARM_ABS32 00000000 taf4
-000100b0 ......03 R_ARM_REL32 00000000 taf4
-0001109c ......15 R_ARM_GLOB_DAT 00000000 taf4
-000100b4 ......02 R_ARM_ABS32 00000000 ttf4
-000100b8 ......03 R_ARM_REL32 00000000 ttf4
-00011094 ......15 R_ARM_GLOB_DAT 00000000 ttf4
-000100bc ......02 R_ARM_ABS32 00000000 tbf4
-000100c0 ......03 R_ARM_REL32 00000000 tbf4
-00011090 ......15 R_ARM_GLOB_DAT 00000000 tbf4
-
-Relocation section '\.rel\.plt' at offset 0x81f0 contains 12 entries:
- Offset Info Type Sym\.Value Sym\. Name
-0001100c ......16 R_ARM_JUMP_SLOT 00000000 atf2
-00011010 ......16 R_ARM_JUMP_SLOT 00000000 aaf4
-00011014 ......16 R_ARM_JUMP_SLOT 00000000 ttf2
-00011018 ......16 R_ARM_JUMP_SLOT 00000000 tbf2
-0001101c ......16 R_ARM_JUMP_SLOT 00000000 taf2
-00011020 ......16 R_ARM_JUMP_SLOT 00000000 aaf2
-00011024 ......16 R_ARM_JUMP_SLOT 00000000 abf4
-00011028 ......16 R_ARM_JUMP_SLOT 00000000 tbf4
-0001102c ......16 R_ARM_JUMP_SLOT 00000000 ttf4
-00011030 ......16 R_ARM_JUMP_SLOT 00000000 atf4
-00011034 ......16 R_ARM_JUMP_SLOT 00000000 taf4
-00011038 ......16 R_ARM_JUMP_SLOT 00000000 abf2
+00010034 ......a0 R_ARM_IRELATIVE
+0001003c ......a0 R_ARM_IRELATIVE
+00010044 ......a0 R_ARM_IRELATIVE
+0001004c ......a0 R_ARM_IRELATIVE
+00010054 ......a0 R_ARM_IRELATIVE
+0001005c ......a0 R_ARM_IRELATIVE
+0001100c ......a0 R_ARM_IRELATIVE
+00011010 ......a0 R_ARM_IRELATIVE
+00011014 ......a0 R_ARM_IRELATIVE
+00011018 ......a0 R_ARM_IRELATIVE
+0001101c ......a0 R_ARM_IRELATIVE
+00011020 ......a0 R_ARM_IRELATIVE
+00011024 ......a0 R_ARM_IRELATIVE
+00011028 ......a0 R_ARM_IRELATIVE
+0001102c ......a0 R_ARM_IRELATIVE
+00011030 ......a0 R_ARM_IRELATIVE
+00011034 ......a0 R_ARM_IRELATIVE
+00011038 ......a0 R_ARM_IRELATIVE
diff --git a/ld/testsuite/ld-arm/ifunc-8.s b/ld/testsuite/ld-arm/ifunc-8.s
index 3947f7f..2727180 100644
--- a/ld/testsuite/ld-arm/ifunc-8.s
+++ b/ld/testsuite/ld-arm/ifunc-8.s
@@ -63,9 +63,7 @@
arm:
test_relocs foo
test_relocs2 f1,a,
- test_relocs2 f2,a,
test_relocs2 f3,a,
- test_relocs2 f4,a,
.size arm,.-arm
.globl _thumb
@@ -74,15 +72,11 @@ arm:
_thumb:
test_relocs foo
test_relocs2 f1,t,.w
- test_relocs2 f2,t,.w
test_relocs2 f3,t,.w
- test_relocs2 f4,t,.w
.size _thumb,.-_thumb
.data
foo:
.word 0x11223344
alldirs diff,f1
- alldirs diff,f2
alldirs diff,f3
- alldirs diff,f4
diff --git a/ld/testsuite/ld-arm/rel32-reject-pie.d b/ld/testsuite/ld-arm/rel32-reject-pie.d
new file mode 100644
index 0000000..475b324
--- /dev/null
+++ b/ld/testsuite/ld-arm/rel32-reject-pie.d
@@ -0,0 +1,3 @@
+#source: rel32-reject-pie.s
+#ld: -pie
+#error: .*relocation R_ARM_REL32.*can not.*PIE executable.*
diff --git a/ld/testsuite/ld-arm/rel32-reject-pie.s b/ld/testsuite/ld-arm/rel32-reject-pie.s
new file mode 100644
index 0000000..cc49e02
--- /dev/null
+++ b/ld/testsuite/ld-arm/rel32-reject-pie.s
@@ -0,0 +1,8 @@
+ .text
+ .global main
+main:
+ b main
+
+ .data
+rel:
+ .word non_global - .
diff --git a/ld/testsuite/ld-arm/rel32-reject.d b/ld/testsuite/ld-arm/rel32-reject.d
new file mode 100644
index 0000000..c82fd4d
--- /dev/null
+++ b/ld/testsuite/ld-arm/rel32-reject.d
@@ -0,0 +1,3 @@
+#source: rel32-reject.s
+#ld: -shared
+#error: .*relocation R_ARM_REL32.*can not.*shared object.*
diff --git a/ld/testsuite/ld-arm/rel32-reject.s b/ld/testsuite/ld-arm/rel32-reject.s
new file mode 100644
index 0000000..4cfbd2c
--- /dev/null
+++ b/ld/testsuite/ld-arm/rel32-reject.s
@@ -0,0 +1,9 @@
+ .text
+ .global main
+main:
+ b main
+
+ .data
+ .extern ext_global
+rel:
+ .word ext_global - .