Hi Michael,
Currently, you can only run Function passes with vmjc. To run module
passes, you can take the resulting .bc and call the opt tool on it.
Nicolas
Michael Wu wrote:> How can I vmjc to run CallGraphSCCPasses? I wrote a test pass that does
> nothing, and all vmjc says is:
>
> vmjc: PassManager.cpp:1604: virtual void
> llvm::ModulePass::assignPassManager(llvm::PMStack&,
> llvm::PassManagerType): Assertion `!PMS.empty() && "Unable to
find
> appropriate Pass Manager"' failed.
> 0 vmjc 0x08a6bfd8
> Aborted
>
> Running even a built in pass like prune-eh fails as well.
>
> From what I can tell, this is because the only PassManager on the
> PMStack is a FunctionPassManager, and assignPassManager pops this off,
> leaving the PMStack empty. Then it fails.
>
> Thanks,
> Michael
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>