[PATCH 0/3] ARM with only 32-bit floats do not have fast 64-bit FMA
Joseph Myers
joseph@codesourcery.com
Tue Sep 1 21:16:31 GMT 2020
On Tue, 1 Sep 2020, Keith Packard via Newlib wrote:
> If not, then one of the two versions of fma should be getting compiled
> as they have opposite tests -- newlib/libm/machine/arm/s_fma.c checks
> for '#if HAVE_FAST_FMA' while newlib/libm/common/s_fma.c checks for
> '#if !HAVE_FAST_FMA'.
But note that newlib/libm/common/s_fma.c doesn't actually do anything
useful; it's not a fused operation. Implementing correct fma in software
is highly nontrivial, especially when you want to handle exceptions and
rounding modes correctly (including machine-specific differences in
whether tininess is detected before or after rounding).
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Newlib
mailing list