[PATCH] D119078: [LAA, LV] Add initial support for pointer-diff memory checks.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 7 15:40:09 PST 2022


efriedma added a comment.

If I'm following this correctly, this is basically doing two things.  One, it reduces the minimum distance by basing the required distance on the vector factor, instead of the start/end of the whole loop.  Two, it takes advantage of the ordering of different operations: a false dependency is okay as long as you perform the operations in the correct order.

It looks like we end up rejecting at runtime if the two pointers are exactly equal; if I'm following correctly, that's an unnecessary restriction?

Does the code generator actually guarantee that we perform operations in the correct order?  Does interleaving matter?  Other transforms?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D119078/new/

https://reviews.llvm.org/D119078



More information about the llvm-commits mailing list