[PATCH] D141619: [GVN] Refactor handling of pointer-select in GVN pass

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 16 03:00:11 PST 2023


nikic accepted this revision.
nikic added a comment.
This revision is now accepted and ready to land.

LGTM

It's a bit odd to have a non-memory instruction as the dependency, but this does seem to work out nicely in practice.



================
Comment at: llvm/lib/Transforms/Scalar/GVN.cpp:1124
 /// 3. There must be no instructions between the found loads and \p End that may
 /// clobber the loads.
 static std::optional<AvailableValue>
----------------
Outdated comment (End)


================
Comment at: llvm/lib/Transforms/Scalar/GVN.cpp:1134
   // Ensure there are no accesses that may modify the locations referenced by
   // either L1 or L2 between L1, L2 and the specified End iterator.
   Instruction *EarlierLoad = L1->comesBefore(L2) ? L1 : L2;
----------------
Outdated comment (End).


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D141619



More information about the llvm-commits mailing list