Landing: b3474d5cddda
Project / Subsystem
gcc / aarch64
Date
2026-09-02
Author
Alfie Richards
Commit
b3474d5cddda183dcd8d8a2745fba02578816055
Source
github
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- aarch64
- patch_id
- —
- commit_hash
- b3474d5cddda183dcd8d8a2745fba02578816055
- source_type
- github
- headline
- aarch64: Fix invalid CSE on read FFRs in SVE builtins.
- tldr
- Corrected how FFR values are updated in AArch64 SVE builtins to prevent incorrect Common Subexpression Elimination.
- author
- Alfie Richards
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • aarch64
- • sve
- • compiler
- • optimization
- discussion_id_link
- github:gcc-mirror/gcc#126629
- bugzilla_pr
- —
- date
- 2026-09-02T00:00:00.000Z
This fix addresses an issue in AArch64 SVE builtins where the FFR (First Fault Register) update was not correctly dependent on the loaded value, leading to invalid Common Subexpression Elimination (CSE). The changes modify the expand methods for svldff1_gather_impl, svldff1_gather_extend, svldxf1_impl, and svldxf1_extend_impl, and update the aarch64_update_ffr_for_load pattern in aarch64-sve.md to ensure the FFR update is based on the actual loaded data, thus fixing the PR126629.