Comment 3 for bug 957473

Revision history for this message
Dominique Quatravaux (dominique-quatravaux) wrote :

For some reason, the PC where the SIGILL occurs seems to change every time I re-run Vuze.

Attached is a gdb stack trace that seems to point to some JITed javascript code as the culprit (gdb says "No function contains program counter for selected frame" for the innermost stack frame; and the second to innermost is in libjavascriptcoregtk-1.0-0).

In this run, the eip at SIGILL is 0xabda3f42:

(gdb) x/10i 0xabda3f42
=> 0xabda3f42: movsd %xmm0,(%eax)
   0xabda3f46: mov $0xad967190,%eax
   0xabda3f4b: movsd %xmm1,(%eax)
   0xabda3f4f: mov $0xad967198,%eax
   0xabda3f54: movsd %xmm2,(%eax)
   0xabda3f58: mov $0xad9671a0,%eax
   0xabda3f5d: movsd %xmm3,(%eax)
   0xabda3f61: mov $0xad9671a8,%eax
   0xabda3f66: movsd %xmm4,(%eax)
   0xabda3f6a: mov $0xad9671b0,%eax

I'm unfortunately no SSE expert and I don't know what, if anything, this instruction is supposed to do on my CPU (AMD Athlon(tm) XP 3200+ ; it does have sse in the flags, see my /proc/cpuinfo in the Java crash report attached above).