[PATCH] D25482: [PPC] Allow two post RA schedulers to be in the pipeline and select one depending on the Machine Function's subtarget

Ehsan Amiri via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 28 08:48:31 PDT 2016


amehsan added inline comments.


================
Comment at: lib/CodeGen/MachineFunctionPass.cpp:94-98
+bool MachineFunctionPass::skipFunction(const MachineFunction &MF) const {
+  if (!MF.getSubtarget().runPass(this->getPassID()))
+    return true;
+
+  return FunctionPass::skipFunction(*MF.getFunction());
----------------
echristo wrote:
> amehsan wrote:
> > echristo wrote:
> > > I'm not sure why you need all of this and can't write the skipFunction without needing a MachineFunction in specific. Can you explain for me?
> > Because I need MachineFunction's subtarget. Does that answer your question?
> Not really, but I'd missed any resolution (which didn't appear to happen) for the basic idea of passing in a function to the pass.
> 
> Can this be done similar to IfConversion instead? I'd really prefer not to have this overloading of the idea of skipFunction.
I don't really understand what you mean by "the basic idea of passing in a function to the pass". Could you clarify?

By IfConversion I believe you are referring to D8717. Could you explain why you prefer that to overloading skipFunction? 


https://reviews.llvm.org/D25482





More information about the llvm-commits mailing list