]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Fix performance hole exposed by profiling gzip.
authorJulian Seward <jseward@acm.org>
Thu, 20 Jan 2005 10:48:20 +0000 (10:48 +0000)
committerJulian Seward <jseward@acm.org>
Thu, 20 Jan 2005 10:48:20 +0000 (10:48 +0000)
git-svn-id: svn://svn.valgrind.org/vex/trunk@723

VEX/priv/guest-x86/ghelpers.c

index 6735e13aea0392e8ae75c063912705378b6335df..14803b808bb580fe6f5140a02c9039a4a9c3cf0e 100644 (file)
@@ -711,6 +711,15 @@ IRExpr* guest_x86_spechelper ( Char* function_name,
          /* If the thunk is dec or inc, the cflag is supplied as CC_NDEP. */
          return cc_ndep;
       }
+      if (isU32(cc_op, X86G_CC_OP_COPY)) {
+         /* cflag after COPY is stored in DEP1. */
+         return
+            binop(
+               Iop_And32,
+               binop(Iop_Shr32, cc_dep1, mkU8(X86G_CC_SHIFT_C)),
+               mkU32(1)
+            );
+      }
 #     if 0
       if (cc_op->tag == Iex_Const) {
          vex_printf("CFLAG "); ppIRExpr(cc_op); vex_printf("\n");