[PATCH] D68488: [PATCH 05/38] [noalias] [IR] Introduce noalias_sidechannel for LoadInst/StoreInst

Andrei Elovikov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 10 09:45:47 PDT 2019


a.elovikov added inline comments.


================
Comment at: llvm/lib/IR/Instructions.cpp:4149
+  //   that don't know how to handle it (Like MergeLoadStoreMotion shows)
+  // - safe alternative: keep the argument, but map it to undef.
+  if (hasNoaliasSideChannelOperand())
----------------
Why is it safe? Consider we have aliasing load and store, we clone them so load.clone and load.store now have undef in the sidechannels, so optimizations are free to choose the values for them that would mean noalias.


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

https://reviews.llvm.org/D68488





More information about the llvm-commits mailing list