binutils Newspaper
JULY 29, 2026
binutils Proposed

Add FDPIC support for Renesas RX

Enables binutils to generate FDPIC binaries for the Renesas RX architecture, confirmed to work with BusyBox.

Yoshinori Sato is proposing a set of patches to enable binutils support for generating FDPIC (Far Data PIC) binaries on the Renesas RX architecture. The changes span BFD, gas, and ld, introducing necessary FDPIC relocation types and target-specific configurations. Sato has successfully used a toolchain built with these patches to compile and run BusyBox on an RX62N board, confirming the functionality. This version (v3) includes fixes for a segmentation fault in ld and incorrect offset calculations for GOTFUNCDESC.

In the Thread 1 participant
  1. Yoshinori Sato <yoshinori.sato@nifty.com> proposer

    Submits a series of patches to add FDPIC support for the Renesas RX architecture to binutils.

    “This set of patches enables binutils to generate FDPIC binaries for the RX architecture. I have confirmed that BusyBox built with this toolchain runs successfully on an RX62N evaluation board.”

In Details

This RFC series introduces support for Fully Dynamic Position Independent Code (FDPIC) for the Renesas RX architecture in GNU binutils. FDPIC is a type of PIC that allows for dynamic linking and position independence even when code and data sections are far apart. The patches modify BFD to handle FDPIC relocations, gas to support FDPIC target options and directives, and ld to properly link FDPIC objects. The successful BusyBox execution on an RX62N board validates the implementation.

For Context
FDPIC
Fully Dynamic Position Independent Code. A type of code that can be loaded and executed at any memory address, with dynamic linking capabilities.
Renesas RX
A family of 32-bit microcontrollers from Renesas Electronics.
binutils
A collection of programming tools for manipulating binary files, including the assembler (gas), linker (ld), and disassembler (objdump).
PIC
Position Independent Code. Code that can be loaded and executed at any memory address without modification.
BusyBox
A software utility that combines tiny versions of many common Unix utilities into a single small executable. Often used in embedded systems.
GOTFUNCDESC
Global Offset Table Function Descriptor. Likely a structure used in FDPIC linking to resolve function addresses.
Filed Under: binutilsrxfdpiclinkerembedded