class org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6 implements org.graalvm.compiler.lir.ValueProcedure
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6
super_class: java.lang.Object
{
final org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser this$1;
descriptor: Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final boolean val$hintAtDef;
descriptor: Z
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final jdk.vm.ci.meta.Value val$targetValue;
descriptor: Ljdk/vm/ci/meta/Value;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final org.graalvm.compiler.lir.LIRInstruction val$op;
descriptor: Lorg/graalvm/compiler/lir/LIRInstruction;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser, boolean, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction);
descriptor: (Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;ZLjdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction;)V
flags: (0x0000)
Code:
stack=2, locals=5, args_size=5
start local 0 0: aload 0
aload 1
putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.this$1:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
aload 0
iload 2
putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$hintAtDef:Z
aload 0
aload 3
putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$targetValue:Ljdk/vm/ci/meta/Value;
aload 0
aload 4
putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$op:Lorg/graalvm/compiler/lir/LIRInstruction;
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/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser$6;
MethodParameters:
Name Flags
this$0 final
val$hintAtDef final
val$targetValue final
val$op final
public jdk.vm.ci.meta.Value doValue(jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet<org.graalvm.compiler.lir.LIRInstruction$OperandFlag>);
descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokestatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase.isVariableOrRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 20
1: aload 0
getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$hintAtDef:Z
ifeq 5
2: aload 1
checkcast jdk.vm.ci.meta.AllocatableValue
astore 4
start local 4 3: aload 0
getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$targetValue:Ljdk/vm/ci/meta/Value;
checkcast jdk.vm.ci.meta.AllocatableValue
astore 5
start local 5 4: goto 7
end local 5 end local 4 5: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$targetValue:Ljdk/vm/ci/meta/Value;
checkcast jdk.vm.ci.meta.AllocatableValue
astore 4
start local 4 6: aload 1
checkcast jdk.vm.ci.meta.AllocatableValue
astore 5
start local 5 7: StackMap locals: jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.meta.AllocatableValue
StackMap stack:
ldc "addRegisterHint %s to %s"
aload 4
aload 5
invokestatic org.graalvm.compiler.debug.Debug.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
8: aload 5
invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 14
9: aload 4
invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 11
10: aconst_null
areturn
11: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.this$1:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
aload 5
invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser.getIntervalHint:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/IntervalHint;
astore 7
start local 7 12: aload 0
getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.this$1:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
aload 4
invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getOrCreateInterval:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
astore 6
start local 6 13: goto 16
end local 7 end local 6 14: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.this$1:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
aload 5
invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getOrCreateInterval:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
astore 6
start local 6 15: aload 0
getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.this$1:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
aload 4
invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser.getIntervalHint:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/IntervalHint;
astore 7
start local 7 16: StackMap locals: org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval org.graalvm.compiler.lir.alloc.trace.lsra.IntervalHint
StackMap stack:
aload 6
aload 7
invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval.setLocationHint:(Lorg/graalvm/compiler/lir/alloc/trace/lsra/IntervalHint;)V
17: invokestatic org.graalvm.compiler.debug.Debug.isLogEnabled:()Z
ifeq 19
18: ldc "operation at opId %d: added hint from interval %s to %s"
aload 0
getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$op:Lorg/graalvm/compiler/lir/LIRInstruction;
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 7
aload 6
invokestatic org.graalvm.compiler.debug.Debug.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
19: StackMap locals:
StackMap stack:
aload 1
areturn
end local 7 end local 6 end local 5 end local 4 20: StackMap locals: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6 jdk.vm.ci.meta.Value org.graalvm.compiler.lir.LIRInstruction$OperandMode java.util.EnumSet
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser$6;
0 21 1 registerHint Ljdk/vm/ci/meta/Value;
0 21 2 valueMode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 21 3 valueFlags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
3 5 4 fromValue Ljdk/vm/ci/meta/AllocatableValue;
6 20 4 fromValue Ljdk/vm/ci/meta/AllocatableValue;
4 5 5 toValue Ljdk/vm/ci/meta/AllocatableValue;
7 20 5 toValue Ljdk/vm/ci/meta/AllocatableValue;
13 14 6 to Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
15 20 6 to Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
12 14 7 from Lorg/graalvm/compiler/lir/alloc/trace/lsra/IntervalHint;
16 20 7 from Lorg/graalvm/compiler/lir/alloc/trace/lsra/IntervalHint;
Signature: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;)Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
registerHint
valueMode
valueFlags
}
SourceFile: "TraceLinearScanLifetimeAnalysisPhase.java"
EnclosingMethod: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser.addRegisterHint:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;Z)V
NestHost: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase
InnerClasses:
public final OperandFlag = org.graalvm.compiler.lir.LIRInstruction$OperandFlag of org.graalvm.compiler.lir.LIRInstruction
public final OperandMode = org.graalvm.compiler.lir.LIRInstruction$OperandMode of org.graalvm.compiler.lir.LIRInstruction
public final Analyser = org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser of org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase
org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6
public final TraceLinearScan = org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan of org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase