[PATCH v1 0/1] Add relocation optimization

Sivan Shani <[email protected]>
Newsgroups gmane.comp.gnu.binutils
Message-ID <[email protected]>
Main change from first version: the optimizations are now disabled for input
relocations and linker generated stubs when '--no-relax' is used.

Sivan Shani (1):
  AArch64: Optimize ADD relocations that resolve to zero

 bfd/elfnn-aarch64.c                           | 33 ++++++++++-----
 bfd/elfxx-aarch64.c                           | 40 +++++++++++++++----
 bfd/elfxx-aarch64.h                           |  2 +-
 ld/testsuite/ld-aarch64/aarch64-elf.exp       |  6 +++
 .../ld-aarch64/add-imm-zero-opt-norelax.d     | 22 ++++++++++
 .../ld-aarch64/add-imm-zero-opt-tlsdesc.d     | 16 ++++++++
 .../ld-aarch64/add-imm-zero-opt-tlsdesc.s     | 16 ++++++++
 .../ld-aarch64/add-imm-zero-opt-tlsgd.d       | 15 +++++++
 .../ld-aarch64/add-imm-zero-opt-tlsgd.s       | 16 ++++++++
 .../ld-aarch64/add-imm-zero-opt-tlsld.d       | 15 +++++++
 .../ld-aarch64/add-imm-zero-opt-tlsld.s       | 15 +++++++
 ld/testsuite/ld-aarch64/add-imm-zero-opt.d    | 22 ++++++++++
 ld/testsuite/ld-aarch64/add-imm-zero-opt.ld   | 16 ++++++++
 ld/testsuite/ld-aarch64/add-imm-zero-opt.s    | 34 ++++++++++++++++
 ld/testsuite/ld-aarch64/erratum843419.d       |  4 +-
 .../ld-aarch64/erratum843419_tls_ie.d         |  2 +-
 ld/testsuite/ld-aarch64/farcall-b-defsym.d    |  2 +-
 .../ld-aarch64/farcall-b-none-function.d      |  2 +-
 ld/testsuite/ld-aarch64/farcall-b-section.d   |  2 +-
 ld/testsuite/ld-aarch64/farcall-b.d           |  2 +-
 ld/testsuite/ld-aarch64/farcall-back-be.d     |  2 +-
 ld/testsuite/ld-aarch64/farcall-back.d        |  2 +-
 ld/testsuite/ld-aarch64/farcall-bl-defsym.d   |  2 +-
 .../ld-aarch64/farcall-bl-none-function.d     |  2 +-
 ld/testsuite/ld-aarch64/farcall-bl-section.d  |  2 +-
 ld/testsuite/ld-aarch64/farcall-bl.d          |  2 +-
 .../non-contiguous-mem/non-contiguous-ok-2.d  |  2 +-
 .../non-contiguous-mem/non-contiguous-ok-4.d  |  2 +-
 .../non-contiguous-mem/non-contiguous-ok-5.d  |  2 +-
 .../ld-aarch64/tls-relax-ld-le-small-ilp32.d  |  4 +-
 .../ld-aarch64/tls-relax-ld-le-small.d        |  4 +-
 .../ld-aarch64/tls-relax-ld-le-tiny-ilp32.d   |  4 +-
 .../ld-aarch64/tls-relax-ld-le-tiny.d         |  4 +-
 .../ld-aarch64/tls-tiny-gd-le-ilp32.d         |  2 +-
 ld/testsuite/ld-aarch64/tls-tiny-gd-le.d      |  2 +-
 ld/testsuite/ld-aarch64/tlsle-add-hi12-opt.d  | 14 +++++++
 ld/testsuite/ld-aarch64/tlsle-add-hi12-opt.s  | 13 ++++++
 ld/testsuite/ld-aarch64/weak-undefined.d      |  2 +-
 38 files changed, 303 insertions(+), 46 deletions(-)
 create mode 100644 ld/testsuite/ld-aarch64/add-imm-zero-opt-norelax.d
 create mode 100644 ld/testsuite/ld-aarch64/add-imm-zero-opt-tlsdesc.d
 create mode 100644 ld/testsuite/ld-aarch64/add-imm-zero-opt-tlsdesc.s
 create mode 100644 ld/testsuite/ld-aarch64/add-imm-zero-opt-tlsgd.d
 create mode 100644 ld/testsuite/ld-aarch64/add-imm-zero-opt-tlsgd.s
 create mode 100644 ld/testsuite/ld-aarch64/add-imm-zero-opt-tlsld.d
 create mode 100644 ld/testsuite/ld-aarch64/add-imm-zero-opt-tlsld.s
 create mode 100644 ld/testsuite/ld-aarch64/add-imm-zero-opt.d
 create mode 100644 ld/testsuite/ld-aarch64/add-imm-zero-opt.ld
 create mode 100644 ld/testsuite/ld-aarch64/add-imm-zero-opt.s
 create mode 100644 ld/testsuite/ld-aarch64/tlsle-add-hi12-opt.d
 create mode 100644 ld/testsuite/ld-aarch64/tlsle-add-hi12-opt.s

-- 
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.