about summary refs log tree commit diff
path: root/tests/codegen/patchable-function-entry/patchable-function-entry-no-flag.rs
diff options
context:
space:
mode:
authorTrevor Gross <tmgross@umich.edu>2025-02-06 00:34:56 +0000
committerTrevor Gross <tmgross@umich.edu>2025-02-06 02:03:19 +0000
commit23989245ce549411b9d80323b89c9eb48fff53ec (patch)
tree38b2a95a7ef6e44ca51f848d1f68829a0669f345 /tests/codegen/patchable-function-entry/patchable-function-entry-no-flag.rs
parent3fbe59f8503fb5eb151bc995ba2c1ebad80dcbb5 (diff)
downloadrust-23989245ce549411b9d80323b89c9eb48fff53ec.tar.gz
rust-23989245ce549411b9d80323b89c9eb48fff53ec.zip
fma: Ensure zero has the correct sign
Currently, `fma(tiny, -tiny, 0.0)` returns 0.0 while the answer should
be -0.0. This is because `-0.0 + 0.0 = +0.0` in the default rounding
mode; however, the result should be negative. Musl has the same pattern
but that version worked because the C compiler was contracting `x*y + z`
to (ironically) `fmadd`.

Musl was fixed in 9683bd6241 ("math: fix fma(x,y,0) when x*y rounds to
-0"). Add the same fix here, which allows dropping the xfails.
Diffstat (limited to 'tests/codegen/patchable-function-entry/patchable-function-entry-no-flag.rs')
0 files changed, 0 insertions, 0 deletions