public interface org.graalvm.compiler.lir.gen.LIRGeneratorTool extends org.graalvm.compiler.lir.gen.DiagnosticLIRGeneratorTool, jdk.vm.ci.code.ValueKindFactory<org.graalvm.compiler.core.common.LIRKind>
minor version: 0
major version: 59
flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
this_class: org.graalvm.compiler.lir.gen.LIRGeneratorTool
super_class: java.lang.Object
{
public abstract org.graalvm.compiler.lir.gen.ArithmeticLIRGeneratorTool getArithmetic();
descriptor: ()Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGeneratorTool;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.graalvm.compiler.core.common.spi.CodeGenProviders getProviders();
descriptor: ()Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract jdk.vm.ci.code.TargetDescription target();
descriptor: ()Ljdk/vm/ci/code/TargetDescription;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract jdk.vm.ci.meta.MetaAccessProvider getMetaAccess();
descriptor: ()Ljdk/vm/ci/meta/MetaAccessProvider;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract jdk.vm.ci.code.CodeCacheProvider getCodeCache();
descriptor: ()Ljdk/vm/ci/code/CodeCacheProvider;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.graalvm.compiler.core.common.spi.ForeignCallsProvider getForeignCalls();
descriptor: ()Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?> getCurrentBlock();
descriptor: ()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: ()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
public abstract org.graalvm.compiler.lir.gen.LIRGenerationResult getResult();
descriptor: ()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract jdk.vm.ci.code.RegisterConfig getRegisterConfig();
descriptor: ()Ljdk/vm/ci/code/RegisterConfig;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean hasBlockEnd(org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?>);
descriptor: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;)Z
MethodParameters:
Name Flags
block
public abstract org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory getMoveFactory();
descriptor: ()Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory getSpillMoveFactory();
descriptor: ()Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.graalvm.compiler.lir.gen.LIRGeneratorTool$BlockScope getBlockScope(org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?>);
descriptor: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$BlockScope;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;)Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$BlockScope;
MethodParameters:
Name Flags
block
public abstract boolean canInlineConstant(jdk.vm.ci.meta.Constant);
descriptor: (Ljdk/vm/ci/meta/Constant;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
constant
public abstract boolean mayEmbedConstantLoad(jdk.vm.ci.meta.Constant);
descriptor: (Ljdk/vm/ci/meta/Constant;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
constant
public abstract jdk.vm.ci.meta.Value emitConstant(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Constant);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/Value;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
kind
constant
public abstract jdk.vm.ci.meta.Value emitJavaConstant(jdk.vm.ci.meta.JavaConstant);
descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Ljdk/vm/ci/meta/Value;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
constant
public abstract <K extends jdk.vm.ci.meta.ValueKind<K>> K toRegisterKind();
descriptor: (Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/meta/ValueKind;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: <K:Ljdk/vm/ci/meta/ValueKind<TK;>;>(TK;)TK;
MethodParameters:
Name Flags
kind
public abstract jdk.vm.ci.meta.AllocatableValue emitLoadConstant(jdk.vm.ci.meta.ValueKind<?>, jdk.vm.ci.meta.Constant);
descriptor: (Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/AllocatableValue;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: (Ljdk/vm/ci/meta/ValueKind<*>;Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
kind
constant
public abstract void emitNullCheck(jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
address
state
public abstract org.graalvm.compiler.lir.Variable emitLogicCompareAndSwap(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
accessKind
address
expectedValue
newValue
trueValue
falseValue
public abstract jdk.vm.ci.meta.Value emitValueCompareAndSwap(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
accessKind
address
expectedValue
newValue
public jdk.vm.ci.meta.Value emitAtomicReadAndAdd(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.ValueKind<?>, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:()Ljava/lang/RuntimeException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 address Ljdk/vm/ci/meta/Value;
0 1 2 valueKind Ljdk/vm/ci/meta/ValueKind<*>;
0 1 3 delta Ljdk/vm/ci/meta/Value;
Signature: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind<*>;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
address
valueKind
delta
public jdk.vm.ci.meta.Value emitAtomicReadAndWrite(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.ValueKind<?>, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:()Ljava/lang/RuntimeException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 address Ljdk/vm/ci/meta/Value;
0 1 2 valueKind Ljdk/vm/ci/meta/ValueKind<*>;
0 1 3 newValue Ljdk/vm/ci/meta/Value;
Signature: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind<*>;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
address
valueKind
newValue
public abstract void emitDeoptimize(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
actionAndReason
failedSpeculation
state
public abstract org.graalvm.compiler.lir.Variable emitForeignCall(org.graalvm.compiler.core.common.spi.ForeignCallLinkage, org.graalvm.compiler.lir.LIRFrameState, jdk.vm.ci.meta.Value[]);
descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Lorg/graalvm/compiler/lir/LIRFrameState;[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0481) ACC_PUBLIC, ACC_VARARGS, ACC_ABSTRACT
MethodParameters:
Name Flags
linkage
state
args
public abstract jdk.vm.ci.code.RegisterAttributes attributes(jdk.vm.ci.code.Register);
descriptor: (Ljdk/vm/ci/code/Register;)Ljdk/vm/ci/code/RegisterAttributes;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
register
public abstract org.graalvm.compiler.lir.Variable newVariable(jdk.vm.ci.meta.ValueKind<?>);
descriptor: (Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: (Ljdk/vm/ci/meta/ValueKind<*>;)Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
kind
public abstract org.graalvm.compiler.lir.Variable emitMove(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
input
public abstract void emitMove(jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
dst
src
public abstract org.graalvm.compiler.lir.Variable emitReadRegister(jdk.vm.ci.code.Register, jdk.vm.ci.meta.ValueKind<?>);
descriptor: (Ljdk/vm/ci/code/Register;Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: (Ljdk/vm/ci/code/Register;Ljdk/vm/ci/meta/ValueKind<*>;)Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
register
kind
public abstract void emitWriteRegister(jdk.vm.ci.code.Register, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.ValueKind<?>);
descriptor: (Ljdk/vm/ci/code/Register;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: (Ljdk/vm/ci/code/Register;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind<*>;)V
MethodParameters:
Name Flags
dst
src
wordStamp
public abstract void emitMoveConstant(jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.Constant);
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Constant;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
dst
src
public abstract org.graalvm.compiler.lir.Variable emitAddress(jdk.vm.ci.meta.AllocatableValue);
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
stackslot
public abstract void emitMembar(int);
descriptor: (I)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
barriers
public abstract void emitUnwind(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
operand
public abstract void beforeRegisterAllocation();
descriptor: ()V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract void emitIncomingValues(jdk.vm.ci.meta.Value[]);
descriptor: ([Ljdk/vm/ci/meta/Value;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
params
public abstract void emitReturn(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
javaKind
input
public abstract jdk.vm.ci.meta.AllocatableValue asAllocatable(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
value
public abstract org.graalvm.compiler.lir.Variable load(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
value
public abstract jdk.vm.ci.meta.Value loadNonConst(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
value
public abstract boolean needOnlyOopMaps();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract jdk.vm.ci.meta.AllocatableValue resultOperandFor(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.ValueKind<?>);
descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/meta/AllocatableValue;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/ValueKind<*>;)Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
javaKind
valueKind
public abstract <I extends org.graalvm.compiler.lir.LIRInstruction> I append();
descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: <I:Lorg/graalvm/compiler/lir/LIRInstruction;>(TI;)TI;
MethodParameters:
Name Flags
op
public abstract void setSourcePosition(org.graalvm.compiler.graph.NodeSourcePosition);
descriptor: (Lorg/graalvm/compiler/graph/NodeSourcePosition;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
position
public abstract void emitJump(org.graalvm.compiler.lir.LabelRef);
descriptor: (Lorg/graalvm/compiler/lir/LabelRef;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
label
public abstract void emitCompareBranch(jdk.vm.ci.meta.PlatformKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.calc.Condition, boolean, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, double);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
cmpKind
left
right
cond
unorderedIsTrue
trueDestination
falseDestination
trueDestinationProbability
public abstract void emitOverflowCheckBranch(org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.core.common.LIRKind, double);
descriptor: (Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/core/common/LIRKind;D)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
overflow
noOverflow
cmpKind
overflowProbability
public abstract void emitIntegerTestBranch(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, double);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
left
right
trueDestination
falseDestination
trueSuccessorProbability
public abstract org.graalvm.compiler.lir.Variable emitConditionalMove(jdk.vm.ci.meta.PlatformKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.calc.Condition, boolean, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
cmpKind
leftVal
right
cond
unorderedIsTrue
trueValue
falseValue
public abstract org.graalvm.compiler.lir.Variable emitIntegerTestMove(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
leftVal
right
trueValue
falseValue
public abstract void emitStrategySwitch(jdk.vm.ci.meta.JavaConstant[], double[], org.graalvm.compiler.lir.LabelRef[], org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.Variable);
descriptor: ([Ljdk/vm/ci/meta/JavaConstant;[D[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/Variable;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
keyConstants
keyProbabilities
keyTargets
defaultTarget
value
public abstract void emitStrategySwitch(org.graalvm.compiler.lir.SwitchStrategy, org.graalvm.compiler.lir.Variable, org.graalvm.compiler.lir.LabelRef[], org.graalvm.compiler.lir.LabelRef);
descriptor: (Lorg/graalvm/compiler/lir/SwitchStrategy;Lorg/graalvm/compiler/lir/Variable;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
strategy
key
keyTargets
defaultTarget
public abstract org.graalvm.compiler.lir.Variable emitByteSwap(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
operand
public org.graalvm.compiler.lir.Variable emitArrayCompareTo(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: ldc "String.compareTo substitution is not implemented on this architecture"
invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 kind1 Ljdk/vm/ci/meta/JavaKind;
0 1 2 kind2 Ljdk/vm/ci/meta/JavaKind;
0 1 3 array1 Ljdk/vm/ci/meta/Value;
0 1 4 array2 Ljdk/vm/ci/meta/Value;
0 1 5 length1 Ljdk/vm/ci/meta/Value;
0 1 6 length2 Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
kind1
kind2
array1
array2
length1
length2
public org.graalvm.compiler.lir.Variable emitArrayEquals(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: ldc "Array.equals substitution is not implemented on this architecture"
invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 kind Ljdk/vm/ci/meta/JavaKind;
0 1 2 array1 Ljdk/vm/ci/meta/Value;
0 1 3 array2 Ljdk/vm/ci/meta/Value;
0 1 4 length Ljdk/vm/ci/meta/Value;
0 1 5 directPointers Z
MethodParameters:
Name Flags
kind
array1
array2
length
directPointers
public org.graalvm.compiler.lir.Variable emitArrayEquals(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: ldc "Array.equals with different types substitution is not implemented on this architecture"
invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 kind1 Ljdk/vm/ci/meta/JavaKind;
0 1 2 kind2 Ljdk/vm/ci/meta/JavaKind;
0 1 3 array1 Ljdk/vm/ci/meta/Value;
0 1 4 array2 Ljdk/vm/ci/meta/Value;
0 1 5 length Ljdk/vm/ci/meta/Value;
0 1 6 directPointers Z
MethodParameters:
Name Flags
kind1
kind2
array1
array2
length
directPointers
public org.graalvm.compiler.lir.Variable emitArrayIndexOf(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value[]);
descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=1, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: ldc "String.indexOf substitution is not implemented on this architecture"
invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 arrayKind Ljdk/vm/ci/meta/JavaKind;
0 1 2 valueKind Ljdk/vm/ci/meta/JavaKind;
0 1 3 findTwoConsecutive Z
0 1 4 sourcePointer Ljdk/vm/ci/meta/Value;
0 1 5 sourceCount Ljdk/vm/ci/meta/Value;
0 1 6 fromIndex Ljdk/vm/ci/meta/Value;
0 1 7 searchValues [Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
arrayKind
valueKind
findTwoConsecutive
sourcePointer
sourceCount
fromIndex
searchValues
public void emitStringLatin1Inflate(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: ldc "StringLatin1.inflate substitution is not implemented on this architecture"
invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 src Ljdk/vm/ci/meta/Value;
0 1 2 dst Ljdk/vm/ci/meta/Value;
0 1 3 len Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
src
dst
len
public org.graalvm.compiler.lir.Variable emitStringUTF16Compress(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: ldc "StringUTF16.compress substitution is not implemented on this architecture"
invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 src Ljdk/vm/ci/meta/Value;
0 1 2 dst Ljdk/vm/ci/meta/Value;
0 1 3 len Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
src
dst
len
public abstract void emitBlackhole(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
operand
public abstract org.graalvm.compiler.core.common.LIRKind getLIRKind(org.graalvm.compiler.core.common.type.Stamp);
descriptor: (Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/LIRKind;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
stamp
public abstract void emitPause();
descriptor: ()V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract void emitPrefetchAllocate(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
address
public abstract jdk.vm.ci.meta.Value emitCompress(jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.CompressEncoding, boolean);
descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/CompressEncoding;Z)Ljdk/vm/ci/meta/Value;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
pointer
encoding
nonNull
public abstract jdk.vm.ci.meta.Value emitUncompress(jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.CompressEncoding, boolean);
descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/CompressEncoding;Z)Ljdk/vm/ci/meta/Value;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
pointer
encoding
nonNull
public void emitConvertNullToZero(jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 2 1 result Ljdk/vm/ci/meta/AllocatableValue;
0 2 2 input Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
result
input
public void emitConvertZeroToNull(jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 2 1 result Ljdk/vm/ci/meta/AllocatableValue;
0 2 2 input Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
result
input
public abstract void emitSpeculationFence();
descriptor: ()V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public org.graalvm.compiler.lir.VirtualStackSlot allocateStackSlots(int);
descriptor: (I)Lorg/graalvm/compiler/lir/VirtualStackSlot;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
iload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilder.allocateStackSlots:(I)Lorg/graalvm/compiler/lir/VirtualStackSlot;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 slots I
MethodParameters:
Name Flags
slots
public jdk.vm.ci.meta.Value emitReadCallerStackPointer(org.graalvm.compiler.core.common.type.Stamp);
descriptor: (Lorg/graalvm/compiler/core/common/type/Stamp;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
aload 1
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.getLIRKind:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/LIRKind;
iconst_0
iconst_1
invokestatic jdk.vm.ci.code.StackSlot.get:(Ljdk/vm/ci/meta/ValueKind;IZ)Ljdk/vm/ci/code/StackSlot;
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.emitAddress:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 wordStamp Lorg/graalvm/compiler/core/common/type/Stamp;
MethodParameters:
Name Flags
wordStamp
public jdk.vm.ci.meta.Value emitReadReturnAddress(org.graalvm.compiler.core.common.type.Stamp, int);
descriptor: (Lorg/graalvm/compiler/core/common/type/Stamp;I)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
aload 1
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.getLIRKind:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/LIRKind;
iload 2
ineg
iconst_1
invokestatic jdk.vm.ci.code.StackSlot.get:(Ljdk/vm/ci/meta/ValueKind;IZ)Ljdk/vm/ci/code/StackSlot;
invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 wordStamp Lorg/graalvm/compiler/core/common/type/Stamp;
0 1 2 returnAddressSize I
MethodParameters:
Name Flags
wordStamp
returnAddressSize
public void emitZeroMemory(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: ldc "Bulk zeroing is not implemented on this architecture"
invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 1 1 address Ljdk/vm/ci/meta/Value;
0 1 2 length Ljdk/vm/ci/meta/Value;
0 1 3 isAligned Z
MethodParameters:
Name Flags
address
length
isAligned
}
Signature: Ljava/lang/Object;Lorg/graalvm/compiler/lir/gen/DiagnosticLIRGeneratorTool;Ljdk/vm/ci/code/ValueKindFactory<Lorg/graalvm/compiler/core/common/LIRKind;>;
SourceFile: "LIRGeneratorTool.java"
NestMembers:
org.graalvm.compiler.lir.gen.LIRGeneratorTool$BlockScope org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory
InnerClasses:
public abstract BlockScope = org.graalvm.compiler.lir.gen.LIRGeneratorTool$BlockScope of org.graalvm.compiler.lir.gen.LIRGeneratorTool
public abstract MoveFactory = org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory of org.graalvm.compiler.lir.gen.LIRGeneratorTool