This is the mail archive of the libc-alpha@sourceware.cygnus.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Fwd: __setfpucw


> Mailing-List: contact libc-alpha-help@sourceware.cygnus.com; run by ezmlm
> cc: Joel Klecker <jk@espy.org>, libc-alpha@sourceware.cygnus.com
> Date: Fri, 21 May 1999 12:41:30 -0400
> From: Zack Weinberg <zack@rabi.columbia.edu>
> 
> On 20 May 1999 22:10:07 -0700, Ulrich Drepper wrote:
> >Joel Klecker <jk@espy.org> writes:
> >
> >> Can I get some comments on this?
> >
> >__setfpucw is internal and always should have treated like this.
> >Glibc 2.1 provides the functionality in a standard interface (see
> >fenv.h).
> 
> The C9x <fenv.h> interface isn't nearly as flexible as some programs would
> like.  You can't request signals for a specific subset of the IEEE
> exceptions, for instance.  I'd like to see the SVID <ieeefp.h> interface in
> 2.2.

I'd much rather just extra calls, `feenableexcept',
`fedisableexcept' which do this:

int feenableexcept(int excepts);

Returns a bitmap containing those exceptions in 'excepts' which were
enabled.  Will not enable _more_ exceptions that 'excepts' specifies;
returns 0 if 'excepts' is not FE_ALL_EXCEPT and cannot enable or
disable exceptions individually.

Note that on PPC, at least, you can test whether exceptions have
occurred at a finer level than you can enable or disable them.  So if
you ask to have just FE_INVALID_SQRT enabled, it'll fail because you can
only enable all the FE_INVALID exceptions at once.

-- 
Geoffrey Keating <geoffk@ozemail.com.au>

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]