[PATCH] D110817: [GVN] Simple GVN hoist - scalars

Max Kazantsev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 15 01:06:28 PDT 2021


mkazantsev added inline comments.


================
Comment at: llvm/lib/Transforms/Scalar/GVN.cpp:3062
+static bool isHoistBarrier(const Instruction &I) {
+  return !isGuaranteedToTransferExecutionToSuccessor(&I);
+}
----------------
chill wrote:
> mkazantsev wrote:
> > Re-reading the patch, I noticed that it might be missing aliasing notion. How do we prevent hoisting loads across aliasing store?
> In this part we don't hoist loads and stores at all, since they have unique value numbers.
Could you please add assert that hoisted instruction does not read or write memory? We don't want to miss this once this changes.


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

https://reviews.llvm.org/D110817



More information about the llvm-commits mailing list