public abstract class org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy
super_class: java.lang.Object
{
org.graalvm.compiler.lir.alloc.trace.TraceAllocationPhase<org.graalvm.compiler.lir.alloc.trace.TraceAllocationPhase$TraceAllocationContext> allocator;
descriptor: Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase;
flags: (0x0000)
Signature: Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase<Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase$TraceAllocationContext;>;
final org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy this$0;
descriptor: Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
protected void <init>(org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy);
descriptor: (Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy$AllocationStrategy;
MethodParameters:
Name Flags
this$0 final
public final org.graalvm.compiler.lir.alloc.trace.TraceAllocationPhase<org.graalvm.compiler.lir.alloc.trace.TraceAllocationPhase$TraceAllocationContext> getAllocator();
descriptor: ()Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=11, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.allocator:Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase;
ifnonnull 2
1: aload 0
aload 0
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.target:Ljdk/vm/ci/code/TargetDescription;
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.lirGenRes:Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.spillMoveFactory:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.registerAllocationConfig:Lorg/graalvm/compiler/core/common/alloc/RegisterAllocationConfig;
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.cachedStackSlots:[Ljdk/vm/ci/meta/AllocatableValue;
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.resultTraces:Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.neverSpillConstants:Z
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.livenessInfo:Lorg/graalvm/compiler/lir/alloc/trace/GlobalLivenessInfo;
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.strategies:Ljava/util/ArrayList;
invokevirtual org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.initAllocator:(Ljdk/vm/ci/code/TargetDescription;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/core/common/alloc/RegisterAllocationConfig;[Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;ZLorg/graalvm/compiler/lir/alloc/trace/GlobalLivenessInfo;Ljava/util/ArrayList;)Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase;
putfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.allocator:Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.allocator:Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy$AllocationStrategy;
Signature: ()Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase<Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase$TraceAllocationContext;>;
protected final org.graalvm.compiler.lir.LIR getLIR();
descriptor: ()Lorg/graalvm/compiler/lir/LIR;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.lirGenRes:Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy$AllocationStrategy;
protected final org.graalvm.compiler.lir.gen.LIRGenerationResult getLIRGenerationResult();
descriptor: ()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.lirGenRes:Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy$AllocationStrategy;
protected final org.graalvm.compiler.core.common.alloc.TraceBuilderResult getTraceBuilderResult();
descriptor: ()Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.resultTraces:Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy$AllocationStrategy;
protected final org.graalvm.compiler.lir.alloc.trace.GlobalLivenessInfo getGlobalLivenessInfo();
descriptor: ()Lorg/graalvm/compiler/lir/alloc/trace/GlobalLivenessInfo;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.livenessInfo:Lorg/graalvm/compiler/lir/alloc/trace/GlobalLivenessInfo;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy$AllocationStrategy;
protected final org.graalvm.compiler.core.common.alloc.RegisterAllocationConfig getRegisterAllocationConfig();
descriptor: ()Lorg/graalvm/compiler/core/common/alloc/RegisterAllocationConfig;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.registerAllocationConfig:Lorg/graalvm/compiler/core/common/alloc/RegisterAllocationConfig;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy$AllocationStrategy;
protected final jdk.vm.ci.code.TargetDescription getTarget();
descriptor: ()Ljdk/vm/ci/code/TargetDescription;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy.this$0:Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy;
getfield org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy.target:Ljdk/vm/ci/code/TargetDescription;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy$AllocationStrategy;
public abstract boolean shouldApplyTo(org.graalvm.compiler.core.common.alloc.Trace);
descriptor: (Lorg/graalvm/compiler/core/common/alloc/Trace;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
trace
protected abstract org.graalvm.compiler.lir.alloc.trace.TraceAllocationPhase<org.graalvm.compiler.lir.alloc.trace.TraceAllocationPhase$TraceAllocationContext> initAllocator(jdk.vm.ci.code.TargetDescription, org.graalvm.compiler.lir.gen.LIRGenerationResult, org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory, org.graalvm.compiler.core.common.alloc.RegisterAllocationConfig, jdk.vm.ci.meta.AllocatableValue[], org.graalvm.compiler.core.common.alloc.TraceBuilderResult, boolean, org.graalvm.compiler.lir.alloc.trace.GlobalLivenessInfo, java.util.ArrayList<org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy>);
descriptor: (Ljdk/vm/ci/code/TargetDescription;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/core/common/alloc/RegisterAllocationConfig;[Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;ZLorg/graalvm/compiler/lir/alloc/trace/GlobalLivenessInfo;Ljava/util/ArrayList;)Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Signature: (Ljdk/vm/ci/code/TargetDescription;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/core/common/alloc/RegisterAllocationConfig;[Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;ZLorg/graalvm/compiler/lir/alloc/trace/GlobalLivenessInfo;Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/alloc/trace/TraceRegisterAllocationPolicy$AllocationStrategy;>;)Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase<Lorg/graalvm/compiler/lir/alloc/trace/TraceAllocationPhase$TraceAllocationContext;>;
MethodParameters:
Name Flags
target
lirGenRes
spillMoveFactory
registerAllocationConfig
cachedStackSlots
resultTraces
neverSpillConstant
livenessInfo
strategies
}
SourceFile: "TraceRegisterAllocationPolicy.java"
NestHost: org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy
InnerClasses:
public TraceAllocationContext = org.graalvm.compiler.lir.alloc.trace.TraceAllocationPhase$TraceAllocationContext of org.graalvm.compiler.lir.alloc.trace.TraceAllocationPhase
protected abstract AllocationStrategy = org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy$AllocationStrategy of org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPolicy
public abstract MoveFactory = org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory of org.graalvm.compiler.lir.gen.LIRGeneratorTool