mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 19:23:23 +01:00
[LV] Move static createMissedAnalysis from anonymous to global namespace
This is an attempt to fix a windows bot. llvm-svn: 282730
This commit is contained in:
parent
fcdc0e7b5b
commit
0a2f86bc8c
@ -213,32 +213,6 @@ static cl::opt<unsigned> PragmaVectorizeSCEVCheckThreshold(
|
||||
cl::desc("The maximum number of SCEV checks allowed with a "
|
||||
"vectorize(enable) pragma"));
|
||||
|
||||
namespace {
|
||||
|
||||
// Forward declarations.
|
||||
class LoopVectorizeHints;
|
||||
class LoopVectorizationLegality;
|
||||
class LoopVectorizationCostModel;
|
||||
class LoopVectorizationRequirements;
|
||||
|
||||
/// Returns true if the given loop body has a cycle, excluding the loop
|
||||
/// itself.
|
||||
static bool hasCyclesInLoopBody(const Loop &L) {
|
||||
if (!L.empty())
|
||||
return true;
|
||||
|
||||
for (const auto &SCC :
|
||||
make_range(scc_iterator<Loop, LoopBodyTraits>::begin(L),
|
||||
scc_iterator<Loop, LoopBodyTraits>::end(L))) {
|
||||
if (SCC.size() > 1) {
|
||||
DEBUG(dbgs() << "LVL: Detected a cycle in the loop body:\n");
|
||||
DEBUG(L.dump());
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/// Create an analysis remark that explains why vectorization failed
|
||||
///
|
||||
/// \p PassName is the name of the pass (e.g. can be AlwaysPrint). \p
|
||||
@ -265,6 +239,32 @@ createMissedAnalysis(const char *PassName, StringRef RemarkName, Loop *TheLoop,
|
||||
return R;
|
||||
}
|
||||
|
||||
namespace {
|
||||
|
||||
// Forward declarations.
|
||||
class LoopVectorizeHints;
|
||||
class LoopVectorizationLegality;
|
||||
class LoopVectorizationCostModel;
|
||||
class LoopVectorizationRequirements;
|
||||
|
||||
/// Returns true if the given loop body has a cycle, excluding the loop
|
||||
/// itself.
|
||||
static bool hasCyclesInLoopBody(const Loop &L) {
|
||||
if (!L.empty())
|
||||
return true;
|
||||
|
||||
for (const auto &SCC :
|
||||
make_range(scc_iterator<Loop, LoopBodyTraits>::begin(L),
|
||||
scc_iterator<Loop, LoopBodyTraits>::end(L))) {
|
||||
if (SCC.size() > 1) {
|
||||
DEBUG(dbgs() << "LVL: Detected a cycle in the loop body:\n");
|
||||
DEBUG(L.dump());
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/// \brief This modifies LoopAccessReport to initialize message with
|
||||
/// loop-vectorizer-specific part.
|
||||
class VectorizationReport : public LoopAccessReport {
|
||||
|
Loading…
Reference in New Issue
Block a user