Stloc_2 Field
Collapse the table of content
Expand the table of content

OpCodes.Stloc_2 Field

Pops the current value from the top of the evaluation stack and stores it in a the local variable list at index 2.

Namespace: System.Reflection.Emit
Assembly: mscorlib (in mscorlib.dll)

public static readonly OpCode Stloc_2
public static final OpCode Stloc_2
public static final var Stloc_2 : OpCode

The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:


Assembly Format




Pops a value from the stack into local variable 2

The stack transitional behavior, in sequential order, is:

  1. A value is popped off of the stack and placed in the local variable indexed by 2.

The stloc.2 instruction pops the top value off the evaluation stack and moves it into the local variable indexed by 2. The type of the value must match the type of the local variable as specified in the current method's local signature.

stloc.2 is an especially efficient encoding for storing values in local variable 2.

Storing into locals that hold an integer value smaller than 4 bytes long truncates the value as it moves from the stack to the local variable. Floating-point values are rounded from their native size (type F) to the size associated with the argument.

The following Emit method overload can use the stloc.2 opcode:

  • ILGenerator.Emit(OpCode)

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

Community Additions

© 2015 Microsoft