OpCode.EvaluationStackDelta Property
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.
Gets the value of how the IL instruction changes the evaluation stack.
public:
property int EvaluationStackDelta { int get(); };
public int EvaluationStackDelta { get; }
member this.EvaluationStackDelta : int
Public ReadOnly Property EvaluationStackDelta As Integer
Property Value
Remarks
The difference between how many elements are popped from the stack and how many are pushed onto the stack as a result of the IL instruction.
For some IL instructions like Call stack change is not fixed and depends on the called reference signature.
For such OpCodes the EvaluationStackDelta returns 0. In this case you should not rely on
EvaluationStackDelta for calculating stack size and/or max stack, instead need to evaluate the reference signature.
For example, in case the instruction is calling a method reference, you need to evaluate the method signature;
the push count depends on the returning value, the pop count depends on how many parameters passed.