[LLVMdev] PassManager Mysteries

Devang Patel dpatel at apple.com
Mon Jan 28 16:38:25 PST 2008


On Jan 28, 2008, at 4:27 PM, David Greene wrote:

> I've never been able to figure this one out:
>
> llvm/lib/VMCore/PassManager.cpp:938: virtual void
> llvm::PMDataManager::addLowerLevelRequiredPass(llvm::Pass*,  
> llvm::Pass*):
> Assertion `0 && "Unable to handle Pass that requires lower level  
> Analysis
> pass"' failed.
>
> In the past, I've resolved this by disabling random addRequired  
> calls in the
> offending Pass, even when those dependencies are real.

If those dependencies were real then I expect that you won't be able  
to disable it because otherwise your pass won't work because of lack  
of required information ;)

> So what does this assert mean, exactly?

In simple word, pass manager is unable to fulfill your request.

>  How do I find out just what is wrong
> with the Pass dependencies?

Use -debug-pass=Details and find out which pass dependency is not  
handled.

-
Devang



More information about the llvm-dev mailing list