[LLVMdev] How to use the PoolDescriptor in ds-aa alias analysis?

Torvald Riegel torvald at se.inf.tu-dresden.de
Fri May 8 05:03:34 PDT 2009

On Friday 08 May 2009, hc2428 at columbia.edu wrote:
> Dear Staff,
>      I am reading the paper "Making Context-sensitive Points-to
> Analysis with Heap Cloning Practical For The Real World", and I build
> the poolalloc module, and run the program in Figure 1 in this paper
> with -ds-aa alias analysis. Now I know that X and Y in the program
> would have distinct PoolDescriptors to make them disjoint data
> structures.
>      However, how can we use the PoolDescriptor? What is storing in
> it? It seems that the PoolDescriptor in the program is just parsed as
> an argument from top to down, but it is not modified, so I am a little
> confused.

Pool descriptors get allocated before the data in the pool starts to exist. 
After that, pointers to those pool descriptors get passed around. If you are 
the only poolalloc user, then you can use the pools in any way you want. If 
you just want an ID for a pool, it should be safe to not release pools and 
just return unique pointers from the pool allocator.


More information about the llvm-dev mailing list