[PATCH] Fix spurious check-ld failures on aarch64-elf

Roland McGrath via binutils binutils@sourceware.org
Tue Jul 24 23:39:00 GMT 2018


There are several regressions in check-ld vs the 2.30 branch, for
--target=aarch64-elf.

This fixes all the regressions on trunk, and applies cleanly and fixes
those on 2.31 branch as well.

This on branch users/roland/aarch64-elf-ld-check-regressions (and the clean
2.31 cherry-pick on users/roland/2.31/aarch64-elf-ld-check-regressions) for
your convenience.

OK for trunk and 2.31 branch?


Thanks,
Roland


ld/
2018-07-24  Roland McGrath  <mcgrathr@google.com>

* testsuite/ld-aarch64/ifunc-1-local.d: Adjust regexps to match
the offsets emitted by aarch64-elf configurations.
* testsuite/ld-aarch64/ifunc-1.d: Likewise.
* testsuite/ld-aarch64/ifunc-2-local.d: Likewise.
* testsuite/ld-aarch64/ifunc-2.d: Likewise.
* testsuite/ld-aarch64/ifunc-21.d: Likewise.
* testsuite/ld-aarch64/ifunc-3a.d: Likewise.

diff --git a/ld/testsuite/ld-aarch64/ifunc-1-local.d
b/ld/testsuite/ld-aarch64/ifunc-1-local.d
index bcba0aa0255..17836378654 100644
--- a/ld/testsuite/ld-aarch64/ifunc-1-local.d
+++ b/ld/testsuite/ld-aarch64/ifunc-1-local.d
@@ -3,7 +3,7 @@
 #target: aarch64*-*-*

 #...
-0+(110|180) <__GI_foo>:
+0+(110|180|1a0) <(__GI_)?foo>:
 #...
-[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+(0x110|0x180)@plt>
+[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+(0x110|0x180|0x1a0)@plt>
 #pass
diff --git a/ld/testsuite/ld-aarch64/ifunc-1.d
b/ld/testsuite/ld-aarch64/ifunc-1.d
index f408bfff787..0274ac0094e 100644
--- a/ld/testsuite/ld-aarch64/ifunc-1.d
+++ b/ld/testsuite/ld-aarch64/ifunc-1.d
@@ -3,7 +3,7 @@
 #target: aarch64*-*-*

 #...
-0+(130|1a0) <foo>:
+0+(130|1a0|1c8) <foo>:
 #...
-[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x(130|1a0)@plt>
+[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x(130|1a0|1c8)@plt>
 #pass
diff --git a/ld/testsuite/ld-aarch64/ifunc-2-local.d
b/ld/testsuite/ld-aarch64/ifunc-2-local.d
index fb1bb40e386..a3d9e15f8b6 100644
--- a/ld/testsuite/ld-aarch64/ifunc-2-local.d
+++ b/ld/testsuite/ld-aarch64/ifunc-2-local.d
@@ -3,9 +3,9 @@
 #target: aarch64*-*-*

 #...
-0+(110|180) <__GI_foo>:
+0+(110|180|1a0) <__GI_foo>:
 #...
-[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x(110|180)@plt>
+[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x(110|180|1a0)@plt>
 [ \t0-9a-f]+:[ \t0-9a-f]+adrp[ \t]+x0, 0 <.*>
-[ \t0-9a-f]+:[ \t0-9a-f]+add[ \t]+x0, x0, #0x(100|170)
+[ \t0-9a-f]+:[ \t0-9a-f]+add[ \t]+x0, x0, #0x(100|170|190)
 #pass
diff --git a/ld/testsuite/ld-aarch64/ifunc-2.d
b/ld/testsuite/ld-aarch64/ifunc-2.d
index 16c75ead407..eb6fa0ccf0b 100644
--- a/ld/testsuite/ld-aarch64/ifunc-2.d
+++ b/ld/testsuite/ld-aarch64/ifunc-2.d
@@ -3,9 +3,9 @@
 #target: aarch64*-*-*

 #...
-0+(130|1a0) <foo>:
+0+(130|1a0|1c8) <foo>:
 #...
-[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x(130|1a0)@plt>
+[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x(130|1a0|1c8)@plt>
 [ \t0-9a-f]+:[ \t0-9a-f]+adrp[ \t]+x0, 0 <.*>
-[ \t0-9a-f]+:[ \t0-9a-f]+add[ \t]+x0, x0, #0x(120|190)
+[ \t0-9a-f]+:[ \t0-9a-f]+add[ \t]+x0, x0, #0x(120|190|1b8)
 #pass
diff --git a/ld/testsuite/ld-aarch64/ifunc-21.d
b/ld/testsuite/ld-aarch64/ifunc-21.d
index b501bd6712b..a16186b587e 100644
--- a/ld/testsuite/ld-aarch64/ifunc-21.d
+++ b/ld/testsuite/ld-aarch64/ifunc-21.d
@@ -11,7 +11,7 @@ Contents of section .text:
  [0-9a-f]+ .*
 Contents of section .got.plt:
  [0-9a-f]+ 0+ 0+ 0+ 0+  .*
- 10298 0+ 0+ [0-9a-f]+ [0-9a-f]+  .*
+ (10298|102b8) 0+ 0+ [0-9a-f]+ [0-9a-f]+  .*

 Disassembly of section .text:

@@ -20,7 +20,7 @@ Disassembly of section .text:

 .* <bar>:
  .*: 90000080 adrp x0, 10000 <.*>
- .*: .* ldr x0, \[x0, #672\]
+ .*: .* ldr x0, \[x0, #(672|704)\]
  .*: d65f03c0 ret

 #pass
diff --git a/ld/testsuite/ld-aarch64/ifunc-3a.d
b/ld/testsuite/ld-aarch64/ifunc-3a.d
index a01a75c904f..4919d968928 100644
--- a/ld/testsuite/ld-aarch64/ifunc-3a.d
+++ b/ld/testsuite/ld-aarch64/ifunc-3a.d
@@ -4,7 +4,7 @@
 #target: aarch64*-*-*

 #...
-0+(150|1d0) <__GI_foo>:
+0+(150|1d0|1e8) <__GI_foo>:
 #...
-[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x(150|1d0)@plt>
+[ \t0-9a-f]+:[ \t0-9a-f]+bl[ \t0-9a-f]+<\*ABS\*\+0x(150|1d0|1e8)@plt>
 #pass



More information about the Binutils mailing list