This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH 3/4] Add ILP32 support to aarch64
- From: Joseph Myers <joseph at codesourcery dot com>
- To: Steve Ellcey <sellcey at cavium dot com>
- Cc: libc-alpha <libc-alpha at sourceware dot org>
- Date: Thu, 3 Aug 2017 17:47:03 +0000
- Subject: Re: [PATCH 3/4] Add ILP32 support to aarch64
- Authentication-results: sourceware.org; auth=none
- References: <1501774579.3962.54.camel@cavium.com>
On Thu, 3 Aug 2017, Steve Ellcey wrote:
> +#if OREG_SIZE == 32
> + /* The rounding step may set FE_INEXEXACT and converting to a 32 bit
> + value may set FE_INVALID. We do not want FE_INEXACT set when
> + FE_INVALID has been set. */
> + if (libc_fetestexcept_aarch64 (FE_INVALID))
> + libc_feclearexcept_aarch64 (FE_INEXACT);
> +#endif
This sort of thing is never correct, because it would clear an "inexact"
exception that was already set on entry to the function, and functions
other than <fenv.h> specified to do so should never clear already-raised
exceptions.
(Also, typo "FE_INEXEXACT".)
--
Joseph S. Myers
joseph@codesourcery.com