harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From George Timoshenko <george.timoshe...@gmail.com>
Subject Re: [jitrino]questions about HIR insts
Date Fri, 01 Feb 2008 05:38:21 GMT
> What is Op_TauStInd? which insts  could appears before it?

This inst has arguments:

src			the value to be stored
ptr			the address where 'src' is being stored at
tauBaseNonNull		the result of ptr null check
tauAddressInRange	the slot where ptr points at has a correct type
tauElemTypeChecked	the src type is OK to be stored at ptr address


last three tau-operands may have a values like tauSafe or tauUnsafe. 
That means that they were not calculated. And the "author" of the 
TauStInd instruction just sure that everything is fine (tauSafe), or not 
(tauUnsafe).

There are no some definite requirements for the instructions that 
precedes the TauStInd. Just a common rule that src and ptr must have a 
reasonable values.
ptr - must be of the pointer type. (ptr->getType()->asPtrType() returns 
non NULL)

src->getType() must equals or castable to 
ptr->getType()->asPtrType()->getPointedToType(). This rule is not so 
strict but you will probably get as assertion if you break it.

Does the info answers you needs?

There is also some specific on EM64T related to the mode of references 
compression. Do you want me to describe?


Mime
View raw message