Adds two unsigned integer values, performs an overflow check, and pushes the result onto the evaluation stack.
The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:
D7 |
add.ovf.un |
Adds two unsigned integer values with an overflow check. |
The stack transitional behavior, in sequential order, is:
[The 'ordered' type of list has not been implemented in the ECMA stylesheet.]OverflowException is thrown if the result is not represented in the result type.
You can perform this operation on signed integers. For floating-point values, use OpCodes.Add.
The acceptable operand types and their corresponding result data type are listed in the table below. If there is no entry for a particular type combination (for example, int32 and float; int32 and int64), it is an invalid Microsoft Intermediate Language (MSIL) instruction and generates an error.
add |
int32 |
int32 |
int32 |
add |
int32 |
native int |
native int |
add |
int32 |
& |
& |
add |
int32 |
* |
* |
add |
int64 |
int64 |
int64 |
add |
native int |
int32 |
native int |
add |
native int |
native int |
native int |
add |
native int |
& |
& |
add |
native int |
* |
* |
add |
F |
F |
F |
add |
& |
int32 |
& |
add |
& |
native int |
& |
add |
* |
int32 |
* |
add |
* |
native int |
* |
The following ILGenerator.Emit(OpCode) method overload can use the add.ovf.un opcode:
ILGenerator.Emit(OpCode)