Landing: b78a07c177fe
Project / Subsystem
gcc / gcc
Date
2026-05-11
Author
Naveen
Commit
b78a07c177fe268c00787e2e0859c95b2f42a7b9
Source
github
Perf win
Yes
Breaking
No
All attributes
- project
- gcc
- subsystem
- gcc
- patch_id
- —
- commit_hash
- b78a07c177fe268c00787e2e0859c95b2f42a7b9
- source_type
- github
- headline
- AArch64: Use fmov for some low-lane FP SIMD constant vectors.
- tldr
- This commit extends AArch64's AdvSIMD constant materialization to use `fmov` for vectors with a single low-element FP constant, improving code generation.
- author
- Naveen
- outcome
- committed
- performance_win
- true
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • aarch64
- • simd
- • optimization
- • code generation
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-05-11T00:00:00.000Z
This commit extends the AArch64 backend to use the fmov instruction for materializing floating-point SIMD constant vectors where only the lowest element is a representable floating-point constant and all other elements are zero. This optimization avoids the need for more complex instructions like VDUP, leading to more efficient code generation for certain SIMD operations. The new Dc constraint is added to handle the new instruction selection.