[PATCH] D65060: [LICM] Make Loop ICM profile aware

Wenlei He via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 22 11:23:03 PDT 2019


wenlei marked 2 inline comments as done.
wenlei added inline comments.


================
Comment at: llvm/lib/Transforms/Scalar/LICM.cpp:885
+              CurLoop->getLoopPreheader()->getTerminator()) &&
+          worthSinkOrHoistInst(I, CurLoop->getLoopPreheader(), ORE, BFI)) {
         hoist(I, DT, CurLoop, CFH.getOrCreateHoistedBlock(BB), SafetyInfo,
----------------
asbirlea wrote:
> Nit: It may be worth checking worthSinkOrHoistInst prior to some of the other conditions if it's a faster/cheaper shortcutting condition.
good point, I moved it up over isSafeToExecuteUnconditionally.


================
Comment at: llvm/lib/Transforms/Scalar/LICM.cpp:1675
+    if (!worthSinkOrHoistInst(I, PN->getParent(), ORE, BFI)) {
+      ExitPNs.clear();
+      break;
----------------
xbolva00 wrote:
> Maybe you can return here?
changed. thanks!


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D65060





More information about the llvm-commits mailing list