[PATCH] D47858: [New PM] Introducing PassInstrumentation framework
Fedor Sergeev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 13 23:04:36 PDT 2018
fedor.sergeev updated this revision to Diff 165428.
fedor.sergeev added a comment.
updating a solution as per review comments as well as following
the design discussion we had on IRC.
Main directions:
- PassInstrumentation is split in two parts - callbacks/instrumenting points
- PassInstrumentationAnalysis returns PassInstrumentation
- no more PassCounter tracking in PassInstrumentation
- PassInstanceID is gone, not trying to track pass instance as we have no good mental model on what it actually is. Passing just StringRefs - pass names.
- using getResult<PassInstrumentationAnalysis> instead of getPassInstrumentation whenever possible (still using std::tuple variant in places where it needs to chop off AM args).
Most likely I forgot to mention something :)
Repository:
rL LLVM
https://reviews.llvm.org/D47858
Files:
include/llvm/Analysis/CGSCCPassManager.h
include/llvm/IR/PassInstrumentation.h
include/llvm/IR/PassManager.h
include/llvm/IR/PassManagerInternal.h
include/llvm/Passes/PassBuilder.h
include/llvm/Transforms/Scalar/LoopPassManager.h
lib/Analysis/CGSCCPassManager.cpp
lib/FuzzMutate/IRMutator.cpp
lib/IR/CMakeLists.txt
lib/IR/PassInstrumentation.cpp
lib/Passes/PassBuilder.cpp
lib/Transforms/Scalar/LoopPassManager.cpp
test/Other/loop-pm-invalidation.ll
test/Other/new-pass-manager.ll
test/Other/new-pm-defaults.ll
test/Other/new-pm-lto-defaults.ll
test/Other/new-pm-thinlto-defaults.ll
test/Transforms/Inline/cgscc-incremental-invalidate.ll
test/Transforms/LoopRotate/pr35210.ll
unittests/Analysis/CGSCCPassManagerTest.cpp
unittests/IR/PassBuilderCallbacksTest.cpp
unittests/IR/PassManagerTest.cpp
unittests/Transforms/Scalar/LoopPassManagerTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D47858.165428.patch
Type: text/x-patch
Size: 63269 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180914/de60bc36/attachment.bin>
More information about the llvm-commits
mailing list