[PATCH] D113196: [NewPM] Make eager analysis invalidation per-adaptor

Arthur Eubanks via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 4 09:22:27 PDT 2021


aeubanks created this revision.
aeubanks added reviewers: nikic, asbirlea.
Herald added subscribers: ormris, dexonsmith, hiraditya.
Herald added a reviewer: ctetreau.
aeubanks requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Follow-up change to D111575 <https://reviews.llvm.org/D111575>.
We don't need eager invalidation on every adaptor. Most notably,
adaptors running passes that use very few analyses, or passes that
purely invalidate specific analyses.

Also allow testing of this via a pipeline string
"function<eager-inv>()".

The compile time/memory impact of this is very comparable to D111575 <https://reviews.llvm.org/D111575>.
https://llvm-compile-time-tracker.com/compare.php?from=9a2eec512a29df45c90c2fcb741e9d5c693b1383&to=b9f20bcdea138060967d95a98eab87ce725b22bb&stat=instructions


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D113196

Files:
  llvm/include/llvm/Analysis/CGSCCPassManager.h
  llvm/include/llvm/IR/PassManager.h
  llvm/include/llvm/Passes/PassBuilder.h
  llvm/lib/Analysis/CGSCCPassManager.cpp
  llvm/lib/IR/PassManager.cpp
  llvm/lib/Passes/PassBuilder.cpp
  llvm/lib/Passes/PassBuilderPipelines.cpp
  llvm/test/Other/new-pm-eager-invalidate.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D113196.384777.patch
Type: text/x-patch
Size: 17418 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211104/edc6dcf8/attachment.bin>


More information about the llvm-commits mailing list