Message ID | 20180511004345.26708-4-richard.henderson@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | softfloat: Clean up NaN handling | expand |
Richard Henderson <richard.henderson@linaro.org> writes: > We want to be able to specialize on the canonical representation. > > Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> > --- > fpu/softfloat.c | 20 ++++++++++---------- > 1 file changed, 10 insertions(+), 10 deletions(-) > > diff --git a/fpu/softfloat.c b/fpu/softfloat.c > index e7c8213a5e..5e4982b035 100644 > --- a/fpu/softfloat.c > +++ b/fpu/softfloat.c > @@ -95,16 +95,6 @@ this code that are retained. > *----------------------------------------------------------------------------*/ > #include "fpu/softfloat-macros.h" > > -/*---------------------------------------------------------------------------- > -| Functions and definitions to determine: (1) whether tininess for underflow > -| is detected before or after rounding by default, (2) what (if anything) > -| happens when exceptions are raised, (3) how signaling NaNs are distinguished > -| from quiet NaNs, (4) the default generated quiet NaNs, and (5) how NaNs > -| are propagated from function inputs to output. These details are target- > -| specific. > -*----------------------------------------------------------------------------*/ > -#include "softfloat-specialize.h" > - > /*---------------------------------------------------------------------------- > | Returns the fraction bits of the half-precision floating-point value `a'. > *----------------------------------------------------------------------------*/ > @@ -241,6 +231,16 @@ typedef struct { > bool arm_althp; > } FloatFmt; > > +/*---------------------------------------------------------------------------- > +| Functions and definitions to determine: (1) whether tininess for underflow > +| is detected before or after rounding by default, (2) what (if anything) > +| happens when exceptions are raised, (3) how signaling NaNs are distinguished > +| from quiet NaNs, (4) the default generated quiet NaNs, and (5) how NaNs > +| are propagated from function inputs to output. These details are target- > +| specific. > +*----------------------------------------------------------------------------*/ > +#include "softfloat-specialize.h" > + > /* Expand fields based on the size of exponent and fraction */ > #define FLOAT_PARAMS(E, F) \ > .exp_size = E, \ -- Alex Bennée
diff --git a/fpu/softfloat.c b/fpu/softfloat.c index e7c8213a5e..5e4982b035 100644 --- a/fpu/softfloat.c +++ b/fpu/softfloat.c @@ -95,16 +95,6 @@ this code that are retained. *----------------------------------------------------------------------------*/ #include "fpu/softfloat-macros.h" -/*---------------------------------------------------------------------------- -| Functions and definitions to determine: (1) whether tininess for underflow -| is detected before or after rounding by default, (2) what (if anything) -| happens when exceptions are raised, (3) how signaling NaNs are distinguished -| from quiet NaNs, (4) the default generated quiet NaNs, and (5) how NaNs -| are propagated from function inputs to output. These details are target- -| specific. -*----------------------------------------------------------------------------*/ -#include "softfloat-specialize.h" - /*---------------------------------------------------------------------------- | Returns the fraction bits of the half-precision floating-point value `a'. *----------------------------------------------------------------------------*/ @@ -241,6 +231,16 @@ typedef struct { bool arm_althp; } FloatFmt; +/*---------------------------------------------------------------------------- +| Functions and definitions to determine: (1) whether tininess for underflow +| is detected before or after rounding by default, (2) what (if anything) +| happens when exceptions are raised, (3) how signaling NaNs are distinguished +| from quiet NaNs, (4) the default generated quiet NaNs, and (5) how NaNs +| are propagated from function inputs to output. These details are target- +| specific. +*----------------------------------------------------------------------------*/ +#include "softfloat-specialize.h" + /* Expand fields based on the size of exponent and fraction */ #define FLOAT_PARAMS(E, F) \ .exp_size = E, \
We want to be able to specialize on the canonical representation. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> --- fpu/softfloat.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) -- 2.17.0