[PATCH] D88782: [MemorySSA] Use provided memory location even if instruction is call

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 7 15:06:06 PDT 2020


nikic added inline comments.


================
Comment at: llvm/lib/Analysis/MemorySSA.cpp:307
     if (auto *UseLoad = dyn_cast<LoadInst>(UseInst))
       return {!areLoadsReorderable(UseLoad, DefLoad), MayAlias};
 
----------------
Even after this fix, there will still be an issue with the handling of loads, due to this code. Say we start from a store and perform a clobber query on getDefiningAccess(), which happens to return a volatile load. Then we will end up trying to find clobbers for the volatile load, once again ignoring the provided location completely.


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

https://reviews.llvm.org/D88782



More information about the llvm-commits mailing list