[PATCH] D85609: Transforms: add ConvergenceControlHeuristic pass

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Aug 9 08:30:44 PDT 2020


arsenm added inline comments.


================
Comment at: llvm/lib/Transforms/Utils/ConvergenceControlHeuristic.cpp:75-76
+    ConvergenceControlHeuristic cch(fn, domTree, convergenceInfo);
+    bool changed = cch.run();
+    return changed;
+  }
----------------
Don't need intermediate changed variable


================
Comment at: llvm/lib/Transforms/Utils/ConvergenceControlHeuristic.cpp:115
+    if (auto *call = dyn_cast<CallInst>(op->getInstruction())) {
+      // Recreate the call, adding a single additional operand bundle.
+      IRBuilder<> builder(call);
----------------
Why do you need to recreate it? Can't you just directly add the bundle / mutate the instructon? That would also make invoke support free?


================
Comment at: llvm/lib/Transforms/Utils/ConvergenceControlHeuristic.cpp:125
+      bundles.push_back(m_convergenceInfo.makeOperandBundleDef(token));
+
+      CallInst *newCall =
----------------
Can you also add a test with an asm call


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D85609



More information about the llvm-commits mailing list