Fedora 29 provides Binutils version 2.31, which brings many bug fixes and enhancements compared to version 2.30 which was available in Fedora 28.
Notable new features include:
The linker can now put all code and read-only data sections into a separate segment with only
EXECUTEpermissions. All writable data can be placed into a separate segment with
WRITEpermissions. This makes programs larger, but safer. The linker’s behavior can be controlled via a command line option, and the default set by a configure option.
The assembler can generate build notes for any input files which do not contain their own notes. Again this is controlled via a command line option whose default is set by a configure option.
The x86 assembler supports a new
-O[2|s]command-line option to enable alternate, shorter instruction encoding. It also supports a
,noppseudo-op to simplify the insertion of
The AArch64 assembler will now warn a combintation of an instruction and a register name are invalid. The AArch64 disassembler will now also flag inconsistent instruction encodings.
arprogram will now accept an
Omodifier to its command line, which causes the offsets of members within the archive to be displayed alongside the other information.
See the upstream release announcement for full information about this release.