Mail Archives: djgpp-workers/2003/08/30/12:50:31
--part1_114.2823ab81.2c822fce_boundary
Content-Type: text/plain; charset="US-ASCII"
Content-Transfer-Encoding: 7bit
In a message dated 8/30/2003 5:28:52 AM Eastern Standard Time,
eliz AT elta DOT co DOT il writes:
> >Date: Fri, 29 Aug 2003 17:01:17 -0500
> >From: Eric Rudd <rudd AT cyberoptics DOT com>
> >
> >I am still of the opinion that it is
> >best to prevent the math functions from either raising signals or
> >setting exception bits in the FPU status register, because they can
> >crash a program and prevent recovery.
>
> We could implement the exceptions bitmap as a special word that is
> physically different from the x87 status register. The functions that
> return the exceptions info could then look at that word and also at
> the x87 status word.
>
Has anyone bothered to look at the source for libm.a to see what they do? I
see expressions like (x-x)/(x-x) to produce a NaN and turn on the floating
point invalid exception and "huge + x" (where huge = 1.0e30) to turn on the
floating point inexact exception. In the log function is "-two54/zero" to turn on
the floating point divide-by-zero exception and generate -infinity.
Has anyone ever had any problems with these functions?
--part1_114.2823ab81.2c822fce_boundary
Content-Type: text/html; charset="US-ASCII"
Content-Transfer-Encoding: quoted-printable
<HTML><FONT FACE=3Darial,helvetica><FONT SIZE=3D3 FAMILY=3D"SERIF" FACE=3D"=
Georgia" LANG=3D"0">In a message dated 8/30/2003 5:28:52 AM Eastern Standard=
Time, eliz AT elta DOT co DOT il writes:<BR>
<BR>
<BLOCKQUOTE TYPE=3DCITE style=3D"BORDER-LEFT: #0000ff 2px solid; MARGIN-LEFT=
: 5px; MARGIN-RIGHT: 0px; PADDING-LEFT: 5px"></FONT><FONT COLOR=3D"#000000"=
style=3D"BACKGROUND-COLOR: #ffffff" SIZE=3D2 FAMILY=3D"SANSSERIF" FACE=3D"A=
rial" LANG=3D"0">>Date: Fri, 29 Aug 2003 17:01:17 -0500<BR>
>From: Eric Rudd <rudd AT cyberoptics DOT com><BR>
><BR>
>I am still of the opinion that it is <BR>
>best to prevent the math functions from either raising signals or <BR>
>setting exception bits in the FPU status register, because they can <BR>
>crash a program and prevent recovery.<BR>
<BR>
We could implement the exceptions bitmap as a special word that is<BR>
physically different from the x87 status register. The functions that<=
BR>
return the exceptions info could then look at that word and also at<BR>
the x87 status word.<BR>
</BLOCKQUOTE><BR>
</FONT><FONT COLOR=3D"#000000" style=3D"BACKGROUND-COLOR: #ffffff" SIZE=3D3=
FAMILY=3D"SERIF" FACE=3D"Georgia" LANG=3D"0"><BR>
Has anyone bothered to look at the source for libm.a to see what they do?&nb=
sp; I see expressions like (x-x)/(x-x) to produce a NaN and turn on the floa=
ting point invalid exception and "huge + x" (where huge =3D 1.0e30) to turn=20=
on the floating point inexact exception. In the log function is "-two5=
4/zero" to turn on the floating point divide-by-zero exception and generate=20=
-infinity.<BR>
<BR>
Has anyone ever had any problems with these functions?</FONT></HTML>
--part1_114.2823ab81.2c822fce_boundary--
- Raw text -