- Sources: primary, discussion
- Summary: The post is dated 2026-08-20 and reports two of the defects it describes already fixed, with the Rust standard library patch awaiting review and the musl fix not merged. Sergey Davidoff reports that Rust's
f32::mul_add software fallback and std::simd mishandle rounding for subnormal values, that musl's fmaf carries the same check ignoring subnormals, and that musl credits the code to FreeBSD with copyright years 2005 to 2011, so he states it may have been copied further without knowing where. The path runs only on hardware without FMA, which he ties to about 15 percent of machines in the Firefox hardware survey lacking AVX2, plus 32-bit ARM and embedded targets, and he states the error is one least significant bit, that he does not know whether it matters, and that deterministic simulations across different machines would diverge. - Why it matters: The post publishes the input bit patterns a=0x97000800, b=0x1cfff001, c=0x00010002 and states that
fmaf must return 0x00010001 rather than the buggy 0x00010002, so a reader can run the case against their own toolchain. - Follow-up: Track whether the Rust patch lands and whether musl merges a fix, and whether the FreeBSD-derived code appears in other libcs.
send feedback on this story