libgcj/4616: Floating Point Math class problem on Tru64 Alpha v 5.1
Craig Rodrigues
rodrigc@mediaone.net
Sat Jan 5 12:54:00 GMT 2002
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=4616
The following was submitted by ake@purdue.edu, but ended up in the wrong
PR.
Do not change the format of the subject line when CC:'ing messages to
GNATS.
===============================================================
Hello, These are the results of the C program:
Argument arg is 3.780800e+02
Argument y is 1.577821e+164
Argument x is 1.797693e+308
Argument result is 1.755384e-144
BUT if x=y=overflow, this is the result:
Argument arg is 9.000000e+02
Argument y is 1.797693e+308
Argument x is 1.797693e+308
Floating point exception (core dumped)
More testing on Alpha and Java showed this:
If arg >=261 the program is STALLED. No floating core dump, and it
doesn't execute the print of "x":
Argument arg is 261.0 Argument y is 2.2431575451828986E113
Regards
On 2001年10月19日, Andrew Haley wrote:
> ake@purdue.edu writes:
> > >Category: libgcj
> > >Synopsis: Floating Point Math class problem on Tru64 Alpha
v 5.1
> > >Confidential: no
> > >Severity: serious
> > >Priority: medium
> > >Class: sw-bug
> > >Submitter-Id: net
> > >Originator: Antonio Ake
> > >Release: 3.0.2 prerelease
> > >Environment:
> > TRu64 Unix v 5.1
> > >Description:
> > his is the part of the code executing:
> > public static double d1f (double arg) {
> > double y,x;
> >
> > System.out.print("Argument arg is " + arg + " ");
> > y= Math.exp(arg);
> > System.out.print("Argument y is " + y + " ");
> > x=Math.pow((y+1.0),2.0);
> > System.out.print("Argument x is " + x + "\n");
> > return ( (2.0 * y)/x );
> > }
> > The problem is when x is infinity.
> > Argument arg is 378.0812928461101
> > Var y is 1.5798621479294393E164
> > Var x is Infinity
> > Floating point exception (core dumped)
> > I tested on Linux x/86 and it is working, the problem is on Tru64
Unix
>
> Fascianting. It looks as though floating-point exceptions trigger a
> signal on this system. I've never come across a system which does
> this before.
>
> Can you please write a trivial C program that does the same thing and
> see if it also results in a Floating point exception?
>
> Thanks,
> Andrew.
>
More information about the Java
mailing list