[PATCH] D82344: [NewPM] Make PMs and adaptor passes for PMs unskippable

Arthur Eubanks via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 15 11:47:15 PDT 2020


aeubanks added a comment.

Alright let's go with this one then, with skippable -> required.



================
Comment at: llvm/include/llvm/Analysis/CGSCCPassManager.h:359
+  static bool isSkippable() {
+    return !std::is_base_of<CGSCCPassT, CGSCCPassManager>::value;
+  }
----------------
ychen wrote:
> aeubanks wrote:
> > This is saying that only a ModuleToPostOrderCGSCCPassAdaptor around a CGSCCPassManager isn't skippable, all other ModuleToPostOrderCGSCCPassAdaptor are? What about a wrapper around a normal CGSCC pass that isn't skippable?
> > What about a wrapper around a normal CGSCC pass that isn't skippable?
> 
> Good point! I was not considering the case of normal passes declaring `require`. I think it should return false unconditionally here to mean the adaptor itself is always `required`.
Maybe we can just return whether or not the CGSSC pass is skippable? If that's doable. That's a small optimization.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D82344/new/

https://reviews.llvm.org/D82344





More information about the llvm-commits mailing list