[LLVMdev] Illegal pointer type
Evan Cheng
evan.cheng at apple.com
Mon Sep 22 00:00:27 PDT 2008
On Sep 20, 2008, at 7:12 AM, Sanjiv.Gupta at microchip.com wrote:
>> I am assuming a 16-bit value will be stored in a pair of 8-bit
>> registers?
>
> One related question is how to make sure that the correct register
> pair is allocated to the16-bit quantity when using two 8-bit
> operations.
> In other words, how we can make sure that the 16-bit pointer is
> stored into [AH, AL] and not in [AH, BL] ?
By using pseudo i16 registers which map to legal pairs [AH, AL]. That
is, you can specify a pseudo register AX and it has sub-registers AH,
AL.
Evan
>
>
> i.e.
> GR8 = [ AH, BH, AL, BL];
> GR16 = [AX, BX] ; // AX, BX are subreg pairs of ah,al and bh, bl
>
> the DAG looks like Wrapper:i16 (GR16) = MoveToHi:i8 (GR8) ,
> MoveToLo:i8 (GR8)
>
> Now how to make sure that if MoveToHi gets AH , then
> 1. MoveToLo should get AL,
> 2. the Wrapper should get AX
>
> - Sanjiv
>
>
> On Sep 19, 2008, at 5:01 AM, Sachin.Punyani at microchip.com wrote:
>
>>
>>
>>> -----Original Message-----
>>> From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-
>>> bounces at cs.uiuc.edu]
>> On
>>> Behalf Of Bill Wendling
>>> Sent: Friday, September 19, 2008 4:38 AM
>>>
>>> On Thu, Sep 18, 2008 at 7:12 AM, <Sachin.Punyani at microchip.com>
>> wrote:
>>>> What changes would be required in LLVM to support illegal pointer
>> type?
>>>>
>>> Hi Sachin,
>>>
>>> The question's a bit broad. And I don't think the answer you want is
>>> as simple as "don't run the legalizer" (which probably won't work).
>>> Do
>>> you have a more specific question?
>>
>> I am trying to ask a broad question. My target has 16 bit pointers
>> but
>> register size is 8 bit only. What changes in LLVM would be required
>> to
>> support 16 bit pointers on 8 bit registers?
>>
>> Regards
>> Sachin
>>
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
> <winmail.dat>_______________________________________________
> 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