[LLVMdev] Modeling 16-bit pointer registers for an 8-bit target

Sanjiv.Gupta at microchip.com Sanjiv.Gupta at microchip.com
Wed Aug 6 03:54:58 PDT 2008

Pointer size on our target is 16-bits, and we have two 16-bit registers
that can be used only to hold pointers (indirect addresses). 


All operations on the target are 8-bit operations, so it takes two 8-bit
loads to load these pointer registers. 


We want LLVM to automatically expand all types to 8-bit values.


The problem is that LLVM does not expand GlobalAddresses, which are
16-bit values.

This in turn means that you have to specify a 16-bit register class, and
once you specify a 16-bit register class, LLVM does not further expand
16-bit values.


Any suggestions on how to model this into LLVM?




-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20080806/9822aa0c/attachment.html>

More information about the llvm-dev mailing list