[LLVMdev] PassManager Dependence Question

Devang Patel dpatel at apple.com
Fri Sep 19 15:26:26 PDT 2008


On Sep 19, 2008, at 3:11 PM, David Greene wrote:

> Let's say I have an analysis pass that's dependent on another  
> analysis pass
> (getAnalysisUsage does the appropraite things).
>
> So Pass Y depends on Pass X.
>
> If some transformation pass depends on Pass Y and Pass Y has not been
> invalidated by another other pass BUT Pass X _has_ been invalidated  
> by some
> other pass, what happens?
>
> I can imagine two likely paths in the current implementation of  
> PassManager:
>
> 1. Pass Y is not re-run because it is considered up-to-date
>
> 2. Pass Y is re-run after Pass X because Pass X is out-of-date
>
> Which one of these happens?

1) will happen.
-
Devang
>
>
> What I'd really like to do is have Pass X re-run but not Pass Y.   
> Pass Y only
> uses some bookkeeping from Pass X to speed itself up.  Having Pass X
> not re-run could cause Pass Y to give wrong answers, but once Pass X  
> is
> up-to-date, Pass Y will be fine.
>
> Is this at all possible?
>
>                                              -Dave
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list