The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:
51 |
stind.ref |
Stores an object reference (type O) value at a given address. |
The stack transitional behavior, in sequential order, is:
[The 'ordered' type of list has not been implemented in the ECMA stylesheet.]The stind.ref instruction stores an object reference value at the supplied address (type native int, *, or &).
Type safe operation requires that the stind.ref instruction be used in a manner consistent with the type of the pointer. The operation of the stind.ref instruction can be altered by an immediately preceding OpCodes.Volatile or OpCodes.Unaligned prefix instruction.
NullReferenceException is thrown if addr is not naturally aligned for the argument type implied by the instruction suffix.
The following ILGenerator.Emit(OpCode) method overload can use the stind.ref opcode:
ILGenerator.Emit(OpCode)