[LLVMdev] clobbering other physical registers in storeRegtoStackSlot.

Evan Cheng evan.cheng at apple.com
Thu Oct 23 11:17:52 PDT 2008


On Oct 22, 2008, at 11:09 AM, Sanjiv.Gupta at microchip.com wrote:

> In our case, storeRegToStackSlot, loadRegFromStackSlot clobbers some  
> other physical register which may be holding a live value used  
> somewhere else. How do I make regalloc aware so that it saves the  
> value before storeRegToStackSlot and make it available again at the  
> point of earlier use?
>

Typical solution is to either reserve a register for these purposes so  
the backend does not have to worry about its value being clobbered. A  
better solution would be to teach these routines to make use of the  
register scavenger (or rather the callers should use the scavenger and  
pass the handle to these routines) to find a scratch register. It will  
require some changes to the target independent portion of codegen  
though.

Evan
>
>
> TIA,
> Sanjiv
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20081023/213b11f9/attachment.html>


More information about the llvm-dev mailing list