[PATCH] D159451: [BasicAA] BasicAA update for scalable quantity

harvin iriawan via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 5 09:35:13 PDT 2023


harviniriawan added a comment.

I see cases where when we do Loop unrolling for SVE, that we move Load/Stores across iterations although they definitely not aliasing. This patch is trying to improve on that. In theory we should allow alias analysis when done between 2 GEPs that have the same scalable type, and memory location size.

This patch is the first series of patch to improve SVE loop unrolling, to get the full benefit, getSizeOrUnknown() must be updated as well (used in machinememoperand I believe).
Rudimentary prototyping suggests that doing this properly can give us a lot of uplift for SVE, especially in the LITTLE core


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D159451



More information about the llvm-commits mailing list