[PATCH] D100917: [NewPM] Only invalidate modified functions' analyses in CGSCC passes
Arthur Eubanks via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 20 18:39:04 PDT 2021
aeubanks created this revision.
aeubanks added reviewers: mtrofin, asbirlea.
Herald added subscribers: hiraditya, eraman.
aeubanks requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
Previously, any change in any function in an SCC would cause all
analyses for all functions in the SCC to be invalidated. With this
change, we now manually invalidate analyses for functions we modify,
then let the pass manager know that all function analyses should be
preserved.
So far this only touches the inliner, argpromotion, and funcattrs, since
they are the common passes in typical optimization pipelines.
Slight compile time improvements:
http://llvm-compile-time-tracker.com/compare.php?from=326da4adcb8def2abdd530299d87ce951c0edec9&to=8942c7669f330082ef159f3c6c57c3c28484f4be&stat=instructions
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D100917
Files:
llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
llvm/lib/Transforms/IPO/FunctionAttrs.cpp
llvm/lib/Transforms/IPO/Inliner.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D100917.339070.patch
Type: text/x-patch
Size: 19653 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210421/353475e6/attachment.bin>
More information about the llvm-commits
mailing list