Landing: 19fbd361c496

Project / Subsystem

gcc / x86

Date

2026-08-25

Author

Matthias Kretz

Commit

19fbd361c496ffc75cb20e9245031a506d4f0d9a

Source

github

Perf win

Yes

Breaking

No

All attributes

project
gcc
subsystem
x86
patch_id
—
commit_hash
19fbd361c496ffc75cb20e9245031a506d4f0d9a
source_type
github
headline
Vectorize floor/ceil/trunc also with trapping-math
tldr
Enabled vectorization of floor, ceil, and trunc operations even when trapping-math is enabled.
author
Matthias Kretz
outcome
committed
performance_win
true
breaking_change
false
series_id
—
series_parts
[]
tags
  • • x86
  • • vectorization
  • • floating-point
discussion_id_link
—
bugzilla_pr
—
date
2026-08-25T00:00:00.000Z

Previously, vectorized floor, ceil, and trunc instructions on x86 were disabled when the flag_trapping_math option was active. This commit removes that restriction, allowing the use of packed vector instructions (e.g., vroundps) which are compliant with ISO 60559 standards regarding exceptions for NaN inputs. The scalar ‘round’ function still requires flag_trapping_math to be disabled due to its use of a floating-point add operation.