OpCodes.Ldsflda Field
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Pushes the address of a static field onto the evaluation stack.
public: static initonly System::Reflection::Emit::OpCode Ldsflda;
public static readonly System.Reflection.Emit.OpCode Ldsflda;
staticval mutable Ldsflda : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldsflda As OpCode
Field Value
Remarks
The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:
Format | Assembly Format | Description |
---|---|---|
7F < T > |
ldsflda field |
Push the address of field on the stack |
The stack transitional behavior, in sequential order, is:
- The address of a specific field is pushed onto the stack.
The ldsflda
instruction pushes the address of a static (shared among all instances of a class) field on the stack. The address may be represented as a transient pointer (type *
) if the metadata token field
refers to a type whose memory is managed. Otherwise, it corresponds to an unmanaged pointer (type native int
). Note that field
may be a static global with an assigned relative virtual address (the offset of the field from the base address at which its containing PE file is loaded into memory) where the memory is unmanaged.
The ldsflda
instruction can have a Volatile prefix.
MissingFieldException is thrown if field is not found in the metadata. This is typically checked when Microsoft Intermediate Language (MSIL) instructions are converted to native code, not at runtime.
The following Emit method overload can use the ldsflda
opcode: