Thanks George, It is very helpful! BTW, what do SystemClasses refers to exactly? kernel classes?
Thanks. 2008/5/19 George Timoshenko <[EMAIL PROTECTED]>: > I also found LdInd, LdRef, LdVar >> Where are they used? and What is the difference between these and >> TauLdInd? >> > > LdInd: its a kind of wrapper. It can be used for load of anything from > memory. But it is not used for java AFAIR. > (For Java you always know what you are trying to load so for example for > getfield you calculate field address - LdFieldAddr, make null- and type- > checks and TauLdInd w/o that wrapper ) > > LdRef - is used for loading strings and SystemClasses. the address for the > load explicitly appears only at code selector. In HLO LdRef instruction > keeps enclosing method and constant pool index inside for further address > request. (VM provides the address at compile time for such items) > > LdVar - is used for operations with local variables. It is not actually a > real load from memory. Some var may happen to be assigned to a register > later in code generator. Code selector selects the inst into PseudoCopy > instruction. And later PseudoCopy will disappeare or become a real MOV. > > -- >From : [EMAIL PROTECTED] School of Fudan University
