[PATCH] D152639: [LoopUnrollRuntime] Allow simple transition to deopt non-latch exit blocks
    Anna Thomas via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Mon Jun 12 13:52:16 PDT 2023
    
    
  
anna added a comment.
If we are traversing through unique successors until we reach deopt, we're guaranteed it is a cold path. Did we get any compile time difference if we choose this heuristic versus directly using `!BasicBlock::getTerminatingDeoptimizeCall()`?
When I originally had the heuristic, there wasn't any particular reason for checking immediate deopt block (except that those were the workloads we cared about).
================
Comment at: llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp:457
+  // inside of the loop (See simplifyOneLoop()).
+  auto GetTerminatingDeoptimzeCall =
+      [&](const BasicBlock *BB) -> const llvm::CallInst * {
----------------
Nit: GetTerminatingDeoptimizeCall
Repository:
  rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D152639/new/
https://reviews.llvm.org/D152639
    
    
More information about the llvm-commits
mailing list