Uses of Class
com.strobel.assembler.ir.Instruction
Packages that use Instruction
Package
Description
-
Uses of Instruction in com.strobel.assembler.flowanalysis
Fields in com.strobel.assembler.flowanalysis declared as InstructionModifier and TypeFieldDescriptionprivate Instruction
ControlFlowNode._end
private Instruction
ControlFlowNode.InstructionIterator._next
private Instruction
ControlFlowNode._start
Fields in com.strobel.assembler.flowanalysis with type parameters of type InstructionModifier and TypeFieldDescriptionprivate final List
<Instruction> ControlFlowGraphBuilder._instructions
Methods in com.strobel.assembler.flowanalysis that return InstructionModifier and TypeMethodDescriptionfinal Instruction
ControlFlowNode.getEnd()
final Instruction
ControlFlowNode.getStart()
final Instruction
ControlFlowNode.InstructionIterator.next()
Methods in com.strobel.assembler.flowanalysis that return types with arguments of type InstructionMethods in com.strobel.assembler.flowanalysis with parameters of type InstructionModifier and TypeMethodDescriptionprivate void
ControlFlowGraphBuilder.createBranchControlFlow
(ControlFlowNode node, Instruction jump, Instruction target) private ControlFlowEdge
ControlFlowGraphBuilder.createEdge
(ControlFlowNode fromNode, Instruction toInstruction, JumpType type) private void
ControlFlowGraphBuilder.createReturnControlFlow
(ControlFlowNode node, Instruction end) private ControlFlowNode
ControlFlowGraphBuilder.findNode
(Instruction instruction) private int
ControlFlowGraphBuilder.getInstructionIndex
(Instruction instruction) final void
ControlFlowNode.setEnd
(Instruction end) final void
ControlFlowNode.setStart
(Instruction start) Method parameters in com.strobel.assembler.flowanalysis with type arguments of type InstructionModifier and TypeMethodDescriptionstatic ControlFlowGraph
ControlFlowGraphBuilder.build
(List<Instruction> instructions, List<ExceptionHandler> exceptionHandlers) Constructors in com.strobel.assembler.flowanalysis with parameters of type InstructionModifierConstructorDescriptionControlFlowNode
(int blockIndex, Instruction start, Instruction end) Constructor parameters in com.strobel.assembler.flowanalysis with type arguments of type InstructionModifierConstructorDescriptionprivate
ControlFlowGraphBuilder
(List<Instruction> instructions, List<ExceptionHandler> exceptionHandlers) -
Uses of Instruction in com.strobel.assembler.ir
Fields in com.strobel.assembler.ir declared as InstructionModifier and TypeFieldDescriptionprivate final Instruction
InstructionBlock._firstInstruction
private final Instruction
InstructionBlock._lastInstruction
private Instruction
Instruction._next
private Instruction
Instruction._previous
private final Instruction
StackMapFrame._startInstruction
Fields in com.strobel.assembler.ir with type parameters of type InstructionModifier and TypeFieldDescriptionprivate Map
<Instruction, TypeReference> StackMappingVisitor._initializations
Methods in com.strobel.assembler.ir that return InstructionModifier and TypeMethodDescriptionInstructionCollection.atOffset
(int offset) Instruction.clone()
static Instruction
static Instruction
static Instruction
static Instruction
static Instruction
static Instruction
static Instruction
Instruction.create
(OpCode opCode, Instruction target) static Instruction
Instruction.create
(OpCode opCode, DynamicCallSite callSite) static Instruction
Instruction.create
(OpCode opCode, FieldReference field) static Instruction
Instruction.create
(OpCode opCode, MethodReference method) static Instruction
Instruction.create
(OpCode opCode, SwitchInfo switchInfo) static Instruction
Instruction.create
(OpCode opCode, TypeReference type) static Instruction
Instruction.create
(OpCode opCode, TypeReference type, int operand) static Instruction
Instruction.create
(OpCode opCode, VariableReference variable) static Instruction
Instruction.create
(OpCode opCode, VariableReference variable, int operand) final Instruction
InstructionBlock.getFirstInstruction()
final Instruction
InstructionBlock.getLastInstruction()
Instruction.getNext()
Instruction.getPrevious()
final Instruction
StackMapFrame.getStartInstruction()
InstructionCollection.tryGetAtOffset
(int offset) Methods in com.strobel.assembler.ir that return types with arguments of type InstructionModifier and TypeMethodDescriptionfinal Map
<Instruction, TypeReference> StackMappingVisitor.getInitializations()
Methods in com.strobel.assembler.ir with parameters of type InstructionModifier and TypeMethodDescriptionprotected void
InstructionCollection.afterAdd
(int index, Instruction item, boolean appended) protected void
InstructionCollection.afterRemove
(int index, Instruction item) protected void
InstructionCollection.beforeSet
(int index, Instruction item) final int
Instruction.compareTo
(Instruction o) final boolean
InstructionBlock.contains
(Instruction instruction) static final Predicate
<InstructionBlock> InstructionBlock.containsInstructionPredicate
(Instruction instruction) static Instruction
Instruction.create
(OpCode opCode, Instruction target) private void
StackMappingVisitor.InstructionAnalyzer.execute
(Instruction instruction) static FrameValue
FrameValue.makeAddress
(Instruction target) static FrameValue
FrameValue.makeUninitializedReference
(Instruction newInstruction) private static boolean
StackMapAnalyzer.pruneLocals
(StackMappingVisitor stackMappingVisitor, Instruction target, VariableDefinitionCollection variables) void
Instruction.setNext
(Instruction next) void
Instruction.setPrevious
(Instruction previous) private static boolean
StackMapAnalyzer.updateFrame
(Instruction instruction, Frame inputFrame, Frame outputFrame, Map<Instruction, TypeReference> initializations, Map<Instruction, Frame> frames) void
InstructionVisitor.visit
(Instruction instruction) void
StackMappingVisitor.InstructionAnalyzer.visit
(Instruction instruction) void
InstructionVisitor.visitBranch
(OpCode opCode, Instruction target) void
StackMappingVisitor.InstructionAnalyzer.visitBranch
(OpCode code, Instruction target) void
StackMappingVisitor.visitLineNumber
(Instruction instruction, int lineNumber) Method parameters in com.strobel.assembler.ir with type arguments of type InstructionModifier and TypeMethodDescriptionprivate static FrameValue
Frame.initialize
(Map<Instruction, TypeReference> initializations, FrameValue t) static Frame
Frame.merge
(Frame input, Frame output, Frame next, Map<Instruction, TypeReference> initializations) private static boolean
StackMapAnalyzer.updateFrame
(Instruction instruction, Frame inputFrame, Frame outputFrame, Map<Instruction, TypeReference> initializations, Map<Instruction, Frame> frames) Constructors in com.strobel.assembler.ir with parameters of type InstructionModifierConstructorDescriptionInstructionBlock
(Instruction firstInstruction, Instruction lastInstruction) StackMapFrame
(Frame frame, Instruction startInstruction) -
Uses of Instruction in com.strobel.assembler.metadata
Fields in com.strobel.assembler.metadata declared as InstructionModifier and TypeFieldDescriptionprivate Instruction
SwitchInfo._defaultTarget
private Instruction[]
SwitchInfo._targets
Methods in com.strobel.assembler.metadata that return InstructionMethods in com.strobel.assembler.metadata with parameters of type InstructionModifier and TypeMethodDescriptionprivate ControlFlowEdge
ExceptionHandlerMapper.createEdge
(ControlFlowNode fromNode, Instruction toInstruction, JumpType type) private ControlFlowNode
ExceptionHandlerMapper.findNode
(Instruction instruction) abstract void
MethodReader.Fixup.fix
(Instruction target) void
MethodReader.Fixup.MultiFixup.fix
(Instruction target) private int
ExceptionHandlerMapper.getInstructionIndex
(Instruction instruction) private boolean
ExceptionHandlerMapper.isHandlerStart
(Instruction instruction) void
SwitchInfo.setDefaultTarget
(Instruction defaultTarget) void
SwitchInfo.setTargets
(Instruction... targets) void
MethodVisitor.visitLineNumber
(Instruction instruction, int lineNumber) Constructors in com.strobel.assembler.metadata with parameters of type InstructionModifierConstructorDescriptionSwitchInfo
(int[] keys, Instruction defaultTarget, Instruction[] targets) SwitchInfo
(Instruction defaultTarget, Instruction[] targets) -
Uses of Instruction in com.strobel.decompiler
Methods in com.strobel.decompiler that return InstructionModifier and TypeMethodDescriptionstatic Instruction
InstructionHelper.reverseLoadOrStore
(Instruction instruction) Methods in com.strobel.decompiler with parameters of type InstructionModifier and TypeMethodDescriptionstatic int
InstructionHelper.getLoadOrStoreSlot
(Instruction instruction) static int
InstructionHelper.getPopDelta
(Instruction instruction, MethodBody body) static int
InstructionHelper.getPushDelta
(Instruction instruction, MethodBody body) static Instruction
InstructionHelper.reverseLoadOrStore
(Instruction instruction) static void
DecompilerHelpers.writeEndOffsetReference
(ITextOutput writer, Instruction instruction) static void
DecompilerHelpers.writeInstruction
(ITextOutput writer, Instruction instruction) private static void
DecompilerHelpers.writeLabelList
(ITextOutput writer, Instruction[] instructions) static void
DecompilerHelpers.writeOffsetReference
(ITextOutput writer, Instruction instruction) private static void
DecompilerHelpers.writeOperandList
(ITextOutput writer, Instruction instruction) -
Uses of Instruction in com.strobel.decompiler.ast
Fields in com.strobel.decompiler.ast declared as InstructionModifier and TypeFieldDescription(package private) final Instruction
AstBuilder.SubroutineInfo.end
(package private) Instruction
AstBuilder.ByteCode.instruction
(package private) final Instruction
AstBuilder.SubroutineInfo.start
Fields in com.strobel.decompiler.ast with type parameters of type InstructionModifier and TypeFieldDescriptionprivate final Map
<Instruction, ControlFlowNode> AstBuilder.FinallyInlining._nodeMap
private Map
<Instruction, Instruction> AstBuilder._originalInstructionMap
private Map
<Instruction, Instruction> AstBuilder._originalInstructionMap
private final Function
<Instruction, Instruction> AstBuilder.FinallyInlining._previous
private final Function
<Instruction, Instruction> AstBuilder.FinallyInlining._previous
private final Set
<Instruction> AstBuilder._removed
private final Set
<Instruction> AstBuilder.FinallyInlining._removed
(package private) final List
<Instruction> AstBuilder.SubroutineInfo.deadReferences
(package private) final List
<Instruction> AstBuilder.SubroutineInfo.liveReferences
Methods in com.strobel.decompiler.ast that return InstructionModifier and TypeMethodDescriptionprivate static Instruction
AstBuilder.mappedInstruction
(Map<Instruction, Instruction> map, Instruction instruction) private Instruction
AstBuilder.FinallyInlining.previous
(Instruction i) Methods in com.strobel.decompiler.ast that return types with arguments of type InstructionModifier and TypeMethodDescriptionprivate static Map
<Instruction, ControlFlowNode> AstBuilder.createNodeMap
(ControlFlowGraph cfg) Methods in com.strobel.decompiler.ast with parameters of type InstructionModifier and TypeMethodDescriptionprivate static ControlFlowNode
AstBuilder.findNode
(ControlFlowGraph cfg, Instruction instruction) private boolean
AstBuilder.inlineSubroutine
(AstBuilder.SubroutineInfo subroutine, Instruction reference) private static boolean
AstBuilder.isGetClassInvocation
(Instruction p) private static Instruction
AstBuilder.mappedInstruction
(Map<Instruction, Instruction> map, Instruction instruction) private static boolean
AstBuilder.opCodesMatch
(Instruction tail1, Instruction tail2, int count, Function<Instruction, Instruction> previous) private Instruction
AstBuilder.FinallyInlining.previous
(Instruction i) private void
AstBuilder.FinallyInlining.processNodes
(AstBuilder.HandlerInfo handlerInfo, Instruction first, Instruction last, int instructionCount, Set<ControlFlowNode> toProcess, Set<ControlFlowNode> forbiddenNodes) private void
AstBuilder.remapHandlersForInlinedSubroutine
(Instruction jump, Instruction start, Instruction end) Method parameters in com.strobel.decompiler.ast with type arguments of type InstructionModifier and TypeMethodDescriptionprivate static InstructionCollection
AstBuilder.copyInstructions
(List<Instruction> instructions) private void
AstBuilder.duplicateHandlersForInlinedSubroutine
(AstBuilder.SubroutineInfo subroutine, Map<Instruction, Instruction> oldToNew) private void
AstBuilder.duplicateHandlersForInlinedSubroutine
(AstBuilder.SubroutineInfo subroutine, Map<Instruction, Instruction> oldToNew) private static Instruction
AstBuilder.mappedInstruction
(Map<Instruction, Instruction> map, Instruction instruction) private static Instruction
AstBuilder.mappedInstruction
(Map<Instruction, Instruction> map, Instruction instruction) private static boolean
AstBuilder.opCodesMatch
(Instruction tail1, Instruction tail2, int count, Function<Instruction, Instruction> previous) private static boolean
AstBuilder.opCodesMatch
(Instruction tail1, Instruction tail2, int count, Function<Instruction, Instruction> previous) private void
AstBuilder.remapJumps
(Map<Instruction, Instruction> remappedJumps) private void
AstBuilder.remapJumps
(Map<Instruction, Instruction> remappedJumps) (package private) static void
AstBuilder.FinallyInlining.run
(MethodBody body, InstructionCollection instructions, List<ExceptionHandler> handlers, Set<Instruction> removedInstructions) Constructor parameters in com.strobel.decompiler.ast with type arguments of type InstructionModifierConstructorDescriptionprivate
FinallyInlining
(MethodBody body, InstructionCollection instructions, List<ExceptionHandler> handlers, Set<Instruction> removedInstructions) -
Uses of Instruction in com.strobel.decompiler.languages
Methods in com.strobel.decompiler.languages with parameters of type InstructionModifier and TypeMethodDescriptionvoid
BytecodeLanguage.InstructionPrinter.visit
(Instruction instruction) void
BytecodeLanguage.InstructionPrinter.visitBranch
(OpCode op, Instruction target)