[PATCH] D18762: Add Aggressive Control Dead Code Elimination

David Callahan via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 9 08:19:46 PDT 2016


david2050 updated this revision to Diff 60180.
david2050 added a comment.
Herald added a subscriber: jfb.

Replace the baseline ADCE with this implementation modified to 
not build the post-dominator tree and in that case retain all
control flow. This preserves prior behavior for -O1 and -O2 and avoids
the extra cost needed to remove control flow.


http://reviews.llvm.org/D18762

Files:
  include/llvm/InitializePasses.h
  include/llvm/Transforms/Scalar.h
  include/llvm/Transforms/Scalar/ADCE.h
  lib/Transforms/IPO/PassManagerBuilder.cpp
  lib/Transforms/Scalar/ADCE.cpp
  lib/Transforms/Scalar/Scalar.cpp
  test/Transforms/ADCE/2002-01-31-UseStuckAround.ll
  test/Transforms/ADCE/2002-05-22-PHITest.ll
  test/Transforms/ADCE/2002-05-23-ZeroArgPHITest.ll
  test/Transforms/ADCE/2002-05-28-Crash-distilled.ll
  test/Transforms/ADCE/2002-05-28-Crash.ll
  test/Transforms/ADCE/2002-07-17-AssertionFailure.ll
  test/Transforms/ADCE/2002-07-17-PHIAssertion.ll
  test/Transforms/ADCE/2002-07-29-Segfault.ll
  test/Transforms/ADCE/2003-01-22-PredecessorProblem.ll
  test/Transforms/ADCE/2003-04-25-PHIPostDominateProblem.ll
  test/Transforms/ADCE/2003-06-11-InvalidCFG.ll
  test/Transforms/ADCE/2003-06-24-BadSuccessor.ll
  test/Transforms/ADCE/2003-06-24-BasicFunctionality.ll
  test/Transforms/ADCE/2003-09-10-UnwindInstFail.ll
  test/Transforms/ADCE/2003-09-15-InfLoopCrash.ll
  test/Transforms/ADCE/2003-11-16-MissingPostDominanceInfo.ll
  test/Transforms/ADCE/2004-05-04-UnreachableBlock.ll
  test/Transforms/ADCE/2005-02-17-PHI-Invoke-Crash.ll
  test/Transforms/ADCE/basictest.ll
  test/Transforms/ADCE/basictest1.ll
  test/Transforms/ADCE/basictest2.ll
  test/Transforms/ADCE/debug-info-intrinsic.ll
  test/Transforms/ADCE/delete-profiling-calls-to-constant.ll
  test/Transforms/ADCE/unreachable-function.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D18762.60180.patch
Type: text/x-patch
Size: 83646 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160609/64ca1bdf/attachment-0001.bin>


More information about the llvm-commits mailing list