[PATCH] D35430: DA: remove uses of GEP, only ask SCEV
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 13 09:46:17 PDT 2018
As it is, this change unfortunately reduced the test coverage for
LoopInterchange quite a bit.
On 06/03/2018 21:55, Sebastian Pop via llvm-commits wrote:
> I disabled some interchange tests, as the DA is not able to >
> disambiguate the dependence anymore. To make DA stronger, we may need
> to compute a bound on the number of iterations based on the access
> functions and array dimensions.
This is not ideal, because the tests that are now disabled are supposed
to test stuff independent of DA. I think what we need to do is to
change those tests so that DA is not the issue.
> The patch cleans up all the CHECKs in test/Transforms
> /LoopInterchange/*.ll to avoid checking for snippets of LLVM IR: this
> form of checking is very hard to maintain. Instead, we now check for
> output of the pass that are more meaningful than dozens of lines of
> LLVM IR. Some tests now require -debug messages and thusonly enabled
> with asserts.
I understand the reason for making those tests easier to maintain.
Requiring assertions for the tests is not too bad, although I think it
would be better to use optimization remarks, which should be available
in release mode too.
But we definitely need at least some tests that check the actual IR, to
make sure the actual transformation is performed (or not performed) and
correct.
Maybe this is the right time to finally simplify those tests, because
they are indeed hard to maintain.
More information about the llvm-commits
mailing list