Landing: b2e68bf063e5

Project / Subsystem

binutils / bfd/dwarf2

Date

2026-09-17

Author

Alan Modra <amodra@sourceware.org>

Commit

b2e68bf063e595a12329dc7aba0393621e6591f3

Source

public_inbox

Perf win

No

Breaking

No

All attributes

project
binutils
subsystem
bfd/dwarf2
patch_id
—
commit_hash
b2e68bf063e595a12329dc7aba0393621e6591f3
source_type
public_inbox
headline
bfd/dwarf2: break equal-range function ties by DIE offset
tldr
Improves addr2line's accuracy by using DIE offset to break ties in function ranges.
author
Alan Modra <amodra@sourceware.org>
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • binutils
  • • dwarf
  • • addr2line
  • • debugging
discussion_id_link
—
bugzilla_pr
—
date
2026-09-17T00:00:00.000Z

This commit modifies how addr2line breaks ties when multiple functions have the same source code range. Previously, it used the memory address of the function’s struct funcinfo, which could vary due to allocator behavior. Now, it uses the DIE offset, which is stable and deterministically indicates the innermost function, resolving inconsistencies in addr2line output for inlined subroutines.