Joshua Gatcomb <[EMAIL PROTECTED]> wrote: > parrot trans_9.pasm > ok 1 > ok 2 > parrot -j trans_9.pasm > ok 1 > not ok 2
[ ... ] > (gdb) add-symbol-file arithmetics_26.o 0 > add symbol table from file "arithmetics_26.o" at > .text_addr = 0x0 > (y or n) y > Reading symbols from arithmetics_26.o...done. > (gdb) s > jit_func () at arithmetics_26.pasm:1 > 1 set I0, 130 Good. So you can step through the JIT code. Now comes the easy thing: find out, why the results differ: - run the test through the plain core and trace it: $ parrot -t t/op/trans_9.pasm ... 50 cosh N2, I1 - N2=1.543081, I1=1 - run it through JIT debugging: ... # after the 2nd cosh # (gdb) p N2 $1 = 1.5430806348152437 (gdb) p I1 $2 = 1 You can turn on the register window of ddd too (or type "info float" and "info registers" in gdb). Something must happen here that gives differing results and segfaults. leo