[PATCH] D110908: [NPM] Automatic 'opt' pipeline reducer script.
Markus Lavin via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Oct 1 01:24:59 PDT 2021
markus added a comment.
For testing the following can be tried. First re-introduce a bug in opt by reverting the following revert
commit 1fbdbb559569641f6d509b569966901c8fb02b63
Author: Florian Hahn <flo at fhahn.com>
Date: Thu Sep 30 18:52:38 2021 +0100
Revert "Recommit "[SCEV] Look through single value PHIs." (take 2)"
This reverts commit 764d9aa97905f202385b4f25f8d234630b4feef3.
This patch exposed a few additional cases where SCEV expressions are not
properly invalidated.
See PR52024, PR52023.
then running
./utils/reduce_pipeline.py --opt-binary=../build-debug/bin/opt --input=bbi-60925.ll --output=test2.ll --passes='canonicalize-aliases,objc-arc-apelim,cgscc(require<no-op-cgscc>,argpromotion,invalidate<all>,no-op-cgscc),objc-arc-apelim,function(function(aa-eval,loop-mssa(lnicm,licm,loop-instsimplify,indvars,loop-idiom),loop(indvars,require<iv-users>,loop-unroll-and-jam,simple-loop-unswitch<nontrivial>,loop-unroll-full),invalidate<all>)),function(early-cse<memssa>,loop-vectorize<no-interleave-forced-only;no-vectorize-forced-only>,early-cse<memssa>,verify<memoryssa>,loop-mssa(require<pass-instrumentation>,loop-deletion),alignment-from-assumptions)'
F19348179: bbi-60925.ll <https://reviews.llvm.org/F19348179>
should result in
The following extra args will be passed to opt: []
---Starting step #0---
-passes="canonicalize-aliases,objc-arc-apelim,cgscc(require<no-op-cgscc>,argpromotion,invalidate<all>,no-op-cgscc),objc-arc-apelim,function(function(aa-eval,loop-mssa(lnicm,licm,loop-instsimplify,indvars,loop-idiom),loop(indvars,require<iv-users>,loop-unroll-and-jam,simple-loop-unswitch<nontrivial>,loop-unroll-full),invalidate<all>)),function(early-cse<memssa>,loop-vectorize<no-interleave-forced-only;no-vectorize-forced-only>,early-cse<memssa>,verify<memoryssa>,loop-mssa(require<pass-instrumentation>,loop-deletion),alignment-from-assumptions)"
---Starting step #1---
-passes="function(function(loop-mssa(lnicm,licm,loop-instsimplify,indvars,loop-idiom),loop(indvars,require<iv-users>,loop-unroll-and-jam,simple-loop-unswitch<nontrivial>,loop-unroll-full),invalidate<all>)),function(early-cse<memssa>,loop-vectorize<no-interleave-forced-only;no-vectorize-forced-only>,early-cse<memssa>,verify<memoryssa>,loop-mssa(require<pass-instrumentation>,loop-deletion),alignment-from-assumptions)"
---Starting step #2---
-passes="function(function(loop-mssa(lnicm,licm,loop-instsimplify,indvars,loop-idiom),loop(indvars,require<iv-users>,loop-unroll-and-jam,simple-loop-unswitch<nontrivial>,loop-unroll-full)))"
---Starting step #3---
-passes="function(function(loop-mssa(licm,loop-instsimplify,indvars),loop(indvars,simple-loop-unswitch<nontrivial>,loop-unroll-full)))"
---FINISHED---
Wrote output to 'test2.ll'.
-passes="function(function(loop-mssa(licm,loop-instsimplify,indvars),loop(indvars,simple-loop-unswitch<nontrivial>,loop-unroll-full)))"
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D110908/new/
https://reviews.llvm.org/D110908
More information about the llvm-commits
mailing list