Documentation for a newer release is available. View Latest

GNU Binutils 2.33

Fedora 32 comes with GNU Binutils based on 2.33.1 release. This release brings a lot of bug fixes, improvements to the linker, as well as support for the CTF debug format.

New Features and Bug Fixes:

Assembler

  • Adds support for the Arm Scalable Vector Extension version 2 (SVE2) instructions, the Arm Transactional Memory Extension (TME) instructions and the Armv8.1-M Mainline and M-profile Vector Extension (MVE) instructions.

  • Adds support for the Arm Cortex-A76AE, Cortex-A77 and Cortex-M35P processors and the AArch64 Cortex-A34, Cortex-A65, Cortex-A65AE, Cortex-A76AE, and Cortex-A77 processors.

  • Adds a .float16 directive for both Arm and AArch64 to allow encoding of 16-bit floating point literals.

  • For MIPS, Add -m[no-]fix-loongson3-llsc option to fix (or not) Loongson3 LLSC Errata. Add a --enable-mips-fix-loongson3-llsc=[yes|no] configure time option to set the default behavior. Set the default if the configure option is not used to "no".

Linker

  • The Cortex-A53 Erratum 843419 workaround now supports a choice of which workaround to use. The option --fix-cortex-a53-843419 now takes an optional argument --fix-cortex-a53-843419[=full|adr|adrp] which can be used to force a particular workaround to be used. See --help for AArch64 for more details.

  • Add support for GNU_PROPERTY_AARCH64_FEATURE_1_BTI and GNU_PROPERTY_AARCH64_FEATURE_1_PAC in ELF GNU program properties in the AArch64 ELF linker.

  • Add -z force-bti for AArch64 to enable GNU_PROPERTY_AARCH64_FEATURE_1_BTI on output while warning about missing GNU_PROPERTY_AARCH64_FEATURE_1_BTI on inputs and use PLTs protected with BTI.

  • Add -z pac-plt for AArch64 to pick PAC enabled PLTs.

Utilities

  • Add --source-comment[=<txt>] option to objdump which if present, provides a prefix to source code lines displayed in a disassembly.

  • Add --set-section-alignment <section-name>=<power-of-2-align> option to objcopy to allow the changing of section alignments.

  • Add --verilog-data-width option to objcopy for verilog targets to control width of data elements in verilog hex format.

  • The separate debug info file options of readelf (--debug-dump=links and --debug-dump=follow) and objdump (--dwarf=links and --dwarf=follow-links) will now display and/or follow multiple links if more than one are present in a file. (This usually happens when gcc’s -gsplit-dwarf option is used).

  • Add support for dumping types encoded in the Compact Type Format to objdump and readelf.

See the upstream release announcement for more detailed information about this release.