Uses of Class
com.strobel.assembler.ir.Instruction
-
-
Uses of Instruction in com.strobel.assembler.flowanalysis
Fields in com.strobel.assembler.flowanalysis declared as Instruction Modifier and Type Field Description private Instruction
ControlFlowNode. _end
private Instruction
ControlFlowNode.InstructionIterator. _next
private Instruction
ControlFlowNode. _start
Fields in com.strobel.assembler.flowanalysis with type parameters of type Instruction Modifier and Type Field Description private java.util.List<Instruction>
ControlFlowGraphBuilder. _instructions
Methods in com.strobel.assembler.flowanalysis that return Instruction Modifier and Type Method Description Instruction
ControlFlowNode. getEnd()
Instruction
ControlFlowNode. getStart()
Instruction
ControlFlowNode.InstructionIterator. next()
Methods in com.strobel.assembler.flowanalysis that return types with arguments of type Instruction Modifier and Type Method Description java.lang.Iterable<Instruction>
ControlFlowNode. getInstructions()
Methods in com.strobel.assembler.flowanalysis with parameters of type Instruction Modifier and Type Method Description private 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)
void
ControlFlowNode. setEnd(Instruction end)
void
ControlFlowNode. setStart(Instruction start)
Method parameters in com.strobel.assembler.flowanalysis with type arguments of type Instruction Modifier and Type Method Description static ControlFlowGraph
ControlFlowGraphBuilder. build(java.util.List<Instruction> instructions, java.util.List<ExceptionHandler> exceptionHandlers)
Constructors in com.strobel.assembler.flowanalysis with parameters of type Instruction Constructor Description ControlFlowNode(int blockIndex, Instruction start, Instruction end)
Constructor parameters in com.strobel.assembler.flowanalysis with type arguments of type Instruction Constructor Description ControlFlowGraphBuilder(java.util.List<Instruction> instructions, java.util.List<ExceptionHandler> exceptionHandlers)
-
Uses of Instruction in com.strobel.assembler.ir
Fields in com.strobel.assembler.ir declared as Instruction Modifier and Type Field Description private Instruction
InstructionBlock. _firstInstruction
private Instruction
InstructionBlock. _lastInstruction
private Instruction
Instruction. _next
private Instruction
Instruction. _previous
private Instruction
StackMapFrame. _startInstruction
Fields in com.strobel.assembler.ir with type parameters of type Instruction Modifier and Type Field Description private java.util.Map<Instruction,TypeReference>
StackMappingVisitor. _initializations
Methods in com.strobel.assembler.ir that return Instruction Modifier and Type Method Description Instruction
InstructionCollection. atOffset(int offset)
Instruction
Instruction. clone()
static Instruction
Instruction. create(OpCode opCode)
static Instruction
Instruction. create(OpCode opCode, double value)
static Instruction
Instruction. create(OpCode opCode, float value)
static Instruction
Instruction. create(OpCode opCode, int value)
static Instruction
Instruction. create(OpCode opCode, long value)
static Instruction
Instruction. create(OpCode opCode, short value)
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)
Instruction
InstructionBlock. getFirstInstruction()
Instruction
InstructionBlock. getLastInstruction()
Instruction
Instruction. getNext()
Instruction
Instruction. getPrevious()
Instruction
StackMapFrame. getStartInstruction()
Instruction
InstructionCollection. tryGetAtOffset(int offset)
Methods in com.strobel.assembler.ir that return types with arguments of type Instruction Modifier and Type Method Description java.util.Map<Instruction,TypeReference>
StackMappingVisitor. getInitializations()
Methods in com.strobel.assembler.ir with parameters of type Instruction Modifier and Type Method Description protected 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)
int
Instruction. compareTo(Instruction o)
boolean
InstructionBlock. contains(Instruction instruction)
static 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, java.util.Map<Instruction,TypeReference> initializations, java.util.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 Instruction Modifier and Type Method Description private static FrameValue
Frame. initialize(java.util.Map<Instruction,TypeReference> initializations, FrameValue t)
static Frame
Frame. merge(Frame input, Frame output, Frame next, java.util.Map<Instruction,TypeReference> initializations)
private static boolean
StackMapAnalyzer. updateFrame(Instruction instruction, Frame inputFrame, Frame outputFrame, java.util.Map<Instruction,TypeReference> initializations, java.util.Map<Instruction,Frame> frames)
Constructors in com.strobel.assembler.ir with parameters of type Instruction Constructor Description InstructionBlock(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 Instruction Modifier and Type Field Description private Instruction
SwitchInfo. _defaultTarget
private Instruction[]
SwitchInfo. _targets
Methods in com.strobel.assembler.metadata that return Instruction Modifier and Type Method Description Instruction
SwitchInfo. getDefaultTarget()
Instruction[]
SwitchInfo. getTargets()
Methods in com.strobel.assembler.metadata with parameters of type Instruction Modifier and Type Method Description private 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 Instruction Constructor Description SwitchInfo(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 Instruction Modifier and Type Method Description static Instruction
InstructionHelper. reverseLoadOrStore(Instruction instruction)
Methods in com.strobel.decompiler with parameters of type Instruction Modifier and Type Method Description static 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 Instruction Modifier and Type Field Description (package private) Instruction
AstBuilder.SubroutineInfo. end
(package private) Instruction
AstBuilder.ByteCode. instruction
(package private) Instruction
AstBuilder.SubroutineInfo. start
Fields in com.strobel.decompiler.ast with type parameters of type Instruction Modifier and Type Field Description private java.util.Map<Instruction,ControlFlowNode>
AstBuilder.FinallyInlining. _nodeMap
private java.util.Map<Instruction,Instruction>
AstBuilder. _originalInstructionMap
private java.util.Map<Instruction,Instruction>
AstBuilder. _originalInstructionMap
private Function<Instruction,Instruction>
AstBuilder.FinallyInlining. _previous
private Function<Instruction,Instruction>
AstBuilder.FinallyInlining. _previous
private java.util.Set<Instruction>
AstBuilder. _removed
private java.util.Set<Instruction>
AstBuilder.FinallyInlining. _removed
(package private) java.util.List<Instruction>
AstBuilder.SubroutineInfo. deadReferences
(package private) java.util.List<Instruction>
AstBuilder.SubroutineInfo. liveReferences
Methods in com.strobel.decompiler.ast that return Instruction Modifier and Type Method Description private static Instruction
AstBuilder. mappedInstruction(java.util.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 Instruction Modifier and Type Method Description private static java.util.Map<Instruction,ControlFlowNode>
AstBuilder. createNodeMap(ControlFlowGraph cfg)
Methods in com.strobel.decompiler.ast with parameters of type Instruction Modifier and Type Method Description private 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(java.util.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, java.util.Set<ControlFlowNode> toProcess, java.util.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 Instruction Modifier and Type Method Description private static InstructionCollection
AstBuilder. copyInstructions(java.util.List<Instruction> instructions)
private void
AstBuilder. duplicateHandlersForInlinedSubroutine(AstBuilder.SubroutineInfo subroutine, java.util.Map<Instruction,Instruction> oldToNew)
private void
AstBuilder. duplicateHandlersForInlinedSubroutine(AstBuilder.SubroutineInfo subroutine, java.util.Map<Instruction,Instruction> oldToNew)
private static Instruction
AstBuilder. mappedInstruction(java.util.Map<Instruction,Instruction> map, Instruction instruction)
private static Instruction
AstBuilder. mappedInstruction(java.util.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(java.util.Map<Instruction,Instruction> remappedJumps)
private void
AstBuilder. remapJumps(java.util.Map<Instruction,Instruction> remappedJumps)
(package private) static void
AstBuilder.FinallyInlining. run(MethodBody body, InstructionCollection instructions, java.util.List<ExceptionHandler> handlers, java.util.Set<Instruction> removedInstructions)
Constructor parameters in com.strobel.decompiler.ast with type arguments of type Instruction Constructor Description FinallyInlining(MethodBody body, InstructionCollection instructions, java.util.List<ExceptionHandler> handlers, java.util.Set<Instruction> removedInstructions)
-
Uses of Instruction in com.strobel.decompiler.languages
Methods in com.strobel.decompiler.languages with parameters of type Instruction Modifier and Type Method Description void
BytecodeLanguage.InstructionPrinter. visit(Instruction instruction)
void
BytecodeLanguage.InstructionPrinter. visitBranch(OpCode op, Instruction target)
-