ILInstruction
01 Syntax
Microsoft.VisualBasic.ApplicationServices.Development.VisualStudio.IL.ILInstruction
02 Methods
| Name | Overloads | Summary |
|---|---|---|
| GetCode | 1 | Returns a friendly strign representation of this instruction |
| GetExpandedOffset | 1 | Add enough zeros to a number as to be represented on 4 characters |
| ToString | 1 |
03 Properties
| Name | Overloads | Summary |
|---|---|---|
| Size | 1 | 该指令的总字节长度(操作码 + 操作数)。由 MethodBodyReader 在解析时回填。 |
| NextOffset | 1 | 下一条指令的 IL 偏移(顺序执行时的落点) |
| IsUnconditionalBranch | 1 | 无条件跳转(br / br.s / leave / leave.s) |
| IsConditionalBranch | 1 | 条件跳转(brtrue / brfalse / 各类 beq bne bgt blt ...) |
| IsSwitch | 1 | 多分支跳转(switch) |
| IsBranch | 1 | 是否为任何一种跳转指令 |
| IsReturn | 1 | ret |
| BranchTargets | 1 | 该指令的全部跳转目标(绝对 IL 偏移)。 条件/无条件跳转返回单元素数组,switch 返回全部 case 目标,其余返回空数组。 |
| CanFallThrough | 1 | 该指令是否会把控制流交给后面的指令(用于基本块切分) |
| Code | 1 | |
| Operand | 1 | |
| OperandData | 1 | |
| Offset | 1 |
04 Members
GetCode
Returns a friendly strign representation of this instruction
GetExpandedOffset(
Int64)Add enough zeros to a number as to be represented on 4 characters
Parameters
| Name | Type | Description |
|---|---|---|
offset | Int64 | The number that must be represented on 4 characters |
Size
该指令的总字节长度(操作码 + 操作数)。由 MethodBodyReader 在解析时回填。
NextOffset
下一条指令的 IL 偏移(顺序执行时的落点)
IsUnconditionalBranch
无条件跳转(br / br.s / leave / leave.s)
IsConditionalBranch
条件跳转(brtrue / brfalse / 各类 beq bne bgt blt ...)
IsSwitch
多分支跳转(switch)
IsBranch
是否为任何一种跳转指令
IsReturn
ret
BranchTargets
该指令的全部跳转目标(绝对 IL 偏移)。 条件/无条件跳转返回单元素数组,switch 返回全部 case 目标,其余返回空数组。
CanFallThrough
该指令是否会把控制流交给后面的指令(用于基本块切分)
Code
Operand
OperandData
Offset
ToString()