]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
x86: Add -z isa-level-report=[none|all|needed|used]
authorH.J. Lu <hjl.tools@gmail.com>
Wed, 12 Jun 2024 03:55:05 +0000 (20:55 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 14 Jun 2024 20:38:19 +0000 (13:38 -0700)
commit93548ee191ff95cae0592363b579c6addb0b151d
treeb8c1a0fdb54efbfe148ee1af30c78c1137adf416
parent65e513dc95dcad1320c6bee4be1a10ed46f7d2cb
x86: Add -z isa-level-report=[none|all|needed|used]

Add -z isa-level-report=[none|all|needed|used] to the x86 ELF linker to
report needed and used x86-64 ISA levels.

bfd/

PR ld/31868
* elf-linker-x86.h (elf_x86_isa_level_report): New.
(elf_linker_x86_params): Add isa_level_report.
* elfxx-x86.c (report_isa_level): New.
(_bfd_x86_elf_link_setup_gnu_properties): Check
-z isa-level-report=[none|all|needed|used] to report needed and
used x86-64 ISA level.

ld/

PR ld/31868
* NEWS: Mention -z isa-level-report=[none|all|needed|used].
* ld.texi: Document -z isa-level-report=[none|all|needed|used].
* emulparams/elf32_x86_64.sh: Source x86-64-level-report.sh.
* emulparams/elf_i386.sh: Likewise.
* emulparams/elf_x86_64.sh: Likewise.
* emulparams/x86-64-level-report.sh: New file.
* testsuite/ld-i386/pr31868a.d: Likewise.
* testsuite/ld-i386/pr31868b.d: Likewise.
* testsuite/ld-i386/pr31868c.d: Likewise.
* testsuite/ld-x86-64/pr31868a-x32.d: Likewise.
* testsuite/ld-x86-64/pr31868a.d: Likewise.
* testsuite/ld-x86-64/pr31868a.l: Likewise.
* testsuite/ld-x86-64/pr31868a.s: Likewise.
* testsuite/ld-x86-64/pr31868b-x32.d: Likewise.
* testsuite/ld-x86-64/pr31868b.d: Likewise.
* testsuite/ld-x86-64/pr31868b.l: Likewise.
* testsuite/ld-x86-64/pr31868b.s: Likewise.
* testsuite/ld-x86-64/pr31868c-x32.d: Likewise.
* testsuite/ld-x86-64/pr31868c.d: Likewise.
* testsuite/ld-x86-64/pr31868c.l: Likewise.
* testsuite/ld-i386/i386.exp: Run PR ld/31868 tests.
* testsuite/ld-x86-64/x86-64.exp: Likewise.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
24 files changed:
bfd/elf-linker-x86.h
bfd/elfxx-x86.c
ld/NEWS
ld/emulparams/elf32_x86_64.sh
ld/emulparams/elf_i386.sh
ld/emulparams/elf_x86_64.sh
ld/emulparams/x86-64-level-report.sh [new file with mode: 0644]
ld/ld.texi
ld/testsuite/ld-i386/i386.exp
ld/testsuite/ld-i386/pr31868a.d [new file with mode: 0644]
ld/testsuite/ld-i386/pr31868b.d [new file with mode: 0644]
ld/testsuite/ld-i386/pr31868c.d [new file with mode: 0644]
ld/testsuite/ld-x86-64/pr31868a-x32.d [new file with mode: 0644]
ld/testsuite/ld-x86-64/pr31868a.d [new file with mode: 0644]
ld/testsuite/ld-x86-64/pr31868a.l [new file with mode: 0644]
ld/testsuite/ld-x86-64/pr31868a.s [new file with mode: 0644]
ld/testsuite/ld-x86-64/pr31868b-x32.d [new file with mode: 0644]
ld/testsuite/ld-x86-64/pr31868b.d [new file with mode: 0644]
ld/testsuite/ld-x86-64/pr31868b.l [new file with mode: 0644]
ld/testsuite/ld-x86-64/pr31868b.s [new file with mode: 0644]
ld/testsuite/ld-x86-64/pr31868c-x32.d [new file with mode: 0644]
ld/testsuite/ld-x86-64/pr31868c.d [new file with mode: 0644]
ld/testsuite/ld-x86-64/pr31868c.l [new file with mode: 0644]
ld/testsuite/ld-x86-64/x86-64.exp