Hi all, I've got a question about MemOpnd in LIR confusing me a lot. What is the meaning of MemOpnd [ref 1]? and what is the meaning of the instructions [ref 2] including it? Really appreciate! [ref 1]: Opnd * IRManager::newMemOpnd(Type * type, MemOpndKind k, Opnd * base, Opnd * index, Opnd * scale, Opnd * displacement, RegName segReg) { Opnd * opnd = newOpnd(type); opnd->assignMemLocation(k,base,index,scale,displacement); if (segReg != RegName_Null) opnd->setSegReg(segReg); return opnd; } [ref 2]: I4: (AD:t14:cls:.Unresolved) =CopyPseudoInst/MOV (AU:t13[t8]:cls:.Unresolved) Here the t13 is a MemOpnd and t8 is t13' subOpnd. t8:ref:cls:.Unresolved addr=t8:ref:cls:.Unresolved Initial constraint: Sz32:Imm|Mem|GPReg{EAX|ECX|EDX|EBX|ESP|EBP|ESI|EDI} Calculated constraint: Sz32:Imm|Mem|GPReg{EAX|ECX|EDX|EBX|ESP|EBP|ESI|EDI} Location constraint: Null t13[t8]:cls:.Unresolved addr=t13[t8]:cls:.Unresolved Initial constraint: Sz32:Imm|Mem|GPReg{EAX|ECX|EDX|EBX|ESP|EBP|ESI|EDI} Calculated constraint: Sz32:Imm|Mem|GPReg{EAX|ECX|EDX|EBX|ESP|EBP|ESI|EDI} Location constraint: Sz32:Mem t14:cls:.Unresolved addr=t14:cls:.Unresolved Initial constraint: Sz32:Imm|Mem|GPReg{EAX|ECX|EDX|EBX|ESP|EBP|ESI|EDI} Calculated constraint: Sz32:Imm|Mem|GPReg{EAX|ECX|EDX|EBX|ESP|EBP|ESI|EDI} Location constraint: Null 2009-02-12 lijian