binutils-gdb/ld/testsuite/ld-s390
Andreas Krebbel e6213e09ed S/390: Prevent GOT access rewrite for certain symbols
When dereferencing a GOT slot with lgrl or lg we rewrite this using
larl to get rid of the extra memory access.  However, we cannot do
this for:

- symbols marked for absolute addressing
- symbols at odd addresses (larl can handle only even addresses)

Fixed with the attached patch.

bfd/ChangeLog:

2018-09-17  Andreas Krebbel  <krebbel@linux.ibm.com>

	* elf64-s390.c (elf_s390_relocate_section): Prevent rewriting of
	GOT accesses with larl for ABS or misaligned symbols.

ld/ChangeLog:

2018-09-17  Andreas Krebbel  <krebbel@linux.ibm.com>

	* testsuite/ld-s390/gotreloc-1.s: Add tests for ABS and misaligned
	symbol. Move variables into data section. Make bar 8 bytes wide.
	* testsuite/ld-s390/gotreloc-1.ver: Make misaligned_sym resolve locally.
	* testsuite/ld-s390/gotreloc_31-1.dd: Adjust patterns.
	* testsuite/ld-s390/gotreloc_64-norelro-1.dd: Likewise.
	* testsuite/ld-s390/gotreloc_64-relro-1.dd: Likewise.
2018-09-17 11:01:24 +02:00
..
gotreloc_31-1.dd S/390: Prevent GOT access rewrite for certain symbols 2018-09-17 11:01:24 +02:00
gotreloc_64-norelro-1.dd S/390: Prevent GOT access rewrite for certain symbols 2018-09-17 11:01:24 +02:00
gotreloc_64-relro-1.dd S/390: Prevent GOT access rewrite for certain symbols 2018-09-17 11:01:24 +02:00
gotreloc-1.s S/390: Prevent GOT access rewrite for certain symbols 2018-09-17 11:01:24 +02:00
gotreloc-1.ver S/390: Prevent GOT access rewrite for certain symbols 2018-09-17 11:01:24 +02:00
pltoffset-1.dd Fix PLT first entry GOT operand calculation. 2016-06-07 16:47:10 +02:00
pltoffset-1.ld Fix PLT first entry GOT operand calculation. 2016-06-07 16:47:10 +02:00
pltoffset-1.s Fix PLT first entry GOT operand calculation. 2016-06-07 16:47:10 +02:00
s390.exp S/390: Improve partial relro support for 64 bit 2018-07-18 13:20:06 +02:00
tlsbin_64.dd Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
tlsbin_64.rd Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
tlsbin_64.s
tlsbin_64.sd
tlsbin_64.td
tlsbin.dd Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
tlsbin.rd Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
tlsbin.s
tlsbin.sd
tlsbin.td
tlsbinpic_64.s
tlsbinpic.s
tlslib_64.s
tlslib.s
tlspic1_64.s Fix spelling in comments in Assembler files (ld) 2016-11-27 15:07:26 +10:30
tlspic1.s Fix spelling in comments in Assembler files (ld) 2016-11-27 15:07:26 +10:30
tlspic2_64.s
tlspic2.s
tlspic_64.dd Enhance objdump so that it will use .got, .plt and .plt.got section symbols when disassembling, and it will use dynamic relocs to interpret entries in the PLT and GOT. 2016-10-11 13:50:10 +01:00
tlspic_64.rd Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
tlspic_64.sd
tlspic_64.td
tlspic.dd
tlspic.rd Define various symbols conditionally in shared libraries 2018-06-08 20:17:34 +09:30
tlspic.sd
tlspic.td