38#include "llvm/Support/CommandLine.h"
46cl::opt<int> DCEPreciseSteps(
47 "polly-dce-precise-steps",
48 cl::desc(
"The number of precise steps between two approximating "
49 "iterations. (A value of -1 schedules another approximation stage "
50 "before the actual dead code elimination."),
94static bool runDeadCodeElimination(
Scop &
S,
int PreciseSteps,
104 if (PreciseSteps == -1)
117 Live = Live.
unite(Extra);
119 if (Steps > PreciseSteps) {
129 return S.restrictDomains(Live);
137 bool Changed = runDeadCodeElimination(
S, DCEPreciseSteps, Deps);
llvm::cl::OptionCategory PollyCategory
isl::union_set range() const
isl::union_map reverse() const
isl::union_set domain() const
isl::union_map lexmax() const
isl::union_map apply_range(isl::union_map umap2) const
isl::union_set affine_hull() const
boolean is_subset(const isl::union_set &uset2) const
isl::union_set coalesce() const
isl::union_set intersect(isl::union_set uset2) const
isl::union_set apply(isl::union_map umap) const
isl::union_set unite(isl::union_set uset2) const
The accumulated dependence information for a SCoP.
bool hasValidDependences() const
Report if valid dependences are available.
isl::union_map getDependences(int Kinds) const
Get the dependences of type Kinds.
bool runDeadCodeElim(Scop &S, DependenceAnalysis::Result &DA)
const Dependences & getDependences(Dependences::AnalysisLevel Level)
Return the dependence information for the current SCoP.
const Dependences & recomputeDependences(Dependences::AnalysisLevel Level)
Recompute dependences from schedule and memory accesses.