Am 29.12.2009 um 22:07 schrieb Aurelien Jarno <aurel...@aurel32.net>:
On Tue, Dec 29, 2009 at 04:09:17PM +0100, Stefan Weil wrote:
Test environment:
* ppc-softmmu/qemu-system-ppc running on x86_64 host
* emulated ppc is running debian lenny
While debugging on the emulated ppc (each time when
a shared library is loaded after "r" command?),
qemu-system-ppc prints this error message:
invalid/unsupported opcode: 00 - 00 - 00 (00000000) 4800fa44 1
If logging is enabled, the error message goes to qemu.log:
IN:
0xc0013488: nop
0xc001348c: rlwinm r3,r3,0,0,19
0xc0013490: li r4,128
0xc0013494: mtctr r4
0xc0013498: mr r6,r3
0xc001349c: dcbst r0,r3
invalid/unsupported opcode: 00 - 00 - 00 (00000000) 4800fa44 1
IN:
0x4800fa40: twge r2,r2
0x4800fa44: .long 0x0
The problem is that QEMU doesn't stop the decoding of instructions
when
it encounters a trap instruction. We should probably either end the TB
in that case, or avoid printing "invalid/unsupported opcode", as this
instruction will actually never been executed.
Given how seldom they occur, it's probably best (easiest to read) to
end the TB.
Alex