|
From: Julian S. <js...@ac...> - 2003-04-01 17:53:37
|
> On running the beast ; with both (3DNow and MMX) switched off, the
> program ran fine; with only MMX I get the following:
>
> ==31255== pthread_mutex_unlock: mutex is not locked
> ==31255== at 0x4021E257: __pthread_mutex_unlock (vg_libpthread.c:977)
> ==31255== by 0x8085A78: playlistwin_update_sinfo (playlistwin.c:191)
> ==31255== by 0x805BC70: load_skin (skin.c:649)
> ==31255== by 0x807DDE1: main (main.c:3466)
> ==31255==
> ==31255== pthread_mutex_unlock: mutex is not locked
> ==31255== at 0x4021E257: __pthread_mutex_unlock (vg_libpthread.c:977)
> ==31255== by 0x403109D0: gtk_main (in /usr/lib/libgtk-1.2.so.0.9.1)
> disInstr: unhandled 2-byte opcode: 0x72 0xE0 0xD
> This _might_ be the result of executing a SSE, SSE2 or 3DNow!
> instruction. Valgrind does not currently support such instructions.
> Sorry.
> Illegal instruction
>
> With 3dNow (no great surprise)
> ==31300== Conditional jump or move depends on uninitialised value(s)
> ==31300== at 0x4031B506: (within /usr/lib/libgtk-1.2.so.0.9.1)
> ==31300== by 0x42AD740B: ???
> disInstr: unhandled 2-byte opcode: 0xE 0xF 0x6F
> This _might_ be the result of executing a SSE, SSE2 or 3DNow!
> instruction. Valgrind does not currently support such instructions.
> Sorry.
> Illegal instruction
>
> I will continually track CVS head and report the status of MMX
> support in xmms .....
Ha. That's a very useful thing to do. Thanks.
Can you try the attached patch and let me know if it helps?
J
sewardj@phoenix:~/VgHEAD/valgrind$ cvs diff -rHEAD coregrind/vg_to_ucode.c
Index: coregrind/vg_to_ucode.c
===================================================================
RCS file: /cvsroot/valgrind/valgrind/coregrind/vg_to_ucode.c,v
retrieving revision 1.54
diff -u -3 -p -r1.54 vg_to_ucode.c
--- coregrind/vg_to_ucode.c 27 Mar 2003 23:52:58 -0000 1.54
+++ coregrind/vg_to_ucode.c 1 Apr 2003 17:50:28 -0000
@@ -4771,7 +4771,8 @@ static Addr disInstr ( UCodeBlock* cb, A
}
break;
- case 0x73: /* PSLL/PSRA/PSRL mmxreg by imm8 */
+ case 0x72: case 0x73:
+ /* PSLL/PSRA/PSRL mmxreg by imm8 */
{
UChar byte1, byte2, byte3, subopc, mmxreg;
vg_assert(sz == 4);
|