Lines Matching refs:SExpr

61 static bool isIncompletePhi(const til::SExpr *E) {  in isIncompletePhi()
70 til::SExpr *SExprBuilder::lookupStmt(const Stmt *S) { in lookupStmt()
183 til::SExpr *E = translate(AttrExp, Ctx); in translateAttrExpr()
203 til::SExpr *SExprBuilder::translate(const Stmt *S, CallingContext *Ctx) { in translate()
209 if (til::SExpr *E = lookupStmt(S)) in translate()
273 til::SExpr *SExprBuilder::translateDeclRefExpr(const DeclRefExpr *DRE, in translateDeclRefExpr()
298 til::SExpr *SExprBuilder::translateCXXThisExpr(const CXXThisExpr *TE, in translateCXXThisExpr()
307 static const ValueDecl *getValueDeclFromSExpr(const til::SExpr *E) { in getValueDeclFromSExpr()
319 static bool hasCppPointerType(const til::SExpr *E) { in hasCppPointerType()
342 til::SExpr *SExprBuilder::translateMemberExpr(const MemberExpr *ME, in translateMemberExpr()
344 til::SExpr *BE = translate(ME->getBase(), Ctx); in translateMemberExpr()
345 til::SExpr *E = new (Arena) til::SApply(BE); in translateMemberExpr()
358 til::SExpr *SExprBuilder::translateCallExpr(const CallExpr *CE, in translateCallExpr()
370 return const_cast<til::SExpr*>( in translateCallExpr()
375 til::SExpr *E = translate(CE->getCallee(), Ctx); in translateCallExpr()
377 til::SExpr *A = translate(Arg, Ctx); in translateCallExpr()
384 til::SExpr *SExprBuilder::translateCXXMemberCallExpr( in translateCXXMemberCallExpr()
400 til::SExpr *SExprBuilder::translateCXXOperatorCallExpr( in translateCXXOperatorCallExpr()
415 til::SExpr *SExprBuilder::translateUnaryOperator(const UnaryOperator *UO, in translateUnaryOperator()
465 til::SExpr *SExprBuilder::translateBinOp(til::TIL_BinaryOpcode Op, in translateBinOp()
468 til::SExpr *E0 = translate(BO->getLHS(), Ctx); in translateBinOp()
469 til::SExpr *E1 = translate(BO->getRHS(), Ctx); in translateBinOp()
477 til::SExpr *SExprBuilder::translateBinAssign(til::TIL_BinaryOpcode Op, in translateBinAssign()
483 til::SExpr *E0 = translate(LHS, Ctx); in translateBinAssign()
484 til::SExpr *E1 = translate(RHS, Ctx); in translateBinAssign()
487 til::SExpr *CV = nullptr; in translateBinAssign()
494 til::SExpr *Arg = CV ? CV : new (Arena) til::Load(E0); in translateBinAssign()
504 til::SExpr *SExprBuilder::translateBinaryOperator(const BinaryOperator *BO, in translateBinaryOperator()
550 til::SExpr *SExprBuilder::translateCastExpr(const CastExpr *CE, in translateCastExpr()
556 til::SExpr *E0 = lookupVarDecl(DRE->getDecl()); in translateCastExpr()
560 til::SExpr *E0 = translate(CE->getSubExpr(), Ctx); in translateCastExpr()
570 til::SExpr *E0 = translate(CE->getSubExpr(), Ctx); in translateCastExpr()
575 til::SExpr *E0 = translate(CE->getSubExpr(), Ctx); in translateCastExpr()
584 til::SExpr *
587 til::SExpr *E0 = translate(E->getBase(), Ctx); in translateArraySubscriptExpr()
588 til::SExpr *E1 = translate(E->getIdx(), Ctx); in translateArraySubscriptExpr()
593 til::SExpr *
603 til::SExpr *
609 til::SExpr* SE = translate(E, Ctx); in translateDeclStmt()
630 til::SExpr *SExprBuilder::addStatement(til::SExpr* E, const Stmt *S, in addStatement()
644 til::SExpr *SExprBuilder::lookupVarDecl(const ValueDecl *VD) { in lookupVarDecl()
655 static void maybeUpdateVD(til::SExpr *E, const ValueDecl *VD) { in maybeUpdateVD()
665 til::SExpr *SExprBuilder::addVarDecl(const ValueDecl *VD, til::SExpr *E) { in addVarDecl()
675 til::SExpr *SExprBuilder::updateVarDecl(const ValueDecl *VD, til::SExpr *E) { in updateVarDecl()
679 til::SExpr *Ptr = new (Arena) til::LiteralPtr(VD); in updateVarDecl()
680 til::SExpr *St = new (Arena) til::Store(Ptr, E); in updateVarDecl()
692 void SExprBuilder::makePhiNodeVar(unsigned i, unsigned NPreds, til::SExpr *E) { in makePhiNodeVar()
696 til::SExpr *CurrE = CurrentLVarMap[i].second; in makePhiNodeVar()
802 for (til::SExpr *PE : BB->arguments()) { in mergePhiNodesBackEdge()
807 til::SExpr *E = lookupVarDecl(Ph->clangDecl()); in mergePhiNodesBackEdge()
839 til::SExpr *Lp = new (Arena) til::LiteralPtr(Pm); in enterCFG()
840 til::SExpr *Ld = new (Arena) til::Load(Lp); in enterCFG()
841 til::SExpr *V = addStatement(Ld, nullptr, Pm); in enterCFG()
893 til::SExpr *E = translate(S, nullptr); in handleStatement()
900 til::SExpr *Sf = new (Arena) til::LiteralPtr(VD); in handleDestructorCall()
901 til::SExpr *Dr = new (Arena) til::LiteralPtr(DD); in handleDestructorCall()
902 til::SExpr *Ap = new (Arena) til::Apply(Dr, Sf); in handleDestructorCall()
903 til::SExpr *E = new (Arena) til::Call(Ap); in handleDestructorCall()
926 til::SExpr *C = translate(B->getTerminatorCondition(true), nullptr); in exitCFGBlockBody()