[PATCH] D45872: [DA] Enable -da-delinearize by default

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 15 02:30:23 PDT 2018


dmgreen added a comment.

Hello. Thanks for running the tests. I did not know that there were uses outside of loop interchange and now unroll and jam. That's good to know it will get some more use.

By the old delinearise code, do you mean the one that was based on geps, or this one without these extra checks in it? I believe unfortunately that both could produce wrong dependencies in some cases.

For your example, what would you expect the dependency between the two loads to be? I think it is difficult to prove anything other than [* *] (Because ss could be 0, or a value lower than w). Delinearizing using scevs seems to be a tricky business, and there may be cases that are tough to prove. I think this is better than what is in tree at the moment though, and brings the code in line with what we test, which I think is important.


https://reviews.llvm.org/D45872





More information about the llvm-commits mailing list