Request for review (L): 6797305: Add LoadUB and LoadUI opcode class

Tom Rodriguez Thomas.Rodriguez at Sun.COM
Fri Feb 27 10:06:06 PST 2009


Basically you have to distinguish the two modes by hand.  Check out  
the loadN instruct definition.  Does $mem$$base$$Register not work?

tom


On Feb 27, 2009, at 8:15 AM, Christian Thalinger wrote:

> On Thu, 2009-02-26 at 09:02 -0800, Tom Rodriguez wrote:
>> As far as sparc goes I wouldn't mind if they were changed to use the
>> MacroAssembler too.  Someday we'd like to convert all the inc_encodes
>> to use MacroAssembler.
>
> Hmm, I don't know how to do it properly on SPARC.  There are only two
> (three) versions of emit functions:
>
> ldsb(  Register s1, Register s2, Register d)
> ldsb(  Register s1, int simm13a, Register d)
>
> (And this one:
>
> ldsb( const Address& a, Register d, int offset )
> )
>
> I tried something like that:
>
>  ins_encode %{
>    __ ldsb($mem$$base$$Register, $mem$$disp, $dst$$Register);
>  %}
>
> but that does work (I know the $$Register is wrong).  The question is:
> would it be correct to use $mem$$base and $mem$$disp and assume $mem
> $$index and $mem$$scale are zero or not used?
>
> -- Christian
>




More information about the hotspot-compiler-dev mailing list