Lines Matching refs:IRStmt
1452 void ppIRStmt ( IRStmt* s )
1455 vex_printf("!!! IRStmt* which is NULL !!!");
1974 /* Constructors -- IRStmt */
1976 IRStmt* IRStmt_NoOp ( void )
1979 static IRStmt static_closure;
1983 IRStmt* IRStmt_IMark ( Addr64 addr, Int len, UChar delta ) {
1984 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
1991 IRStmt* IRStmt_AbiHint ( IRExpr* base, Int len, IRExpr* nia ) {
1992 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
1999 IRStmt* IRStmt_Put ( Int off, IRExpr* data ) {
2000 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
2006 IRStmt* IRStmt_PutI ( IRPutI* details ) {
2007 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
2012 IRStmt* IRStmt_WrTmp ( IRTemp tmp, IRExpr* data ) {
2013 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
2019 IRStmt* IRStmt_Store ( IREndness end, IRExpr* addr, IRExpr* data ) {
2020 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
2028 IRStmt* IRStmt_StoreG ( IREndness end, IRExpr* addr, IRExpr* data,
2030 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
2036 IRStmt* IRStmt_LoadG ( IREndness end, IRLoadGOp cvt, IRTemp dst,
2038 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
2043 IRStmt* IRStmt_CAS ( IRCAS* cas ) {
2044 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
2049 IRStmt* IRStmt_LLSC ( IREndness end,
2051 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
2059 IRStmt* IRStmt_Dirty ( IRDirty* d )
2061 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
2066 IRStmt* IRStmt_MBE ( IRMBusEvent event )
2068 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
2073 IRStmt* IRStmt_Exit ( IRExpr* guard, IRJumpKind jk, IRConst* dst,
2075 IRStmt* s = LibVEX_Alloc(sizeof(IRStmt));
2105 bb->stmts = LibVEX_Alloc(bb->stmts_size * sizeof(IRStmt*));
2274 IRStmt* deepCopyIRStmt ( IRStmt* s )
2351 IRStmt** sts2;
2354 sts2 = LibVEX_Alloc(bb2->stmts_used * sizeof(IRStmt*));
3301 void addStmtToIRSB ( IRSB* bb, IRStmt* st )
3305 IRStmt** stmts2 = LibVEX_Alloc(2 * bb->stmts_size * sizeof(IRStmt*));
3462 IRStmt. The only place where any expression is allowed to be
3479 Bool isFlatIRStmt ( IRStmt* st )
3607 void sanityCheckFail ( IRSB* bb, IRStmt* stmt, const HChar* what )
3658 void useBeforeDef_Temp ( IRSB* bb, IRStmt* stmt, IRTemp tmp, Int* def_counts )
3667 void useBeforeDef_Expr ( IRSB* bb, IRStmt* stmt, IRExpr* expr, Int* def_counts )
3730 void useBeforeDef_Stmt ( IRSB* bb, IRStmt* stmt, Int* def_counts )
3813 void tcExpr ( IRSB* bb, IRStmt* stmt, IRExpr* expr, IRType gWordTy )
4021 void tcStmt ( IRSB* bb, IRStmt* stmt, IRType gWordTy )
4034 sanityCheckFail(bb,stmt,"IRStmt.IMark.len: implausible");
4036 sanityCheckFail(bb,stmt,"IRStmt.IMark.delta: implausible");
4040 sanityCheckFail(bb,stmt,"IRStmt.AbiHint.base: "
4043 sanityCheckFail(bb,stmt,"IRStmt.AbiHint.nia: "
4049 sanityCheckFail(bb,stmt,"IRStmt.Put.data: cannot Put :: Ity_I1");
4056 sanityCheckFail(bb,stmt,"IRStmt.PutI.data: cannot PutI :: Ity_I1");
4059 sanityCheckFail(bb,stmt,"IRStmt.PutI.data: data ty != elem ty");
4061 sanityCheckFail(bb,stmt,"IRStmt.PutI.ix: not :: Ity_I32");
4063 sanityCheckFail(bb,stmt,"IRStmt.PutI.descr: invalid descr");
4070 "IRStmt.Put.Tmp: tmp and expr do not match");
4077 "IRStmt.Store.addr: not :: guest word type");
4080 "IRStmt.Store.data: cannot Store :: Ity_I1");
4105 sanityCheckFail(bb,stmt,"IRStmt.LoadG.guard: not :: Ity_I1");
4107 sanityCheckFail(bb,stmt,"IRStmt.LoadG.addr: not "
4110 sanityCheckFail(bb,stmt,"IRStmt.LoadG: dst/alt type mismatch");
4114 sanityCheckFail(bb,stmt,"IRStmt.LoadG: dst/loaded type mismatch");
4165 sanityCheckFail(bb,stmt,"IRStmt.CAS: ill-formed");
4170 sanityCheckFail(bb,stmt,"IRStmt.LLSC.addr: not :: guest word type");
4223 sanityCheckFail(bb,stmt,"IRStmt.Dirty.guard not :: Ity_I1");
4229 sanityCheckFail(bb,stmt,"IRStmt.Dirty.dst :: Ity_I1");
4234 sanityCheckFail(bb,stmt,"IRStmt.Dirty: > 32 args");
4242 sanityCheckFail(bb,stmt,"IRStmt.Dirty.arg[i] :: Ity_I1");
4245 sanityCheckFail(bb,stmt,"IRStmt.Dirty.args: > 1 BBPTR arg");
4251 "IRStmt.Dirty.args: VECRET present, "
4257 "IRStmt.Dirty.args: VECRET not present, "
4261 "IRStmt.Dirty.args: > 1 VECRET present");
4266 "IRStmt.Dirty.args: > 1 BBPTR present");
4272 "IRStmt.Dirty.args: BBPTR requested, "
4277 sanityCheckFail(bb,stmt,"IRStmt.Dirty: ill-formed");
4286 default: sanityCheckFail(bb,stmt,"IRStmt.MBE.event: unknown");
4293 sanityCheckFail(bb,stmt,"IRStmt.Exit.guard: not :: Ity_I1");
4295 sanityCheckFail(bb,stmt,"IRStmt.Exit.dst: bad dst");
4297 sanityCheckFail(bb,stmt,"IRStmt.Exit.dst: not :: guest word type");
4300 sanityCheckFail(bb,stmt,"IRStmt.Exit.offsIP: too low");
4311 IRStmt* stmt;
4341 sanityCheckFail(bb, stmt, "IRStmt: is NULL");
4343 sanityCheckFail(bb, stmt, "IRStmt: is not flat");
4368 "IRStmt.Tmp: destination tmp is out of range");
4372 "IRStmt.Tmp: destination tmp is assigned more than once");
4378 "IRStmt.LoadG: destination tmp is out of range");
4382 "IRStmt.LoadG: destination tmp is assigned more than once");
4389 "IRStmt.Dirty: destination tmp is out of range");
4393 "IRStmt.Dirty: destination tmp is assigned more than once");
4401 "IRStmt.CAS: destination tmpHi is out of range");
4405 "IRStmt.CAS: destination tmpHi is assigned more than once");
4409 "IRStmt.CAS: destination tmpLo is out of range");
4413 "IRStmt.CAS: destination tmpLo is assigned more than once");
4418 "IRStmt.LLSC: destination tmp is out of range");
4422 "IRStmt.LLSC: destination tmp is assigned more than once");