115 |
case IL_OP_LDELEMA: |
case IL_OP_LDELEMA: |
116 |
{ |
{ |
117 |
/* Load the address of an array element */ |
/* Load the address of an array element */ |
118 |
size = _ILSizeOfTypeLocked(elemType); |
size = _ILSizeOfTypeLocked(_ILCoderToILCVMCoder(coder)->process, |
119 |
|
elemType); |
120 |
#ifdef IL_NATIVE_INT64 |
#ifdef IL_NATIVE_INT64 |
121 |
if(indexType == ILEngineType_I4) |
if(indexType == ILEngineType_I4) |
122 |
#endif |
#endif |
543 |
ILClass *classInfo) |
ILClass *classInfo) |
544 |
{ |
{ |
545 |
/* Compute the size of the managed value in memory and on the stack */ |
/* Compute the size of the managed value in memory and on the stack */ |
546 |
ILUInt32 memorySize = _ILSizeOfTypeLocked(ILType_FromValueType(classInfo)); |
ILUInt32 memorySize = _ILSizeOfTypeLocked(((ILCVMCoder *)coder)->process, ILType_FromValueType(classInfo)); |
547 |
ILUInt32 stackSize = (memorySize + sizeof(CVMWord) - 1) / sizeof(CVMWord); |
ILUInt32 stackSize = (memorySize + sizeof(CVMWord) - 1) / sizeof(CVMWord); |
548 |
|
|
549 |
/* Generate the bytecode for the instruction */ |
/* Generate the bytecode for the instruction */ |