Lines Matching defs:a1
3088 static Bool eq_AvailExpr ( AvailExpr* a1, AvailExpr* a2 )
3090 if (LIKELY(a1->tag != a2->tag))
3092 switch (a1->tag) {
3095 a1->u.Ut.op == a2->u.Ut.op
3096 && a1->u.Ut.arg == a2->u.Ut.arg);
3099 a1->u.Btt.op == a2->u.Btt.op
3100 && a1->u.Btt.arg1 == a2->u.Btt.arg1
3101 && a1->u.Btt.arg2 == a2->u.Btt.arg2);
3104 a1->u.Btc.op == a2->u.Btc.op
3105 && a1->u.Btc.arg1 == a2->u.Btc.arg1
3106 && eqIRConst(&a1->u.Btc.con2, &a2->u.Btc.con2));
3109 a1->u.Bct.op == a2->u.Bct.op
3110 && a1->u.Bct.arg2 == a2->u.Bct.arg2
3111 && eqIRConst(&a1->u.Bct.con1, &a2->u.Bct.con1));
3113 return toBool(a1->u.Cf64i.f64i == a2->u.Cf64i.f64i);
3115 return toBool(a1->u.Mttt.co == a2->u.Mttt.co
3116 && a1->u.Mttt.e0 == a2->u.Mttt.e0
3117 && a1->u.Mttt.eX == a2->u.Mttt.eX);
3119 return toBool(eqIRRegArray(a1->u.GetIt.descr, a2->u.GetIt.descr)
3120 && a1->u.GetIt.ix == a2->u.GetIt.ix
3121 && a1->u.GetIt.bias == a2->u.GetIt.bias);
3124 Bool eq = a1->u.CCall.nArgs == a2->u.CCall.nArgs
3125 && eqIRCallee(a1->u.CCall.cee, a2->u.CCall.cee);
3127 n = a1->u.CCall.nArgs;
3129 if (!eqTmpOrConst( &a1->u.CCall.args[i],
3136 if (eq) vassert(a1->u.CCall.retty == a2->u.CCall.retty);
4644 static IRExpr* fold_IRExpr_Binop ( IROp op, IRExpr* a1, IRExpr* a2 )
4649 if (is_Unop(a1, Iop_CmpwNEZ32) && is_Unop(a2, Iop_CmpwNEZ32))
4651 IRExpr_Binop( Iop_Or32, a1->Iex.Unop.arg,
4658 if (is_Unop(a1, Iop_1Uto32) && isZeroU32(a2))
4659 return a1->Iex.Unop.arg;
4666 return IRExpr_Binop( op, a1, a2 );