[LLVMdev] Creating an LLVM backend for a very small stack machine

Mark Shannon marks at dcs.gla.ac.uk
Tue Feb 24 06:49:17 PST 2009


Wesley,

Regarding access to the source code;
I would send you the code, but I might be stepping on a few toes.
The person to speak to is Chris Bailey at the University of York (in the 
UK).

However it is written for the lcc tree-based IR, rather than the 
SSA-based IR of LLVM, so I don't think it will be that much use.

A lot of the analysis it does is to find information that is explicit in 
the SSA form anyway, such as generating a flow graph.

The SSA form already provides a head start for chosing stack allocation 
candidates. For example, PHI-nodes are obvious candidates for edges in 
the flow-graph.

I would be interested to see how good SSA-form is for stack allocation,
as that was my intended direction if I had stayed longer at York.

Cheers,
Mark.

Wesley J. Landaker wrote:
> On Monday 23 February 2009 03:23:59 Mark Shannon wrote:
>> I've done quite a lot of work on register allocation for stack machines.
>> You might want to look at my papers:
>> http://www.dcs.gla.ac.uk/~marks/euroforth.pdf
>> http://www.dcs.gla.ac.uk/~marks/thesis.pdf
> 
> Hi Mark,
> 
> I've read your papers, and in fact they were part of the data that convinced 
> me that I really could go with a stack machine for the work I'm doing. I'm 
> planning on implementing register allocation based partially on your paper.
> 
> Actually, I was wondering if any of your lcc implementation work was 
> publicly available. 
> 
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> 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