[PATCH] D45066: [Polly] [ScopInfo] Remove bail out condition in buildMinMaxAccess()
Michael Kruse via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 11 13:16:57 PDT 2018
Meinersbur added inline comments.
================
Comment at: lib/Analysis/ScopInfo.cpp:2306-2308
if (isl_set_n_basic_set(Set.get()) >= MaxDisjunctsInDomain)
return isl::stat::error;
----------------
cs15btech11044 wrote:
> I would like to have an opinion on this part of codebase here.
>
> Since the operation of `simple_hull` tries to reduce the number of disjuncts present in the set. Can we conditionally call `simple_hull` only when `MaxDisjunctsInDomain` is triggered?
> In other words, I am proposing to replace
>
> ```
> if (isl_set_n_basic_set(Set.get()) >= MaxDisjunctsInDomain)
> return isl::stat::error;
> ```
>
> with
>
>
> ```
> if (isl_set_n_basic_set(Set.get()) >= MaxDisjunctsInDomain)
> Set = Set.simple_hull();
> if (isl_set_n_basic_set(Set.get()) >= MaxDisjunctsInDomain)
> return isl::stat::error;
> ```
This resembles example 3. from by last comment, correct? Sounds like a good idea. Could you update this patch?
The error processing in the remainder of this function still has to updated:
1. Must handle an error that would otherwise trigger an assertion at line 2355.
2. Must never add `nullptr` values to `MinMaxAccesses`.
Do you know how to do this?
https://reviews.llvm.org/D45066
More information about the llvm-commits
mailing list