This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
Re: [fortran, patch] IEEE intrinsic modules (ping)
- From: Steve Kargl <sgk at troutmask dot apl dot washington dot edu>
- To: FX <fxcoudert at gmail dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, Fortran List <fortran at gcc dot gnu dot org>
- Date: Tue, 24 Jun 2014 10:46:01 -0700
- Subject: Re: [fortran, patch] IEEE intrinsic modules (ping)
- Authentication-results: sourceware.org; auth=none
- References: <CAFULd4bPn3QaPa4MKpOO+iAMo5esVCx3Cn-XptFGe=g69rxptA at mail dot gmail dot com> <DA02C71A-3BF9-4283-B260-60A676855A3E at gmail dot com> <CAFULd4YZFk7KWC_EovkPGQtZ+8jmNzJmywGzNHBvVX+qfSXTDQ at mail dot gmail dot com> <B14E8314-8E99-49AE-8B98-A7EA599757A6 at gmail dot com> <EF496829-9ECB-42D8-9366-F8A14A6D6505 at gmail dot com> <20140623192339 dot GA25679 at troutmask dot apl dot washington dot edu> <20140623202005 dot GA31501 at troutmask dot apl dot washington dot edu> <6CA4B0CC-09B5-439C-A766-B27664B2DB12 at gmail dot com> <20140624164936 dot GA38820 at troutmask dot apl dot washington dot edu>
On Tue, Jun 24, 2014 at 09:49:36AM -0700, Steve Kargl wrote:
>
> Not yet.
>
> On i386-*-freebsd
>
> In file included from ../../../gcc4x/libgfortran/runtime/fpu.c:29:0:
> ./fpu-target.h: In function 'set_fpu_trap_exceptions':
> ./fpu-target.h:31:3: error: unknown type name 'fp_except'
> fp_except cw = fpgetmask();
>
The (autogenerated?) fpu-target. h is totally bogus on FreeBSD.
The file includes things like
void
get_fpu_state (void *s)
{
fpu_state_t *state = s;
/* Check we can actually store the FPU state in the allocated size. */
assert (sizeof(fpu_state_t) <= GFC_FPE_STATE_BUFFER_SIZE);
s->mask = fpgetmask ();
s->sticky = fpgetsticky ();
s->round = fpgetround ();
}
The s-> in the last 3 lines should be state->.
There are several places where fp_except and fp_rnd are used
unconditionally. On FreeBSD (and perhaps other *BSD), there
is no fpsetsticky(). The function is fpresetsticky().
--
Steve