aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/Analysis
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2009-01-05 17:59:02 +0000
committerDan Gohman <gohman@apple.com>2009-01-05 17:59:02 +0000
commitd68a07650cdb2e18f18f362ba533459aa10e01b6 (patch)
tree0b0b5b402393260240d66dd4889d094b41a2ee82 /include/llvm/Analysis
parent08f053f5d1df120dc8389a3ec8947ab16b1ccc53 (diff)
downloadexternal_llvm-d68a07650cdb2e18f18f362ba533459aa10e01b6.zip
external_llvm-d68a07650cdb2e18f18f362ba533459aa10e01b6.tar.gz
external_llvm-d68a07650cdb2e18f18f362ba533459aa10e01b6.tar.bz2
Tidy up #includes, deleting a bunch of unnecessary #includes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61715 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis')
-rw-r--r--include/llvm/Analysis/ConstantsScanner.h1
-rw-r--r--include/llvm/Analysis/DominatorInternals.h2
-rw-r--r--include/llvm/Analysis/Dominators.h1
-rw-r--r--include/llvm/Analysis/EscapeAnalysis.h12
-rw-r--r--include/llvm/Analysis/FindUsedTypes.h1
-rw-r--r--include/llvm/Analysis/LoopInfo.h2
-rw-r--r--include/llvm/Analysis/ScalarEvolutionExpander.h3
-rw-r--r--include/llvm/Analysis/SparsePropagation.h4
-rw-r--r--include/llvm/Analysis/ValueTracking.h2
9 files changed, 11 insertions, 17 deletions
diff --git a/include/llvm/Analysis/ConstantsScanner.h b/include/llvm/Analysis/ConstantsScanner.h
index c52b24e..bac551f 100644
--- a/include/llvm/Analysis/ConstantsScanner.h
+++ b/include/llvm/Analysis/ConstantsScanner.h
@@ -17,7 +17,6 @@
#define LLVM_ANALYSIS_CONSTANTSSCANNER_H
#include "llvm/Support/InstIterator.h"
-#include "llvm/Instruction.h"
#include "llvm/ADT/iterator.h"
namespace llvm {
diff --git a/include/llvm/Analysis/DominatorInternals.h b/include/llvm/Analysis/DominatorInternals.h
index 1564774..cca0d50 100644
--- a/include/llvm/Analysis/DominatorInternals.h
+++ b/include/llvm/Analysis/DominatorInternals.h
@@ -11,8 +11,8 @@
#define LLVM_ANALYSIS_DOMINATOR_INTERNALS_H
#include "llvm/Analysis/Dominators.h"
-#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SmallPtrSet.h"
+
//===----------------------------------------------------------------------===//
//
// DominatorTree construction - This pass constructs immediate dominator
diff --git a/include/llvm/Analysis/Dominators.h b/include/llvm/Analysis/Dominators.h
index 94ab04e..35cdb24 100644
--- a/include/llvm/Analysis/Dominators.h
+++ b/include/llvm/Analysis/Dominators.h
@@ -24,7 +24,6 @@
#include "llvm/Pass.h"
#include "llvm/BasicBlock.h"
#include "llvm/Function.h"
-#include "llvm/Instruction.h"
#include "llvm/Instructions.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/GraphTraits.h"
diff --git a/include/llvm/Analysis/EscapeAnalysis.h b/include/llvm/Analysis/EscapeAnalysis.h
index 871630d..3f4da25 100644
--- a/include/llvm/Analysis/EscapeAnalysis.h
+++ b/include/llvm/Analysis/EscapeAnalysis.h
@@ -15,13 +15,13 @@
#define LLVM_ANALYSIS_ESCAPEANALYSIS_H
#include "llvm/Pass.h"
-#include "llvm/Instructions.h"
-#include "llvm/Analysis/AliasAnalysis.h"
-#include "llvm/Target/TargetData.h"
#include <set>
namespace llvm {
+class Instruction;
+class Value;
+
/// EscapeAnalysis - This class determines whether an allocation (a MallocInst
/// or an AllocaInst) can escape from the current function. It performs some
/// precomputation, with the rest of the work happening on-demand.
@@ -40,11 +40,7 @@ public:
EscapePoints.clear();
}
- void getAnalysisUsage(AnalysisUsage &AU) const {
- AU.addRequiredTransitive<TargetData>();
- AU.addRequiredTransitive<AliasAnalysis>();
- AU.setPreservesAll();
- }
+ void getAnalysisUsage(AnalysisUsage &AU) const;
//===---------------------------------------------------------------------
// Client API
diff --git a/include/llvm/Analysis/FindUsedTypes.h b/include/llvm/Analysis/FindUsedTypes.h
index 35e4e6f..c897af3 100644
--- a/include/llvm/Analysis/FindUsedTypes.h
+++ b/include/llvm/Analysis/FindUsedTypes.h
@@ -20,6 +20,7 @@
namespace llvm {
class Type;
+class Value;
class FindUsedTypes : public ModulePass {
std::set<const Type *> UsedTypes;
diff --git a/include/llvm/Analysis/LoopInfo.h b/include/llvm/Analysis/LoopInfo.h
index 1b684d7..5ba8a7a 100644
--- a/include/llvm/Analysis/LoopInfo.h
+++ b/include/llvm/Analysis/LoopInfo.h
@@ -54,8 +54,6 @@ static void RemoveFromVector(std::vector<T*> &V, T *N) {
class DominatorTree;
class LoopInfo;
-class PHINode;
-class Instruction;
template<class N> class LoopInfoBase;
template<class N> class LoopBase;
diff --git a/include/llvm/Analysis/ScalarEvolutionExpander.h b/include/llvm/Analysis/ScalarEvolutionExpander.h
index 7ecf533..a3ed17d 100644
--- a/include/llvm/Analysis/ScalarEvolutionExpander.h
+++ b/include/llvm/Analysis/ScalarEvolutionExpander.h
@@ -14,7 +14,7 @@
#ifndef LLVM_ANALYSIS_SCALAREVOLUTION_EXPANDER_H
#define LLVM_ANALYSIS_SCALAREVOLUTION_EXPANDER_H
-#include "llvm/Instructions.h"
+#include "llvm/Instruction.h"
#include "llvm/Type.h"
#include "llvm/Analysis/ScalarEvolution.h"
#include "llvm/Analysis/ScalarEvolutionExpressions.h"
@@ -119,4 +119,3 @@ namespace llvm {
}
#endif
-
diff --git a/include/llvm/Analysis/SparsePropagation.h b/include/llvm/Analysis/SparsePropagation.h
index a054c76..1476329 100644
--- a/include/llvm/Analysis/SparsePropagation.h
+++ b/include/llvm/Analysis/SparsePropagation.h
@@ -17,7 +17,7 @@
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SmallPtrSet.h"
-#include "llvm/ADT/SmallVector.h"
+#include <iosfwd>
#include <vector>
#include <set>
@@ -31,6 +31,8 @@ namespace llvm {
class BasicBlock;
class Function;
class SparseSolver;
+
+ template<typename T> class SmallVectorImpl;
/// AbstractLatticeFunction - This class is implemented by the dataflow instance
/// to specify what the lattice values are and how they handle merges etc.
diff --git a/include/llvm/Analysis/ValueTracking.h b/include/llvm/Analysis/ValueTracking.h
index 1003269..8c27b23 100644
--- a/include/llvm/Analysis/ValueTracking.h
+++ b/include/llvm/Analysis/ValueTracking.h
@@ -15,8 +15,8 @@
#ifndef LLVM_ANALYSIS_VALUETRACKING_H
#define LLVM_ANALYSIS_VALUETRACKING_H
+#include "llvm/Support/DataTypes.h"
#include <string>
-#include <llvm/Support/DataTypes.h>
namespace llvm {
class Value;