binutils-gdb/ld/testsuite/ld-x86-64/pr23854.s
H.J. Lu e60f4d3bda x86: Disable GOT relaxation with data prefix
Since linker GOT relaxation isn't valid for 16-bit GOT access, we should
disable GOT relaxation with data prefix.

gas/

	PR gas/r23854
	* config/tc-i386.c (output_disp): Disable GOT relaxation with
	data prefix.
	* testsuite/gas/i386/mixed-mode-reloc32.d: Updated.

ld/

	PR gas/r23854
	* testsuite/ld-i386/i386.exp: Run pr23854.
	* testsuite/ld-x86-64/x86-64.exp: Likewwise.
	* testsuite/ld-i386/pr23854.d: New file.
	* testsuite/ld-i386/pr23854.s: Likewwise.
	* testsuite/ld-i386/pr23854.d: Likewwise.
	* testsuite/ld-x86-64/pr23854.d: Likewwise.
	* testsuite/ld-x86-64/pr23854.s: Likewwise.
2018-11-05 09:01:43 -08:00

34 lines
744 B
ArmAsm

.data
.type bar, @object
bar:
.byte 1
.size bar, .-bar
.globl foo
.type foo, @object
foo:
.byte 1
.size foo, .-foo
.text
.globl _start
.type _start, @function
_start:
adcw bar@GOTPCREL(%rip), %ax
addw bar@GOTPCREL(%rip), %bx
andw bar@GOTPCREL(%rip), %cx
cmpw bar@GOTPCREL(%rip), %dx
orw bar@GOTPCREL(%rip), %di
sbbw bar@GOTPCREL(%rip), %si
subw bar@GOTPCREL(%rip), %bp
xorw bar@GOTPCREL(%rip), %r8w
testw %cx, bar@GOTPCREL(%rip)
adcw foo@GOTPCREL(%rip), %ax
addw foo@GOTPCREL(%rip), %bx
andw foo@GOTPCREL(%rip), %cx
cmpw foo@GOTPCREL(%rip), %dx
orw foo@GOTPCREL(%rip), %di
sbbw foo@GOTPCREL(%rip), %si
subw foo@GOTPCREL(%rip), %bp
xorw foo@GOTPCREL(%rip), %r8w
testw %cx, foo@GOTPCREL(%rip)
.size _start, .-_start