your thumb-plt tests for Arm32

Jan Beulich jbeulich@suse.com
Mon Aug 3 13:10:54 GMT 2020


Tamar,

while building 2.35 for various cross targets, I've run into failures
with these two tests. After some looking around I come to the
conclusion that they're likely too strict in their expectations, in
not allowing things like GNU_HASH that may get enabled automatically
for certain configurations. I haven't, however, figured exactly what
parts of the expectations could be relaxed without breaking their
purpose. Could you take a look please?

Jan

Test Run By jbeulich on Mon Aug  3 13:58:59 2020
Target is arm-unknown-linux-gnueabi
Host   is i686-pc-linux-gnu

		=== ld tests ===
[...]
/build/binutils/2.35-arm32/ld/../gas/as-new     -o tmpdir/thumb-plt.o /home/jbeulich/cpp/binutils/2.35/ld/testsuite/ld-arm/thumb-plt.s
Executing on host: sh -c {/build/binutils/2.35-arm32/ld/../gas/as-new     -o tmpdir/thumb-plt.o /home/jbeulich/cpp/binutils/2.35/ld/testsuite/ld-arm/thumb-plt.s 2>&1}  /dev/null dump.tmp (timeout = 300)
spawn [open ...]
./ld-new -z norelro  -L/home/jbeulich/cpp/binutils/2.35/ld/testsuite/ld-arm  -shared -e0 -o tmpdir/dump tmpdir/thumb-plt.o 
Executing on host: sh -c {./ld-new -z norelro  -L/home/jbeulich/cpp/binutils/2.35/ld/testsuite/ld-arm  -shared -e0 -o tmpdir/dump tmpdir/thumb-plt.o  2>&1}  /dev/null dump.tmp (timeout = 300)
spawn [open ...]
/build/binutils/2.35-arm32/ld/../binutils/objdump  -dr tmpdir/dump > tmpdir/dump.out
Executing on host: sh -c {/build/binutils/2.35-arm32/ld/../binutils/objdump  -dr tmpdir/dump > tmpdir/dump.out 2>dump.tmp}  /dev/null  (timeout = 300)
spawn [open ...]
regexp_diff match failure
regexp "^ 11c:	0001009c 	\.word	0x0001009c$"
line   " 11c:	000100a4 	.word	0x000100a4"
regexp_diff match failure
regexp "^ 120:	f240 0c98 	movw	ip, #152	; 0x98$"
line   " 120:	f240 0ca0 	movw	ip, #160	; 0xa0"
FAIL: Thumb only PLT and GOT
/build/binutils/2.35-arm32/ld/../gas/as-new     -o tmpdir/thumb-plt.o /home/jbeulich/cpp/binutils/2.35/ld/testsuite/ld-arm/thumb-plt.s
Executing on host: sh -c {/build/binutils/2.35-arm32/ld/../gas/as-new     -o tmpdir/thumb-plt.o /home/jbeulich/cpp/binutils/2.35/ld/testsuite/ld-arm/thumb-plt.s 2>&1}  /dev/null dump.tmp (timeout = 300)
spawn [open ...]
./ld-new -z norelro  -L/home/jbeulich/cpp/binutils/2.35/ld/testsuite/ld-arm  -shared -e0 -o tmpdir/dump tmpdir/thumb-plt.o 
Executing on host: sh -c {./ld-new -z norelro  -L/home/jbeulich/cpp/binutils/2.35/ld/testsuite/ld-arm  -shared -e0 -o tmpdir/dump tmpdir/thumb-plt.o  2>&1}  /dev/null dump.tmp (timeout = 300)
spawn [open ...]
/build/binutils/2.35-arm32/ld/../binutils/readelf  -rx .got tmpdir/dump > tmpdir/dump.out
Executing on host: sh -c {/build/binutils/2.35-arm32/ld/../binutils/readelf  -rx .got tmpdir/dump > tmpdir/dump.out 2>dump.tmp}  /dev/null  (timeout = 300)
spawn [open ...]
regexp_diff match failure
regexp "^000101c4  00000116 R_ARM_JUMP_SLOT   00000000   foo$"
line   "000101cc  00000116 R_ARM_JUMP_SLOT   00000000   foo"
regexp_diff match failure
regexp "^  0x000101b8 40010100 00000000 00000000 11010000 @...............$"
line   "  0x000101c0 40010100 00000000 00000000 11010000 @..............."
FAIL: Thumb only PLT and GOT LSB Symbol
[...]


More information about the Binutils mailing list