This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problem with ARM port and pow() function


Hi Fausto,

The problem is like that: when in pow(x,y) the "y" factor is an integer, > there is no problem. But when the "y" factor is a double or float (for > example "2.1") there is a data exception and the program hangs. Crash.

I've done some tests, and I can't understand what's wrong. It seems that the problem is in the e_pow.c file, the line:

p_l = (y-y1)*t1+y*t2;

It seems that t1 contains a too big variable, causing overflow.

Please could you supply a full test case that reproduces the problem ? Please include the command line(s) you use to compile the test case, and, this is very important, please tell us exactly which toolchain you are using to compile the test case (including how it was configured) and how you are running the test case. (Are you running it on hardware or under a simulator ?)


Cheers
  Nick


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