final class org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanRegisterAllocationPhase extends org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAllocationPhase
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanRegisterAllocationPhase
super_class: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAllocationPhase
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAllocationPhase.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanRegisterAllocationPhase;
protected void run(jdk.vm.ci.code.TargetDescription, org.graalvm.compiler.lir.gen.LIRGenerationResult, org.graalvm.compiler.core.common.alloc.Trace, org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory, org.graalvm.compiler.core.common.alloc.RegisterAllocationConfig, org.graalvm.compiler.core.common.alloc.TraceBuilderResult, org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan);
descriptor: (Ljdk/vm/ci/code/TargetDescription;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;Lorg/graalvm/compiler/core/common/alloc/Trace;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/core/common/alloc/RegisterAllocationConfig;Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;)V
flags: (0x0004) ACC_PROTECTED
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: aload 7
invokestatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanRegisterAllocationPhase.allocateRegisters:(Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;)V
1: return
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 2 0 this Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanRegisterAllocationPhase;
0 2 1 target Ljdk/vm/ci/code/TargetDescription;
0 2 2 lirGenRes Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
0 2 3 trace Lorg/graalvm/compiler/core/common/alloc/Trace;
0 2 4 spillMoveFactory Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
0 2 5 registerAllocationConfig Lorg/graalvm/compiler/core/common/alloc/RegisterAllocationConfig;
0 2 6 traceBuilderResult Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
0 2 7 allocator Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
MethodParameters:
Name Flags
target
lirGenRes
trace
spillMoveFactory
registerAllocationConfig
traceBuilderResult
allocator
private static void allocateRegisters(org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan);
descriptor: (Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=8, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
astore 1
start local 1 1: aconst_null
astore 2
aconst_null
astore 3
2: aload 1
ldc "allocate registers"
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/Indent;
astore 4
start local 4 3: aload 0
invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.createFixedUnhandledList:()Lorg/graalvm/compiler/lir/alloc/trace/lsra/FixedInterval;
astore 5
start local 5 4: aload 0
getstatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase.IS_VARIABLE_INTERVAL:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$IntervalPredicate;
invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.createUnhandledListByFrom:(Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$IntervalPredicate;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
astore 6
start local 6 5: new org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanWalker
dup
aload 0
aload 5
aload 6
invokespecial org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanWalker.<init>:(Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;Lorg/graalvm/compiler/lir/alloc/trace/lsra/FixedInterval;Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;)V
astore 7
start local 7 6: aload 7
invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanWalker.walk:()V
7: aload 7
invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanWalker.finishAllocation:()V
end local 7 end local 6 end local 5 8: aload 4
ifnull 14
aload 4
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 14
StackMap locals: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack: java.lang.Throwable
9: astore 2
aload 4
ifnull 10
aload 4
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 4 StackMap locals:
StackMap stack:
10: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 3
aload 2
ifnonnull 12
aload 3
astore 2
goto 13
StackMap locals:
StackMap stack:
12: aload 2
aload 3
if_acmpeq 13
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
13: aload 2
athrow
14: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 allocator Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
1 15 1 debug Lorg/graalvm/compiler/debug/DebugContext;
3 10 4 indent Lorg/graalvm/compiler/debug/Indent;
4 8 5 precoloredIntervals Lorg/graalvm/compiler/lir/alloc/trace/lsra/FixedInterval;
5 8 6 notPrecoloredIntervals Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
6 8 7 lsw Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanWalker;
Exception table:
from to target type
3 8 9 any
2 11 11 any
MethodParameters:
Name Flags
allocator
}
SourceFile: "TraceLinearScanRegisterAllocationPhase.java"
InnerClasses:
abstract IntervalPredicate = org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$IntervalPredicate of org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase
public final TraceLinearScan = org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan of org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase
public abstract MoveFactory = org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory of org.graalvm.compiler.lir.gen.LIRGeneratorTool