[PATCH] D21921: [proof of concept] Port old PM CGSCC visitation logic to new PM

Sean Silva via llvm-commits llvm-commits at lists.llvm.org
Sat Jul 2 17:34:56 PDT 2016


silvas removed rL LLVM as the repository for this revision.
silvas updated this revision to Diff 62609.
silvas added a comment.

Updated patch. I've done some cleanup/refactoring on trunk which generally reduces the diff.

This also includes a fix for https://llvm.org/bugs/show_bug.cgi?id=28400
With that fix, this patch now can pass test-suite (build and run) with:

  CMAKE_{C,CXX}_FLAGS:STRING=-Xclang "-newpm-passes=module(function(sroa,instcombine,simplify-cfg,jump-threading),globaldce,globalopt,deadargelim,function(sroa,instcombine,simplify-cfg),require<profile-summary>,require<targetlibinfo>,cgscc(prune-eh,inline,function-attrs,argpromotion,function(instcombine,simplify-cfg,instcombine,jump-threading,simplify-cfg)))" -Xclang -newpm-aa-pipeline=basic-aa,scoped-noalias-aa,type-based-aa,globals-aa

I'll continue working towards getting the clang O3 pipeline ported and keep iterating on test-suite.


http://reviews.llvm.org/D21921

Files:
  include/llvm/Analysis/CGSCCPassManager.h
  include/llvm/Analysis/CallGraphSCCPass.h
  include/llvm/Analysis/InlineCost.h
  include/llvm/Transforms/IPO/ArgumentPromotion.h
  include/llvm/Transforms/IPO/FunctionAttrs.h
  include/llvm/Transforms/IPO/InlinerPass.h
  include/llvm/Transforms/IPO/PruneEH.h
  include/llvm/Transforms/Utils/Cloning.h
  lib/Analysis/CGSCCPassManager.cpp
  lib/Analysis/CallGraphSCCPass.cpp
  lib/Analysis/InlineCost.cpp
  lib/Passes/PassBuilder.cpp
  lib/Passes/PassRegistry.def
  lib/Transforms/IPO/ArgumentPromotion.cpp
  lib/Transforms/IPO/FunctionAttrs.cpp
  lib/Transforms/IPO/InlineSimple.cpp
  lib/Transforms/IPO/Inliner.cpp
  lib/Transforms/IPO/PruneEH.cpp
  lib/Transforms/IPO/SampleProfile.cpp
  lib/Transforms/Utils/InlineFunction.cpp
  test/Other/new-pass-manager.ll
  test/Other/pass-pipeline-parsing.ll
  test/Transforms/ArgumentPromotion/byval.ll
  test/Transforms/Inline/alloca-in-scc.ll
  test/Transforms/PruneEH/2008-06-02-Weak.ll
  test/Transforms/PruneEH/operand-bundles.ll
  test/Transforms/PruneEH/pr23971.ll
  test/Transforms/PruneEH/pr26263.ll
  test/Transforms/PruneEH/recursivetest.ll
  test/Transforms/PruneEH/seh-nounwind.ll
  test/Transforms/PruneEH/simplenoreturntest.ll
  test/Transforms/PruneEH/simpletest.ll
  unittests/Analysis/CGSCCPassManagerTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D21921.62609.patch
Type: text/x-patch
Size: 64028 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160703/54199b19/attachment-0001.bin>


More information about the llvm-commits mailing list