2222#ifndef POLLY_DEPENDENCE_INFO_H
2323#define POLLY_DEPENDENCE_INFO_H
2424
25- #include " polly/ScopPass .h"
25+ #include " llvm/ADT/DenseMap .h"
2626#include " isl/ctx.h"
2727#include " isl/isl-noexceptions.h"
2828
29+ namespace llvm {
30+ class raw_ostream ;
31+ }
32+
2933namespace polly {
34+ class MemoryAccess ;
35+ class Scop ;
36+ class ScopStmt ;
37+
38+ using llvm::DenseMap;
3039
3140// / The accumulated dependence information for a SCoP.
3241// /
@@ -194,8 +203,7 @@ class Dependences final {
194203
195204extern Dependences::AnalysisLevel OptAnalysisLevel;
196205
197- struct DependenceAnalysis final : public AnalysisInfoMixin<DependenceAnalysis> {
198- static AnalysisKey Key;
206+ struct DependenceAnalysis final {
199207 struct Result {
200208 Scop &S;
201209 std::unique_ptr<Dependences> D[Dependences::NumAnalysisLevels];
@@ -220,18 +228,6 @@ struct DependenceAnalysis final : public AnalysisInfoMixin<DependenceAnalysis> {
220228 // / dependencies.
221229 void abandonDependences ();
222230 };
223- Result run (Scop &S, ScopAnalysisManager &SAM,
224- ScopStandardAnalysisResults &SAR);
225- };
226-
227- struct DependenceInfoPrinterPass final
228- : PassInfoMixin<DependenceInfoPrinterPass> {
229- DependenceInfoPrinterPass (raw_ostream &OS) : OS(OS) {}
230-
231- PreservedAnalyses run (Scop &S, ScopAnalysisManager &,
232- ScopStandardAnalysisResults &, SPMUpdater &);
233-
234- raw_ostream &OS;
235231};
236232
237233DependenceAnalysis::Result runDependenceAnalysis (Scop &S);
0 commit comments