[LLVMdev] LLVM Graph Representation
    David Greene 
    dag at cray.com
       
    Mon Jul  6 15:41:31 PDT 2009
    
    
  
On Monday 06 July 2009 14:32, Andre Tavares wrote:
> I'm developing the ABCD algorithm for LLVM, and I will need to store
> some information as a digraph.
>
> I was thinking of a list of adjacency, implemented with a
> map<Instruction, Set<Node>>. The node would have an Instruction and a
> value. I opted for map and set, because I will create the graph once and
> will search on it a bunch of times, and will never remove a node.
It will be very slow.  Using LLVM data structures will help.
If you're not planning to commit this to trunk, I'll suggest the Boost
Graph Library.  It's a bit daunting at first but has a lot of ways to
tune performance.  Plus many common and useful algorithms are built-in.  A 
rewrite and simplification is in the works but it won't be ready soon, I'm 
afraid.
                             -Dave
    
    
More information about the llvm-dev
mailing list