diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2012-03-10 15:08:09 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2012-03-10 15:08:09 +0000 |
commit | 9b20a90dff2ed605153c68a5c58b6aadcdb0952b (patch) | |
tree | 045d9d1b26188674e58da7469c61c966c0877037 /lib/Analysis/AnalysisDeclContext.cpp | |
parent | 2f47c366bcc28f54f22df6b4266b5d14de302ced (diff) |
Replace a map of boolean values with a set.
No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152494 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/AnalysisDeclContext.cpp')
-rw-r--r-- | lib/Analysis/AnalysisDeclContext.cpp | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/lib/Analysis/AnalysisDeclContext.cpp b/lib/Analysis/AnalysisDeclContext.cpp index 1020898e60..3291764b9a 100644 --- a/lib/Analysis/AnalysisDeclContext.cpp +++ b/lib/Analysis/AnalysisDeclContext.cpp @@ -25,7 +25,7 @@ #include "clang/Analysis/CFGStmtMap.h" #include "clang/Analysis/Support/BumpVector.h" #include "llvm/Support/SaveAndRestore.h" -#include "llvm/ADT/SmallSet.h" +#include "llvm/ADT/SmallPtrSet.h" #include "llvm/Support/ErrorHandling.h" using namespace clang; @@ -335,8 +335,8 @@ namespace { class FindBlockDeclRefExprsVals : public StmtVisitor<FindBlockDeclRefExprsVals>{ BumpVector<const VarDecl*> &BEVals; BumpVectorContext &BC; - llvm::DenseMap<const VarDecl*, unsigned> Visited; - llvm::SmallSet<const DeclContext*, 4> IgnoredContexts; + llvm::SmallPtrSet<const VarDecl*, 4> Visited; + llvm::SmallPtrSet<const DeclContext*, 4> IgnoredContexts; public: FindBlockDeclRefExprsVals(BumpVector<const VarDecl*> &bevals, BumpVectorContext &bc) @@ -355,21 +355,15 @@ public: void VisitDeclRefExpr(DeclRefExpr *DR) { // Non-local variables are also directly modified. - if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl())) + if (const VarDecl *VD = dyn_cast<VarDecl>(DR->getDecl())) { if (!VD->hasLocalStorage()) { - unsigned &flag = Visited[VD]; - if (!flag) { - flag = 1; + if (Visited.insert(VD)) BEVals.push_back(VD, BC); - } } else if (DR->refersToEnclosingLocal()) { - unsigned &flag = Visited[VD]; - if (!flag) { - flag = 1; - if (IsTrackedDecl(VD)) - BEVals.push_back(VD, BC); - } + if (Visited.insert(VD) && IsTrackedDecl(VD)) + BEVals.push_back(VD, BC); } + } } void VisitBlockExpr(BlockExpr *BR) { |