|
From: Johannes B. <joh...@si...> - 2006-06-13 16:06:17
|
This patch allows the lwsync instruction ("lightweight sync") by
treating it the same as a simple sync ("heavyweight sync"). At least
then my programs aren't killed with SIGILL any more :)
Signed-off-by: Johannes Berg <joh...@si...>
--- a/valgrind-3.1.1/VEX/priv/guest-ppc32/toIR.c 2006-03-06 14:41:01.000000000 +0100
+++ b/valgrind-3.1.1/VEX/priv/guest-ppc32/toIR.c 2006-06-13 14:07:08.521497809 +0200
@@ -3456,8 +3456,9 @@
}
case 0x256: // sync (Synchronize, PPC32 p543)
- if (b11to25 != 0 || b0 != 0) {
- vex_printf("dis_int_memsync(PPC32)(sync,b11to25|b0)\n");
+ /* treat lwsync the same as just sync */
+ if ((b11to25 != 0 && b11to25 != 0x400) || b0 != 0) {
+ vex_printf("dis_int_memsync(PPC32)(sync,b11to25=%x|b0=%x)\n",b11to25,b0);
return False;
}
DIP("sync\n");
|