[LLVMdev] localstatckallocation pass

Reed Kotler rkotler at mips.com
Sun Feb 24 21:19:27 PST 2013


I'm trying to understand how to use this.

Is it already enabled and it's just looking for the values of various 
virtual methods that can be overridden?

Mips 16 only has 8 free general registers but there are a lot of mips32 
registers that I can use in limited ways.

Some fancy schemes for addressing can cause too much register pressure 
to make it worth it.

if I want to maintain an additional pointer I can for example, using a 
pair of unused Mips32 registers, keep the value in a mips32 register and 
bring it back to live quickl.

Value is in Reg32X.

Reg32Y = Reg16Z
Reg16Z = Reg32X
... do some things with Reg16Z/Reg32X
Reg16z = Reg32Y  ; restore Reg16Z

These move instructions are both 16 bit instructions.

At some point I have think of some more formal ways to use the Mips32 
registers.




More information about the llvm-dev mailing list