Landing: 6095ea2efce1

Project / Subsystem

binutils / aarch64

Date

2026-05-15

Author

Alice Carlotti <acarlotti@sourceware.org>

Commit

6095ea2efce173ec8d91e2452485f63a6ba78abe

Source

public_inbox

Perf win

No

Breaking

No

All attributes

project
binutils
subsystem
aarch64
patch_id
commit_hash
6095ea2efce173ec8d91e2452485f63a6ba78abe
source_type
public_inbox
headline
AArch64: Fix ldst_lo12_determine_real_reloc_type
tldr
The AArch64 assembler now correctly handles invalid operand qualifiers when determining relocation types for load/store instructions.
author
Alice Carlotti <acarlotti@sourceware.org>
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • aarch64
  • assembler
  • relocation
discussion_id_link
bugzilla_pr
date
2026-05-15T00:00:00.000Z

This commit fixes a bug in ldst_lo12_determine_real_reloc_type that caused an assertion failure when using X registers in byte or half instructions with invalid operand qualifiers. The fix adds fallback handling for an invalid choice of opd0_qlf and simplifies the code by inlining parts of aarch64_get_expected_qualifer and deducing the array index directly from the qualifier enum values. As a result, aarch64_get_expected_qualifier is now unused and has been removed.