.hi .lo notations

Hiroshi Yamauchi yamauchi at google.com
Mon Dec 7 16:05:14 PST 2009


 Hi guys,

-XX:+PrintAssembly and the alloc_class chunk0 both made sense to me.

Thanks.

Hiroshi

On Mon, Dec 7, 2009 at 9:10 AM, Tom Rodriguez <Thomas.Rodriguez at sun.com> wrote:
> I've considered adding support for $$second in the adlc so that we can replace all these .lo/.hi things with the real register but it never moved to the top of the list.  hi/lo isn't really even a good description of the notion since that's a platform dependent thing.  Basically foo.lo is foo and foo.hi is the next following register in the alloc_class chunk0.
>
> // For the Intel integer registers, the equivalent Long pairs are
> // EDX:EAX, EBX:ECX, and EDI:EBP.
> alloc_class chunk0( ECX,   EBX,   EBP,   EDI,   EAX,   EDX,   ESI, ESP,
>
> tom
>
> On Dec 4, 2009, at 6:04 PM, Hiroshi Yamauchi wrote:
>
>> Hi,
>>
>> In PrintOptoAssembly output, I see .hi and .lo notations used for
>> handling 64 bit long values on 32 bit Linux x86. For example, EAX.hi
>> or EBP.lo.
>>
>> I heard that they are aliases to other registers. If so, what are the
>> exact rules about the aliases?
>>
>> Thanks,
>> Hiroshi
>
>


More information about the hotspot-compiler-dev mailing list