public class org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase extends org.graalvm.compiler.lir.alloc.lsra.LinearScanAllocationPhase
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase
super_class: org.graalvm.compiler.lir.alloc.lsra.LinearScanAllocationPhase
{
protected final org.graalvm.compiler.lir.alloc.lsra.LinearScan allocator;
descriptor: Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final org.graalvm.compiler.debug.DebugContext debug;
descriptor: Lorg/graalvm/compiler/debug/DebugContext;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
private org.graalvm.compiler.core.common.util.BitMap2D intervalInLoop;
descriptor: Lorg/graalvm/compiler/core/common/util/BitMap2D;
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$org$graalvm$compiler$lir$alloc$lsra$Interval$SpillState;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(org.graalvm.compiler.lir.alloc.lsra.LinearScan);
descriptor: (Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial org.graalvm.compiler.lir.alloc.lsra.LinearScanAllocationPhase.<init>:()V
1: aload 0
aload 1
putfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
2: aload 0
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
putfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 4 1 linearScan Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
MethodParameters:
Name Flags
linearScan
protected void run(jdk.vm.ci.code.TargetDescription, org.graalvm.compiler.lir.gen.LIRGenerationResult, org.graalvm.compiler.lir.phases.AllocationPhase$AllocationContext);
descriptor: (Ljdk/vm/ci/code/TargetDescription;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;Lorg/graalvm/compiler/lir/phases/AllocationPhase$AllocationContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.numberInstructions:()V
1: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
iconst_3
aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
ldc "Before register allocation"
invokevirtual org.graalvm.compiler.debug.DebugContext.dump:(ILjava/lang/Object;Ljava/lang/String;)V
2: aload 0
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.computeLocalLiveSets:()V
3: aload 0
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.computeGlobalLiveSets:()V
4: aload 0
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
invokestatic org.graalvm.compiler.debug.Assertions.detailedAssertionsEnabled:(Lorg/graalvm/compiler/options/OptionValues;)Z
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.buildIntervals:(Z)V
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 6 1 target Ljdk/vm/ci/code/TargetDescription;
0 6 2 lirGenRes Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
0 6 3 context Lorg/graalvm/compiler/lir/phases/AllocationPhase$AllocationContext;
MethodParameters:
Name Flags
target
lirGenRes
context
boolean isIntervalInLoop(int, int);
descriptor: (II)Z
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.intervalInLoop:Lorg/graalvm/compiler/core/common/util/BitMap2D;
iload 1
iload 2
invokevirtual org.graalvm.compiler.core.common.util.BitMap2D.at:(II)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 1 1 interval I
0 1 2 loop I
MethodParameters:
Name Flags
interval
loop
protected void numberInstructions();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=13, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.initIntervals:()V
1: aload 0
invokedynamic visitValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;)Lorg/graalvm/compiler/lir/ValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$0(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (7)
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
astore 1
start local 1 2: iconst_0
istore 2
start local 2 3: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.sortedBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 7
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase org.graalvm.compiler.lir.ValueConsumer int top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
4: aload 6
iload 4
aaload
astore 3
start local 3 5: iload 2
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
aload 3
invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
iadd
istore 2
end local 3 6: iinc 4 1
StackMap locals:
StackMap stack:
7: iload 4
iload 5
if_icmplt 4
8: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 2
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.initOpIdMaps:(I)V
9: iconst_0
istore 3
start local 3 10: iconst_0
istore 4
start local 4 11: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.sortedBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 29
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase org.graalvm.compiler.lir.ValueConsumer int int int top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
12: aload 8
iload 6
aaload
astore 5
start local 5 13: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 5
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.initBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)V
14: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
aload 5
invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
astore 9
start local 9 15: aload 9
invokevirtual java.util.ArrayList.size:()I
istore 10
start local 10 16: iconst_0
istore 11
start local 11 17: goto 27
18: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase org.graalvm.compiler.lir.ValueConsumer int int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] java.util.ArrayList int int
StackMap stack:
aload 9
iload 11
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.LIRInstruction
astore 12
start local 12 19: aload 12
iload 3
invokevirtual org.graalvm.compiler.lir.LIRInstruction.setId:(I)V
20: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 4
aload 12
aload 5
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.putOpIdMaps:(ILorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)V
21: getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 22
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.instructionForId:(I)Lorg/graalvm/compiler/lir/LIRInstruction;
aload 12
if_acmpeq 22
new java.lang.AssertionError
dup
ldc "must match"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
22: StackMap locals: org.graalvm.compiler.lir.LIRInstruction
StackMap stack:
aload 12
aload 1
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachTemp:(Lorg/graalvm/compiler/lir/ValueConsumer;)V
23: aload 12
aload 1
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachOutput:(Lorg/graalvm/compiler/lir/ValueConsumer;)V
24: iinc 4 1
25: iinc 3 2
end local 12 26: iinc 11 1
StackMap locals:
StackMap stack:
27: iload 11
iload 10
if_icmplt 18
end local 11 end local 10 end local 9 end local 5 28: iinc 6 1
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase org.graalvm.compiler.lir.ValueConsumer int int int top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
29: iload 6
iload 7
if_icmplt 12
30: getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 31
iload 4
iload 2
if_icmpeq 31
new java.lang.AssertionError
dup
ldc "must match"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
31: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase org.graalvm.compiler.lir.ValueConsumer int int int
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 32
iload 4
iconst_1
ishl
iload 3
if_icmpeq 32
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "must match: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 4
iconst_1
ishl
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
32: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
2 33 1 setVariableConsumer Lorg/graalvm/compiler/lir/ValueConsumer;
3 33 2 numInstructions I
5 6 3 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
10 33 3 opId I
11 33 4 index I
13 28 5 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
15 28 9 instructions Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;
16 28 10 numInst I
17 28 11 j I
19 26 12 op Lorg/graalvm/compiler/lir/LIRInstruction;
void computeLocalLiveSets();
descriptor: ()V
flags: (0x0000)
Code:
stack=8, locals=25, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.liveSetSize:()I
istore 1
start local 1 1: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.operandSize:()I
istore 2
start local 2 2: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.numLoops:()I
istore 3
start local 3 3: iload 2
i2l
iload 3
i2l
lmul
lstore 4
start local 4 4: lload 4
ldc 2147483647
lcmp
ifle 6
5: new java.lang.OutOfMemoryError
dup
invokespecial java.lang.OutOfMemoryError.<init>:()V
athrow
6: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int int int long
StackMap stack:
aload 0
new org.graalvm.compiler.core.common.util.BitMap2D
dup
iload 2
iload 3
invokespecial org.graalvm.compiler.core.common.util.BitMap2D.<init>:(II)V
putfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.intervalInLoop:Lorg/graalvm/compiler/core/common/util/BitMap2D;
7: goto 10
StackMap locals:
StackMap stack: java.lang.OutOfMemoryError
8: astore 6
start local 6 9: new org.graalvm.compiler.core.common.PermanentBailoutException
dup
aload 6
ldc "Cannot handle %d variables in %d loops"
iconst_2
anewarray java.lang.Object
dup
iconst_0
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokespecial org.graalvm.compiler.core.common.PermanentBailoutException.<init>:(Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)V
athrow
end local 6 10: StackMap locals:
StackMap stack:
new java.util.BitSet
dup
iload 1
invokespecial java.util.BitSet.<init>:(I)V
astore 6
start local 6 11: new java.util.BitSet
dup
iload 1
invokespecial java.util.BitSet.<init>:(I)V
astore 7
start local 7 12: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.sortedBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 56
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int int int long java.util.BitSet java.util.BitSet top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
13: aload 11
iload 9
aaload
astore 8
start local 8 14: aconst_null
astore 12
aconst_null
astore 13
15: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "compute local live sets for block %s"
aload 8
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
astore 14
start local 14 16: aload 6
invokevirtual java.util.BitSet.clear:()V
17: aload 7
invokevirtual java.util.BitSet.clear:()V
18: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
aload 8
invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
astore 15
start local 15 19: aload 15
invokevirtual java.util.ArrayList.size:()I
istore 16
start local 16 20: aload 0
aload 7
aload 6
aload 8
invokedynamic visitValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;Ljava/util/BitSet;Ljava/util/BitSet;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/ValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$1(Ljava/util/BitSet;Ljava/util/BitSet;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (7)
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
astore 17
start local 17 21: aload 0
aload 7
aload 6
invokedynamic visitValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;Ljava/util/BitSet;Ljava/util/BitSet;)Lorg/graalvm/compiler/lir/ValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$2(Ljava/util/BitSet;Ljava/util/BitSet;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (7)
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
astore 18
start local 18 22: aload 0
aload 7
aload 8
invokedynamic visitValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;Ljava/util/BitSet;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/ValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$3(Ljava/util/BitSet;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (7)
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
astore 19
start local 19 23: iconst_0
istore 20
start local 20 24: goto 40
25: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int int int long java.util.BitSet java.util.BitSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayList int org.graalvm.compiler.lir.ValueConsumer org.graalvm.compiler.lir.ValueConsumer org.graalvm.compiler.lir.ValueConsumer int
StackMap stack:
aload 15
iload 20
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.LIRInstruction
astore 21
start local 21 26: aconst_null
astore 22
aconst_null
astore 23
27: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "handle op %d: %s"
aload 21
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
aload 21
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;ILjava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
astore 24
start local 24 28: aload 21
aload 17
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachInput:(Lorg/graalvm/compiler/lir/ValueConsumer;)V
29: aload 21
aload 17
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachAlive:(Lorg/graalvm/compiler/lir/ValueConsumer;)V
30: aload 21
aload 18
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachState:(Lorg/graalvm/compiler/lir/ValueConsumer;)V
31: aload 21
aload 19
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachTemp:(Lorg/graalvm/compiler/lir/ValueConsumer;)V
32: aload 21
aload 19
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachOutput:(Lorg/graalvm/compiler/lir/ValueConsumer;)V
33: aload 24
ifnull 39
aload 24
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 39
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int int int long java.util.BitSet java.util.BitSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayList int org.graalvm.compiler.lir.ValueConsumer org.graalvm.compiler.lir.ValueConsumer org.graalvm.compiler.lir.ValueConsumer int org.graalvm.compiler.lir.LIRInstruction java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack: java.lang.Throwable
34: astore 22
aload 24
ifnull 35
aload 24
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 24 StackMap locals:
StackMap stack:
35: aload 22
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
36: astore 23
aload 22
ifnonnull 37
aload 23
astore 22
goto 38
StackMap locals:
StackMap stack:
37: aload 22
aload 23
if_acmpeq 38
aload 22
aload 23
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
38: aload 22
athrow
end local 21 39: StackMap locals:
StackMap stack:
iinc 20 1
StackMap locals:
StackMap stack:
40: iload 20
iload 16
if_icmplt 25
end local 20 41: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 8
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
astore 20
start local 20 42: aload 20
aload 6
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.trimClone:(Ljava/util/BitSet;)Ljava/util/BitSet;
putfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveGen:Ljava/util/BitSet;
43: aload 20
aload 7
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.trimClone:(Ljava/util/BitSet;)Ljava/util/BitSet;
putfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveKill:Ljava/util/BitSet;
44: aload 20
new java.util.BitSet
dup
iconst_0
invokespecial java.util.BitSet.<init>:(I)V
putfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveIn:Ljava/util/BitSet;
45: aload 20
new java.util.BitSet
dup
iconst_0
invokespecial java.util.BitSet.<init>:(I)V
putfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveOut:Ljava/util/BitSet;
46: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 49
47: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "liveGen B%d %s"
aload 8
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
aload 20
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveGen:Ljava/util/BitSet;
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;ILjava/lang/Object;)V
48: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "liveKill B%d %s"
aload 8
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
aload 20
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveKill:Ljava/util/BitSet;
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;ILjava/lang/Object;)V
end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 49: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int int int long java.util.BitSet java.util.BitSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack:
aload 14
ifnull 55
aload 14
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 55
StackMap locals:
StackMap stack: java.lang.Throwable
50: astore 12
aload 14
ifnull 51
aload 14
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 14 StackMap locals:
StackMap stack:
51: aload 12
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
52: astore 13
aload 12
ifnonnull 53
aload 13
astore 12
goto 54
StackMap locals:
StackMap stack:
53: aload 12
aload 13
if_acmpeq 54
aload 12
aload 13
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
54: aload 12
athrow
end local 8 55: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int int int long java.util.BitSet java.util.BitSet top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
56: iload 9
iload 10
if_icmplt 13
end local 7 end local 6 57: goto 60
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int int int long
StackMap stack: java.lang.OutOfMemoryError
58: astore 6
start local 6 59: new org.graalvm.compiler.core.common.PermanentBailoutException
dup
aload 6
ldc "Out-of-memory during live set allocation of size %d"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokespecial org.graalvm.compiler.core.common.PermanentBailoutException.<init>:(Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)V
athrow
end local 6 60: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 61 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
1 61 1 liveSize I
2 61 2 variables I
3 61 3 loops I
4 61 4 nBits J
9 10 6 e Ljava/lang/OutOfMemoryError;
11 57 6 liveGenScratch Ljava/util/BitSet;
12 57 7 liveKillScratch Ljava/util/BitSet;
14 55 8 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
16 51 14 indent Lorg/graalvm/compiler/debug/Indent;
19 49 15 instructions Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;
20 49 16 numInst I
21 49 17 useConsumer Lorg/graalvm/compiler/lir/ValueConsumer;
22 49 18 stateConsumer Lorg/graalvm/compiler/lir/ValueConsumer;
23 49 19 defConsumer Lorg/graalvm/compiler/lir/ValueConsumer;
24 41 20 j I
26 39 21 op Lorg/graalvm/compiler/lir/LIRInstruction;
28 35 24 indent2 Lorg/graalvm/compiler/debug/Indent;
42 49 20 blockSets Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
59 60 6 oom Ljava/lang/OutOfMemoryError;
Exception table:
from to target type
4 7 8 Class java.lang.OutOfMemoryError
28 33 34 any
27 36 36 any
16 49 50 any
15 52 52 any
10 57 58 Class java.lang.OutOfMemoryError
private void verifyTemp(java.util.BitSet, jdk.vm.ci.meta.Value);
descriptor: (Ljava/util/BitSet;Ljdk/vm/ci/meta/Value;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 3
1: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 2
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.isProcessed:(Ljdk/vm/ci/meta/Value;)Z
ifeq 3
2: aload 1
aload 0
aload 2
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.getOperandNumber:(Ljdk/vm/ci/meta/Value;)I
invokevirtual java.util.BitSet.set:(I)V
3: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 4 1 liveKill Ljava/util/BitSet;
0 4 2 operand Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
liveKill
operand
private void verifyInput(org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?>, java.util.BitSet, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/util/BitSet;Ljdk/vm/ci/meta/Value;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 3
aload 1
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
invokevirtual org.graalvm.compiler.lir.LIR.getControlFlowGraph:()Lorg/graalvm/compiler/core/common/cfg/AbstractControlFlowGraph;
invokeinterface org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
if_acmpeq 3
1: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.isProcessed:(Ljdk/vm/ci/meta/Value;)Z
ifeq 3
2: getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 3
aload 2
aload 0
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.getOperandNumber:(Ljdk/vm/ci/meta/Value;)I
invokevirtual java.util.BitSet.get:(I)Z
ifne 3
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "using fixed register "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " that is not defined in this block "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
3: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 4 1 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
0 4 2 liveKill Ljava/util/BitSet;
0 4 3 operand Ljdk/vm/ci/meta/Value;
Signature: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;Ljava/util/BitSet;Ljdk/vm/ci/meta/Value;)V
MethodParameters:
Name Flags
block
liveKill
operand
protected int getOperandNumber(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.operandNumber:(Ljdk/vm/ci/meta/Value;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 1 1 operand Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
operand
protected void computeGlobalLiveSets();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=20, args_size=1
start local 0 0: aconst_null
astore 1
aconst_null
astore 2
1: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "compute global live sets"
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/Indent;
astore 3
start local 3 2: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.blockCount:()I
istore 4
start local 4 3: iconst_0
istore 7
start local 7 4: new java.util.BitSet
dup
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.liveSetSize:()I
invokespecial java.util.BitSet.<init>:(I)V
astore 8
start local 8 5: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int top top int java.util.BitSet
StackMap stack:
iconst_0
istore 5
start local 5 6: aconst_null
astore 9
aconst_null
astore 10
7: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "new iteration %d"
iload 7
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;I)Lorg/graalvm/compiler/debug/Indent;
astore 11
start local 11 8: iload 4
iconst_1
isub
istore 12
start local 12 9: goto 35
10: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int int top int java.util.BitSet java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 12
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.blockAt:(I)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
astore 13
start local 13 11: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 13
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
astore 14
start local 14 12: iconst_0
istore 6
start local 6 13: aload 13
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getSuccessorCount:()I
istore 15
start local 15 14: iload 15
ifle 26
15: aload 8
invokevirtual java.util.BitSet.clear:()V
16: iload 15
ifle 22
17: aload 13
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getSuccessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
dup
astore 19
arraylength
istore 18
iconst_0
istore 17
goto 21
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int int int int java.util.BitSet java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int org.graalvm.compiler.core.common.cfg.AbstractBlockBase org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData int top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
18: aload 19
iload 17
aaload
astore 16
start local 16 19: aload 8
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 16
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveIn:Ljava/util/BitSet;
invokevirtual java.util.BitSet.or:(Ljava/util/BitSet;)V
end local 16 20: iinc 17 1
StackMap locals:
StackMap stack:
21: iload 17
iload 18
if_icmplt 18
22: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int int int int java.util.BitSet java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int org.graalvm.compiler.core.common.cfg.AbstractBlockBase org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData int
StackMap stack:
aload 14
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveOut:Ljava/util/BitSet;
aload 8
invokevirtual java.util.BitSet.equals:(Ljava/lang/Object;)Z
ifne 26
23: aload 14
aload 8
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.trimClone:(Ljava/util/BitSet;)Ljava/util/BitSet;
putfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveOut:Ljava/util/BitSet;
24: iconst_1
istore 5
25: iconst_1
istore 6
26: StackMap locals:
StackMap stack:
iload 7
ifeq 27
iload 6
ifeq 34
27: StackMap locals:
StackMap stack:
aload 14
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveIn:Ljava/util/BitSet;
astore 16
start local 16 28: aload 16
aload 14
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveOut:Ljava/util/BitSet;
invokevirtual java.util.BitSet.or:(Ljava/util/BitSet;)V
29: aload 16
aload 14
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveKill:Ljava/util/BitSet;
invokevirtual java.util.BitSet.andNot:(Ljava/util/BitSet;)V
30: aload 16
aload 14
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveGen:Ljava/util/BitSet;
invokevirtual java.util.BitSet.or:(Ljava/util/BitSet;)V
31: aload 16
invokevirtual java.util.BitSet.clone:()Ljava/lang/Object;
pop
32: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 34
33: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "block %d: livein = %s, liveout = %s"
aload 13
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 16
aload 14
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveOut:Ljava/util/BitSet;
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
end local 16 end local 15 end local 14 end local 13 34: StackMap locals:
StackMap stack:
iinc 12 -1
end local 6 StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int int top int java.util.BitSet java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int
StackMap stack:
35: iload 12
ifge 10
end local 12 36: iinc 7 1
37: iload 5
ifeq 39
iload 7
bipush 50
if_icmple 39
38: new org.graalvm.compiler.core.common.PermanentBailoutException
dup
ldc "too many iterations in computeGlobalLiveSets"
invokespecial org.graalvm.compiler.core.common.PermanentBailoutException.<init>:(Ljava/lang/String;)V
athrow
39: StackMap locals:
StackMap stack:
aload 11
ifnull 45
aload 11
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 45
StackMap locals:
StackMap stack: java.lang.Throwable
40: astore 9
aload 11
ifnull 41
aload 11
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 11 StackMap locals:
StackMap stack:
41: aload 9
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
42: astore 10
aload 9
ifnonnull 43
aload 10
astore 9
goto 44
StackMap locals:
StackMap stack:
43: aload 9
aload 10
if_acmpeq 44
aload 9
aload 10
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
44: aload 9
athrow
45: StackMap locals:
StackMap stack:
iload 5
ifne 5
46: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
invokestatic org.graalvm.compiler.debug.Assertions.detailedAssertionsEnabled:(Lorg/graalvm/compiler/options/OptionValues;)Z
ifeq 48
47: aload 0
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.verifyLiveness:()V
48: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
invokevirtual org.graalvm.compiler.lir.LIR.getControlFlowGraph:()Lorg/graalvm/compiler/core/common/cfg/AbstractControlFlowGraph;
invokeinterface org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
astore 9
start local 9 49: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 9
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveIn:Ljava/util/BitSet;
invokevirtual java.util.BitSet.cardinality:()I
ifeq 67
50: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
invokestatic org.graalvm.compiler.debug.Assertions.detailedAssertionsEnabled:(Lorg/graalvm/compiler/options/OptionValues;)Z
ifeq 52
51: aload 0
iload 4
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.reportFailure:(I)V
52: StackMap locals: org.graalvm.compiler.core.common.cfg.AbstractBlockBase
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 9
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveIn:Ljava/util/BitSet;
astore 10
start local 10 53: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 11
start local 11 54: aload 10
iconst_0
invokevirtual java.util.BitSet.nextSetBit:(I)I
istore 12
start local 12 55: goto 65
56: StackMap locals: java.util.BitSet java.lang.StringBuilder int
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 12
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getVariableNumber:(I)I
istore 13
start local 13 57: iload 13
iflt 60
58: aload 11
ldc "v"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 13
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
59: goto 61
60: StackMap locals: int
StackMap stack:
aload 11
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getRegisters:()Ljdk/vm/ci/code/RegisterArray;
iload 12
invokevirtual jdk.vm.ci.code.RegisterArray.get:(I)Ljdk/vm/ci/code/Register;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
61: StackMap locals:
StackMap stack:
aload 11
invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
62: iload 12
ldc 2147483647
if_icmpne 64
63: goto 66
end local 13 64: StackMap locals:
StackMap stack:
aload 10
iload 12
iconst_1
iadd
invokevirtual java.util.BitSet.nextSetBit:(I)I
istore 12
StackMap locals:
StackMap stack:
65: iload 12
ifge 56
end local 12 66: StackMap locals:
StackMap stack:
new org.graalvm.compiler.debug.GraalError
dup
new java.lang.StringBuilder
dup
ldc "liveIn set of first block must be empty: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 9
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveIn:Ljava/util/BitSet;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " Live operands:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 11
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;)V
athrow
end local 11 end local 10 end local 9 end local 8 end local 7 end local 5 end local 4 67: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack:
aload 3
ifnull 73
aload 3
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 73
StackMap locals:
StackMap stack: java.lang.Throwable
68: astore 1
aload 3
ifnull 69
aload 3
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 3 StackMap locals:
StackMap stack:
69: aload 1
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
70: astore 2
aload 1
ifnonnull 71
aload 2
astore 1
goto 72
StackMap locals:
StackMap stack:
71: aload 1
aload 2
if_acmpeq 72
aload 1
aload 2
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
72: aload 1
athrow
73: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 74 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
2 69 3 indent Lorg/graalvm/compiler/debug/Indent;
3 67 4 numBlocks I
6 67 5 changeOccurred Z
13 35 6 changeOccurredInBlock Z
4 67 7 iterationCount I
5 67 8 scratch Ljava/util/BitSet;
8 41 11 indent2 Lorg/graalvm/compiler/debug/Indent;
9 36 12 i I
11 34 13 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
12 34 14 blockSets Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
14 34 15 n I
19 20 16 successor Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
28 34 16 liveIn Ljava/util/BitSet;
49 67 9 startBlock Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
53 67 10 bs Ljava/util/BitSet;
54 67 11 sb Ljava/lang/StringBuilder;
55 66 12 i I
57 64 13 variableNumber I
Exception table:
from to target type
8 39 40 any
7 42 42 any
2 67 68 any
1 70 70 any
private static java.util.BitSet trimClone(java.util.BitSet);
descriptor: (Ljava/util/BitSet;)Ljava/util/BitSet;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new java.util.BitSet
dup
iconst_0
invokespecial java.util.BitSet.<init>:(I)V
astore 1
start local 1 1: aload 1
aload 0
invokevirtual java.util.BitSet.or:(Ljava/util/BitSet;)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 set Ljava/util/BitSet;
1 3 1 trimmedSet Ljava/util/BitSet;
MethodParameters:
Name Flags
set
protected void reportFailure(int);
descriptor: (I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=30, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
aconst_null
astore 3
1: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.forceLog:()Lorg/graalvm/compiler/debug/DebugContext$Scope;
astore 4
start local 4 2: aconst_null
astore 5
aconst_null
astore 6
3: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "report failure"
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/Indent;
astore 7
start local 7 4: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
invokevirtual org.graalvm.compiler.lir.LIR.getControlFlowGraph:()Lorg/graalvm/compiler/core/common/cfg/AbstractControlFlowGraph;
invokeinterface org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveIn:Ljava/util/BitSet;
astore 8
start local 8 5: aconst_null
astore 9
aconst_null
astore 10
6: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "Error: liveIn set of first block must be empty (when this fails, variables are used before they are defined):"
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/Indent;
astore 11
start local 11 7: aload 8
iconst_0
invokevirtual java.util.BitSet.nextSetBit:(I)I
istore 12
start local 12 8: goto 16
9: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 12
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.intervalFor:(I)Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
astore 13
start local 13 10: aload 13
ifnull 14
11: aload 13
getfield org.graalvm.compiler.lir.alloc.lsra.Interval.operand:Ljdk/vm/ci/meta/AllocatableValue;
astore 14
start local 14 12: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "var %d; operand=%s; node=%s"
iload 12
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 14
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
aload 14
invokestatic org.graalvm.compiler.lir.debug.LIRGenerationDebugContext.getSourceForOperandFromDebugContext:(Lorg/graalvm/compiler/debug/DebugContext;Ljdk/vm/ci/meta/Value;)Ljava/lang/Object;
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
end local 14 13: goto 15
14: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.Interval
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "var %d; missing operand"
iload 12
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;I)V
end local 13 15: StackMap locals:
StackMap stack:
aload 8
iload 12
iconst_1
iadd
invokevirtual java.util.BitSet.nextSetBit:(I)I
istore 12
StackMap locals:
StackMap stack:
16: iload 12
ifge 9
end local 12 17: aload 11
ifnull 23
aload 11
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 23
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack: java.lang.Throwable
18: astore 9
aload 11
ifnull 19
aload 11
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 11 StackMap locals:
StackMap stack:
19: aload 9
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
20: astore 10
aload 9
ifnonnull 21
aload 10
astore 9
goto 22
StackMap locals:
StackMap stack:
21: aload 9
aload 10
if_acmpeq 22
aload 9
aload 10
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
22: aload 9
athrow
23: StackMap locals:
StackMap stack:
aload 8
iconst_0
invokevirtual java.util.BitSet.nextSetBit:(I)I
istore 9
start local 9 24: goto 109
25: StackMap locals: int
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 9
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.intervalFor:(I)Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
astore 10
start local 10 26: aconst_null
astore 11
start local 11 27: aconst_null
astore 12
start local 12 28: aload 10
ifnull 31
29: aload 10
getfield org.graalvm.compiler.lir.alloc.lsra.Interval.operand:Ljdk/vm/ci/meta/AllocatableValue;
astore 11
30: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
aload 11
invokestatic org.graalvm.compiler.lir.debug.LIRGenerationDebugContext.getSourceForOperandFromDebugContext:(Lorg/graalvm/compiler/debug/DebugContext;Ljdk/vm/ci/meta/Value;)Ljava/lang/Object;
astore 12
31: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object
StackMap stack:
aconst_null
astore 13
aconst_null
astore 14
32: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "---- Detailed information for var %d; operand=%s; node=%s ----"
iload 9
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 11
aload 12
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
astore 15
start local 15 33: new java.util.ArrayDeque
dup
invokespecial java.util.ArrayDeque.<init>:()V
astore 16
start local 16 34: getstatic jdk.internal.vm.compiler.collections.Equivalence.IDENTITY:Ljdk/internal/vm/compiler/collections/Equivalence;
invokestatic jdk.internal.vm.compiler.collections.EconomicSet.create:(Ljdk/internal/vm/compiler/collections/Equivalence;)Ljdk/internal/vm/compiler/collections/EconomicSet;
astore 17
start local 17 35: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.sortedBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
dup
astore 21
arraylength
istore 20
iconst_0
istore 19
goto 74
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
36: aload 21
iload 19
aaload
astore 18
start local 18 37: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 18
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveGen:Ljava/util/BitSet;
iload 9
invokevirtual java.util.BitSet.get:(I)Z
ifeq 59
38: aload 17
aload 18
invokeinterface jdk.internal.vm.compiler.collections.EconomicSet.add:(Ljava/lang/Object;)Z
pop
39: aconst_null
astore 22
aconst_null
astore 23
40: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "used in block B%d"
aload 18
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;I)Lorg/graalvm/compiler/debug/Indent;
astore 24
start local 24 41: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
aload 18
invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 26
goto 52
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent top java.util.Iterator
StackMap stack:
42: aload 26
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.LIRInstruction
astore 25
start local 25 43: aconst_null
astore 27
aconst_null
astore 28
44: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "%d: %s"
aload 25
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
aload 25
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;ILjava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
astore 29
start local 29 45: aload 25
aload 0
invokedynamic doValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;)Lorg/graalvm/compiler/lir/ValueProcedure;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$4(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value; (7)
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachState:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
46: aload 29
ifnull 52
aload 29
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 52
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent org.graalvm.compiler.lir.LIRInstruction java.util.Iterator java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack: java.lang.Throwable
47: astore 27
aload 29
ifnull 48
aload 29
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 29 StackMap locals:
StackMap stack:
48: aload 27
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
49: astore 28
aload 27
ifnonnull 50
aload 28
astore 27
goto 51
StackMap locals:
StackMap stack:
50: aload 27
aload 28
if_acmpeq 51
aload 27
aload 28
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
51: aload 27
athrow
end local 25 52: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent top java.util.Iterator
StackMap stack:
aload 26
invokeinterface java.util.Iterator.hasNext:()Z
ifne 42
53: aload 24
ifnull 59
aload 24
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 59
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack: java.lang.Throwable
54: astore 22
aload 24
ifnull 55
aload 24
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 24 StackMap locals:
StackMap stack:
55: aload 22
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
56: astore 23
aload 22
ifnonnull 57
aload 23
astore 22
goto 58
StackMap locals:
StackMap stack:
57: aload 22
aload 23
if_acmpeq 58
aload 22
aload 23
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
58: aload 22
athrow
59: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 18
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveKill:Ljava/util/BitSet;
iload 9
invokevirtual java.util.BitSet.get:(I)Z
ifeq 73
60: aload 16
aload 18
invokevirtual java.util.ArrayDeque.add:(Ljava/lang/Object;)Z
pop
61: aconst_null
astore 22
aconst_null
astore 23
62: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "defined in block B%d"
aload 18
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;I)Lorg/graalvm/compiler/debug/Indent;
astore 24
start local 24 63: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
aload 18
invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 26
goto 66
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent top java.util.Iterator
StackMap stack:
64: aload 26
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.LIRInstruction
astore 25
start local 25 65: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "%d: %s"
aload 25
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
aload 25
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;ILjava/lang/Object;)V
end local 25 66: StackMap locals:
StackMap stack:
aload 26
invokeinterface java.util.Iterator.hasNext:()Z
ifne 64
67: aload 24
ifnull 73
aload 24
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 73
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack: java.lang.Throwable
68: astore 22
aload 24
ifnull 69
aload 24
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 24 StackMap locals:
StackMap stack:
69: aload 22
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
70: astore 23
aload 22
ifnonnull 71
aload 23
astore 22
goto 72
StackMap locals:
StackMap stack:
71: aload 22
aload 23
if_acmpeq 72
aload 22
aload 23
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
72: aload 22
athrow
end local 18 73: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
iinc 19 1
StackMap locals:
StackMap stack:
74: iload 19
iload 20
if_icmplt 36
75: iload 1
newarray 10
astore 18
start local 18 76: goto 89
77: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet int[]
StackMap stack:
aload 16
invokevirtual java.util.ArrayDeque.removeFirst:()Ljava/lang/Object;
checkcast org.graalvm.compiler.core.common.cfg.AbstractBlockBase
astore 19
start local 19 78: aload 17
aload 19
invokeinterface jdk.internal.vm.compiler.collections.EconomicSet.remove:(Ljava/lang/Object;)V
79: aload 19
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getSuccessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
dup
astore 23
arraylength
istore 22
iconst_0
istore 21
goto 88
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet int[] org.graalvm.compiler.core.common.cfg.AbstractBlockBase top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
80: aload 23
iload 21
aaload
astore 20
start local 20 81: aload 20
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.isLoopHeader:()Z
ifeq 85
82: aload 19
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.isLoopEnd:()Z
ifne 87
83: aload 16
aload 20
invokevirtual java.util.ArrayDeque.add:(Ljava/lang/Object;)Z
pop
84: goto 87
85: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet int[] org.graalvm.compiler.core.common.cfg.AbstractBlockBase org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
aload 18
aload 20
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
dup2
iaload
iconst_1
iadd
dup_x2
iastore
aload 20
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getPredecessorCount:()I
if_icmpne 87
86: aload 16
aload 20
invokevirtual java.util.ArrayDeque.add:(Ljava/lang/Object;)Z
pop
end local 20 87: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet int[] org.graalvm.compiler.core.common.cfg.AbstractBlockBase top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
iinc 21 1
StackMap locals:
StackMap stack:
88: iload 21
iload 22
if_icmplt 80
end local 19 89: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet int[]
StackMap stack:
aload 16
invokevirtual java.util.ArrayDeque.isEmpty:()Z
ifeq 77
90: aconst_null
astore 19
aconst_null
astore 20
91: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "**** offending usages are in: "
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/Indent;
astore 21
start local 21 92: aload 17
invokeinterface jdk.internal.vm.compiler.collections.EconomicSet.iterator:()Ljava/util/Iterator;
astore 23
goto 95
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet int[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent top java.util.Iterator
StackMap stack:
93: aload 23
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.core.common.cfg.AbstractBlockBase
astore 22
start local 22 94: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "B%d"
aload 22
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;I)V
end local 22 95: StackMap locals:
StackMap stack:
aload 23
invokeinterface java.util.Iterator.hasNext:()Z
ifne 93
96: aload 21
ifnull 102
aload 21
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 102
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayDeque jdk.internal.vm.compiler.collections.EconomicSet int[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack: java.lang.Throwable
97: astore 19
aload 21
ifnull 98
aload 21
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 21 StackMap locals:
StackMap stack:
98: aload 19
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
99: astore 20
aload 19
ifnonnull 100
aload 20
astore 19
goto 101
StackMap locals:
StackMap stack:
100: aload 19
aload 20
if_acmpeq 101
aload 19
aload 20
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
101: aload 19
athrow
end local 18 end local 17 end local 16 102: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int org.graalvm.compiler.lir.alloc.lsra.Interval jdk.vm.ci.meta.Value java.lang.Object java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack:
aload 15
ifnull 108
aload 15
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 108
StackMap locals:
StackMap stack: java.lang.Throwable
103: astore 13
aload 15
ifnull 104
aload 15
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 15 StackMap locals:
StackMap stack:
104: aload 13
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
105: astore 14
aload 13
ifnonnull 106
aload 14
astore 13
goto 107
StackMap locals:
StackMap stack:
106: aload 13
aload 14
if_acmpeq 107
aload 13
aload 14
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
107: aload 13
athrow
end local 12 end local 11 end local 10 108: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.BitSet int
StackMap stack:
aload 8
iload 9
iconst_1
iadd
invokevirtual java.util.BitSet.nextSetBit:(I)I
istore 9
StackMap locals:
StackMap stack:
109: iload 9
ifge 25
end local 9 end local 8 110: aload 7
ifnull 116
aload 7
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 116
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack: java.lang.Throwable
111: astore 5
aload 7
ifnull 112
aload 7
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 7 StackMap locals:
StackMap stack:
112: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
113: astore 6
aload 5
ifnonnull 114
aload 6
astore 5
goto 115
StackMap locals:
StackMap stack:
114: aload 5
aload 6
if_acmpeq 115
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
115: aload 5
athrow
116: StackMap locals:
StackMap stack:
aload 4
ifnull 124
aload 4
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
goto 124
StackMap locals:
StackMap stack: java.lang.Throwable
117: astore 2
aload 4
ifnull 118
aload 4
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
end local 4 StackMap locals:
StackMap stack:
118: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
119: astore 3
aload 2
ifnonnull 120
aload 3
astore 2
goto 121
StackMap locals:
StackMap stack:
120: aload 2
aload 3
if_acmpeq 121
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
121: aload 2
athrow
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int
StackMap stack: java.lang.Throwable
122: astore 2
start local 2 123: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
aload 2
invokevirtual org.graalvm.compiler.debug.DebugContext.handle:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 2 124: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 125 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 125 1 numBlocks I
2 118 4 s Lorg/graalvm/compiler/debug/DebugContext$Scope;
4 112 7 indent Lorg/graalvm/compiler/debug/Indent;
5 110 8 startBlockLiveIn Ljava/util/BitSet;
7 19 11 indent2 Lorg/graalvm/compiler/debug/Indent;
8 17 12 operandNum I
10 15 13 interval Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
12 13 14 operand Ljdk/vm/ci/meta/Value;
24 110 9 operandNum I
26 108 10 interval Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
27 108 11 operand Ljdk/vm/ci/meta/Value;
28 108 12 valueForOperandFromDebugContext Ljava/lang/Object;
33 104 15 indent2 Lorg/graalvm/compiler/debug/Indent;
34 102 16 definedIn Ljava/util/ArrayDeque<Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;>;
35 102 17 usedIn Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;>;
37 73 18 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
41 55 24 indent3 Lorg/graalvm/compiler/debug/Indent;
43 52 25 ins Lorg/graalvm/compiler/lir/LIRInstruction;
45 48 29 indent4 Lorg/graalvm/compiler/debug/Indent;
63 69 24 indent3 Lorg/graalvm/compiler/debug/Indent;
65 66 25 ins Lorg/graalvm/compiler/lir/LIRInstruction;
76 102 18 hitCount [I
78 89 19 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
81 87 20 successor Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
92 98 21 indent3 Lorg/graalvm/compiler/debug/Indent;
94 95 22 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
123 124 2 e Ljava/lang/Throwable;
Exception table:
from to target type
7 17 18 any
6 20 20 any
45 46 47 any
44 49 49 any
41 53 54 any
40 56 56 any
63 67 68 any
62 70 70 any
92 96 97 any
91 99 99 any
33 102 103 any
32 105 105 any
4 110 111 any
3 113 113 any
2 116 117 any
1 119 119 any
0 122 122 Class java.lang.Throwable
MethodParameters:
Name Flags
numBlocks
protected void verifyLiveness();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=6, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.sortedBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 10
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
1: aload 4
iload 2
aaload
astore 1
start local 1 2: iconst_0
istore 5
start local 5 3: goto 8
4: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] int
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 5
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveIn:Ljava/util/BitSet;
iload 5
invokevirtual java.util.BitSet.get:(I)Z
ifeq 5
new java.lang.AssertionError
dup
ldc "liveIn set of fixed register must be empty"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
5: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 6
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveOut:Ljava/util/BitSet;
iload 5
invokevirtual java.util.BitSet.get:(I)Z
ifeq 6
new java.lang.AssertionError
dup
ldc "liveOut set of fixed register must be empty"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
6: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 7
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveGen:Ljava/util/BitSet;
iload 5
invokevirtual java.util.BitSet.get:(I)Z
ifeq 7
new java.lang.AssertionError
dup
ldc "liveGen set of fixed register must be empty"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
7: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
8: iload 5
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.maxRegisterNumber:()I
if_icmple 4
end local 5 end local 1 9: iinc 2 1
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
10: iload 2
iload 3
if_icmplt 1
11: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
2 9 1 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
3 9 5 j I
protected void addUse(jdk.vm.ci.meta.AllocatableValue, int, int, org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority, jdk.vm.ci.meta.ValueKind<?>, );
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;IILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=8, 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: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.isProcessed:(Ljdk/vm/ci/meta/Value;)Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getOrCreateInterval:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
astore 7
start local 7 3: aload 5
getstatic org.graalvm.compiler.core.common.LIRKind.Illegal:Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 5
4: aload 7
aload 5
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.setKind:(Ljdk/vm/ci/meta/ValueKind;)V
5: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.Interval
StackMap stack:
aload 7
iload 2
iload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.addRange:(II)V
6: aload 7
iload 3
bipush -2
iand
aload 4
iload 6
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.addUsePos:(ILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Z)V
7: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 9
8: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "add use: %s, from %d to %d (%s)"
aload 7
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 4
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.name:()Ljava/lang/String;
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
9: StackMap locals:
StackMap stack:
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 10 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 10 1 operand Ljdk/vm/ci/meta/AllocatableValue;
0 10 2 from I
0 10 3 to I
0 10 4 registerPriority Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
0 10 5 kind Ljdk/vm/ci/meta/ValueKind<*>;
0 10 6 detailedAsserts Z
3 10 7 interval Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
Signature: (Ljdk/vm/ci/meta/AllocatableValue;IILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind<*>;Z)V
MethodParameters:
Name Flags
operand
from
to
registerPriority
kind
detailedAsserts
protected void addTemp(jdk.vm.ci.meta.AllocatableValue, int, org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority, jdk.vm.ci.meta.ValueKind<?>, );
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;ILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.isProcessed:(Ljdk/vm/ci/meta/Value;)Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getOrCreateInterval:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
astore 6
start local 6 3: aload 4
getstatic org.graalvm.compiler.core.common.LIRKind.Illegal:Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 5
4: aload 6
aload 4
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.setKind:(Ljdk/vm/ci/meta/ValueKind;)V
5: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.Interval
StackMap stack:
aload 6
iload 2
iload 2
iconst_1
iadd
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.addRange:(II)V
6: aload 6
iload 2
aload 3
iload 5
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.addUsePos:(ILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Z)V
7: aload 6
aconst_null
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.addMaterializationValue:(Ljdk/vm/ci/meta/Constant;)V
8: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 10
9: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "add temp: %s tempPos %d (%s)"
aload 6
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.MustHaveRegister:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.name:()Ljava/lang/String;
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
10: StackMap locals:
StackMap stack:
return
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 11 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 11 1 operand Ljdk/vm/ci/meta/AllocatableValue;
0 11 2 tempPos I
0 11 3 registerPriority Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
0 11 4 kind Ljdk/vm/ci/meta/ValueKind<*>;
0 11 5 detailedAsserts Z
3 11 6 interval Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
Signature: (Ljdk/vm/ci/meta/AllocatableValue;ILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind<*>;Z)V
MethodParameters:
Name Flags
operand
tempPos
registerPriority
kind
detailedAsserts
protected void addDef(jdk.vm.ci.meta.AllocatableValue, org.graalvm.compiler.lir.LIRInstruction, org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority, jdk.vm.ci.meta.ValueKind<?>, );
descriptor: (Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.isProcessed:(Ljdk/vm/ci/meta/Value;)Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
istore 6
start local 6 3: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getOrCreateInterval:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
astore 7
start local 7 4: aload 4
getstatic org.graalvm.compiler.core.common.LIRKind.Illegal:Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 6
5: aload 7
aload 4
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.setKind:(Ljdk/vm/ci/meta/ValueKind;)V
6: StackMap locals: int org.graalvm.compiler.lir.alloc.lsra.Interval
StackMap stack:
aload 7
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.first:()Lorg/graalvm/compiler/lir/alloc/lsra/Range;
astore 8
start local 8 7: aload 8
getfield org.graalvm.compiler.lir.alloc.lsra.Range.from:I
iload 6
if_icmpgt 11
8: aload 8
iload 6
putfield org.graalvm.compiler.lir.alloc.lsra.Range.from:I
9: aload 7
iload 6
aload 3
iload 5
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.addUsePos:(ILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Z)V
10: goto 15
11: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.Range
StackMap stack:
aload 7
iload 6
iload 6
iconst_1
iadd
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.addRange:(II)V
12: aload 7
iload 6
aload 3
iload 5
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.addUsePos:(ILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Z)V
13: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 15
14: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "Warning: def of operand %s at %d occurs without use"
aload 1
iload 6
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;I)V
15: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 1
aload 7
iload 6
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.changeSpillDefinitionPos:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/alloc/lsra/Interval;I)V
16: aload 3
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.None:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
if_acmpne 18
aload 7
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.spillState:()Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.ordinal:()I
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.StartInMemory:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.ordinal:()I
if_icmpgt 18
aload 1
invokestatic jdk.vm.ci.code.ValueUtil.isStackSlot:(Ljdk/vm/ci/meta/Value;)Z
ifeq 18
17: aload 7
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.StartInMemory:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.setSpillState:(Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;)V
18: StackMap locals:
StackMap stack:
aload 7
aload 0
aload 2
aload 1
aload 7
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.getMaterializedValue:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/alloc/lsra/Interval;)Ljdk/vm/ci/meta/Constant;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.addMaterializationValue:(Ljdk/vm/ci/meta/Constant;)V
19: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 21
20: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "add def: %s defPos %d (%s)"
aload 7
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.name:()Ljava/lang/String;
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
21: StackMap locals:
StackMap stack:
return
end local 8 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 22 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 22 1 operand Ljdk/vm/ci/meta/AllocatableValue;
0 22 2 op Lorg/graalvm/compiler/lir/LIRInstruction;
0 22 3 registerPriority Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
0 22 4 kind Ljdk/vm/ci/meta/ValueKind<*>;
0 22 5 detailedAsserts Z
3 22 6 defPos I
4 22 7 interval Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
7 22 8 r Lorg/graalvm/compiler/lir/alloc/lsra/Range;
Signature: (Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind<*>;Z)V
MethodParameters:
Name Flags
operand
op
registerPriority
kind
detailedAsserts
protected void handleMethodArguments(org.graalvm.compiler.lir.LIRInstruction);
descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.graalvm.compiler.lir.StandardOp$ValueMoveOp.isValueMoveOp:(Lorg/graalvm/compiler/lir/LIRInstruction;)Z
ifeq 13
1: aload 1
invokestatic org.graalvm.compiler.lir.StandardOp$ValueMoveOp.asValueMoveOp:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/StandardOp$ValueMoveOp;
astore 2
start local 2 2: aload 2
invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getInput:()Ljdk/vm/ci/meta/AllocatableValue;
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.optimizeMethodArgument:(Ljdk/vm/ci/meta/Value;)Z
ifeq 13
3: aload 2
invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getInput:()Ljdk/vm/ci/meta/AllocatableValue;
invokestatic jdk.vm.ci.code.ValueUtil.asStackSlot:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/StackSlot;
astore 3
start local 3 4: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
invokestatic org.graalvm.compiler.debug.Assertions.detailedAssertionsEnabled:(Lorg/graalvm/compiler/options/OptionValues;)Z
ifeq 10
5: getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 6
aload 1
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
ifgt 6
new java.lang.AssertionError
dup
ldc "invalid id"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
6: StackMap locals: org.graalvm.compiler.lir.StandardOp$ValueMoveOp jdk.vm.ci.code.StackSlot
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 7
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.blockForId:(I)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getPredecessorCount:()I
ifeq 7
new java.lang.AssertionError
dup
ldc "move from stack must be in first block"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
7: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 8
aload 2
invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getResult:()Ljdk/vm/ci/meta/AllocatableValue;
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVariable:(Ljdk/vm/ci/meta/Value;)Z
ifne 8
new java.lang.AssertionError
dup
ldc "result of move must be a variable"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
8: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 10
9: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "found move from stack slot %s to %s"
aload 3
aload 2
invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getResult:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
10: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 2
invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getResult:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.intervalFor:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
astore 4
start local 4 11: aload 4
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.setSpillSlot:(Ljdk/vm/ci/meta/AllocatableValue;)V
12: aload 4
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.assignLocation:(Ljdk/vm/ci/meta/AllocatableValue;)V
end local 4 end local 3 end local 2 13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 14 1 op Lorg/graalvm/compiler/lir/LIRInstruction;
2 13 2 move Lorg/graalvm/compiler/lir/StandardOp$ValueMoveOp;
4 13 3 slot Ljdk/vm/ci/code/StackSlot;
11 13 4 interval Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
MethodParameters:
Name Flags
op
protected void addRegisterHint(org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet<org.graalvm.compiler.lir.LIRInstruction$OperandFlag>, );
descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 4
getstatic org.graalvm.compiler.lir.LIRInstruction$OperandFlag.HINT:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifeq 2
aload 2
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScan.isVariableOrRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 2
1: aload 1
aload 2
aload 3
aload 0
aload 2
iload 5
aload 1
invokedynamic doValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;Ljdk/vm/ci/meta/Value;ZLorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/ValueProcedure;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value;
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$5(Ljdk/vm/ci/meta/Value;ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value; (7)
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachRegisterHint:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Lorg/graalvm/compiler/lir/ValueProcedure;)Ljdk/vm/ci/meta/Value;
pop
2: StackMap locals:
StackMap stack:
return
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 3 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 3 1 op Lorg/graalvm/compiler/lir/LIRInstruction;
0 3 2 targetValue Ljdk/vm/ci/meta/Value;
0 3 3 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 3 4 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
0 3 5 hintAtDef Z
Signature: (Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;Z)V
MethodParameters:
Name Flags
op final
targetValue final
mode
flags
hintAtDef final
protected void changeSpillDefinitionPos(org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.AllocatableValue, org.graalvm.compiler.lir.alloc.lsra.Interval, int);
descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/alloc/lsra/Interval;I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 1
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.isSplitParent:()Z
ifne 1
new java.lang.AssertionError
dup
ldc "can only be called for split parents"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$SWITCH_TABLE$org$graalvm$compiler$lir$alloc$lsra$Interval$SpillState:()[I
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.spillState:()Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.ordinal:()I
iaload
tableswitch { // 1 - 7
1: 2
2: 6
3: 12
4: 12
5: 12
6: 12
7: 11
default: 12
}
2: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 3
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.spillDefinitionPos:()I
iconst_m1
if_icmpeq 3
new java.lang.AssertionError
dup
ldc "must no be set before"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
3: StackMap locals:
StackMap stack:
aload 3
iload 4
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.setSpillDefinitionPos:(I)V
4: aload 3
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.NoSpillStore:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.setSpillState:(Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;)V
5: goto 13
6: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 7
iload 4
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.spillDefinitionPos:()I
if_icmple 7
new java.lang.AssertionError
dup
ldc "positions are processed in reverse order when intervals are created"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
7: StackMap locals:
StackMap stack:
iload 4
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.spillDefinitionPos:()I
iconst_2
isub
if_icmpge 10
8: aload 3
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.NoOptimization:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.setSpillState:(Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;)V
9: goto 13
10: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 13
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 4
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.blockForId:(I)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.spillDefinitionPos:()I
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.blockForId:(I)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
if_acmpeq 13
new java.lang.AssertionError
dup
ldc "block must be equal"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
11: StackMap locals:
StackMap stack:
goto 13
12: StackMap locals:
StackMap stack:
ldc "other states not allowed at this time"
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
13: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 14 1 op Lorg/graalvm/compiler/lir/LIRInstruction;
0 14 2 operand Ljdk/vm/ci/meta/AllocatableValue;
0 14 3 interval Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
0 14 4 defPos I
MethodParameters:
Name Flags
op
operand
interval
defPos
private static boolean optimizeMethodArgument(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic jdk.vm.ci.code.ValueUtil.isStackSlot:(Ljdk/vm/ci/meta/Value;)Z
ifeq 1
aload 0
invokestatic jdk.vm.ci.code.ValueUtil.asStackSlot:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/StackSlot;
invokevirtual jdk.vm.ci.code.StackSlot.isInCallerFrame:()Z
ifeq 1
aload 0
invokestatic org.graalvm.compiler.core.common.LIRKind.isValue:(Ljdk/vm/ci/meta/Value;)Z
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 value Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
value
protected org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority registerPriorityOfOutputOperand(org.graalvm.compiler.lir.LIRInstruction);
descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.graalvm.compiler.lir.StandardOp$ValueMoveOp.isValueMoveOp:(Lorg/graalvm/compiler/lir/LIRInstruction;)Z
ifeq 4
1: aload 1
invokestatic org.graalvm.compiler.lir.StandardOp$ValueMoveOp.asValueMoveOp:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/StandardOp$ValueMoveOp;
astore 2
start local 2 2: aload 2
invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getInput:()Ljdk/vm/ci/meta/AllocatableValue;
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.optimizeMethodArgument:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
3: getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.None:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
areturn
end local 2 4: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.MustHaveRegister:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 5 1 op Lorg/graalvm/compiler/lir/LIRInstruction;
2 4 2 move Lorg/graalvm/compiler/lir/StandardOp$ValueMoveOp;
MethodParameters:
Name Flags
op
protected static org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority registerPriorityOfInputOperand(java.util.EnumSet<org.graalvm.compiler.lir.LIRInstruction$OperandFlag>);
descriptor: (Ljava/util/EnumSet;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic org.graalvm.compiler.lir.LIRInstruction$OperandFlag.STACK:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifeq 2
1: getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.ShouldHaveRegister:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
areturn
2: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.MustHaveRegister:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
Signature: (Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
MethodParameters:
Name Flags
flags
protected void buildIntervals(boolean);
descriptor: (Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=30, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
aconst_null
astore 3
1: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "build intervals"
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/Indent;
astore 4
start local 4 2: aload 0
iload 1
invokedynamic visitValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;Z)Lorg/graalvm/compiler/lir/InstructionValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$6(ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (7)
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
astore 5
start local 5 3: aload 0
iload 1
invokedynamic visitValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;Z)Lorg/graalvm/compiler/lir/InstructionValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$7(ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (7)
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
astore 6
start local 6 4: aload 0
iload 1
invokedynamic visitValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;Z)Lorg/graalvm/compiler/lir/InstructionValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$8(ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (7)
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
astore 7
start local 7 5: aload 0
iload 1
invokedynamic visitValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;Z)Lorg/graalvm/compiler/lir/InstructionValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$9(ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (7)
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
astore 8
start local 8 6: aload 0
iload 1
invokedynamic visitValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;Z)Lorg/graalvm/compiler/lir/InstructionValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$10(ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (7)
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
astore 9
start local 9 7: aload 0
iload 1
invokedynamic visitValue(Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;Z)Lorg/graalvm/compiler/lir/InstructionValueConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$11(ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V (7)
(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
astore 10
start local 10 8: aload 9
aload 10
invokedynamic doState(Lorg/graalvm/compiler/lir/InstructionValueConsumer;Lorg/graalvm/compiler/lir/InstructionValueConsumer;)Lorg/graalvm/compiler/lir/InstructionStateProcedure;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/LIRFrameState;)V
org/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase.lambda$12(Lorg/graalvm/compiler/lir/InstructionValueConsumer;Lorg/graalvm/compiler/lir/InstructionValueConsumer;Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/LIRFrameState;)V (6)
(Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/LIRFrameState;)V
astore 11
start local 11 9: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getRegisterAllocationConfig:()Lorg/graalvm/compiler/core/common/alloc/RegisterAllocationConfig;
invokevirtual org.graalvm.compiler.core.common.alloc.RegisterAllocationConfig.getRegisterConfig:()Ljdk/vm/ci/code/RegisterConfig;
invokeinterface jdk.vm.ci.code.RegisterConfig.getCallerSaveRegisters:()Ljdk/vm/ci/code/RegisterArray;
astore 12
start local 12 10: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.blockCount:()I
iconst_1
isub
istore 13
start local 13 11: goto 67
12: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionStateProcedure jdk.vm.ci.code.RegisterArray int
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 13
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.blockAt:(I)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
astore 14
start local 14 13: aconst_null
astore 15
aconst_null
astore 16
14: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "handle block %d"
aload 14
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;I)Lorg/graalvm/compiler/debug/Indent;
astore 17
start local 17 15: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
aload 14
invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
astore 18
start local 18 16: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 14
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getFirstLirInstructionId:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)I
istore 19
start local 19 17: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 14
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getLastLirInstructionId:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)I
istore 20
start local 20 18: getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 19
iload 19
aload 18
iconst_0
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.LIRInstruction
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
if_icmpeq 19
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
19: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionStateProcedure jdk.vm.ci.code.RegisterArray int org.graalvm.compiler.core.common.cfg.AbstractBlockBase java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayList int int
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 20
iload 20
aload 18
aload 18
invokevirtual java.util.ArrayList.size:()I
iconst_1
isub
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.LIRInstruction
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
if_icmpeq 20
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
20: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 14
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getBlockData:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan$BlockData;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData.liveOut:Ljava/util/BitSet;
astore 21
start local 21 21: aload 21
iconst_0
invokevirtual java.util.BitSet.nextSetBit:(I)I
istore 22
start local 22 22: goto 31
23: StackMap locals: java.util.BitSet int
StackMap stack:
getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$assertionsDisabled:Z
ifne 24
aload 21
iload 22
invokevirtual java.util.BitSet.get:(I)Z
ifne 24
new java.lang.AssertionError
dup
ldc "should not stop here otherwise"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
24: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 22
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.intervalFor:(I)Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
getfield org.graalvm.compiler.lir.alloc.lsra.Interval.operand:Ljdk/vm/ci/meta/AllocatableValue;
astore 23
start local 23 25: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 27
26: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "live in %d: %s"
iload 22
aload 23
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;ILjava/lang/Object;)V
27: StackMap locals: jdk.vm.ci.meta.AllocatableValue
StackMap stack:
aload 0
aload 23
iload 19
iload 20
iconst_2
iadd
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.None:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
getstatic org.graalvm.compiler.core.common.LIRKind.Illegal:Lorg/graalvm/compiler/core/common/LIRKind;
iload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addUse:(Ljdk/vm/ci/meta/AllocatableValue;IILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind;Z)V
28: aload 14
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.isLoopEnd:()Z
ifeq 30
aload 14
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getLoop:()Lorg/graalvm/compiler/core/common/cfg/Loop;
ifnull 30
aload 0
iload 22
aload 14
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getLoop:()Lorg/graalvm/compiler/core/common/cfg/Loop;
invokevirtual org.graalvm.compiler.core.common.cfg.Loop.getIndex:()I
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.isIntervalInLoop:(II)Z
ifeq 30
29: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 22
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.intervalFor:(I)Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
iload 20
iconst_1
iadd
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.LiveAtLoopEnd:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
iload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.addUsePos:(ILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Z)V
end local 23 30: StackMap locals:
StackMap stack:
aload 21
iload 22
iconst_1
iadd
invokevirtual java.util.BitSet.nextSetBit:(I)I
istore 22
StackMap locals:
StackMap stack:
31: iload 22
ifge 23
end local 22 32: aload 18
invokevirtual java.util.ArrayList.size:()I
iconst_1
isub
istore 22
start local 22 33: goto 59
34: StackMap locals:
StackMap stack:
aload 18
iload 22
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.LIRInstruction
astore 23
start local 23 35: aload 23
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
istore 24
start local 24 36: aconst_null
astore 25
aconst_null
astore 26
37: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "handle inst %d: %s"
iload 24
aload 23
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;ILjava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
astore 27
start local 27 38: aload 23
invokevirtual org.graalvm.compiler.lir.LIRInstruction.destroysCallerSavedRegisters:()Z
ifeq 46
39: aload 12
invokevirtual jdk.vm.ci.code.RegisterArray.iterator:()Ljava/util/Iterator;
astore 29
goto 43
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionStateProcedure jdk.vm.ci.code.RegisterArray int org.graalvm.compiler.core.common.cfg.AbstractBlockBase java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayList int int java.util.BitSet int org.graalvm.compiler.lir.LIRInstruction int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent top java.util.Iterator
StackMap stack:
40: aload 29
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.vm.ci.code.Register
astore 28
start local 28 41: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 28
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.attributes:(Ljdk/vm/ci/code/Register;)Ljdk/vm/ci/code/RegisterAttributes;
invokevirtual jdk.vm.ci.code.RegisterAttributes.isAllocatable:()Z
ifeq 43
42: aload 0
aload 28
invokevirtual jdk.vm.ci.code.Register.asValue:()Ljdk/vm/ci/code/RegisterValue;
iload 24
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.None:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
getstatic org.graalvm.compiler.core.common.LIRKind.Illegal:Lorg/graalvm/compiler/core/common/LIRKind;
iload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addTemp:(Ljdk/vm/ci/meta/AllocatableValue;ILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind;Z)V
end local 28 43: StackMap locals:
StackMap stack:
aload 29
invokeinterface java.util.Iterator.hasNext:()Z
ifne 40
44: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 46
45: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "operation destroys all caller-save registers"
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;)V
46: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionStateProcedure jdk.vm.ci.code.RegisterArray int org.graalvm.compiler.core.common.cfg.AbstractBlockBase java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayList int int java.util.BitSet int org.graalvm.compiler.lir.LIRInstruction int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack:
aload 23
aload 5
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachOutput:(Lorg/graalvm/compiler/lir/InstructionValueConsumer;)V
47: aload 23
aload 6
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachTemp:(Lorg/graalvm/compiler/lir/InstructionValueConsumer;)V
48: aload 23
aload 7
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachAlive:(Lorg/graalvm/compiler/lir/InstructionValueConsumer;)V
49: aload 23
aload 8
invokevirtual org.graalvm.compiler.lir.LIRInstruction.visitEachInput:(Lorg/graalvm/compiler/lir/InstructionValueConsumer;)V
50: aload 23
aload 11
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachState:(Lorg/graalvm/compiler/lir/InstructionStateProcedure;)V
51: aload 0
aload 23
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.handleMethodArguments:(Lorg/graalvm/compiler/lir/LIRInstruction;)V
52: aload 27
ifnull 58
aload 27
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 58
StackMap locals:
StackMap stack: java.lang.Throwable
53: astore 25
aload 27
ifnull 54
aload 27
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 27 StackMap locals:
StackMap stack:
54: aload 25
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
55: astore 26
aload 25
ifnonnull 56
aload 26
astore 25
goto 57
StackMap locals:
StackMap stack:
56: aload 25
aload 26
if_acmpeq 57
aload 25
aload 26
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
57: aload 25
athrow
end local 24 end local 23 58: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionStateProcedure jdk.vm.ci.code.RegisterArray int org.graalvm.compiler.core.common.cfg.AbstractBlockBase java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayList int int java.util.BitSet int
StackMap stack:
iinc 22 -1
StackMap locals:
StackMap stack:
59: iload 22
ifge 34
end local 22 end local 21 end local 20 end local 19 end local 18 60: aload 17
ifnull 66
aload 17
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 66
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionStateProcedure jdk.vm.ci.code.RegisterArray int org.graalvm.compiler.core.common.cfg.AbstractBlockBase java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack: java.lang.Throwable
61: astore 15
aload 17
ifnull 62
aload 17
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 17 StackMap locals:
StackMap stack:
62: aload 15
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
63: astore 16
aload 15
ifnonnull 64
aload 16
astore 15
goto 65
StackMap locals:
StackMap stack:
64: aload 15
aload 16
if_acmpeq 65
aload 15
aload 16
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
65: aload 15
athrow
end local 14 66: StackMap locals:
StackMap stack:
iinc 13 -1
StackMap locals:
StackMap stack:
67: iload 13
ifge 12
end local 13 68: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.intervals:()[Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
dup
astore 16
arraylength
istore 15
iconst_0
istore 14
goto 73
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionValueConsumer org.graalvm.compiler.lir.InstructionStateProcedure jdk.vm.ci.code.RegisterArray top int int org.graalvm.compiler.lir.alloc.lsra.Interval[]
StackMap stack:
69: aload 16
iload 14
aaload
astore 13
start local 13 70: aload 13
ifnull 72
aload 13
getfield org.graalvm.compiler.lir.alloc.lsra.Interval.operand:Ljdk/vm/ci/meta/AllocatableValue;
invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 72
71: aload 13
iconst_0
iconst_1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.addRange:(II)V
end local 13 72: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
73: iload 14
iload 15
if_icmplt 69
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 74: aload 4
ifnull 80
aload 4
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 80
StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
StackMap stack: java.lang.Throwable
75: astore 2
aload 4
ifnull 76
aload 4
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 4 StackMap locals:
StackMap stack:
76: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
77: astore 3
aload 2
ifnonnull 78
aload 3
astore 2
goto 79
StackMap locals:
StackMap stack:
78: aload 2
aload 3
if_acmpeq 79
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
79: aload 2
athrow
80: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 81 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 81 1 detailedAsserts Z
2 76 4 indent Lorg/graalvm/compiler/debug/Indent;
3 74 5 outputConsumer Lorg/graalvm/compiler/lir/InstructionValueConsumer;
4 74 6 tempConsumer Lorg/graalvm/compiler/lir/InstructionValueConsumer;
5 74 7 aliveConsumer Lorg/graalvm/compiler/lir/InstructionValueConsumer;
6 74 8 inputConsumer Lorg/graalvm/compiler/lir/InstructionValueConsumer;
7 74 9 nonBasePointersStateProc Lorg/graalvm/compiler/lir/InstructionValueConsumer;
8 74 10 basePointerStateProc Lorg/graalvm/compiler/lir/InstructionValueConsumer;
9 74 11 stateProc Lorg/graalvm/compiler/lir/InstructionStateProcedure;
10 74 12 callerSaveRegs Ljdk/vm/ci/code/RegisterArray;
11 68 13 i I
13 66 14 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
15 62 17 indent2 Lorg/graalvm/compiler/debug/Indent;
16 60 18 instructions Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;
17 60 19 blockFrom I
18 60 20 blockTo I
21 60 21 live Ljava/util/BitSet;
22 32 22 operandNum I
25 30 23 operand Ljdk/vm/ci/meta/AllocatableValue;
33 60 22 j I
35 58 23 op Lorg/graalvm/compiler/lir/LIRInstruction;
36 58 24 opId I
38 54 27 indent3 Lorg/graalvm/compiler/debug/Indent;
41 43 28 r Ljdk/vm/ci/code/Register;
70 72 13 interval Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
Exception table:
from to target type
38 52 53 any
37 55 55 any
15 60 61 any
14 63 63 any
2 74 75 any
1 77 77 any
MethodParameters:
Name Flags
detailedAsserts
protected jdk.vm.ci.meta.Constant getMaterializedValue(org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.alloc.lsra.Interval);
descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/alloc/lsra/Interval;)Ljdk/vm/ci/meta/Constant;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokestatic org.graalvm.compiler.lir.StandardOp$LoadConstantOp.isLoadConstantOp:(Lorg/graalvm/compiler/lir/LIRInstruction;)Z
ifeq 16
1: aload 1
invokestatic org.graalvm.compiler.lir.StandardOp$LoadConstantOp.asLoadConstantOp:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/StandardOp$LoadConstantOp;
astore 4
start local 4 2: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.neverSpillConstants:()Z
ifne 12
3: aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.usePosList:()Lorg/graalvm/compiler/lir/alloc/lsra/Interval$UsePosList;
astore 5
start local 5 4: aload 5
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$UsePosList.size:()I
istore 6
start local 6 5: iconst_0
istore 7
start local 7 6: goto 11
7: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase org.graalvm.compiler.lir.LIRInstruction jdk.vm.ci.meta.Value org.graalvm.compiler.lir.alloc.lsra.Interval org.graalvm.compiler.lir.StandardOp$LoadConstantOp org.graalvm.compiler.lir.alloc.lsra.Interval$UsePosList int int
StackMap stack:
aload 5
iload 7
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$UsePosList.registerPriority:(I)Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
astore 8
start local 8 8: aload 8
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.ShouldHaveRegister:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
if_acmpne 10
9: aconst_null
areturn
end local 8 10: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
11: iload 7
iload 6
if_icmplt 7
end local 7 end local 6 end local 5 12: StackMap locals:
StackMap stack:
aload 4
invokeinterface org.graalvm.compiler.lir.StandardOp$LoadConstantOp.getConstant:()Ljdk/vm/ci/meta/Constant;
astore 5
start local 5 13: aload 5
instanceof jdk.vm.ci.meta.JavaConstant
ifne 15
14: aconst_null
areturn
15: StackMap locals: jdk.vm.ci.meta.Constant
StackMap stack:
aload 5
areturn
end local 5 end local 4 16: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 17 1 op Lorg/graalvm/compiler/lir/LIRInstruction;
0 17 2 operand Ljdk/vm/ci/meta/Value;
0 17 3 interval Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
2 16 4 move Lorg/graalvm/compiler/lir/StandardOp$LoadConstantOp;
4 12 5 usePosList Lorg/graalvm/compiler/lir/alloc/lsra/Interval$UsePosList;
5 12 6 numUsePos I
6 12 7 useIdx I
8 10 8 priority Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
13 16 5 constant Ljdk/vm/ci/meta/Constant;
MethodParameters:
Name Flags
op
operand
interval
static int[] $SWITCH_TABLE$org$graalvm$compiler$lir$alloc$lsra$Interval$SpillState();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$SWITCH_TABLE$org$graalvm$compiler$lir$alloc$lsra$Interval$SpillState:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.values:()[Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.NoDefinitionFound:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.ordinal:()I
iconst_1
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.NoOptimization:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.ordinal:()I
bipush 7
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.NoSpillStore:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.ordinal:()I
iconst_2
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.OneSpillStore:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.ordinal:()I
iconst_3
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.SpillInDominator:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.ordinal:()I
iconst_4
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.StartInMemory:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.ordinal:()I
bipush 6
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.StoreAtDefinition:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$SpillState;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState.ordinal:()I
iconst_5
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
dup
putstatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.$SWITCH_TABLE$org$graalvm$compiler$lir$alloc$lsra$Interval$SpillState:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
private void lambda$0(jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVariable:(Ljdk/vm/ci/meta/Value;)Z
ifeq 2
1: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asVariable:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getOrCreateInterval:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
pop
2: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 3 1 value Ljdk/vm/ci/meta/Value;
0 3 2 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 3 3 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
private void lambda$1(java.util.BitSet, java.util.BitSet, org.graalvm.compiler.core.common.cfg.AbstractBlockBase, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (Ljava/util/BitSet;Ljava/util/BitSet;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=8, args_size=7
start local 0 start local 4 start local 5 start local 6 0: aload 4
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVariable:(Ljdk/vm/ci/meta/Value;)Z
ifeq 8
1: aload 0
aload 4
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.getOperandNumber:(Ljdk/vm/ci/meta/Value;)I
istore 7
start local 7 2: aload 1
iload 7
invokevirtual java.util.BitSet.get:(I)Z
ifne 6
3: aload 2
iload 7
invokevirtual java.util.BitSet.set:(I)V
4: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 6
5: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "liveGen for operand %d(%s)"
iload 7
aload 4
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;ILjava/lang/Object;)V
6: StackMap locals: int
StackMap stack:
aload 3
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getLoop:()Lorg/graalvm/compiler/core/common/cfg/Loop;
ifnull 8
7: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.intervalInLoop:Lorg/graalvm/compiler/core/common/util/BitMap2D;
iload 7
aload 3
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getLoop:()Lorg/graalvm/compiler/core/common/cfg/Loop;
invokevirtual org.graalvm.compiler.core.common.cfg.Loop.getIndex:()I
invokevirtual org.graalvm.compiler.core.common.util.BitMap2D.setBit:(II)V
end local 7 8: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan.detailedAsserts:Z
ifeq 10
9: aload 0
aload 3
aload 1
aload 4
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.verifyInput:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/util/BitSet;Ljdk/vm/ci/meta/Value;)V
10: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 11 4 operand Ljdk/vm/ci/meta/Value;
0 11 5 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 11 6 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
2 8 7 operandNum I
private void lambda$2(java.util.BitSet, java.util.BitSet, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (Ljava/util/BitSet;Ljava/util/BitSet;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=7, args_size=6
start local 0 start local 3 start local 4 start local 5 0: aload 3
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScan.isVariableOrRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 6
1: aload 0
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.getOperandNumber:(Ljdk/vm/ci/meta/Value;)I
istore 6
start local 6 2: aload 1
iload 6
invokevirtual java.util.BitSet.get:(I)Z
ifne 6
3: aload 2
iload 6
invokevirtual java.util.BitSet.set:(I)V
4: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 6
5: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "liveGen in state for operand %d(%s)"
iload 6
aload 3
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;ILjava/lang/Object;)V
end local 6 6: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 7 3 operand Ljdk/vm/ci/meta/Value;
0 7 4 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 7 5 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
2 6 6 operandNum I
private void lambda$3(java.util.BitSet, org.graalvm.compiler.core.common.cfg.AbstractBlockBase, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (Ljava/util/BitSet;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=7, args_size=6
start local 0 start local 3 start local 4 start local 5 0: aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVariable:(Ljdk/vm/ci/meta/Value;)Z
ifeq 7
1: aload 0
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.getOperandNumber:(Ljdk/vm/ci/meta/Value;)I
istore 6
start local 6 2: aload 1
iload 6
invokevirtual java.util.BitSet.set:(I)V
3: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 5
4: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "liveKill for operand %d(%s)"
iload 6
aload 3
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;ILjava/lang/Object;)V
5: StackMap locals: int
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getLoop:()Lorg/graalvm/compiler/core/common/cfg/Loop;
ifnull 7
6: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.intervalInLoop:Lorg/graalvm/compiler/core/common/util/BitMap2D;
iload 6
aload 2
invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getLoop:()Lorg/graalvm/compiler/core/common/cfg/Loop;
invokevirtual org.graalvm.compiler.core.common.cfg.Loop.getIndex:()I
invokevirtual org.graalvm.compiler.core.common.util.BitMap2D.setBit:(II)V
end local 6 7: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScan.detailedAsserts:Z
ifeq 9
8: aload 0
aload 1
aload 3
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.verifyTemp:(Ljava/util/BitSet;Ljdk/vm/ci/meta/Value;)V
9: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 10 3 operand Ljdk/vm/ci/meta/Value;
0 10 4 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 10 5 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
2 7 6 varNum I
private jdk.vm.ci.meta.Value lambda$4(jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "operand=%s"
aload 1
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;)V
1: aload 1
areturn
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/lsra/LinearScanLifetimeAnalysisPhase;
0 2 1 liveStateOperand Ljdk/vm/ci/meta/Value;
0 2 2 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 2 3 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
private jdk.vm.ci.meta.Value lambda$5(jdk.vm.ci.meta.Value, boolean, org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (Ljdk/vm/ci/meta/Value;ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=9, args_size=7
start local 0 start local 4 start local 5 start local 6 0: aload 4
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScan.isVariableOrRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 10
1: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 4
checkcast jdk.vm.ci.meta.AllocatableValue
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getOrCreateInterval:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
astore 7
start local 7 2: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 1
checkcast jdk.vm.ci.meta.AllocatableValue
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getOrCreateInterval:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
astore 8
start local 8 3: iload 2
ifeq 6
4: aload 8
aload 7
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.setLocationHint:(Lorg/graalvm/compiler/lir/alloc/lsra/Interval;)V
5: goto 7
6: StackMap locals: org.graalvm.compiler.lir.alloc.lsra.Interval org.graalvm.compiler.lir.alloc.lsra.Interval
StackMap stack:
aload 7
aload 8
invokevirtual org.graalvm.compiler.lir.alloc.lsra.Interval.setLocationHint:(Lorg/graalvm/compiler/lir/alloc/lsra/Interval;)V
7: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
invokevirtual org.graalvm.compiler.debug.DebugContext.isLogEnabled:()Z
ifeq 9
8: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.debug:Lorg/graalvm/compiler/debug/DebugContext;
ldc "operation at opId %d: added hint from interval %d to %d"
aload 3
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
aload 7
getfield org.graalvm.compiler.lir.alloc.lsra.Interval.operandNumber:I
aload 8
getfield org.graalvm.compiler.lir.alloc.lsra.Interval.operandNumber:I
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;III)V
9: StackMap locals:
StackMap stack:
aload 4
areturn
end local 8 end local 7 10: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 6 end local 5 end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 11 4 registerHint Ljdk/vm/ci/meta/Value;
0 11 5 valueMode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 11 6 valueFlags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
2 10 7 from Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
3 10 8 to Lorg/graalvm/compiler/lir/alloc/lsra/Interval;
private void lambda$6(boolean, org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=6, args_size=6
start local 0 start local 2 start local 3 start local 4 start local 5 0: aload 3
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScan.isVariableOrRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 3
1: aload 0
aload 3
checkcast jdk.vm.ci.meta.AllocatableValue
aload 2
aload 0
aload 2
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.registerPriorityOfOutputOperand:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
aload 3
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
iload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addDef:(Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind;Z)V
2: aload 0
aload 2
aload 3
aload 4
aload 5
iconst_1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addRegisterHint:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;Z)V
3: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 4 2 op Lorg/graalvm/compiler/lir/LIRInstruction;
0 4 3 operand Ljdk/vm/ci/meta/Value;
0 4 4 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 4 5 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
private void lambda$7(boolean, org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=6, args_size=6
start local 0 start local 2 start local 3 start local 4 start local 5 0: aload 3
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScan.isVariableOrRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 3
1: aload 0
aload 3
checkcast jdk.vm.ci.meta.AllocatableValue
aload 2
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.MustHaveRegister:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
aload 3
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
iload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addTemp:(Ljdk/vm/ci/meta/AllocatableValue;ILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind;Z)V
2: aload 0
aload 2
aload 3
aload 4
aload 5
iconst_0
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addRegisterHint:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;Z)V
3: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 4 2 op Lorg/graalvm/compiler/lir/LIRInstruction;
0 4 3 operand Ljdk/vm/ci/meta/Value;
0 4 4 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 4 5 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
private void lambda$8(boolean, org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=9, args_size=6
start local 0 start local 2 start local 3 start local 4 start local 5 0: aload 3
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScan.isVariableOrRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 6
1: aload 5
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.registerPriorityOfInputOperand:(Ljava/util/EnumSet;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
astore 6
start local 6 2: aload 2
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
istore 7
start local 7 3: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 7
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.blockForId:(I)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getFirstLirInstructionId:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)I
istore 8
start local 8 4: aload 0
aload 3
checkcast jdk.vm.ci.meta.AllocatableValue
iload 8
iload 7
iconst_1
iadd
aload 6
aload 3
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
iload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addUse:(Ljdk/vm/ci/meta/AllocatableValue;IILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind;Z)V
5: aload 0
aload 2
aload 3
aload 4
aload 5
iconst_0
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addRegisterHint:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;Z)V
end local 8 end local 7 end local 6 6: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 7 2 op Lorg/graalvm/compiler/lir/LIRInstruction;
0 7 3 operand Ljdk/vm/ci/meta/Value;
0 7 4 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 7 5 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
2 6 6 p Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
3 6 7 opId I
4 6 8 blockFrom I
private void lambda$9(boolean, org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=9, args_size=6
start local 0 start local 2 start local 3 start local 4 start local 5 0: aload 3
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScan.isVariableOrRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 6
1: aload 2
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
istore 6
start local 6 2: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 6
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.blockForId:(I)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getFirstLirInstructionId:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)I
istore 7
start local 7 3: aload 5
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.registerPriorityOfInputOperand:(Ljava/util/EnumSet;)Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
astore 8
start local 8 4: aload 0
aload 3
checkcast jdk.vm.ci.meta.AllocatableValue
iload 7
iload 6
aload 8
aload 3
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
iload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addUse:(Ljdk/vm/ci/meta/AllocatableValue;IILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind;Z)V
5: aload 0
aload 2
aload 3
aload 4
aload 5
iconst_0
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addRegisterHint:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;Z)V
end local 8 end local 7 end local 6 6: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 7 2 op Lorg/graalvm/compiler/lir/LIRInstruction;
0 7 3 operand Ljdk/vm/ci/meta/Value;
0 7 4 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 7 5 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
2 6 6 opId I
3 6 7 blockFrom I
4 6 8 p Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
private void lambda$10(boolean, org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=8, args_size=6
start local 0 start local 2 start local 3 start local 4 start local 5 0: aload 3
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScan.isVariableOrRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
1: aload 2
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
istore 6
start local 6 2: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 6
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.blockForId:(I)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getFirstLirInstructionId:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)I
istore 7
start local 7 3: aload 0
aload 3
checkcast jdk.vm.ci.meta.AllocatableValue
iload 7
iload 6
iconst_1
iadd
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.None:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
aload 3
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
iload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addUse:(Ljdk/vm/ci/meta/AllocatableValue;IILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind;Z)V
end local 7 end local 6 4: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 5 2 op Lorg/graalvm/compiler/lir/LIRInstruction;
0 5 3 operand Ljdk/vm/ci/meta/Value;
0 5 4 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 5 5 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
2 4 6 opId I
3 4 7 blockFrom I
private void lambda$11(boolean, org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: (ZLorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=8, args_size=6
start local 0 start local 2 start local 3 start local 4 start local 5 0: aload 3
invokestatic org.graalvm.compiler.lir.alloc.lsra.LinearScan.isVariableOrRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
1: aload 2
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
istore 6
start local 6 2: aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
aload 0
getfield org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.allocator:Lorg/graalvm/compiler/lir/alloc/lsra/LinearScan;
iload 6
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.blockForId:(I)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScan.getFirstLirInstructionId:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)I
istore 7
start local 7 3: aload 0
aload 3
checkcast jdk.vm.ci.meta.AllocatableValue
iload 7
iload 6
iconst_1
iadd
getstatic org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority.ShouldHaveRegister:Lorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;
aload 3
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
iload 1
invokevirtual org.graalvm.compiler.lir.alloc.lsra.LinearScanLifetimeAnalysisPhase.addUse:(Ljdk/vm/ci/meta/AllocatableValue;IILorg/graalvm/compiler/lir/alloc/lsra/Interval$RegisterPriority;Ljdk/vm/ci/meta/ValueKind;Z)V
end local 7 end local 6 4: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/lir/alloc/lsra/LinearScanLifetimeAnalysisPhase;
0 5 2 op Lorg/graalvm/compiler/lir/LIRInstruction;
0 5 3 operand Ljdk/vm/ci/meta/Value;
0 5 4 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 5 5 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
2 4 6 opId I
3 4 7 blockFrom I
private static void lambda$12(org.graalvm.compiler.lir.InstructionValueConsumer, org.graalvm.compiler.lir.InstructionValueConsumer, org.graalvm.compiler.lir.LIRInstruction, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/lir/InstructionValueConsumer;Lorg/graalvm/compiler/lir/InstructionValueConsumer;Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=4
start local 2 start local 3 0: aload 3
invokevirtual org.graalvm.compiler.lir.LIRFrameState.getLiveBasePointers:()Lorg/graalvm/compiler/lir/util/IndexedValueMap;
astore 4
start local 4 1: aload 3
aconst_null
invokevirtual org.graalvm.compiler.lir.LIRFrameState.setLiveBasePointers:(Lorg/graalvm/compiler/lir/util/IndexedValueMap;)V
2: aload 3
aload 2
aload 0
invokevirtual org.graalvm.compiler.lir.LIRFrameState.visitEachState:(Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/InstructionValueConsumer;)V
3: aload 4
aload 2
getstatic org.graalvm.compiler.lir.LIRInstruction$OperandMode.ALIVE:Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
aconst_null
aload 1
invokevirtual org.graalvm.compiler.lir.util.IndexedValueMap.visitEach:(Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;Lorg/graalvm/compiler/lir/InstructionValueConsumer;)V
4: aload 3
aload 4
invokevirtual org.graalvm.compiler.lir.LIRFrameState.setLiveBasePointers:(Lorg/graalvm/compiler/lir/util/IndexedValueMap;)V
end local 4 5: return
end local 3 end local 2 LocalVariableTable:
Start End Slot Name Signature
0 6 2 op Lorg/graalvm/compiler/lir/LIRInstruction;
0 6 3 state Lorg/graalvm/compiler/lir/LIRFrameState;
1 5 4 liveBasePointers Lorg/graalvm/compiler/lir/util/IndexedValueMap;
}
SourceFile: "LinearScanLifetimeAnalysisPhase.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Scope = org.graalvm.compiler.debug.DebugContext$Scope of org.graalvm.compiler.debug.DebugContext
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 abstract LoadConstantOp = org.graalvm.compiler.lir.StandardOp$LoadConstantOp of org.graalvm.compiler.lir.StandardOp
public abstract ValueMoveOp = org.graalvm.compiler.lir.StandardOp$ValueMoveOp of org.graalvm.compiler.lir.StandardOp
public final RegisterPriority = org.graalvm.compiler.lir.alloc.lsra.Interval$RegisterPriority of org.graalvm.compiler.lir.alloc.lsra.Interval
public final SpillState = org.graalvm.compiler.lir.alloc.lsra.Interval$SpillState of org.graalvm.compiler.lir.alloc.lsra.Interval
public final UsePosList = org.graalvm.compiler.lir.alloc.lsra.Interval$UsePosList of org.graalvm.compiler.lir.alloc.lsra.Interval
public BlockData = org.graalvm.compiler.lir.alloc.lsra.LinearScan$BlockData of org.graalvm.compiler.lir.alloc.lsra.LinearScan
public final AllocationContext = org.graalvm.compiler.lir.phases.AllocationPhase$AllocationContext of org.graalvm.compiler.lir.phases.AllocationPhase