Home | History | Annotate | Download | only in priv

Lines Matching refs:Ist

1167                      s->Ist.IMark.addr, s->Ist.IMark.len,
1168 (UInt)s->Ist.IMark.delta);
1172 ppIRExpr(s->Ist.AbiHint.base);
1173 vex_printf(", %d, ", s->Ist.AbiHint.len);
1174 ppIRExpr(s->Ist.AbiHint.nia);
1178 vex_printf( "PUT(%d) = ", s->Ist.Put.offset);
1179 ppIRExpr(s->Ist.Put.data);
1183 ppIRRegArray(s->Ist.PutI.descr);
1185 ppIRExpr(s->Ist.PutI.ix);
1186 vex_printf(",%d] = ", s->Ist.PutI.bias);
1187 ppIRExpr(s->Ist.PutI.data);
1190 ppIRTemp(s->Ist.WrTmp.tmp);
1192 ppIRExpr(s->Ist.WrTmp.data);
1195 vex_printf( "ST%s(", s->Ist.Store.end==Iend_LE ? "le" : "be" );
1196 ppIRExpr(s->Ist.Store.addr);
1198 ppIRExpr(s->Ist.Store.data);
1201 ppIRCAS(s->Ist.CAS.details);
1204 if (s->Ist.LLSC.storedata == NULL) {
1205 ppIRTemp(s->Ist.LLSC.result);
1207 s->Ist.LLSC.end==Iend_LE ? "le" : "be");
1208 ppIRExpr(s->Ist.LLSC.addr);
1211 ppIRTemp(s->Ist.LLSC.result);
1213 s->Ist.LLSC.end==Iend_LE ? "le" : "be");
1214 ppIRExpr(s->Ist.LLSC.addr);
1216 ppIRExpr(s->Ist.LLSC.storedata);
1221 ppIRDirty(s->Ist.Dirty.details);
1225 ppIRMBusEvent(s->Ist.MBE.event);
1229 ppIRExpr(s->Ist.Exit.guard);
1231 ppIRJumpKind(s->Ist.Exit.jk);
1233 ppIRConst(s->Ist.Exit.dst);
1626 s->Ist.IMark.addr = addr;
1627 s->Ist.IMark.len = len;
1628 s->Ist.IMark.delta = delta;
1634 s->Ist.AbiHint.base = base;
1635 s->Ist.AbiHint.len = len;
1636 s->Ist.AbiHint.nia = nia;
1642 s->Ist.Put.offset = off;
1643 s->Ist.Put.data = data;
1650 s->Ist.PutI.descr = descr;
1651 s->Ist.PutI.ix = ix;
1652 s->Ist.PutI.bias = bias;
1653 s->Ist.PutI.data = data;
1659 s->Ist.WrTmp.tmp = tmp;
1660 s->Ist.WrTmp.data = data;
1666 s->Ist.Store.end = end;
1667 s->Ist.Store.addr = addr;
1668 s->Ist.Store.data = data;
1675 s->Ist.CAS.details = cas;
1682 s->Ist.LLSC.end = end;
1683 s->Ist.LLSC.result = result;
1684 s->Ist.LLSC.addr = addr;
1685 s->Ist.LLSC.storedata = storedata;
1692 s->Ist.Dirty.details = d;
1699 s->Ist.MBE.event = event;
1705 s->Ist.Exit.guard = guard;
1706 s->Ist.Exit.jk = jk;
1707 s->Ist.Exit.dst = dst;
1887 return IRStmt_AbiHint(deepCopyIRExpr(s->Ist.AbiHint.base),
1888 s->Ist.AbiHint.len,
1889 deepCopyIRExpr(s->Ist.AbiHint.nia));
1891 return IRStmt_IMark(s->Ist.IMark.addr,
1892 s->Ist.IMark.len,
1893 s->Ist.IMark.delta);
1895 return IRStmt_Put(s->Ist.Put.offset,
1896 deepCopyIRExpr(s->Ist.Put.data));
1898 return IRStmt_PutI(deepCopyIRRegArray(s->Ist.PutI.descr),
1899 deepCopyIRExpr(s->Ist.PutI.ix),
1900 s->Ist.PutI.bias,
1901 deepCopyIRExpr(s->Ist.PutI.data));
1903 return IRStmt_WrTmp(s->Ist.WrTmp.tmp,
1904 deepCopyIRExpr(s->Ist.WrTmp.data));
1906 return IRStmt_Store(s->Ist.Store.end,
1907 deepCopyIRExpr(s->Ist.Store.addr),
1908 deepCopyIRExpr(s->Ist.Store.data));
1910 return IRStmt_CAS(deepCopyIRCAS(s->Ist.CAS.details));
1912 return IRStmt_LLSC(s->Ist.LLSC.end,
1913 s->Ist.LLSC.result,
1914 deepCopyIRExpr(s->Ist.LLSC.addr),
1915 s->Ist.LLSC.storedata
1916 ? deepCopyIRExpr(s->Ist.LLSC.storedata)
1919 return IRStmt_Dirty(deepCopyIRDirty(s->Ist.Dirty.details));
1921 return IRStmt_MBE(s->Ist.MBE.event);
1923 return IRStmt_Exit(deepCopyIRExpr(s->Ist.Exit.guard),
1924 s->Ist.Exit.jk,
1925 deepCopyIRConst(s->Ist.Exit.dst));
2770 return isIRAtom(st->Ist.AbiHint.base)
2771 && isIRAtom(st->Ist.AbiHint.nia);
2773 return isIRAtom(st->Ist.Put.data);
2775 return toBool( isIRAtom(st->Ist.PutI.ix)
2776 && isIRAtom(st->Ist.PutI.data) );
2781 e = st->Ist.WrTmp.data;
2815 return toBool( isIRAtom(st->Ist.Store.addr)
2816 && isIRAtom(st->Ist.Store.data) );
2818 cas = st->Ist.CAS.details;
2825 return toBool( isIRAtom(st->Ist.LLSC.addr)
2826 && (st->Ist.LLSC.storedata
2827 ? isIRAtom(st->Ist.LLSC.storedata) : True) );
2829 di = st->Ist.Dirty.details;
2843 return isIRAtom(st->Ist.Exit.guard);
2992 useBeforeDef_Expr(bb,stmt,stmt->Ist.AbiHint.base,def_counts);
2993 useBeforeDef_Expr(bb,stmt,stmt->Ist.AbiHint.nia,def_counts);
2996 useBeforeDef_Expr(bb,stmt,stmt->Ist.Put.data,def_counts);
2999 useBeforeDef_Expr(bb,stmt,stmt->Ist.PutI.ix,def_counts);
3000 useBeforeDef_Expr(bb,stmt,stmt->Ist.PutI.data,def_counts);
3003 useBeforeDef_Expr(bb,stmt,stmt->Ist.WrTmp.data,def_counts);
3006 useBeforeDef_Expr(bb,stmt,stmt->Ist.Store.addr,def_counts);
3007 useBeforeDef_Expr(bb,stmt,stmt->Ist.Store.data,def_counts);
3010 cas = stmt->Ist.CAS.details;
3020 useBeforeDef_Expr(bb,stmt,stmt->Ist.LLSC.addr,def_counts);
3021 if (stmt->Ist.LLSC.storedata != NULL)
3022 useBeforeDef_Expr(bb,stmt,stmt->Ist.LLSC.storedata,def_counts);
3025 d = stmt->Ist.Dirty.details;
3035 useBeforeDef_Expr(bb,stmt,stmt->Ist.Exit.guard,def_counts);
3257 if (stmt->Ist.IMark.len < 0 || stmt->Ist.IMark.len > 20)
3259 if (stmt->Ist.IMark.delta > 1)
3263 if (typeOfIRExpr(tyenv, stmt->Ist.AbiHint.base) != gWordTy)
3266 if (typeOfIRExpr(tyenv, stmt->Ist.AbiHint.nia) != gWordTy)
3271 tcExpr( bb, stmt, stmt->Ist.Put.data, gWordTy );
3272 if (typeOfIRExpr(tyenv,stmt->Ist.Put.data) == Ity_I1)
3276 tcExpr( bb, stmt, stmt->Ist.PutI.data, gWordTy );
3277 tcExpr( bb, stmt, stmt->Ist.PutI.ix, gWordTy );
3278 if (typeOfIRExpr(tyenv,stmt->Ist.PutI.data) == Ity_I1)
3280 if (typeOfIRExpr(tyenv,stmt->Ist.PutI.data)
3281 != stmt->Ist.PutI.descr->elemTy)
3283 if (typeOfIRExpr(tyenv,stmt->Ist.PutI.ix) != Ity_I32)
3285 if (!saneIRRegArray(stmt->Ist.PutI.descr))
3289 tcExpr( bb, stmt, stmt->Ist.WrTmp.data, gWordTy );
3290 if (typeOfIRTemp(tyenv, stmt->Ist.WrTmp.tmp)
3291 != typeOfIRExpr(tyenv, stmt->Ist.WrTmp.data))
3295 tcExpr( bb, stmt, stmt->Ist.Store.addr, gWordTy );
3296 tcExpr( bb, stmt, stmt->Ist.Store.data, gWordTy );
3297 if (typeOfIRExpr(tyenv, stmt->Ist.Store.addr) != gWordTy)
3299 if (typeOfIRExpr(tyenv, stmt->Ist.Store.data) == Ity_I1)
3301 if (stmt->Ist.Store.end != Iend_LE && stmt->Ist.Store.end != Iend_BE)
3302 sanityCheckFail(bb,stmt,"Ist.Store.end: bogus endianness");
3305 cas = stmt->Ist.CAS.details;
3356 if (typeOfIRExpr(tyenv, stmt->Ist.LLSC.addr) != gWordTy)
3358 if (stmt->Ist.LLSC.end != Iend_LE && stmt->Ist.LLSC.end != Iend_BE)
3359 sanityCheckFail(bb,stmt,"Ist.LLSC.end: bogus endianness");
3360 tyRes = typeOfIRTemp(tyenv, stmt->Ist.LLSC.result);
3361 if (stmt->Ist
3365 sanityCheckFail(bb,stmt,"Ist.LLSC(LL).result :: bogus");
3369 sanityCheckFail(bb,stmt,"Ist.LLSC(SC).result: not :: Ity_I1");
3370 tyData = typeOfIRExpr(tyenv, stmt->Ist.LLSC.storedata);
3374 "Ist.LLSC(SC).result :: storedata bogus");
3380 d = stmt->Ist.Dirty.details;
3420 switch (stmt->Ist.MBE.event) {
3428 tcExpr( bb, stmt, stmt->Ist.Exit.guard, gWordTy );
3429 if (typeOfIRExpr(tyenv,stmt->Ist.Exit.guard) != Ity_I1)
3431 if (!saneIRConst(stmt->Ist.Exit.dst))
3433 if (typeOfIRConst(stmt->Ist.Exit.dst) != gWordTy)
3499 if (stmt->Ist.WrTmp.tmp < 0 || stmt->Ist.WrTmp.tmp >= n_temps)
3502 def_counts[stmt->Ist.WrTmp.tmp]++;
3503 if (def_counts[stmt->Ist.WrTmp.tmp] > 1)
3510 if (stmt->Ist.Dirty.details->tmp != IRTemp_INVALID) {
3511 d = stmt->Ist.Dirty.details;
3522 cas = stmt->Ist.CAS.details;
3541 if (stmt->Ist.LLSC.result < 0 || stmt->Ist.LLSC.result >= n_temps)
3544 def_counts[stmt->Ist.LLSC.result]++;
3545 if (def_counts[stmt->Ist.LLSC.result] > 1)