Lines Matching refs:con
369 if (ex->Iex.Const.con->tag == Ico_F64i) { in flatten_Expr()
372 IRExpr_Const(ex->Iex.Const.con))); in flatten_Expr()
1040 IRConst *c1 = e1->Iex.Const.con; in sameIRExprs_aux2()
1041 IRConst *c2 = e2->Iex.Const.con; in sameIRExprs_aux2()
1116 IRConst *c1 = e1->Iex.Const.con; in debug_only_hack_sameIRExprs_might_assert()
1117 IRConst *c2 = e2->Iex.Const.con; in debug_only_hack_sameIRExprs_might_assert()
1131 && e->Iex.Const.con->tag == Ico_U32 in isZeroU32()
1132 && e->Iex.Const.con->Ico.U32 == 0); in isZeroU32()
1139 && e->Iex.Const.con->tag == Ico_U32 in isOnesU32()
1140 && e->Iex.Const.con->Ico.U32 == 0xFFFFFFFF ); in isOnesU32()
1147 && e->Iex.Const.con->tag == Ico_U64 in isZeroU64()
1148 && e->Iex.Const.con->Ico.U64 == 0); in isZeroU64()
1155 switch (e->Iex.Const.con->tag) { in isZeroU()
1156 case Ico_U1: return toBool( e->Iex.Const.con->Ico.U1 == 0); in isZeroU()
1157 case Ico_U8: return toBool( e->Iex.Const.con->Ico.U8 == 0); in isZeroU()
1158 case Ico_U16: return toBool( e->Iex.Const.con->Ico.U16 == 0); in isZeroU()
1159 case Ico_U32: return toBool( e->Iex.Const.con->Ico.U32 == 0); in isZeroU()
1160 case Ico_U64: return toBool( e->Iex.Const.con->Ico.U64 == 0); in isZeroU()
1169 switch (e->Iex.Const.con->tag) { in isOnesU()
1170 case Ico_U8: return toBool( e->Iex.Const.con->Ico.U8 == 0xFF); in isOnesU()
1171 case Ico_U16: return toBool( e->Iex.Const.con->Ico.U16 == 0xFFFF); in isOnesU()
1172 case Ico_U32: return toBool( e->Iex.Const.con->Ico.U32 in isOnesU()
1174 case Ico_U64: return toBool( e->Iex.Const.con->Ico.U64 in isOnesU()
1285 e->Iex.Unop.arg->Iex.Const.con->Ico.U1 in fold_Expr()
1290 e->Iex.Unop.arg->Iex.Const.con->Ico.U1 in fold_Expr()
1295 e->Iex.Unop.arg->Iex.Const.con->Ico.U1 in fold_Expr()
1301 e->Iex.Unop.arg->Iex.Const.con->Ico.U1 in fold_Expr()
1306 e->Iex.Unop.arg->Iex.Const.con->Ico.U1 in fold_Expr()
1311 e->Iex.Unop.arg->Iex.Const.con->Ico.U1 in fold_Expr()
1316 e->Iex.Unop.arg->Iex.Const.con->Ico.U1 in fold_Expr()
1321 /* signed */ Int s32 = e->Iex.Unop.arg->Iex.Const.con->Ico.U8; in fold_Expr()
1328 /* signed */ Int s32 = e->Iex.Unop.arg->Iex.Const.con->Ico.U16; in fold_Expr()
1336 0xFFULL & e->Iex.Unop.arg->Iex.Const.con->Ico.U8)); in fold_Expr()
1340 0xFFFFULL & e->Iex.Unop.arg->Iex.Const.con->Ico.U16)); in fold_Expr()
1344 0xFF & e->Iex.Unop.arg->Iex.Const.con->Ico.U8)); in fold_Expr()
1347 /* signed */ Short s16 = e->Iex.Unop.arg->Iex.Const.con->Ico.U8; in fold_Expr()
1355 0xFF & e->Iex.Unop.arg->Iex.Const.con->Ico.U8)); in fold_Expr()
1359 0xFFFF & e->Iex.Unop.arg->Iex.Const.con->Ico.U16)); in fold_Expr()
1363 0xFFFF & e->Iex.Unop.arg->Iex.Const.con->Ico.U32))); in fold_Expr()
1367 0xFF & e->Iex.Unop.arg->Iex.Const.con->Ico.U32))); in fold_Expr()
1371 1 == (1 & e->Iex.Unop.arg->Iex.Const.con->Ico.U32) in fold_Expr()
1376 1 == (1 & e->Iex.Unop.arg->Iex.Const.con->Ico.U64) in fold_Expr()
1382 ~ (e->Iex.Unop.arg->Iex.Const.con->Ico.V128))); in fold_Expr()
1386 ~ (e->Iex.Unop.arg->Iex.Const.con->Ico.U64))); in fold_Expr()
1390 ~ (e->Iex.Unop.arg->Iex.Const.con->Ico.U32))); in fold_Expr()
1394 ~ (e->Iex.Unop.arg->Iex.Const.con->Ico.U16)))); in fold_Expr()
1398 ~ (e->Iex.Unop.arg->Iex.Const.con->Ico.U8)))); in fold_Expr()
1403 notBool(e->Iex.Unop.arg->Iex.Const.con->Ico.U1))); in fold_Expr()
1407 ULong w64 = e->Iex.Unop.arg->Iex.Const.con->Ico.U64; in fold_Expr()
1413 ULong w64 = e->Iex.Unop.arg->Iex.Const.con->Ico.U64; in fold_Expr()
1419 ULong w64 = e->Iex.Unop.arg->Iex.Const.con->Ico.U64; in fold_Expr()
1425 ULong w64 = e->Iex.Unop.arg->Iex.Const.con->Ico.U64; in fold_Expr()
1433 & e->Iex.Unop.arg->Iex.Const.con->Ico.U32)); in fold_Expr()
1436 /* signed */ Long s64 = e->Iex.Unop.arg->Iex.Const.con->Ico.U16; in fold_Expr()
1443 /* signed */ Long s64 = e->Iex.Unop.arg->Iex.Const.con->Ico.U32; in fold_Expr()
1451 UShort w16 = e->Iex.Unop.arg->Iex.Const.con->Ico.U16; in fold_Expr()
1457 UShort w16 = e->Iex.Unop.arg->Iex.Const.con->Ico.U16; in fold_Expr()
1467 (0xFF & e->Iex.Unop.arg->Iex.Const.con->Ico.U8) in fold_Expr()
1473 (0xFFFFFFFF & e->Iex.Unop.arg->Iex.Const.con->Ico.U32) in fold_Expr()
1478 0ULL != e->Iex.Unop.arg->Iex.Const.con->Ico.U64 in fold_Expr()
1483 UInt w32 = e->Iex.Unop.arg->Iex.Const.con->Ico.U32; in fold_Expr()
1491 ULong w64 = e->Iex.Unop.arg->Iex.Const.con->Ico.U64; in fold_Expr()
1500 UInt u32 = e->Iex.Unop.arg->Iex.Const.con->Ico.U32; in fold_Expr()
1508 ULong u64 = e->Iex.Unop.arg->Iex.Const.con->Ico.U64; in fold_Expr()
1516 UInt u32 = e->Iex.Unop.arg->Iex.Const.con->Ico.U32; in fold_Expr()
1522 ULong u64 = e->Iex.Unop.arg->Iex.Const.con->Ico.U64; in fold_Expr()
1533 UInt u32 = e->Iex.Unop.arg->Iex.Const.con->Ico.U32; in fold_Expr()
1542 UShort v128 = e->Iex.Unop.arg->Iex.Const.con->Ico.V128; in fold_Expr()
1551 UShort v128 = e->Iex.Unop.arg->Iex.Const.con->Ico.V128; in fold_Expr()
1560 ULong u64 = e->Iex.Unop.arg->Iex.Const.con->Ico.U64; in fold_Expr()
1572 UInt v256 = e->Iex.Unop.arg->Iex.Const.con->Ico.V256; in fold_Expr()
1597 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U8 in fold_Expr()
1598 | e->Iex.Binop.arg2->Iex.Const.con->Ico.U8)))); in fold_Expr()
1602 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U16 in fold_Expr()
1603 | e->Iex.Binop.arg2->Iex.Const.con->Ico.U16)))); in fold_Expr()
1607 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U32 in fold_Expr()
1608 | e->Iex.Binop.arg2->Iex.Const.con->Ico.U32))); in fold_Expr()
1612 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U64 in fold_Expr()
1613 | e->Iex.Binop.arg2->Iex.Const.con->Ico.U64))); in fold_Expr()
1617 (e->Iex.Binop.arg1->Iex.Const.con->Ico.V128 in fold_Expr()
1618 | e->Iex.Binop.arg2->Iex.Const.con->Ico.V128))); in fold_Expr()
1624 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U8 in fold_Expr()
1625 ^ e->Iex.Binop.arg2->Iex.Const.con->Ico.U8)))); in fold_Expr()
1629 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U16 in fold_Expr()
1630 ^ e->Iex.Binop.arg2->Iex.Const.con->Ico.U16)))); in fold_Expr()
1634 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U32 in fold_Expr()
1635 ^ e->Iex.Binop.arg2->Iex.Const.con->Ico.U32))); in fold_Expr()
1639 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U64 in fold_Expr()
1640 ^ e->Iex.Binop.arg2->Iex.Const.con->Ico.U64))); in fold_Expr()
1644 (e->Iex.Binop.arg1->Iex.Const.con->Ico.V128 in fold_Expr()
1645 ^ e->Iex.Binop.arg2->Iex.Const.con->Ico.V128))); in fold_Expr()
1651 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U8 in fold_Expr()
1652 & e->Iex.Binop.arg2->Iex.Const.con->Ico.U8)))); in fold_Expr()
1656 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U16 in fold_Expr()
1657 & e->Iex.Binop.arg2->Iex.Const.con->Ico.U16)))); in fold_Expr()
1661 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U32 in fold_Expr()
1662 & e->Iex.Binop.arg2->Iex.Const.con->Ico.U32))); in fold_Expr()
1666 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U64 in fold_Expr()
1667 & e->Iex.Binop.arg2->Iex.Const.con->Ico.U64))); in fold_Expr()
1671 (e->Iex.Binop.arg1->Iex.Const.con->Ico.V128 in fold_Expr()
1672 & e->Iex.Binop.arg2->Iex.Const.con->Ico.V128))); in fold_Expr()
1678 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U8 in fold_Expr()
1679 + e->Iex.Binop.arg2->Iex.Const.con->Ico.U8)))); in fold_Expr()
1683 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U32 in fold_Expr()
1684 + e->Iex.Binop.arg2->Iex.Const.con->Ico.U32))); in fold_Expr()
1688 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U64 in fold_Expr()
1689 + e->Iex.Binop.arg2->Iex.Const.con->Ico.U64))); in fold_Expr()
1695 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U8 in fold_Expr()
1696 - e->Iex.Binop.arg2->Iex.Const.con->Ico.U8)))); in fold_Expr()
1700 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U32 in fold_Expr()
1701 - e->Iex.Binop.arg2->Iex.Const.con->Ico.U32))); in fold_Expr()
1705 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U64 in fold_Expr()
1706 - e->Iex.Binop.arg2->Iex.Const.con->Ico.U64))); in fold_Expr()
1711 UInt u32a = e->Iex.Binop.arg1->Iex.Const.con->Ico.U32; in fold_Expr()
1712 UInt u32b = e->Iex.Binop.arg2->Iex.Const.con->Ico.U32; in fold_Expr()
1721 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U32 in fold_Expr()
1722 * e->Iex.Binop.arg2->Iex.Const.con->Ico.U32))); in fold_Expr()
1726 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U64 in fold_Expr()
1727 * e->Iex.Binop.arg2->Iex.Const.con->Ico.U64))); in fold_Expr()
1732 UInt u32a = e->Iex.Binop.arg1->Iex.Const.con->Ico.U32; in fold_Expr()
1733 UInt u32b = e->Iex.Binop.arg2->Iex.Const.con->Ico.U32; in fold_Expr()
1746 vassert(e->Iex.Binop.arg2->Iex.Const.con->tag == Ico_U8); in fold_Expr()
1747 shift = (Int)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U8); in fold_Expr()
1750 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U32 in fold_Expr()
1754 vassert(e->Iex.Binop.arg2->Iex.Const.con->tag == Ico_U8); in fold_Expr()
1755 shift = (Int)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U8); in fold_Expr()
1758 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U64 in fold_Expr()
1766 vassert(e->Iex.Binop.arg2->Iex.Const.con->tag == Ico_U8); in fold_Expr()
1767 s32 = (Int)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U32); in fold_Expr()
1768 shift = (Int)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U8); in fold_Expr()
1778 vassert(e->Iex.Binop.arg2->Iex.Const.con->tag == Ico_U8); in fold_Expr()
1779 s64 = (Long)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U64); in fold_Expr()
1780 shift = (Int)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U8); in fold_Expr()
1792 vassert(e->Iex.Binop.arg2->Iex.Const.con->tag == Ico_U8); in fold_Expr()
1793 u32 = (UInt)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U32); in fold_Expr()
1794 shift = (Int)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U8); in fold_Expr()
1804 vassert(e->Iex.Binop.arg2->Iex.Const.con->tag == Ico_U8); in fold_Expr()
1805 u64 = (ULong)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U64); in fold_Expr()
1806 shift = (Int)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U8); in fold_Expr()
1817 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U32 in fold_Expr()
1818 == e->Iex.Binop.arg2->Iex.Const.con->Ico.U32)))); in fold_Expr()
1822 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U64 in fold_Expr()
1823 == e->Iex.Binop.arg2->Iex.Const.con->Ico.U64)))); in fold_Expr()
1829 ((0xFF & e->Iex.Binop.arg1->Iex.Const.con->Ico.U8) in fold_Expr()
1830 != (0xFF & e->Iex.Binop.arg2->Iex.Const.con->Ico.U8))))); in fold_Expr()
1834 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U32 in fold_Expr()
1835 != e->Iex.Binop.arg2->Iex.Const.con->Ico.U32)))); in fold_Expr()
1839 (e->Iex.Binop.arg1->Iex.Const.con->Ico.U64 in fold_Expr()
1840 != e->Iex.Binop.arg2->Iex.Const.con->Ico.U64)))); in fold_Expr()
1846 ((UInt)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U32) in fold_Expr()
1847 <= (UInt)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U32))))); in fold_Expr()
1851 ((ULong)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U64) in fold_Expr()
1852 <= (ULong)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U64))))); in fold_Expr()
1858 ((Int)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U32) in fold_Expr()
1859 <= (Int)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U32))))); in fold_Expr()
1863 ((Long)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U64) in fold_Expr()
1864 <= (Long)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U64))))); in fold_Expr()
1870 ((Int)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U32) in fold_Expr()
1871 < (Int)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U32))))); in fold_Expr()
1875 ((Long)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U64) in fold_Expr()
1876 < (Long)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U64))))); in fold_Expr()
1882 ((UInt)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U32) in fold_Expr()
1883 < (UInt)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U32))))); in fold_Expr()
1887 ((ULong)(e->Iex.Binop.arg1->Iex.Const.con->Ico.U64) in fold_Expr()
1888 < (ULong)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U64))))); in fold_Expr()
1894 UInt u32a = e->Iex.Binop.arg1->Iex.Const.con->Ico.U32; in fold_Expr()
1895 UInt u32b = e->Iex.Binop.arg2->Iex.Const.con->Ico.U32; in fold_Expr()
1913 ->Iex.Const.con->Ico.U32)) << 32) in fold_Expr()
1914 | ((ULong)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U32)) in fold_Expr()
1929 ULong argHi = e->Iex.Binop.arg1->Iex.Const.con->Ico.U64; in fold_Expr()
1930 ULong argLo = e->Iex.Binop.arg2->Iex.Const.con->Ico.U64; in fold_Expr()
1943 UShort arg1 = e->Iex.Binop.arg1->Iex.Const.con->Ico.V128; in fold_Expr()
1944 UShort arg2 = e->Iex.Binop.arg2->Iex.Const.con->Ico.V128; in fold_Expr()
2153 vassert(e->Iex.Mux0X.cond->Iex.Const.con->tag == Ico_U8); in fold_Expr()
2155 ->Iex.Const.con->Ico.U8)); in fold_Expr()
2234 && rhs->Iex.Const.con->tag != Ico_F64i) in subst_Expr()
2465 vassert(fcond->Iex.Const.con->tag == Ico_U1); in subst_and_fold_Stmt()
2466 vassert(fcond->Iex.Const.con->Ico.U1 == False in subst_and_fold_Stmt()
2467 || fcond->Iex.Const.con->Ico.U1 == True); in subst_and_fold_Stmt()
2468 if (fcond->Iex.Const.con->Ico.U1 == False) { in subst_and_fold_Stmt()
2472 vassert(fcond->Iex.Const.con->Ico.U1 == True); in subst_and_fold_Stmt()
2546 && st2->Ist.WrTmp.data->Iex.Const.con->tag != Ico_F64i) continue; in cprop_BB()
2699 && e->Iex.Const.con->tag == Ico_U1 in isZeroU1()
2700 && e->Iex.Const.con->Ico.U1 == False ); in isZeroU1()
2707 && e->Iex.Const.con->tag == Ico_U1 in isOneU1()
2708 && e->Iex.Const.con->Ico.U1 == True ); in isOneU1()
2972 union { IRTemp tmp; IRConst* con; } u; member
2982 return eqIRConst(tc1->u.con, tc2->u.con); in eqTmpOrConst()
3024 dst->u.con = arg->Iex.Const.con; in irExprVec_to_TmpOrConsts()
3145 IRConst* con; in availExpr_to_IRExpr() local
3154 con = LibVEX_Alloc(sizeof(IRConst)); in availExpr_to_IRExpr()
3155 *con = ae->u.Btc.con2; in availExpr_to_IRExpr()
3158 IRExpr_Const(con) ); in availExpr_to_IRExpr()
3160 con = LibVEX_Alloc(sizeof(IRConst)); in availExpr_to_IRExpr()
3161 *con = ae->u.Bct.con1; in availExpr_to_IRExpr()
3163 IRExpr_Const(con), in availExpr_to_IRExpr()
3183 vec[i] = IRExpr_Const(tc->u.con); in availExpr_to_IRExpr()
3283 ae->u.Btc.con2 = *(e->Iex.Binop.arg2->Iex.Const.con); in irExpr_to_AvailExpr()
3294 ae->u.Bct.con1 = *(e->Iex.Binop.arg1->Iex.Const.con); in irExpr_to_AvailExpr()
3299 && e->Iex.Const.con->tag == Ico_F64i) { in irExpr_to_AvailExpr()
3302 ae->u.Cf64i.f64i = e->Iex.Const.con->Ico.F64i; in irExpr_to_AvailExpr()
3523 *i32 = (Int)(e->Iex.Binop.arg2->Iex.Const.con->Ico.U32); in isAdd32OrSub32()
3546 Int con = 0; in collapseChain() local
3560 con += ii; in collapseChain()
3571 *i32 = con; in collapseChain()
3582 Int i, con, con2; in collapse_AddSub_chains_BB() local
3592 && isAdd32OrSub32(st->Ist.WrTmp.data, &var, &con)) { in collapse_AddSub_chains_BB()
3602 con2 += con; in collapse_AddSub_chains_BB()
4204 IRConst* con; in maybe_loop_unroll_BB() local
4225 && (udst->Iex.Const.con->tag == Ico_U32 in maybe_loop_unroll_BB()
4226 || udst->Iex.Const.con->tag == Ico_U64)) { in maybe_loop_unroll_BB()
4229 xxx_value = udst->Iex.Const.con->tag == Ico_U64 in maybe_loop_unroll_BB()
4230 ? udst->Iex.Const.con->Ico.U64 in maybe_loop_unroll_BB()
4231 : (Addr64)(udst->Iex.Const.con->Ico.U32); in maybe_loop_unroll_BB()
4270 con = st->Ist.Exit.dst; in maybe_loop_unroll_BB()
4271 vassert(con->tag == Ico_U32 || con->tag == Ico_U64); in maybe_loop_unroll_BB()
4273 xxx_value = con->tag == Ico_U64 in maybe_loop_unroll_BB()
4278 vassert(con->tag == udst->Iex.Const.con->tag); in maybe_loop_unroll_BB()
4308 con = st->Ist.Exit.dst; in maybe_loop_unroll_BB()
4309 vassert(con->tag == Ico_U32 || con->tag == Ico_U64); in maybe_loop_unroll_BB()
4313 vassert(udst->Iex.Const.con->tag == Ico_U32 in maybe_loop_unroll_BB()
4314 || udst->Iex.Const.con->tag == Ico_U64); in maybe_loop_unroll_BB()
4315 vassert(con->tag == udst->Iex.Const.con->tag); in maybe_loop_unroll_BB()
4318 if (con->tag == Ico_U64) { in maybe_loop_unroll_BB()
4319 udst->Iex.Const.con->Ico.U64 = xxx_value; in maybe_loop_unroll_BB()
4320 con->Ico.U64 = yyy_value; in maybe_loop_unroll_BB()
4322 udst->Iex.Const.con->Ico.U32 = (UInt)xxx_value; in maybe_loop_unroll_BB()
4323 con->Ico.U32 = (UInt)yyy_value; in maybe_loop_unroll_BB()