[LLVMdev] Control Dependence Graph builder

John Criswell criswell at illinois.edu
Fri Apr 12 14:04:35 PDT 2013


On 4/12/13 3:19 PM, Arsen wrote:
> Thank you John.
> Actually the opt tool (from LLVM 3.2 version) can generate the needed graphs
> (with pass "-domfrontier").
> But I just want to surely know is there some pass or builder which can be
> integrated somehow so it will be possible directly to generate CDG?

Yes and no.  There's isn't a control dependence pass in LLVM per se, but 
I believe that is primarily because control dependence is very easy to 
compute with the existing analysis passes in LLVM.  With 
PostDominanceFrontier, it was extremely simple (I think it was calling 
two methods in the PostDominanceFrontier pass).

It might be slightly more work to compute it with PostDominatorTree, but 
not significantly.  And, IIRC, you'll want to use PostDominatorTree 
instead of DominatorTree.  For control dependence, I believe you 
essentially flip the CFG upside-down and compute the dominance 
frontier.  Using post dominators instead of dominators does the same 
thing and is described in the Allen and Kennedy book.

-- John T.

>
>
>
> --
> View this message in context: http://llvm.1065342.n5.nabble.com/Control-Dependence-Graph-builder-tp56687p56689.html
> Sent from the LLVM - Dev mailing list archive at Nabble.com.
> _______________________________________________
> 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