Lines Matching refs:SExpr

64 static bool isIncompletePhi(const til::SExpr *E) {  in isIncompletePhi()
72 til::SExpr *SExprBuilder::lookupStmt(const Stmt *S) { in lookupStmt()
204 til::SExpr *E = translate(AttrExp, Ctx); in translateAttrExpr()
224 til::SExpr *SExprBuilder::translate(const Stmt *S, CallingContext *Ctx) { in translate()
230 if (til::SExpr *E = lookupStmt(S)) in translate()
298 til::SExpr *SExprBuilder::translateDeclRefExpr(const DeclRefExpr *DRE, in translateDeclRefExpr()
327 til::SExpr *SExprBuilder::translateCXXThisExpr(const CXXThisExpr *TE, in translateCXXThisExpr()
336 static const ValueDecl *getValueDeclFromSExpr(const til::SExpr *E) { in getValueDeclFromSExpr()
348 static bool hasAnyPointerType(const til::SExpr *E) { in hasAnyPointerType()
371 til::SExpr *SExprBuilder::translateMemberExpr(const MemberExpr *ME, in translateMemberExpr()
373 til::SExpr *BE = translate(ME->getBase(), Ctx); in translateMemberExpr()
374 til::SExpr *E = new (Arena) til::SApply(BE); in translateMemberExpr()
386 til::SExpr *SExprBuilder::translateObjCIVarRefExpr(const ObjCIvarRefExpr *IVRE, in translateObjCIVarRefExpr()
388 til::SExpr *BE = translate(IVRE->getBase(), Ctx); in translateObjCIVarRefExpr()
389 til::SExpr *E = new (Arena) til::SApply(BE); in translateObjCIVarRefExpr()
399 til::SExpr *SExprBuilder::translateCallExpr(const CallExpr *CE, in translateCallExpr()
412 return const_cast<til::SExpr *>( in translateCallExpr()
418 til::SExpr *E = translate(CE->getCallee(), Ctx); in translateCallExpr()
420 til::SExpr *A = translate(Arg, Ctx); in translateCallExpr()
426 til::SExpr *SExprBuilder::translateCXXMemberCallExpr( in translateCXXMemberCallExpr()
441 til::SExpr *SExprBuilder::translateCXXOperatorCallExpr( in translateCXXOperatorCallExpr()
455 til::SExpr *SExprBuilder::translateUnaryOperator(const UnaryOperator *UO, in translateUnaryOperator()
504 til::SExpr *SExprBuilder::translateBinOp(til::TIL_BinaryOpcode Op, in translateBinOp()
507 til::SExpr *E0 = translate(BO->getLHS(), Ctx); in translateBinOp()
508 til::SExpr *E1 = translate(BO->getRHS(), Ctx); in translateBinOp()
515 til::SExpr *SExprBuilder::translateBinAssign(til::TIL_BinaryOpcode Op, in translateBinAssign()
521 til::SExpr *E0 = translate(LHS, Ctx); in translateBinAssign()
522 til::SExpr *E1 = translate(RHS, Ctx); in translateBinAssign()
525 til::SExpr *CV = nullptr; in translateBinAssign()
532 til::SExpr *Arg = CV ? CV : new (Arena) til::Load(E0); in translateBinAssign()
541 til::SExpr *SExprBuilder::translateBinaryOperator(const BinaryOperator *BO, in translateBinaryOperator()
587 til::SExpr *SExprBuilder::translateCastExpr(const CastExpr *CE, in translateCastExpr()
593 til::SExpr *E0 = lookupVarDecl(DRE->getDecl()); in translateCastExpr()
597 til::SExpr *E0 = translate(CE->getSubExpr(), Ctx); in translateCastExpr()
607 til::SExpr *E0 = translate(CE->getSubExpr(), Ctx); in translateCastExpr()
612 til::SExpr *E0 = translate(CE->getSubExpr(), Ctx); in translateCastExpr()
620 til::SExpr *
623 til::SExpr *E0 = translate(E->getBase(), Ctx); in translateArraySubscriptExpr()
624 til::SExpr *E1 = translate(E->getIdx(), Ctx); in translateArraySubscriptExpr()
628 til::SExpr *
637 til::SExpr *
643 til::SExpr* SE = translate(E, Ctx); in translateDeclStmt()
661 til::SExpr *SExprBuilder::addStatement(til::SExpr* E, const Stmt *S, in addStatement()
674 til::SExpr *SExprBuilder::lookupVarDecl(const ValueDecl *VD) { in lookupVarDecl()
684 static void maybeUpdateVD(til::SExpr *E, const ValueDecl *VD) { in maybeUpdateVD()
694 til::SExpr *SExprBuilder::addVarDecl(const ValueDecl *VD, til::SExpr *E) { in addVarDecl()
703 til::SExpr *SExprBuilder::updateVarDecl(const ValueDecl *VD, til::SExpr *E) { in updateVarDecl()
707 til::SExpr *Ptr = new (Arena) til::LiteralPtr(VD); in updateVarDecl()
708 til::SExpr *St = new (Arena) til::Store(Ptr, E); in updateVarDecl()
719 void SExprBuilder::makePhiNodeVar(unsigned i, unsigned NPreds, til::SExpr *E) { in makePhiNodeVar()
723 til::SExpr *CurrE = CurrentLVarMap[i].second; in makePhiNodeVar()
824 for (til::SExpr *PE : BB->arguments()) { in mergePhiNodesBackEdge()
829 til::SExpr *E = lookupVarDecl(Ph->clangDecl()); in mergePhiNodesBackEdge()
861 til::SExpr *Lp = new (Arena) til::LiteralPtr(Pm); in enterCFG()
862 til::SExpr *Ld = new (Arena) til::Load(Lp); in enterCFG()
863 til::SExpr *V = addStatement(Ld, nullptr, Pm); in enterCFG()
910 til::SExpr *E = translate(S, nullptr); in handleStatement()
916 til::SExpr *Sf = new (Arena) til::LiteralPtr(VD); in handleDestructorCall()
917 til::SExpr *Dr = new (Arena) til::LiteralPtr(DD); in handleDestructorCall()
918 til::SExpr *Ap = new (Arena) til::Apply(Dr, Sf); in handleDestructorCall()
919 til::SExpr *E = new (Arena) til::Call(Ap); in handleDestructorCall()
940 til::SExpr *C = translate(B->getTerminatorCondition(true), nullptr); in exitCFGBlockBody()