Landing: bc2ea90d5d53

Project / Subsystem

binutils / binutils/bfd

Date

2026-07-25

Author

Alan Modra <amodra@sourceware.org>

Commit

bc2ea90d5d53d2f95f5d50979945b3ef9eee39a3

Source

public_inbox

Perf win

No

Breaking

No

All attributes

project
binutils
subsystem
binutils/bfd
patch_id
commit_hash
bc2ea90d5d53d2f95f5d50979945b3ef9eee39a3
source_type
public_inbox
headline
Use COFF r_ignore for handled relocations
tldr
Fixes bugs in COFF relocation handling by using `r_ignore` instead of changing `r_type` for already-processed relocations, preventing incorrect address emissio…
author
Alan Modra <amodra@sourceware.org>
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • binutils
  • bfd
  • coff
  • relocation
  • aarch64
discussion_id_link
bugzilla_pr
date
2026-07-25T00:00:00.000Z

This commit modifies the COFF relocation handling for aarch64, i386, and x86_64 targets to use the r_ignore flag when a backend’s relocate_section function has already handled a relocation. Previously, these relocations might have had their r_type modified, leading to incorrect addresses being emitted for dynamic relocations. Using r_ignore clearly marks these relocations as processed by the backend, resolving this issue.