Landing: 92529f776514
Project / Subsystem
binutils / gas/bpf
Date
2026-09-10
Author
Vineet Gupta <vineetg@sourceware.org>
Commit
92529f776514b54b109021bbd4cde8471dd5ab14
Source
public_inbox
Perf win
No
Breaking
No
All attributes
- project
- binutils
- subsystem
- gas/bpf
- patch_id
- —
- commit_hash
- 92529f776514b54b109021bbd4cde8471dd5ab14
- source_type
- public_inbox
- headline
- PR 34558: BPF assembler fixes `gotol` misassembly with signed offsets
- tldr
- BPF assembler now correctly assembles `gotol` with signed offsets, preventing silent misassembly into an unconditional jump.
- author
- Vineet Gupta <vineetg@sourceware.org>
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • bpf
- • assembler
- • relocation
- • bugfix
- discussion_id_link
- public_inbox:binutils#34558
- bugzilla_pr
- —
- date
- 2026-09-10T00:00:00.000Z
This commit resolves a bug in the BPF assembler (PR 34558) where gotol instructions with signed offsets were silently misassembled. Due to the order of unconditional jump mnemonics in the opcode table, gotol +1 was incorrectly parsed as goto l +1, resulting in the JA opcode with a 16-bit offset and an invalid relocation instead of the intended JAL opcode with a 32-bit immediate. The fix modifies the assembler’s template matching to correctly distinguish gotol from goto, especially with signed offsets.