[LLVMdev] Sources for published papers.

Tobias Nurmiranta spyck at lysator.liu.se
Fri Mar 19 17:25:01 PST 2004

On Fri, 19 Mar 2004, Chris Lattner wrote:
> > "Data Structure Analysis: An Efficient Context-Sensitive Heap Analysis"?
> Yes, this lives in llvm/lib/Analysis/DataStructure


> > "Automatic Pool Allocation for Disjoint Data Structures",
> > "Memory Safety Without Runtime Checks or Garbage Collection" and
> These two are not available in the main LLVM distribution (yet).  If you
> are interested in getting a private copy of them, send email to Vikram
> (vadve at cs.uiuc.edu) and we can probably work something out.

Maybe I'll send a mail later regarding the pool allocation, but right now
I have enough code to read :). Thought it would be nice to see how the
pools are used in the backend instead of normal allocation, but I guess it
is a quite straight forward modification of LowerAllocation.cpp or
something similar.

Thanks for the positive and fast replies. :)
,	Tobias

Ps. I'm considering to try to make a small optimization-pass as an
exercise to learn the system. It would do something like this:

1. Order the local variables in the call-frame of a function based on
   liveness, with the variables dying first on top of the stack.

2. Then for each function-call, check which variables that have died and
   set the new call-frame over the dead variables instead of on the top of
   the stack. (which would work if the local variables are referenced
   relative to the frame pointer and not the stack pointer)

That would lead to some space optimization, kind of a more general tail
recursion elimination (maybe it already exists and have a name :)). I
guess this would have to be done in CodeGen. Ds

More information about the llvm-dev mailing list