Re: JIT problem on Cygwin revisited

2004-06-02 Thread Leopold Toetsch
Joshua Gatcomb [EMAIL PROTECTED] wrote: Parrot doesn't use GMP right? Right. ... So the math library in question is the /usr/include/math.h header? No. That's the header do declare functions in the math library. The library is e.g. F/usr/lib/libm.so. WRT alignment there were some

Re: JIT problem on Cygwin revisited

2004-06-02 Thread Joshua Gatcomb
--- Leopold Toetsch [EMAIL PROTECTED] wrote: ... So the math library in question is the /usr/include/math.h header? No. That's the header do declare functions in the math library. The library is e.g. F/usr/lib/libm.so. Well you see - that's what I thought but removing it seemed to have

Re: JIT problem on Cygwin revisited

2004-06-02 Thread Leopold Toetsch
Joshua Gatcomb [EMAIL PROTECTED] wrote: --- Leopold Toetsch [EMAIL PROTECTED] wrote: math library. The library is e.g. F/usr/lib/libm.so. For example $ objdump -p parrot.exe DLL Name: cygwin1.dll vma: Hint/Ord Member-Name Bound-To 1b5588 14

Re: JIT problem on Cygwin revisited

2004-06-01 Thread Leopold Toetsch
Joshua Gatcomb [EMAIL PROTECTED] wrote: Well, it only happens under JIT for the following functions (identical code for atan works fine): cosh, sinh, tanh, sech, exp, pow It only happens if there are two set N# prior to the function where # is two different numbers N0 = 1 N1 = 1 I think

Re: JIT problem on Cygwin revisited

2004-06-01 Thread Joshua Gatcomb
I thought I had already replied to this but I don't seem to see it in the archive anywhere. --- Leopold Toetsch [EMAIL PROTECTED] wrote: I think next step would need to review Cygwin math lib sources and trace into the library. Nasty. Parrot doesn't use GMP right? So the math library in

Re: JIT problem on Cygwin revisited

2004-05-28 Thread Joshua Gatcomb
--- Leopold Toetsch [EMAIL PROTECTED] wrote: I think next step would need to review Cygwin math lib sources and trace into the library. Nasty. Parrot isn't using GMP right? I am not sure where to go look for the math lib sources other than the math header /usr/include/math.h ??? Is your

Re: JIT problem on Cygwin revisited

2004-05-25 Thread Leopold Toetsch
Joshua Gatcomb [EMAIL PROTECTED] wrote: 4 print N3 gdb p N3 $2 = 4.4942328371557898e+307 If both N1 and N2 are not set prior to cosh, then everything works fine. I've checked in a possible fix for this. Please try again after cvs update. Thanks for your analysis, leo

Re: JIT problem on Cygwin revisited

2004-05-25 Thread Joshua Gatcomb
--- Leopold Toetsch [EMAIL PROTECTED] wrote: Joshua Gatcomb [EMAIL PROTECTED] wrote: 4 print N3 gdb p N3 $2 = 4.4942328371557898e+307 If both N1 and N2 are not set prior to cosh, then everything works fine. I've checked in a possible fix for this. Please try again after

Re: JIT problem on Cygwin revisited

2004-05-25 Thread Leopold Toetsch
Joshua Gatcomb [EMAIL PROTECTED] wrote: Sorry - still a problem. I am attaching a more descriptive debugging session where I show the floats and registers at every step. Not sure if this will be useful, but I figured it couldn't hurt. It looks like that the Cygwin libs have some assumption

Re: JIT problem on Cygwin revisited

2004-05-25 Thread Joshua Gatcomb
--- Leopold Toetsch [EMAIL PROTECTED] wrote: It looks like that the Cygwin libs have some assumption how the floating point stack is used. I'll try to insert a Cemms instruction before math lib functions are called. leo Well, it only happens under JIT for the following functions

JIT problem on Cygwin revisited

2004-05-24 Thread Joshua Gatcomb
I have reduced the JIT failing tests down to the following test case: set N0, 1 set N1, 1 cosh N3, 1 print N3 end $ parrot foo.pasm 1.543081 $ parrot -j foo.pasm 44942328 really big number snipped $ parrot -t foo.pasm 0 set N0, 1- N0=0.00, 3 set N1, 1- N1=0.00, 6