]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Handle Iop_32to1 in the amd64 insn selector.
authorFlorian Krohm <florian@eich-krohm.de>
Thu, 19 Jul 2012 17:22:33 +0000 (17:22 +0000)
committerFlorian Krohm <florian@eich-krohm.de>
Thu, 19 Jul 2012 17:22:33 +0000 (17:22 +0000)
git-svn-id: svn://svn.valgrind.org/vex/trunk@2440

VEX/priv/host_amd64_isel.c

index 5607780a75927a800c05428510c53dcd28dc15eb..dbf41ef7d8e7b7fb54e98584666170ee4dcc2045 100644 (file)
@@ -2088,6 +2088,15 @@ static AMD64CondCode iselCondCode_wrk ( ISelEnv* env, IRExpr* e )
       return Acc_NZ;
    }
 
+   /* --- patterns rooted at: 32to1 --- */
+
+   /* 32to1 */
+   if (e->tag == Iex_Unop && e->Iex.Unop.op == Iop_32to1) {
+      HReg reg = iselIntExpr_R(env, e->Iex.Unop.arg);
+      addInstr(env, AMD64Instr_Test64(1,reg));
+      return Acc_NZ;
+   }
+
    /* --- patterns rooted at: CmpNEZ8 --- */
 
    /* CmpNEZ8(x) */