Landing: 9c8aa6038770
Project / Subsystem
gcc / aarch64
Date
2026-08-11
Author
Kyrylo Tkachov
Commit
9c8aa60387702aedd5fd619064c16609b40fa476
Source
github
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- aarch64
- patch_id
- —
- commit_hash
- 9c8aa60387702aedd5fd619064c16609b40fa476
- source_type
- github
- headline
- aarch64: Prevent trapping FP comparisons from becoming conditional.
- tldr
- Ensures floating-point comparisons that can trap (e.g., with NaNs) remain unconditional on AArch64.
- author
- Kyrylo Tkachov
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • aarch64
- • floating-point
- • exceptions
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-08-11T00:00:00.000Z
On AArch64, conditional floating-point comparisons can mask exceptions, such as those raised by quiet NaNs. This commit modifies the code generation to prevent such trapping comparisons from becoming conditional, preserving the expected exception behavior. It ensures that operations like (a < b) & (c < d) correctly raise exceptions if c or d is a quiet NaN when a < b is false. New tests are added to verify this behavior.