binutils Newspaper
JULY 29, 2026
bfd/elf Proposed

bfd/ELF: fold BFD_RELOC_<arch>_GOTOFF*

Fixes build breakage in frv and lm32 opcode files for binutils.

This patch addresses build breakage in the ‘frv’ and ‘lm32’ opcode files that resulted from a previous commit (705b90feb82c). The issue occurred when generated files in ‘opcodes/’ were re-generated. The fix involves updating relocation constants to standardize them. The changes are being applied to the 2.47 branch.

In Details

Corrects issues in opcodes/frv.opc and opcodes/lm32.opc where specific BFD_RELOC_FRV_GOTOFF* and BFD_RELOC_LM32_GOTOFF_* constants were not folded into the generic BFD_RELOC_LO16_GOTOFF and BFD_RELOC_HI16_GOTOFF constants as intended by commit 705b90feb82c. This prevented correct regeneration of opcode files, leading to build failures. This patch is backported to the 2.47 branch.

For Context
bfd/ELF
Refers to the integration between the Binary File Descriptor (BFD) library and the Executable and Linkable Format (ELF) object file format within binutils.
BFD_RELOC_<arch>_GOTOFF*
Relocation types used by the BFD library to access Global Offset Table (GOT) entries, specific to different architectures and addressing modes (e.g., GOTOFFLO, GOTOFFHI).
fold
In this context, 'fold' means to consolidate or merge multiple similar relocation types into a more generic set.
opcodes/
A directory within binutils that contains files defining instruction sets for various architectures, used for generating assembler and disassembler code.
2.47 branch
A development branch for the upcoming version 2.47 of binutils, typically used for bug fixes and release preparations.
Filed Under: binutilsbfdelfrelocationbuildfix