[PATCH] D41694: [Polly][ScopInfo] Remove RunTimeChecksMaxAccessDisjuncts bail-out condition.
Michael Kruse via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 3 02:43:21 PST 2018
Meinersbur created this revision.
Meinersbur added reviewers: grosser, jdoerfert.
Meinersbur added a project: Polly.
Herald added a reviewer: bollu.
The condition was introduced in r267142 to mitigate a long compile-time case. In r306087, a max-computation limit was introduced that should handle the same case while leaving the max disjuncts heuristic it should have replaced intact.
Today, the max disjuncts bail-out causes problems in that it prematurely stops SCoPs from being detected, e.g. in SPEC's lbm. This would hit less like if `isl_set_coalesce` would be called after `isl_set_remove_divs` (which makes more basic_set likely to be coalescable) instead of before.
This patch removes max disjuncts bail-out as having been superseded by the max-computations limit.
@@ -174,12 +174,6 @@
cl::desc("Do not emit remarks about assumptions that are known"),
cl::Hidden, cl::ZeroOrMore, cl::init(false), cl::cat(PollyCategory));
-static cl::opt<int> RunTimeChecksMaxAccessDisjuncts(
- cl::desc("The maximal number of disjunts allowed in memory accesses to "
- "to build RTCs."),
- cl::Hidden, cl::ZeroOrMore, cl::init(8), cl::cat(PollyCategory));
static cl::opt<unsigned> RunTimeChecksMaxParameters(
cl::desc("The maximal number of parameters allowed in RTCs."), cl::Hidden,
@@ -2370,9 +2364,6 @@
- if (isl_set_n_basic_set(Set.get()) > RunTimeChecksMaxAccessDisjuncts)
- return isl::stat::error;
MinPMA = Set.lexmin_pw_multi_aff();
MaxPMA = Set.lexmax_pw_multi_aff();
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 1019 bytes
Desc: not available
More information about the llvm-commits