[polly] r334940 - [ScopInfo] Move splitAliasGroupsByDomain and getAccessDomain to isl++ [NFCI]
Tobias Grosser via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 18 05:53:27 PDT 2018
Author: grosser
Date: Mon Jun 18 05:53:26 2018
New Revision: 334940
URL: http://llvm.org/viewvc/llvm-project?rev=334940&view=rev
Log:
[ScopInfo] Move splitAliasGroupsByDomain and getAccessDomain to isl++ [NFCI]
Modified:
polly/trunk/lib/Analysis/ScopInfo.cpp
Modified: polly/trunk/lib/Analysis/ScopInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/polly/trunk/lib/Analysis/ScopInfo.cpp?rev=334940&r1=334939&r2=334940&view=diff
==============================================================================
--- polly/trunk/lib/Analysis/ScopInfo.cpp (original)
+++ polly/trunk/lib/Analysis/ScopInfo.cpp Mon Jun 18 05:53:26 2018
@@ -2352,10 +2352,10 @@ buildMinMaxAccess(isl::set Set, Scop::Mi
return isl::stat::ok;
}
-static __isl_give isl_set *getAccessDomain(MemoryAccess *MA) {
- isl_set *Domain = MA->getStatement()->getDomain().release();
- Domain = isl_set_project_out(Domain, isl_dim_set, 0, isl_set_n_dim(Domain));
- return isl_set_reset_tuple_id(Domain);
+static isl::set getAccessDomain(MemoryAccess *MA) {
+ isl::set Domain = MA->getStatement()->getDomain();
+ Domain = Domain.project_out(isl::dim::set, 0, Domain.n_dim());
+ return Domain.reset_tuple_id();
}
/// Wrapper function to calculate minimal/maximal accesses to each array.
@@ -3138,22 +3138,20 @@ void Scop::splitAliasGroupsByDomain(Alia
AliasGroupTy NewAG;
AliasGroupTy &AG = AliasGroups[u];
AliasGroupTy::iterator AGI = AG.begin();
- isl_set *AGDomain = getAccessDomain(*AGI);
+ isl::set AGDomain = getAccessDomain(*AGI);
while (AGI != AG.end()) {
MemoryAccess *MA = *AGI;
- isl_set *MADomain = getAccessDomain(MA);
- if (isl_set_is_disjoint(AGDomain, MADomain)) {
+ isl::set MADomain = getAccessDomain(MA);
+ if (AGDomain.is_disjoint(MADomain)) {
NewAG.push_back(MA);
AGI = AG.erase(AGI);
- isl_set_free(MADomain);
} else {
- AGDomain = isl_set_union(AGDomain, MADomain);
+ AGDomain = AGDomain.unite(MADomain);
AGI++;
}
}
if (NewAG.size() > 1)
AliasGroups.push_back(std::move(NewAG));
- isl_set_free(AGDomain);
}
}
More information about the llvm-commits
mailing list