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.