[PATCH 1/4] RX: bfd rx-linux FDPIC support
Fangrui Song
i@maskray.me
Wed Aug 20 17:18:05 GMT 2025
On Tue, Aug 19, 2025 at 7:07 AM Yoshinori Sato <yoshinori.sato@nifty.com> wrote:
>
> * bfd-in2.h: Regenerated.
> * elf-bfd.h (elf_target_id): Add RX_ELF_DATA.
> * elf32-rx.c (rx_get_reloc): Add const.
> (rx_elf_howto_table): DIR24S and DIR24S_PCREL have 3byte value.
> Add FDPIC relocation type.
> (rx_reloc_map): Add FDPIC relocation type.
> (elf_rx_link_hash_table): New.
> (rx_elf_hash_table): New.
> (elf_rx_link_hash_entry): New.
> (rx_elf_hash_entry): New.
> (rx_elf_obj_tdata): New.
> (rx_elf_local_got_type): New.
> (rx_elf_local_funcdesc): New.
> (SYMBOL_FUNCDESC_LOCAL): New.
> (rx_reloc_type_lookup): Set error in invalid code.
> (rx_elf_relocate_section): Add FDPIC relocation.
> (rx_set_section_contents): remove unused 'i'.
> (rx_elf_reloc_type_class): New.
> (fdpic_elf_rx_plt_entry): New.
> (elf_rx_pcrel_relocs_copied): New.
> (is_rx_elf): New.
> (fdpic_object_p): New.
> (rx_elf_mkobject): New.
> (install_plt_field): New.
> (+rx_elf_link_hash_newfunc): New.
> (rx_elf_link_hash_table_create): New.
> (rx_elf_omit_section_dynsym): New.
> (create_got_section): New.
> (rx_elf_create_dynamic_sections): New.
> (rx_elf_adjust_dynamic_symbol): New.
> (allocate_dynrelocs): New.
> (rx_elf_early_size_sections): New.
> (rx_elf_late_size_sections): New.
> (rx_elf_add_dyn_reloc): New.
> (rx_elf_add_rofixup): New.
> (rx_elf_osec_to_segment): New.
> (rx_elf_osec_readonly_p): New.
> (rx_elf_initialize_funcdesc): New.
> (rx_elf_finish_dynamic_symbol): New.
> (rx_elf_finish_dynamic_sections): New.
> (rx_elf_copy_indirect_symbol): New.
> (rx_elf_check_relocs): New.
> * libbfd.h (bfd_reloc_code_real_names): Add RX FDPIC relocation.
> * reloc.c: Likewise.
>
> Signed-off-by: Yoshinori Sato <yoshinori.sato@nifty.com>
> [...]
Hi, is an ABI document available for rx (is it
https://www.renesas.com/en/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcus/rx-features
?)
---
My notes on FDPIC ABIs:
* [Fujitsu FR-V](https://en.wikipedia.org/wiki/FR-V_(microprocessor)):
[_The FR-V FDPIC
ABI_](https://www.fsfla.org/~lxoliva/writeups/FR-V/FDPIC-ABI.txt),
initial version in 2004
* [ADI Blackfin](https://en.wikipedia.org/wiki/Blackfin): _Blackfin FDPIC ABI_
* [SuperH](https://en.wikipedia.org/wiki/SuperH): [_The SH FDPIC
ABI_](https://sourcery.sw.siemens.com/public/docs/sh-fdpic/sh-fdpic-abi.txt),
initial version in 2008
* [_ARM FDPIC ABI_](https://github.com/mickael-guene/fdpic_doc),
initial version in 2013. _ARM FDPIC Toolchain and ABI_ provides a good
summary.
* Xtensa FDPIC draft in 2024:
https://inbox.sourceware.org/binutils/20240513170021.2837351-1-jcmvbkbc@gmail.com/
More information about the Binutils
mailing list