|
From: <sv...@va...> - 2015-05-27 12:33:49
|
Author: mjw
Date: Wed May 27 13:33:41 2015
New Revision: 3147
Log:
Bug #348247. Fix SUBQ 0, long long sub/cmp, then O (overflow) case.
Fix 64bit right shift, should have been 63 bit. This caused some bad
jno jumps detecting overflow where there was none.
Modified:
trunk/priv/guest_amd64_helpers.c
Modified: trunk/priv/guest_amd64_helpers.c
==============================================================================
--- trunk/priv/guest_amd64_helpers.c (original)
+++ trunk/priv/guest_amd64_helpers.c Wed May 27 13:33:41 2015
@@ -1036,7 +1036,7 @@
binop(Iop_Xor64,
cc_dep1,
binop(Iop_Sub64, cc_dep1, cc_dep2))),
- mkU8(64));
+ mkU8(63));
}
if (isU64(cc_op, AMD64G_CC_OP_SUBQ) && isU64(cond, AMD64CondNO)) {
/* No action. Never yet found a test case. */
|