This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Patch to add more floating point target macros
- From: Richard Henderson <rth at redhat dot com>
- To: Richard Sandiford <rsandifo at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Fri, 8 Mar 2002 13:17:26 -0800
- Subject: Re: Patch to add more floating point target macros
- References: <wvn4rjr1144.fsf@talisman.cambridge.redhat.com>
On Fri, Mar 08, 2002 at 04:21:47PM +0000, Richard Sandiford wrote:
> * defaults.h (LARGEST_EXPONENT_IS_NORMAL, ROUND_TOWARDS_ZERO): New.
> (MODE_HAS_NANS, MODE_HAS_INFINITIES): Evaluate to false if
> LARGEST_EXPONENT_IS_NORMAL for the given mode.
> (MODE_HAS_SIGN_DEPENDENT_ROUNDING): False when ROUND_TOWARDS_ZERO.
> * real.c (eadd1: Make rounding dependent on !ROUND_TOWARDS_ZERO.
> (ediv, emul, eldexp, esqrt): Likewise.
> (etoe113, etoe64, etoe53, etoe24, etodec, etoibm, etoc4x): Likewise.
> (e24toe): Only check NaNs & infinities if !LARGEST_EXPONENT_IS_NORMAL.
> (saturate): New function.
> (toe53, toe24): Saturate on overflow if LARGEST_EXPONENT_IS_NORMAL.
> (make_nan): Use a saturation value instead of a NaN if
> LARGEST_EXPONENT_IS_NORMAL. Warn when this happens.
> * fp-bit.c (pack_d): Saturate on NaN, infinite or overflowing
> inputs if LARGEST_EXPONENT_IS_NORMAL. Represent subnormals as
> zero if NO_DENORMALS. Only round to nearest if !ROUND_TOWARDS_ZERO.
> (unpack_d): No NaNs or infinities if LARGEST_EXPONENT_IS_NORMAL.
> (_fpmul_parts, _fpdiv_parts): Only round to nearest if
> !ROUND_TOWARDS_ZERO.
> * doc/tm.texi (LARGEST_EXPONENT_IS_NORMAL): Document.
> (ROUND_TOWARDS_ZERO): Document.
Ok.
> + @samp{MODE_HAS_SIGN_DEPENDENT_ROUNDING} will be false for all modes.
All of your uses of @samp should be @code.
r~