[PATCH] D49982: [TailCallElim] Preserve DT and PDT

Chijun Sima via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 31 05:30:53 PDT 2018


NutshellySima updated this revision to Diff 158223.
NutshellySima added a comment.

Use Lazy Strategy instead of Eager to eliminate unnecessary recalculation like

  DomTreeUpdater DTU(...);
  // EntryBB changed
  DTU.recalculate(F);
  DTU.insertEdge(...)/deleteEdge(...);
  DTU.flush(); // We can delay the recalculation to here if we use the Lazy UpdateStrategy.


https://reviews.llvm.org/D49982

Files:
  include/llvm/Transforms/Utils/BasicBlockUtils.h
  lib/Transforms/Scalar/TailRecursionElimination.cpp
  lib/Transforms/Utils/BasicBlockUtils.cpp
  test/Transforms/TailCallElim/2010-06-26-MultipleReturnValues.ll
  test/Transforms/TailCallElim/EraseBB.ll
  test/Transforms/TailCallElim/accum_recursion.ll
  test/Transforms/TailCallElim/ackermann.ll
  test/Transforms/TailCallElim/basic.ll
  test/Transforms/TailCallElim/deopt-bundle.ll
  test/Transforms/TailCallElim/dont_reorder_load.ll
  test/Transforms/TailCallElim/dup_tail.ll
  test/Transforms/TailCallElim/inf-recursion.ll
  test/Transforms/TailCallElim/notail.ll
  test/Transforms/TailCallElim/opt-remarks-recursion.ll
  test/Transforms/TailCallElim/reorder_load.ll
  test/Transforms/TailCallElim/setjmp.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D49982.158223.patch
Type: text/x-patch
Size: 15763 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180731/668e555a/attachment.bin>


More information about the llvm-commits mailing list