Home
last modified time | relevance | path

Searched refs:ProgramPoint (Results 1 – 25 of 58) sorted by relevance

123

/llvm-project/clang/include/clang/Analysis/
H A DProgramPoint.h58 class ProgramPoint {
101 ProgramPoint() = default;
102 ProgramPoint(const void *P, Kind k, const LocationContext *l,
113 ProgramPoint(const void *P1, const void *P2, Kind k, const LocationContext *l,
129 ProgramPoint withTag(const ProgramPointTag *tag) const { in withTag()
130 return ProgramPoint(getData1(), getData2(), getKind(), in withTag()
140 ProgramPoint& PP = t; in castAs()
151 ProgramPoint& PP = t; in getAs()
190 bool operator==(const ProgramPoint & RHS) const {
195 bool operator!=(const ProgramPoint &RHS) const {
[all …]
/llvm-project/clang/lib/Analysis/
H A DProgramPoint.cpp1 //==- ProgramPoint.cpp - Program Points for Path-Sensitive Analysis -*- C++ -*-/
9 // This file defines the interface ProgramPoint, which identifies a
14 #include "clang/Analysis/ProgramPoint.h"
23 ProgramPoint ProgramPoint::getProgramPoint(const Stmt *S, ProgramPoint::Kind K, in getProgramPoint()
28 llvm_unreachable("Unhandled ProgramPoint kind"); in getProgramPoint()
29 case ProgramPoint::PreStmtKind: in getProgramPoint()
31 case ProgramPoint::PostStmtKind: in getProgramPoint()
33 case ProgramPoint in getProgramPoint()
[all...]
H A DCMakeLists.txt28 ProgramPoint.cpp
/llvm-project/bolt/include/bolt/Passes/
H A DDataflowAnalysis.h40 class ProgramPoint {
51 ProgramPoint() : ID(IDTy::BB), Data((MCInst *)nullptr) {} in ProgramPoint() function
52 ProgramPoint(BinaryBasicBlock *BB) : ID(IDTy::BB), Data(BB) {} in ProgramPoint() function
53 ProgramPoint(MCInst *Inst) : ID(IDTy::Inst), Data(Inst) {} in ProgramPoint() function
58 static ProgramPoint getLastPointAt(BinaryBasicBlock &BB) { in getLastPointAt()
61 return ProgramPoint(&*Last); in getLastPointAt()
62 return ProgramPoint(&BB); in getLastPointAt()
66 static ProgramPoint getFirstPointAt(BinaryBasicBlock &BB) { in getFirstPointAt()
69 return ProgramPoint(&*First); in getFirstPointAt()
70 return ProgramPoint(&BB); in getFirstPointAt()
[all …]
H A DDominatorAnalysis.h40 SmallSetVector<ProgramPoint, 4> getDominanceFrontierFor(const MCInst &Dom) { in getDominanceFrontierFor()
41 SmallSetVector<ProgramPoint, 4> Result; in getDominanceFrontierFor()
47 SmallSetVector<ProgramPoint, 4> Candidates; in getDominanceFrontierFor()
48 this->doForAllSuccsOrPreds(BB, [&](ProgramPoint P) { in getDominanceFrontierFor()
58 if ((*this->getStateAt(ProgramPoint::getLastPointAt(BB)))[DomIdx] && in getDominanceFrontierFor()
60 Result.insert(ProgramPoint::getLastPointAt(BB)); in getDominanceFrontierFor()
73 bool doesADominateB(const MCInst &A, ProgramPoint B) { in doesADominateB()
77 bool doesADominateB(ProgramPoint A, const MCInst &B) { in doesADominateB()
H A DShrinkWrapping.h263 bool canInsertRegion(ProgramPoint P);
267 bool insertRegion(ProgramPoint P, int64_t RegionSz);
379 template <typename... T> void scheduleChange(ProgramPoint PP, T &&...Item) { in scheduleChange()
409 BinaryFunction *Func, SmallVector<ProgramPoint, 4> &Frontier,
419 SmallVector<ProgramPoint, 4> doRestorePlacement(MCInst *BestPosSave,
430 SmallVector<ProgramPoint, 4>
431 fixPopsPlacements(const SmallVector<ProgramPoint, 4> &RestorePoints,
441 SmallVector<ProgramPoint, 4> &RestorePoints,
H A DLivenessAnalysis.h39 bool isAlive(ProgramPoint PP, MCPhysReg Reg) const { in isAlive()
50 MCPhysReg scavengeRegAfter(ProgramPoint P) { in scavengeRegAfter()
/llvm-project/mlir/include/mlir/Analysis/
H A DDataFlowFramework.h56 struct ProgramPoint : public StorageUniquer::BaseStorage {
58 ProgramPoint(Block *parentBlock, Block::iterator pp)
62 ProgramPoint(Operation *op) : op(op) {}
69 ProgramPoint() {}
72 ProgramPoint(const ProgramPoint &point) {
78 static ProgramPoint *construct(StorageUniquer::StorageAllocator &alloc,
81 return new (alloc.allocate<ProgramPoint>())
82 ProgramPoint(std::get<0>(key), std::get<1>(key));
84 return new (alloc.allocate<ProgramPoint>()) ProgramPoin
153 struct ProgramPoint global() struct
160 ParentTyProgramPoint ParentTy() argument
166 ProgramPointProgramPoint ProgramPoint() argument
[all...]
/llvm-project/clang/lib/StaticAnalyzer/Core/
H A DCheckerManager.cpp16 #include "clang/Analysis/ProgramPoint.h"
157 ProgramPoint::Kind K = IsPreVisit ? ProgramPoint::PreStmtKind :
158 ProgramPoint::PostStmtKind;
159 const ProgramPoint &L = ProgramPoint::getProgramPoint(S, K, in CheckStmtContext()
215 const ProgramPoint &L = Msg.getProgramPoint(IsPreVisit,checkFn.Checker); in runChecker()
273 const ProgramPoint &L = Call.getProgramPoint(IsPreVisit,checkFn.Checker);
320 ProgramPoint::Kind K = IsLoad ? ProgramPoint
[all...]
H A DCoreEngine.cpp21 #include "clang/Analysis/ProgramPoint.h"
182 void CoreEngine::dispatchWorkItem(ExplodedNode* Pred, ProgramPoint Loc, in dispatchWorkItem()
186 case ProgramPoint::BlockEdgeKind: in dispatchWorkItem()
190 case ProgramPoint::BlockEntranceKind: in dispatchWorkItem()
194 case ProgramPoint::BlockExitKind: in dispatchWorkItem()
198 case ProgramPoint::CallEnterKind: in dispatchWorkItem()
202 case ProgramPoint::CallExitBeginKind: in dispatchWorkItem()
206 case ProgramPoint::EpsilonKind: { in dispatchWorkItem()
239 ProgramPoint P = L.withTag(getDataTags().make<NoteTag>( in HandleBlockEdge()
514 void CoreEngine::generateNode(const ProgramPoint in generateNode()
[all...]
H A DExplodedGraph.cpp20 #include "clang/Analysis/ProgramPoint.h"
75 // (3) The ProgramPoint is for a PostStmt, but not a PostStore. in shouldCollect()
76 // (4) There is no 'tag' for the ProgramPoint. in shouldCollect()
101 ProgramPoint progPoint = node->getLocation(); in shouldCollect()
141 const ProgramPoint SuccLoc = succ->getLocation(); in shouldCollect()
290 ProgramPoint P = getLocation(); in getCFGBlock()
330 // FIXME: Refactor into a ProgramPoint method? in getStmtForDiagnostics()
331 ProgramPoint P = getLocation(); in getStmtForDiagnostics()
394 ExplodedNode *ExplodedGraph::getNode(const ProgramPoint &L, in getNode()
432 ExplodedNode *ExplodedGraph::createUncachedNode(const ProgramPoint in createUncachedNode()
[all...]
/llvm-project/mlir/include/mlir/Analysis/DataFlow/
H A DDenseAnalysis.h83 LogicalResult visit(ProgramPoint *point) override;
99 const AbstractDenseLattice *getLatticeFor(ProgramPoint *dependent,
153 void visitRegionBranchOperation(ProgramPoint *point,
321 LogicalResult visit(ProgramPoint *point) override;
339 const AbstractDenseLattice *getLatticeFor(ProgramPoint *dependent,
399 void visitRegionBranchOperation(ProgramPoint *point,
H A DSparseAnalysis.h197 LogicalResult visit(ProgramPoint *point) override;
228 const AbstractSparseLattice *getLatticeElementFor(ProgramPoint *point,
258 void visitRegionSuccessors(ProgramPoint *point,
320 const StateT *getLatticeElementFor(ProgramPoint *point, Value value) {
388 LogicalResult visit(ProgramPoint *point) override;
451 /// dependencies so that the analysis on the given ProgramPoint is re-invoked
453 const AbstractSparseLattice *getLatticeElementFor(ProgramPoint *point,
457 /// dependencies so that the analysis on the given ProgramPoint is re-invoked
460 getLatticeElementsFor(ProgramPoint *point, ValueRange values);
/llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/
H A DCoreEngine.h20 #include "clang/Analysis/ProgramPoint.h"
102 void generateNode(const ProgramPoint &Loc,
156 void dispatchWorkItem(ExplodedNode* Pred, ProgramPoint Loc,
271 ExplodedNode *generateNodeImpl(const ProgramPoint &PP,
293 ExplodedNode *generateNode(const ProgramPoint &PP, in generateNode()
306 ExplodedNode *generateSink(const ProgramPoint &PP, in generateSink()
352 ProgramPoint &Location;
356 const NodeBuilderContext &Ctx, ProgramPoint &L)
362 const ProgramPoint &LocalLoc = (Tag ? Location.withTag(Tag) : Location);
368 const ProgramPoint
[all...]
H A DExplodedGraph.h124 const ProgramPoint Location;
138 explicit ExplodedNode(const ProgramPoint &loc, ProgramStateRef state, in ExplodedNode()
145 ProgramPoint getLocation() const { return Location; } in getLocation()
181 const ProgramPoint &Loc, in Profile()
352 ExplodedNode *getNode(const ProgramPoint &L, ProgramStateRef State,
360 ExplodedNode *createUncachedNode(const ProgramPoint &L,
H A DCheckerContext.h33 const ProgramPoint Location;
44 const ProgramPoint &loc,
72 const ProgramPoint getLocation() const { return Location; } in getState()
143 ProgramPoint L = N->getLocation(); in getLocationRegionIfPostStore()
427 const ProgramPoint &LocalLoc = (Tag ? Location.withTag(Tag) : Location);
/llvm-project/bolt/lib/Passes/
H A DDataflowAnalysis.cpp49 std::function<void(ProgramPoint)> Task) { in doForAllPreds()
53 Task(ProgramPoint::getLastPointAt(*Pred)); in doForAllPreds()
64 Task(ProgramPoint(&Inst)); in doForAllPreds()
71 std::function<void(ProgramPoint)> Task) { in doForAllSuccs()
74 Task(ProgramPoint::getFirstPointAt(*Succ)); in doForAllSuccs()
H A DShrinkWrapping.cpp536 bool StackLayoutModifier::canInsertRegion(ProgramPoint P) { in canInsertRegion()
558 bool StackLayoutModifier::insertRegion(ProgramPoint P, int64_t RegionSz) { in insertRegion()
907 BinaryFunction *Func, SmallVector<ProgramPoint, 4> &Frontier, in splitFrontierCritEdges() argument
941 ProgramPoint NewFrontierPP = ProgramPoint::getLastPointAt(*NewBB); in splitFrontierCritEdges()
957 SmallVector<ProgramPoint, 4>
960 SmallVector<ProgramPoint, 4> Frontier; in doRestorePlacement()
973 for (ProgramPoint &PP : Frontier) in doRestorePlacement()
979 for (ProgramPoint &PP : Frontier) { in doRestorePlacement()
996 doForAllSuccs(*FrontierBB, [&](ProgramPoint P) { in doRestorePlacement()
1022 for (ProgramPoint &PP : Frontier) { in doRestorePlacement()
[all …]
/llvm-project/mlir/lib/Analysis/DataFlow/
H A DDenseAnalysis.cpp47 LogicalResult AbstractDenseForwardDataFlowAnalysis::visit(ProgramPoint *point) { in visit()
99 ProgramPoint *point = getProgramPointAfter(op); in processOperation()
133 ProgramPoint *point = getProgramPointBefore(block); in visitBlock()
191 ProgramPoint *point, RegionBranchOpInterface branch, in visitRegionBranchOperation()
244 AbstractDenseForwardDataFlowAnalysis::getLatticeFor(ProgramPoint *dependent, in getLatticeFor()
274 AbstractDenseBackwardDataFlowAnalysis::visit(ProgramPoint *point) { in visit()
317 ProgramPoint *calleeEntry = getProgramPointBefore(calleeEntryBlock); in visitCallOperation()
327 ProgramPoint *point = getProgramPointBefore(op); in processOperation()
357 ProgramPoint *point = getProgramPointAfter(block); in visitBlock()
429 ProgramPoint *poin in visitRegionBranchOperation()
[all...]
H A DSparseAnalysis.cpp88 AbstractSparseForwardDataFlowAnalysis::visit(ProgramPoint *point) { in visit()
252 ProgramPoint *point, RegionBranchOpInterface branch, in visitRegionSuccessors()
308 AbstractSparseForwardDataFlowAnalysis::getLatticeElementFor(ProgramPoint *point, in join()
362 AbstractSparseBackwardDataFlowAnalysis::visit(ProgramPoint *point) { in getLatticeElements()
385 ProgramPoint *point, ValueRange values) { in operandsToOpOperands()
605 ProgramPoint *point, Value value) {
H A DDeadCodeAnalysis.cpp49 if (ProgramPoint *pp = llvm::dyn_cast_if_present<ProgramPoint *>(anchor)) { in onUpdate()
246 LogicalResult DeadCodeAnalysis::visit(ProgramPoint *point) { in visit()
393 ProgramPoint *point = in visitRegionTerminator()
/llvm-project/mlir/lib/Analysis/
H A DDataFlowFramework.cpp41 void AnalysisState::addDependency(ProgramPoint *dependent, in addDependency()
57 // ProgramPoint
60 void ProgramPoint::print(raw_ostream &os) const { in print()
88 return llvm::cast<ProgramPoint *>(*this)->print(os); in initializeAndRun()
97 ProgramPoint *pp = llvm::cast<ProgramPoint *>(*this); in initializeAndRun()
161 ProgramPoint *point) {
/llvm-project/mlir/test/lib/Analysis/DataFlow/
H A DTestDenseBackwardDataFlowAnalysis.cpp303 ProgramPoint *successorPoint = in runOnOperation()
/llvm-project/mlir/test/lib/Analysis/
H A DTestDataFlowFramework.cpp78 LogicalResult visit(ProgramPoint *point) override;
118 LogicalResult FooAnalysis::visit(ProgramPoint *point) { in visit()
131 ProgramPoint *point = getProgramPointBefore(block); in visitBlock()
144 ProgramPoint *point = getProgramPointAfter(op);
/llvm-project/llvm/utils/gn/secondary/clang/lib/Analysis/
H A DBUILD.gn34 "ProgramPoint.cpp",

123