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 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 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 emitCompareAndSwap(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: (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
address
expectedValue
newValue
trueValue
falseValue
public jdk.vm.ci.meta.Value emitAtomicReadAndAdd(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;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:()Ljava/lang/RuntimeException;
athrow
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 delta Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
address
delta
public jdk.vm.ci.meta.Value emitAtomicReadAndWrite(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;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:()Ljava/lang/RuntimeException;
athrow
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 newValue Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
address
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 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 abstract 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);
descriptor: (Ljdk/vm/ci/meta/JavaKind;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
kind
array1
array2
length
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
}
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