From: Julian Seward Date: Sat, 9 Oct 2004 00:58:19 +0000 (+0000) Subject: Fold 1Uto32. X-Git-Tag: svn/VALGRIND_3_0_1^2~1023 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=25758504fd9bf0ddf57f981f6d2c849c8b392b98;p=thirdparty%2Fvalgrind.git Fold 1Uto32. git-svn-id: svn://svn.valgrind.org/vex/trunk@311 --- diff --git a/VEX/priv/ir/iropt.c b/VEX/priv/ir/iropt.c index 2b175994fd..e74bb23ef4 100644 --- a/VEX/priv/ir/iropt.c +++ b/VEX/priv/ir/iropt.c @@ -345,6 +345,11 @@ static IRExpr* fold_Expr ( IRExpr* e ) if (e->tag == Iex_Unop && e->Iex.Unop.arg->tag == Iex_Const) { switch (e->Iex.Unop.op) { + case Iop_1Uto32: + e2 = IRExpr_Const(IRConst_U32( + e->Iex.Unop.arg->Iex.Const.con->Ico.Bit + ? 1 : 0)); + break; case Iop_8Sto32: { /* signed */ Int s32 = e->Iex.Unop.arg->Iex.Const.con->Ico.U8; s32 <<= 24;