[LLVMdev] Data Structure Analysis

Haifeng He hehaifeng2nd at gmail.com
Sun Aug 26 15:44:32 PDT 2007


Hi, Andrew

On 8/26/07, Andrew Lenharth <andrewl at lenharth.org> wrote:
> DSA should be current against head, but poolalloc isn't.  I've changed
> DSA a bit so it may not compile with poolalloc as is.  I haven't had
> time to tackle updating poolalloc (either to head or to the dsa
> changes).  If you want the version from the paper, try checking out
> llvm 1.8 or 1.9 and a dsa from around then.  The dsa as used on the
> linux kernel and in the OS work is in a branch (but we were not using
> poolalloc in that work so I don't know it that one works).
>
Could you please let me know which branch of llvm contain DSA used on
the linux kernel? Is there any special procedure I should follow if I want
to run DSA on the linux kernel? Many thanks.

Haifeng

> Andrew
>
> On 8/24/07, John Criswell <criswell at cs.uiuc.edu> wrote:
> > Haifeng He wrote:
> > > I updated the latest "poolalloc" code and the problem seems to have been fixed.
> > > However, I am still having problem of running "poolalloc".
> > >
> > > After compilation finished, there are several dynamic libraries
> > > created (libpoolalloc_rt.so, libpoolalloc_fl_rt.so and
> > > LLVMDataStructure.so). I was not sure which one I should use so I just
> > > tried all of them with "opt -load". However, none of them seems to
> > > work (by complaiing "-poolalloc" is unknown). When I ran test
> > > in poolalloc directory, it gave me error complaining that
> > > "poolalloc.so" was missing.
> > > Am I missing anything here?
> > >
> > First, you need to make sure you load LLVMDataStructure.so and
> > poolalloc.so into opt.  You can specify the -load option multiple times,
> > so you use the first -load option to load LLVMDataStructure.so and the
> > second -load option to load poolalloc.so.
> >
> > Second, you need make sure that opt can find both libraries.  Either
> > specify the complete path to the shared library files or set
> > LD_LIBRARY_PATH to the directory containing LLVMDataStructure.so and
> > poolalloc.so.
> >
> > FYI, libpoolalloc_*_rt.so are the runtime implementations of the pool
> > allocator memory allocator.  These are linked into your program (either
> > at the LLVM bytecode or native code level) to provide the pool allocator
> > runtime functions.
> > > BTW, when I run llvm test, is there a flag that can turn on option to
> > > print the test commands in details in addition to just show the test
> > > is passed or failed?
> > >
> > I believe using make VERBOSE=1 will do this.
> >
> > -- John T.
> > > Thank you
> > >
> > > Haifeng
> > >
> > >
> > >
> > >
> > > On 8/23/07, Andrew Lenharth <andrewl at lenharth.org> wrote:
> > >
> > >> On 8/23/07, Wojciech Matyjewicz <wmatyjewicz at fastmail.fm> wrote:
> > >>
> > >>> Static ID fields in pass classes seem to be lacking definitions (there
> > >>> were some changes in LLVM core classes and poolalloc hasn't been yet
> > >>> fully updated to reflect them). The attached patch fixes this for DSA
> > >>> classes - LLVMDataStructure.so loads into opt and DSA can be performed.
> > >>>
> > >> Thanks.  I forgot to commit this change from my local tree.
> > >>
> > >> Andrew
> > >> _______________________________________________
> > >> LLVM Developers mailing list
> > >> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> > >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> > >>
> > >>
> > > _______________________________________________
> > > LLVM Developers mailing list
> > > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> > > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> > >
> >
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> >
> _______________________________________________
> 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