Package org.teavm.model.instructions
Class AbstractInstructionReader
java.lang.Object
org.teavm.model.instructions.AbstractInstructionReader
- All Implemented Interfaces:
InstructionReader
- Direct Known Subclasses:
DataFlowGraphBuilder
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
arrayLength
(VariableReader receiver, VariableReader array) void
assign
(VariableReader receiver, VariableReader assignee) void
binary
(BinaryOperation op, VariableReader receiver, VariableReader first, VariableReader second, NumericOperandType type) void
boundCheck
(VariableReader receiver, VariableReader index, VariableReader array, boolean lower) void
cast
(VariableReader receiver, VariableReader value, IntegerSubtype type, CastIntegerDirection targetType) void
cast
(VariableReader receiver, VariableReader value, NumericOperandType sourceType, NumericOperandType targetType) void
cast
(VariableReader receiver, VariableReader value, ValueType targetType) void
choose
(VariableReader condition, List<? extends SwitchTableEntryReader> table, BasicBlockReader defaultTarget) void
classConstant
(VariableReader receiver, ValueType cst) void
cloneArray
(VariableReader receiver, VariableReader array) void
create
(VariableReader receiver, String type) void
createArray
(VariableReader receiver, ValueType itemType, List<? extends VariableReader> dimensions) void
createArray
(VariableReader receiver, ValueType itemType, VariableReader size) void
doubleConstant
(VariableReader receiver, double cst) void
exit
(VariableReader valueToReturn) void
floatConstant
(VariableReader receiver, float cst) void
getElement
(VariableReader receiver, VariableReader array, VariableReader index, ArrayElementType elementType) void
getField
(VariableReader receiver, VariableReader instance, FieldReference field, ValueType fieldType) void
void
integerConstant
(VariableReader receiver, int cst) void
invoke
(VariableReader receiver, VariableReader instance, MethodReference method, List<? extends VariableReader> arguments, InvocationType type) void
invokeDynamic
(VariableReader receiver, VariableReader instance, MethodDescriptor method, List<? extends VariableReader> arguments, MethodHandle bootstrapMethod, List<RuntimeConstant> bootstrapArguments) void
isInstance
(VariableReader receiver, VariableReader value, ValueType type) void
jump
(BasicBlockReader target) void
jumpIf
(BinaryBranchingCondition cond, VariableReader first, VariableReader second, BasicBlockReader consequent, BasicBlockReader alternative) void
jumpIf
(BranchingCondition cond, VariableReader operand, BasicBlockReader consequent, BasicBlockReader alternative) void
location
(TextLocation location) void
longConstant
(VariableReader receiver, long cst) void
monitorEnter
(VariableReader objectRef) void
monitorExit
(VariableReader objectRef) void
negate
(VariableReader receiver, VariableReader operand, NumericOperandType type) void
nop()
void
nullCheck
(VariableReader receiver, VariableReader value) void
nullConstant
(VariableReader receiver) void
putElement
(VariableReader array, VariableReader index, VariableReader value, ArrayElementType elementType) void
putField
(VariableReader instance, FieldReference field, VariableReader value, ValueType fieldType) void
raise
(VariableReader exception) void
stringConstant
(VariableReader receiver, String cst) void
unwrapArray
(VariableReader receiver, VariableReader array, ArrayElementType elementType)
-
Constructor Details
-
AbstractInstructionReader
public AbstractInstructionReader()
-
-
Method Details
-
location
- Specified by:
location
in interfaceInstructionReader
-
nop
public void nop()- Specified by:
nop
in interfaceInstructionReader
-
classConstant
- Specified by:
classConstant
in interfaceInstructionReader
-
nullConstant
- Specified by:
nullConstant
in interfaceInstructionReader
-
integerConstant
- Specified by:
integerConstant
in interfaceInstructionReader
-
longConstant
- Specified by:
longConstant
in interfaceInstructionReader
-
floatConstant
- Specified by:
floatConstant
in interfaceInstructionReader
-
doubleConstant
- Specified by:
doubleConstant
in interfaceInstructionReader
-
stringConstant
- Specified by:
stringConstant
in interfaceInstructionReader
-
binary
public void binary(BinaryOperation op, VariableReader receiver, VariableReader first, VariableReader second, NumericOperandType type) - Specified by:
binary
in interfaceInstructionReader
-
negate
- Specified by:
negate
in interfaceInstructionReader
-
assign
- Specified by:
assign
in interfaceInstructionReader
-
cast
- Specified by:
cast
in interfaceInstructionReader
-
cast
public void cast(VariableReader receiver, VariableReader value, NumericOperandType sourceType, NumericOperandType targetType) - Specified by:
cast
in interfaceInstructionReader
-
cast
public void cast(VariableReader receiver, VariableReader value, IntegerSubtype type, CastIntegerDirection targetType) - Specified by:
cast
in interfaceInstructionReader
-
jumpIf
public void jumpIf(BranchingCondition cond, VariableReader operand, BasicBlockReader consequent, BasicBlockReader alternative) - Specified by:
jumpIf
in interfaceInstructionReader
-
jumpIf
public void jumpIf(BinaryBranchingCondition cond, VariableReader first, VariableReader second, BasicBlockReader consequent, BasicBlockReader alternative) - Specified by:
jumpIf
in interfaceInstructionReader
-
jump
- Specified by:
jump
in interfaceInstructionReader
-
choose
public void choose(VariableReader condition, List<? extends SwitchTableEntryReader> table, BasicBlockReader defaultTarget) - Specified by:
choose
in interfaceInstructionReader
-
exit
- Specified by:
exit
in interfaceInstructionReader
-
raise
- Specified by:
raise
in interfaceInstructionReader
-
createArray
- Specified by:
createArray
in interfaceInstructionReader
-
createArray
public void createArray(VariableReader receiver, ValueType itemType, List<? extends VariableReader> dimensions) - Specified by:
createArray
in interfaceInstructionReader
-
create
- Specified by:
create
in interfaceInstructionReader
-
getField
public void getField(VariableReader receiver, VariableReader instance, FieldReference field, ValueType fieldType) - Specified by:
getField
in interfaceInstructionReader
-
putField
public void putField(VariableReader instance, FieldReference field, VariableReader value, ValueType fieldType) - Specified by:
putField
in interfaceInstructionReader
-
arrayLength
- Specified by:
arrayLength
in interfaceInstructionReader
-
cloneArray
- Specified by:
cloneArray
in interfaceInstructionReader
-
unwrapArray
public void unwrapArray(VariableReader receiver, VariableReader array, ArrayElementType elementType) - Specified by:
unwrapArray
in interfaceInstructionReader
-
getElement
public void getElement(VariableReader receiver, VariableReader array, VariableReader index, ArrayElementType elementType) - Specified by:
getElement
in interfaceInstructionReader
-
putElement
public void putElement(VariableReader array, VariableReader index, VariableReader value, ArrayElementType elementType) - Specified by:
putElement
in interfaceInstructionReader
-
invoke
public void invoke(VariableReader receiver, VariableReader instance, MethodReference method, List<? extends VariableReader> arguments, InvocationType type) - Specified by:
invoke
in interfaceInstructionReader
-
invokeDynamic
public void invokeDynamic(VariableReader receiver, VariableReader instance, MethodDescriptor method, List<? extends VariableReader> arguments, MethodHandle bootstrapMethod, List<RuntimeConstant> bootstrapArguments) - Specified by:
invokeDynamic
in interfaceInstructionReader
-
isInstance
- Specified by:
isInstance
in interfaceInstructionReader
-
initClass
- Specified by:
initClass
in interfaceInstructionReader
-
nullCheck
- Specified by:
nullCheck
in interfaceInstructionReader
-
monitorEnter
- Specified by:
monitorEnter
in interfaceInstructionReader
-
monitorExit
- Specified by:
monitorExit
in interfaceInstructionReader
-
boundCheck
public void boundCheck(VariableReader receiver, VariableReader index, VariableReader array, boolean lower) - Specified by:
boundCheck
in interfaceInstructionReader
-