qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Please help fix an illegal instruction / SSE problem


From: Pierre d'Herbemont
Subject: Re: [Qemu-devel] Please help fix an illegal instruction / SSE problem
Date: Fri, 16 Feb 2007 10:12:41 +0100


On 16 févr. 07, at 04:51, Ilya Shar wrote:

Every Cocoa application I try to run under
i386-darwin-user/qemu-i386 exits on an illegal
instruction:

Starting
/Applications/Calculator.app/Contents/MacOS/Calculator
with qemu
----------------
queue_signal: sig=4
qemu: uncaught target signal 4 (Illegal instruction) -
exiting

The last block always executes SSE instructions:
----------------
IN:
0xffff0ab7:  movdqa 0xfffffffa(%esi,%edx,1),%xmm0
0xffff0abd:  movdqa 0xa(%esi,%edx,1),%xmm1
0xffff0ac3:  movdqa 0x1a(%esi,%edx,1),%xmm2
0xffff0ac9:  movdqa 0x2a(%esi,%edx,1),%xmm3
0xffff0acf:  movdqa 0x3a(%esi,%edx,1),%xmm4
0xffff0ad5:  movdqa %xmm0,%xmm5
0xffff0ad9:  movdqa %xmm4,%xmm0
0xffff0add:  data16
0xffff0ade:  (bad)

Non-graphics applications run fine.

Could it be a configuration/compilation problem
(although some SEE instructions seem to be handled
fine)?  If not, is there a way to better diagnose the
problem?  I on Mac OS Intel with QEMU 0.9.0.

Calculator is crashing in the commpage (see darwin-user/commpage.c). Commpage is for now shared with the host for x86-on-x86 (and for ppc- on-ppc too). As the commpage is optimized by the kernel for your host specific proc, there tends to be problem with qemu. You could try to play a bit with qemu cpuid (darwin-user/main.c:788), or implement the needed instructions in qemu. An other way would be to use what's in commpage.c (see commpage_init()), by translating the target address space.

Pierre.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]