forked from OSchip/llvm-project
static analyzer: Rename 'BlocksAborted' to 'BlocksExhausted' to reflect that a given CFGBlock was analyzed too many times.
llvm-svn: 128760
This commit is contained in:
parent
6fe5c29430
commit
c703a666f7
|
@ -47,7 +47,7 @@ class CoreEngine {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
typedef std::vector<std::pair<BlockEdge, const ExplodedNode*> >
|
typedef std::vector<std::pair<BlockEdge, const ExplodedNode*> >
|
||||||
BlocksAborted;
|
BlocksExhausted;
|
||||||
private:
|
private:
|
||||||
|
|
||||||
SubEngine& SubEng;
|
SubEngine& SubEng;
|
||||||
|
@ -67,7 +67,7 @@ private:
|
||||||
|
|
||||||
/// The locations where we stopped doing work because we visited a location
|
/// The locations where we stopped doing work because we visited a location
|
||||||
/// too many times.
|
/// too many times.
|
||||||
BlocksAborted blocksAborted;
|
BlocksExhausted blocksExhausted;
|
||||||
|
|
||||||
void generateNode(const ProgramPoint& Loc, const GRState* State,
|
void generateNode(const ProgramPoint& Loc, const GRState* State,
|
||||||
ExplodedNode* Pred);
|
ExplodedNode* Pred);
|
||||||
|
@ -122,16 +122,16 @@ public:
|
||||||
ExplodedNodeSet &Dst);
|
ExplodedNodeSet &Dst);
|
||||||
|
|
||||||
// Functions for external checking of whether we have unfinished work
|
// Functions for external checking of whether we have unfinished work
|
||||||
bool wasBlockAborted() const { return !blocksAborted.empty(); }
|
bool wasBlockAborted() const { return !blocksExhausted.empty(); }
|
||||||
bool hasWorkRemaining() const { return wasBlockAborted() || WList->hasWork(); }
|
bool hasWorkRemaining() const { return wasBlockAborted() || WList->hasWork(); }
|
||||||
|
|
||||||
WorkList *getWorkList() const { return WList; }
|
WorkList *getWorkList() const { return WList; }
|
||||||
|
|
||||||
BlocksAborted::const_iterator blocks_aborted_begin() const {
|
BlocksExhausted::const_iterator blocks_aborted_begin() const {
|
||||||
return blocksAborted.begin();
|
return blocksExhausted.begin();
|
||||||
}
|
}
|
||||||
BlocksAborted::const_iterator blocks_aborted_end() const {
|
BlocksExhausted::const_iterator blocks_aborted_end() const {
|
||||||
return blocksAborted.end();
|
return blocksExhausted.end();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -97,7 +97,7 @@ void AnalyzerStatsChecker::checkEndAnalysis(ExplodedGraph &G,
|
||||||
D->getLocation());
|
D->getLocation());
|
||||||
|
|
||||||
// Emit warning for each block we bailed out on
|
// Emit warning for each block we bailed out on
|
||||||
typedef CoreEngine::BlocksAborted::const_iterator AbortedIterator;
|
typedef CoreEngine::BlocksExhausted::const_iterator AbortedIterator;
|
||||||
const CoreEngine &CE = Eng.getCoreEngine();
|
const CoreEngine &CE = Eng.getCoreEngine();
|
||||||
for (AbortedIterator I = CE.blocks_aborted_begin(),
|
for (AbortedIterator I = CE.blocks_aborted_begin(),
|
||||||
E = CE.blocks_aborted_end(); I != E; ++I) {
|
E = CE.blocks_aborted_end(); I != E; ++I) {
|
||||||
|
|
|
@ -534,7 +534,7 @@ IdempotentOperationChecker::pathWasCompletelyAnalyzed(AnalysisContext *AC,
|
||||||
CFGReverseBlockReachabilityAnalysis *CRA = AC->getCFGReachablityAnalysis();
|
CFGReverseBlockReachabilityAnalysis *CRA = AC->getCFGReachablityAnalysis();
|
||||||
|
|
||||||
// Test for reachability from any aborted blocks to this block
|
// Test for reachability from any aborted blocks to this block
|
||||||
typedef CoreEngine::BlocksAborted::const_iterator AbortedIterator;
|
typedef CoreEngine::BlocksExhausted::const_iterator AbortedIterator;
|
||||||
for (AbortedIterator I = CE.blocks_aborted_begin(),
|
for (AbortedIterator I = CE.blocks_aborted_begin(),
|
||||||
E = CE.blocks_aborted_end(); I != E; ++I) {
|
E = CE.blocks_aborted_end(); I != E; ++I) {
|
||||||
const BlockEdge &BE = I->first;
|
const BlockEdge &BE = I->first;
|
||||||
|
|
|
@ -310,7 +310,7 @@ void CoreEngine::HandleBlockEdge(const BlockEdge& L, ExplodedNode* Pred) {
|
||||||
for (llvm::SmallVectorImpl<ExplodedNode*>::const_iterator
|
for (llvm::SmallVectorImpl<ExplodedNode*>::const_iterator
|
||||||
I = nodeBuilder.sinks().begin(), E = nodeBuilder.sinks().end();
|
I = nodeBuilder.sinks().begin(), E = nodeBuilder.sinks().end();
|
||||||
I != E; ++I) {
|
I != E; ++I) {
|
||||||
blocksAborted.push_back(std::make_pair(L, *I));
|
blocksExhausted.push_back(std::make_pair(L, *I));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue