From: Julian Seward Date: Tue, 24 Aug 2004 01:16:01 +0000 (+0000) Subject: Fast-case a couple more flag/thunk conditions. X-Git-Tag: svn/VALGRIND_3_0_1^2~1134 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7a8eea36b59414cee03e80b7c52ab8380c953bfb;p=thirdparty%2Fvalgrind.git Fast-case a couple more flag/thunk conditions. git-svn-id: svn://svn.valgrind.org/vex/trunk@200 --- diff --git a/VEX/priv/guest-x86/ghelpers.c b/VEX/priv/guest-x86/ghelpers.c index 3199ff620c..c1a16ac07e 100644 --- a/VEX/priv/guest-x86/ghelpers.c +++ b/VEX/priv/guest-x86/ghelpers.c @@ -464,7 +464,7 @@ static UInt calculate_eflags_c ( UInt cc_op, UInt cc_src, UInt cc_dst ) tab[cc_op][cond]++; n_calc_cond++; - if (0 == ((n_calc_all+n_calc_c) & 0xFF)) showCounts(); + if (0 == ((n_calc_all+n_calc_c) & 0xFFFF)) showCounts(); # endif switch (cond) { @@ -635,6 +635,11 @@ IRExpr* x86guest_spechelper ( Char* function_name, return unop(Iop_1Uto32,binop(Iop_CmpEQ32, cc_dst, mkU32(0))); } + if (isU32(cc_op, CC_OP_LOGICL) && isU32(cond, CondS)) { + /* long and/or/xor, then S --> test dst compare DST