Landing: e8fb8ba77cf7
Project / Subsystem
gcc / aarch64
Date
2026-09-21
Author
Matt Turner
Commit
e8fb8ba77cf7a1688a063690fad27fb584c77b38
Source
github
Perf win
Yes
Breaking
No
All attributes
- project
- gcc
- subsystem
- aarch64
- patch_id
- —
- commit_hash
- e8fb8ba77cf7a1688a063690fad27fb584c77b38
- source_type
- github
- headline
- AArch64: Add isnormal expander [PR 66462]
- tldr
- AArch64 now has an optimized expander for `__builtin_isnormal` that avoids exceptions and is faster.
- author
- Matt Turner
- outcome
- committed
- performance_win
- true
- breaking_change
- false
- series_id
- gcc:aarch64: add isnormal expander [pr 66462]
- series_parts
- []
- tags
-
- • aarch64
- • builtins
- • optimization
- discussion_id_link
- github:gcc-mirror/gcc#66462
- bugzilla_pr
- —
- date
- 2026-09-21T00:00:00.000Z
An optimized expander for __builtin_isnormal has been added to the AArch64 backend, supporting float, _Float16, and __bf16 types. This new implementation uses integer arithmetic instead of floating-point comparisons, which can be faster and crucially avoids generating spurious exceptions on signaling NaNs. This change addresses a part of PR66462 by improving the robustness and performance of the isnormal intrinsic.