[PATCH 00/15] s390: linker fixes and cleanups

Jens Remus jremus@linux.ibm.com
Fri Nov 7 16:34:43 GMT 2025


The whole patch series is the result of inspecting the differences
comparing elf32-s390.c and elf64-s390.c.

Patches 1 and 2 fix minor discrepancies in the s390 64-bit linker.

Patch 3 fixes a TLS IE to LE transition optimization glitch in the
s390 64-bit linker.

Patch 4 is a collection of fixes and cleanups to the linker TLS tests
on s390, that I noticed while working on patch 3.

Patch 5 is an enhancement of comments related to TLS, that I noticed
while working on patch 4.

Patches 6 - 10 are align formatting and sync minor cleanups with
the intent to reduce the number of differences.

Patches 11 and 12 align minor code enhancements with the same intent.

Patch 13 aligns the order of relocations in conditions with the same
intent.

Patches 14 and 15 simplify the code (readability).  The latter also
reduces the number of differences.

I recognize that patches 6 - 10 and 13 do only align formatting, which
may be undesirable, as it makes browsing the Git history and backporting
patches harder.  I do see value in them, as they simplify keeping s390
32-bit and 64-bit in sync where appropriate.  The first three patches
are examples of the benefit of keeping the number of unimportant
differences low.

Regards,
Jens

Jens Remus (15):
  s390: Increment PC-relative relocation count for PC24DBL relocs
  s390: Check sreldynrelro in elf_s390_finish_dynamic_symbol
  s390: Do not emit orphaned GOT entry for TLS IE to LE transition
  s390: Linker TLS test fixes and cleanups
  s390: Mention GOTIE20 relocation in TLS related comment
  s390: Sync whitespace formatting between {elf32|elf64}-s390.c
  s390: Sync formatting between {elf32|elf64}-s390.c
  s390: Sync line continuation formatting between {elf32|elf64}-s390.c
  s390: Sync minor cleanups between {elf32|elf64}-s390.c
  s390: Sync local variable name between {elf32|elf64}-s390.c
  s390: Sync htab checks between {elf32|elf64}-s390.c
  s390: Sync relocation error message between {elf32|elf64}-s390.c
  s390: Sync relocation order between {elf32|elf64}-s390.c
  s390: Use elf_append_rela helper
  s390: Use RELA_ENTRY_SIZE instead of sizeof (Elf{32|64}_External_Rela)

 bfd/elf32-s390.c                    | 185 ++++++++++++++--------------
 bfd/elf64-s390.c                    | 182 +++++++++++++--------------
 ld/testsuite/ld-s390/s390.exp       |   4 +-
 ld/testsuite/ld-s390/tlsbin.dd      |  42 +++----
 ld/testsuite/ld-s390/tlsbin.s       |  26 ++--
 ld/testsuite/ld-s390/tlsbin_64.dd   |  63 +++++-----
 ld/testsuite/ld-s390/tlsbin_64.s    |  28 ++---
 ld/testsuite/ld-s390/tlsbin_64.sd   |   4 +-
 ld/testsuite/ld-s390/tlsbinpic.s    |  21 ++--
 ld/testsuite/ld-s390/tlsbinpic_64.s |  29 +++--
 ld/testsuite/ld-s390/tlslib.s       |   2 +-
 ld/testsuite/ld-s390/tlslib_64.s    |   2 +-
 ld/testsuite/ld-s390/tlspic.dd      |  14 +--
 ld/testsuite/ld-s390/tlspic1.s      |  25 ++--
 ld/testsuite/ld-s390/tlspic1_64.s   |  27 ++--
 ld/testsuite/ld-s390/tlspic_64.dd   |  16 +--
 16 files changed, 323 insertions(+), 347 deletions(-)

-- 
2.48.1



More information about the Binutils mailing list