public class org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator extends org.graalvm.compiler.lir.phases.AllocationPhase
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator
super_class: org.graalvm.compiler.lir.phases.AllocationPhase
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.lir.phases.AllocationPhase.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/stackslotalloc/SimpleStackSlotAllocator;
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=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
checkcast org.graalvm.compiler.lir.framemap.FrameMapBuilderTool
aload 2
invokevirtual org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator.allocateStackSlots:(Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
1: aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.buildFrameMap:()V
2: 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/stackslotalloc/SimpleStackSlotAllocator;
0 3 1 target Ljdk/vm/ci/code/TargetDescription;
0 3 2 lirGenRes Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
0 3 3 context Lorg/graalvm/compiler/lir/phases/AllocationPhase$AllocationContext;
MethodParameters:
Name Flags
target
lirGenRes
context
public void allocateStackSlots(org.graalvm.compiler.lir.framemap.FrameMapBuilderTool, org.graalvm.compiler.lir.gen.LIRGenerationResult);
descriptor: (Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=12, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
invokevirtual org.graalvm.compiler.lir.LIR.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
astore 3
start local 3 1: aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getNumberOfStackSlots:()I
anewarray jdk.vm.ci.code.StackSlot
astore 4
start local 4 2: getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.allocatedFramesize:Lorg/graalvm/compiler/debug/CounterKey;
aload 3
invokeinterface org.graalvm.compiler.debug.CounterKey.isEnabled:(Lorg/graalvm/compiler/debug/DebugContext;)Z
istore 5
start local 5 3: iload 5
ifeq 4
aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.currentFrameSize:()I
goto 5
StackMap locals: org.graalvm.compiler.debug.DebugContext jdk.vm.ci.code.StackSlot[] int
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: i2l
lstore 6
start local 6 6: aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getStackSlots:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 20
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.framemap.FrameMapBuilderTool org.graalvm.compiler.lir.gen.LIRGenerationResult org.graalvm.compiler.debug.DebugContext jdk.vm.ci.code.StackSlot[] int long top java.util.Iterator
StackMap stack:
7: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.VirtualStackSlot
astore 8
start local 8 8: aload 8
instanceof org.graalvm.compiler.lir.framemap.SimpleVirtualStackSlot
ifeq 12
9: aload 0
aload 1
aload 8
checkcast org.graalvm.compiler.lir.framemap.SimpleVirtualStackSlot
invokevirtual org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator.mapSimpleVirtualStackSlot:(Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;Lorg/graalvm/compiler/lir/framemap/SimpleVirtualStackSlot;)Ljdk/vm/ci/code/StackSlot;
astore 10
start local 10 10: getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.virtualFramesize:Lorg/graalvm/compiler/debug/CounterKey;
aload 3
aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
aload 8
invokevirtual org.graalvm.compiler.lir.VirtualStackSlot.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.spillSlotSize:(Ljdk/vm/ci/meta/ValueKind;)I
i2l
invokeinterface org.graalvm.compiler.debug.CounterKey.add:(Lorg/graalvm/compiler/debug/DebugContext;J)V
11: goto 18
end local 10 StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.framemap.FrameMapBuilderTool org.graalvm.compiler.lir.gen.LIRGenerationResult org.graalvm.compiler.debug.DebugContext jdk.vm.ci.code.StackSlot[] int long org.graalvm.compiler.lir.VirtualStackSlot java.util.Iterator
StackMap stack:
12: aload 8
instanceof org.graalvm.compiler.lir.framemap.VirtualStackSlotRange
ifeq 17
13: aload 8
checkcast org.graalvm.compiler.lir.framemap.VirtualStackSlotRange
astore 11
start local 11 14: aload 0
aload 1
aload 11
invokevirtual org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator.mapVirtualStackSlotRange:(Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;Lorg/graalvm/compiler/lir/framemap/VirtualStackSlotRange;)Ljdk/vm/ci/code/StackSlot;
astore 10
start local 10 15: getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.virtualFramesize:Lorg/graalvm/compiler/debug/CounterKey;
aload 3
aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
aload 11
invokevirtual org.graalvm.compiler.lir.framemap.VirtualStackSlotRange.getSlots:()I
invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.spillSlotRangeSize:(I)I
i2l
invokeinterface org.graalvm.compiler.debug.CounterKey.add:(Lorg/graalvm/compiler/debug/DebugContext;J)V
end local 11 16: goto 18
end local 10 17: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Unknown VirtualStackSlot: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
start local 10 18: StackMap locals: jdk.vm.ci.code.StackSlot
StackMap stack:
getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.allocatedSlots:Lorg/graalvm/compiler/debug/CounterKey;
aload 3
invokeinterface org.graalvm.compiler.debug.CounterKey.increment:(Lorg/graalvm/compiler/debug/DebugContext;)V
19: aload 4
aload 8
invokevirtual org.graalvm.compiler.lir.VirtualStackSlot.getId:()I
aload 10
aastore
end local 10 end local 8 20: StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.framemap.FrameMapBuilderTool org.graalvm.compiler.lir.gen.LIRGenerationResult org.graalvm.compiler.debug.DebugContext jdk.vm.ci.code.StackSlot[] int long top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
21: aload 0
aload 2
aload 4
invokevirtual org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator.updateLIR:(Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;[Ljdk/vm/ci/code/StackSlot;)V
22: iload 5
ifeq 24
23: getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.allocatedFramesize:Lorg/graalvm/compiler/debug/CounterKey;
aload 3
aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.currentFrameSize:()I
i2l
lload 6
lsub
invokeinterface org.graalvm.compiler.debug.CounterKey.add:(Lorg/graalvm/compiler/debug/DebugContext;J)V
24: StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.framemap.FrameMapBuilderTool org.graalvm.compiler.lir.gen.LIRGenerationResult org.graalvm.compiler.debug.DebugContext jdk.vm.ci.code.StackSlot[] int long
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 25 0 this Lorg/graalvm/compiler/lir/stackslotalloc/SimpleStackSlotAllocator;
0 25 1 builder Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
0 25 2 res Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
1 25 3 debug Lorg/graalvm/compiler/debug/DebugContext;
2 25 4 mapping [Ljdk/vm/ci/code/StackSlot;
3 25 5 allocatedFramesizeEnabled Z
6 25 6 currentFrameSize J
8 20 8 virtualSlot Lorg/graalvm/compiler/lir/VirtualStackSlot;
10 12 10 slot Ljdk/vm/ci/code/StackSlot;
15 17 10 slot Ljdk/vm/ci/code/StackSlot;
18 20 10 slot Ljdk/vm/ci/code/StackSlot;
14 16 11 slotRange Lorg/graalvm/compiler/lir/framemap/VirtualStackSlotRange;
MethodParameters:
Name Flags
builder
res
protected void updateLIR(org.graalvm.compiler.lir.gen.LIRGenerationResult, jdk.vm.ci.code.StackSlot[]);
descriptor: (Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;[Ljdk/vm/ci/code/StackSlot;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=20, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
invokevirtual org.graalvm.compiler.lir.LIR.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
astore 3
start local 3 1: aconst_null
astore 4
aconst_null
astore 5
2: aload 3
ldc "StackSlotMappingLIR"
invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
astore 6
start local 6 3: aload 2
aload 3
invokedynamic doValue([Ljdk/vm/ci/code/StackSlot;Lorg/graalvm/compiler/debug/DebugContext;)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/stackslotalloc/SimpleStackSlotAllocator.lambda$0([Ljdk/vm/ci/code/StackSlot;Lorg/graalvm/compiler/debug/DebugContext;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value; (6)
(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value;
astore 7
start local 7 4: aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.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.getBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 31
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.lir.ValueProcedure top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
5: aload 11
iload 9
aaload
astore 8
start local 8 6: aconst_null
astore 12
aconst_null
astore 13
7: aload 3
ldc "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 8: aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.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;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 16
goto 23
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.lir.ValueProcedure 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:
9: aload 16
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.LIRInstruction
astore 15
start local 15 10: aconst_null
astore 17
aconst_null
astore 18
11: aload 3
ldc "Inst: %d: %s"
aload 15
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
aload 15
invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;ILjava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
astore 19
start local 19 12: aload 15
aload 7
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachAlive:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
13: aload 15
aload 7
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachInput:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
14: aload 15
aload 7
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachOutput:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
15: aload 15
aload 7
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachTemp:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
16: aload 15
aload 7
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachState:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
17: aload 19
ifnull 23
aload 19
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 23
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.lir.ValueProcedure 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
18: astore 17
aload 19
ifnull 19
aload 19
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 19 StackMap locals:
StackMap stack:
19: aload 17
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
20: astore 18
aload 17
ifnonnull 21
aload 18
astore 17
goto 22
StackMap locals:
StackMap stack:
21: aload 17
aload 18
if_acmpeq 22
aload 17
aload 18
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
22: aload 17
athrow
end local 15 23: StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.lir.ValueProcedure 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 16
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
24: aload 14
ifnull 30
aload 14
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 30
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.lir.ValueProcedure 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
25: astore 12
aload 14
ifnull 26
aload 14
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 14 StackMap locals:
StackMap stack:
26: aload 12
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
27: astore 13
aload 12
ifnonnull 28
aload 13
astore 12
goto 29
StackMap locals:
StackMap stack:
28: aload 12
aload 13
if_acmpeq 29
aload 12
aload 13
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
29: aload 12
athrow
end local 8 30: StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.lir.ValueProcedure top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
31: iload 9
iload 10
if_icmplt 5
end local 7 32: aload 6
ifnull 38
aload 6
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
goto 38
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
StackMap stack: java.lang.Throwable
33: astore 4
aload 6
ifnull 34
aload 6
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
end local 6 StackMap locals:
StackMap stack:
34: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
35: astore 5
aload 4
ifnonnull 36
aload 5
astore 4
goto 37
StackMap locals:
StackMap stack:
36: aload 4
aload 5
if_acmpeq 37
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
37: aload 4
athrow
38: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Lorg/graalvm/compiler/lir/stackslotalloc/SimpleStackSlotAllocator;
0 39 1 res Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
0 39 2 mapping [Ljdk/vm/ci/code/StackSlot;
1 39 3 debug Lorg/graalvm/compiler/debug/DebugContext;
3 34 6 scope Lorg/graalvm/compiler/debug/DebugContext$Scope;
4 32 7 updateProc Lorg/graalvm/compiler/lir/ValueProcedure;
6 30 8 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
8 26 14 indent0 Lorg/graalvm/compiler/debug/Indent;
10 23 15 inst Lorg/graalvm/compiler/lir/LIRInstruction;
12 19 19 indent1 Lorg/graalvm/compiler/debug/Indent;
Exception table:
from to target type
12 17 18 any
11 20 20 any
8 24 25 any
7 27 27 any
3 32 33 any
2 35 35 any
MethodParameters:
Name Flags
res
mapping
protected jdk.vm.ci.code.StackSlot mapSimpleVirtualStackSlot(org.graalvm.compiler.lir.framemap.FrameMapBuilderTool, org.graalvm.compiler.lir.framemap.SimpleVirtualStackSlot);
descriptor: (Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;Lorg/graalvm/compiler/lir/framemap/SimpleVirtualStackSlot;)Ljdk/vm/ci/code/StackSlot;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
aload 2
invokevirtual org.graalvm.compiler.lir.framemap.SimpleVirtualStackSlot.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.allocateSpillSlot:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/StackSlot;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/stackslotalloc/SimpleStackSlotAllocator;
0 1 1 builder Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
0 1 2 virtualStackSlot Lorg/graalvm/compiler/lir/framemap/SimpleVirtualStackSlot;
MethodParameters:
Name Flags
builder
virtualStackSlot
protected jdk.vm.ci.code.StackSlot mapVirtualStackSlotRange(org.graalvm.compiler.lir.framemap.FrameMapBuilderTool, org.graalvm.compiler.lir.framemap.VirtualStackSlotRange);
descriptor: (Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;Lorg/graalvm/compiler/lir/framemap/VirtualStackSlotRange;)Ljdk/vm/ci/code/StackSlot;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
aload 2
invokevirtual org.graalvm.compiler.lir.framemap.VirtualStackSlotRange.getSlots:()I
invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.allocateStackSlots:(I)Ljdk/vm/ci/code/StackSlot;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/stackslotalloc/SimpleStackSlotAllocator;
0 1 1 builder Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
0 1 2 virtualStackSlot Lorg/graalvm/compiler/lir/framemap/VirtualStackSlotRange;
MethodParameters:
Name Flags
builder
virtualStackSlot
protected void run(jdk.vm.ci.code.TargetDescription, org.graalvm.compiler.lir.gen.LIRGenerationResult, java.lang.Object);
descriptor: (Ljdk/vm/ci/code/TargetDescription;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;Ljava/lang/Object;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
aload 3
checkcast org.graalvm.compiler.lir.phases.AllocationPhase$AllocationContext
invokevirtual org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator.run:(Ljdk/vm/ci/code/TargetDescription;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;Lorg/graalvm/compiler/lir/phases/AllocationPhase$AllocationContext;)V
return
LocalVariableTable:
Start End Slot Name Signature
private static jdk.vm.ci.meta.Value lambda$0(jdk.vm.ci.code.StackSlot[], org.graalvm.compiler.debug.DebugContext, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: ([Ljdk/vm/ci/code/StackSlot;Lorg/graalvm/compiler/debug/DebugContext;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=6, args_size=5
start local 2 start local 3 start local 4 0: aload 2
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVirtualStackSlot:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
1: aload 0
aload 2
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asVirtualStackSlot:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/VirtualStackSlot;
invokevirtual org.graalvm.compiler.lir.VirtualStackSlot.getId:()I
aaload
astore 5
start local 5 2: aload 1
ldc "map %s -> %s"
aload 2
aload 5
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
3: aload 5
areturn
end local 5 4: StackMap locals:
StackMap stack:
aload 2
areturn
end local 4 end local 3 end local 2 LocalVariableTable:
Start End Slot Name Signature
0 5 2 value Ljdk/vm/ci/meta/Value;
0 5 3 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 5 4 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
2 4 5 stackSlot Ljdk/vm/ci/code/StackSlot;
}
SourceFile: "SimpleStackSlotAllocator.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 final AllocationContext = org.graalvm.compiler.lir.phases.AllocationPhase$AllocationContext of org.graalvm.compiler.lir.phases.AllocationPhase