[PATCH] D21954: [PM] Add some internal options for testing out the new PM.

Sean Silva via llvm-commits llvm-commits at lists.llvm.org
Sat Jul 2 21:06:07 PDT 2016


silvas created this revision.
silvas added reviewers: hfinkel, davidxl.
silvas added a subscriber: llvm-commits.

These are internal developer options and so just use report_fatal_error
if an invalid pass pipeline is specified.

This is heavily derived from the code in LLD, but there are a couple
tiny differences that make it hard to share.
We can rip this out once we integrate the new PM into the main
compilation path of course.


I have been using this to build test-suite with the new PM using D21921.
I can successfully build and run test-suite with e.g. the following pipeline:

```
CMAKE_C_FLAGS:STRING=-Xclang "-newpm-passes=module(function(sroa,instcombine,simplify-cfg),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 encourage others to try out the new PM and report any bugs!
I've already been bitten by https://llvm.org/bugs/show_bug.cgi?id=28400 in a couple ways!

http://reviews.llvm.org/D21954

Files:
  include/clang/Driver/CC1Options.td
  include/clang/Frontend/CodeGenOptions.h
  lib/CodeGen/BackendUtil.cpp
  lib/CodeGen/CMakeLists.txt
  lib/Frontend/CompilerInvocation.cpp
  test/CodeGen/newpm-passes.c

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D21954.62615.patch
Type: text/x-patch
Size: 6521 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160703/c01a8de7/attachment.bin>


More information about the llvm-commits mailing list