[PATCH] D36791: [Polly][Bug fix] Wrong dependences filtering during Fully Indexed expansion
Michael Kruse via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Aug 18 07:34:45 PDT 2017
Meinersbur added inline comments.
================
Comment at: lib/Transform/MaximalStaticExpansion.cpp:166
+
+ // Filter out Statement to Statement dependences.
+ if (!Map.can_curry())
----------------
niosega wrote:
> Meinersbur wrote:
> > Why? How can this happen?
> I don't know why but when I am asking AL_Reference or AL_Access dependencies, I also get Statement to Statement dependencies in the union_map. So I need to filter these out. Am I doing something wrong in the dependencies retrieval call ?
I think this is due to the broken dependency info in case there are reduction candidates. Did you switch off reduction detection?
================
Comment at: lib/Transform/MaximalStaticExpansion.cpp:175-176
+
+ auto TmpMap = Map.curry().range().wrapped_domain_map().curry();
+ auto TmpMapDomainId = TmpMap.domain().get_tuple_id();
+
----------------
niosega wrote:
> Meinersbur wrote:
> > [Suggestion] Do this on `Map.get_space()`, so the projections don't need to be computed.
> What is the best solution to get the Id between these two solutions ?
>
> ```
> Map.get_space().domain().unwrap().range()
> ```
>
> ```
> Map.get_space().curry().range().unwrap().domain()
> ```
>
```
Map.get_space().domain().unwrap().get_tuple_id(isl::dim::out)
```
The second has one operation more, I don't see it having any advantages.
https://reviews.llvm.org/D36791
More information about the llvm-commits
mailing list