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=5, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getNumberOfStackSlots:()I
anewarray jdk.vm.ci.code.StackSlot
astore 3
start local 3 1: getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.allocatedFramesize:Lorg/graalvm/compiler/debug/DebugCounter;
invokeinterface org.graalvm.compiler.debug.DebugCounter.isEnabled:()Z
ifeq 2
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 3
StackMap locals: jdk.vm.ci.code.StackSlot[]
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: i2l
lstore 4
start local 4 4: aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getStackSlots:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 18
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.framemap.FrameMapBuilderTool org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] long top java.util.Iterator
StackMap stack:
5: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.VirtualStackSlot
astore 6
start local 6 6: aload 6
instanceof org.graalvm.compiler.lir.framemap.SimpleVirtualStackSlot
ifeq 10
7: aload 0
aload 1
aload 6
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 8
start local 8 8: getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.virtualFramesize:Lorg/graalvm/compiler/debug/DebugCounter;
aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
aload 6
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.DebugCounter.add:(J)V
9: goto 16
end local 8 StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.framemap.FrameMapBuilderTool org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] long org.graalvm.compiler.lir.VirtualStackSlot java.util.Iterator
StackMap stack:
10: aload 6
instanceof org.graalvm.compiler.lir.framemap.VirtualStackSlotRange
ifeq 15
11: aload 6
checkcast org.graalvm.compiler.lir.framemap.VirtualStackSlotRange
astore 9
start local 9 12: aload 0
aload 1
aload 9
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 8
start local 8 13: getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.virtualFramesize:Lorg/graalvm/compiler/debug/DebugCounter;
aload 1
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
aload 9
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.DebugCounter.add:(J)V
end local 9 14: goto 16
end local 8 15: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Unknown VirtualStackSlot: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
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 8 16: StackMap locals: jdk.vm.ci.code.StackSlot
StackMap stack:
getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.allocatedSlots:Lorg/graalvm/compiler/debug/DebugCounter;
invokeinterface org.graalvm.compiler.debug.DebugCounter.increment:()V
17: aload 3
aload 6
invokevirtual org.graalvm.compiler.lir.VirtualStackSlot.getId:()I
aload 8
aastore
end local 8 end local 6 18: StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.framemap.FrameMapBuilderTool org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] long top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
19: aload 0
aload 2
aload 3
invokevirtual org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator.updateLIR:(Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;[Ljdk/vm/ci/code/StackSlot;)V
20: getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.allocatedFramesize:Lorg/graalvm/compiler/debug/DebugCounter;
invokeinterface org.graalvm.compiler.debug.DebugCounter.isEnabled:()Z
ifeq 22
21: getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.allocatedFramesize:Lorg/graalvm/compiler/debug/DebugCounter;
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 4
lsub
invokeinterface org.graalvm.compiler.debug.DebugCounter.add:(J)V
22: StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.framemap.FrameMapBuilderTool org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] long
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 23 0 this Lorg/graalvm/compiler/lir/stackslotalloc/SimpleStackSlotAllocator;
0 23 1 builder Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
0 23 2 res Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
1 23 3 mapping [Ljdk/vm/ci/code/StackSlot;
4 23 4 currentFrameSize J
6 18 6 virtualSlot Lorg/graalvm/compiler/lir/VirtualStackSlot;
8 10 8 slot Ljdk/vm/ci/code/StackSlot;
13 15 8 slot Ljdk/vm/ci/code/StackSlot;
16 18 8 slot Ljdk/vm/ci/code/StackSlot;
12 14 9 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=3, locals=19, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
aconst_null
astore 4
1: ldc "StackSlotMappingLIR"
invokestatic org.graalvm.compiler.debug.Debug.scope:(Ljava/lang/Object;)Lorg/graalvm/compiler/debug/Debug$Scope;
astore 5
start local 5 2: aload 2
invokedynamic doValue([Ljdk/vm/ci/code/StackSlot;)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;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 6
start local 6 3: 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 10
arraylength
istore 9
iconst_0
istore 8
goto 30
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Debug$Scope org.graalvm.compiler.lir.ValueProcedure top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
4: aload 10
iload 8
aaload
astore 7
start local 7 5: aconst_null
astore 11
aconst_null
astore 12
6: ldc "block: %s"
aload 7
invokestatic org.graalvm.compiler.debug.Debug.logAndIndent:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
astore 13
start local 13 7: aload 1
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
aload 7
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 15
goto 22
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Debug$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:
8: aload 15
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.lir.LIRInstruction
astore 14
start local 14 9: aconst_null
astore 16
aconst_null
astore 17
10: ldc "Inst: %d: %s"
aload 14
invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
aload 14
invokestatic org.graalvm.compiler.debug.Debug.logAndIndent:(Ljava/lang/String;ILjava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
astore 18
start local 18 11: aload 14
aload 6
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachAlive:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
12: aload 14
aload 6
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachInput:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
13: aload 14
aload 6
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachOutput:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
14: aload 14
aload 6
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachTemp:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
15: aload 14
aload 6
invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachState:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
16: aload 18
ifnull 22
aload 18
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 22
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Debug$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
17: astore 16
aload 18
ifnull 18
aload 18
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 18 StackMap locals:
StackMap stack:
18: aload 16
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
19: astore 17
aload 16
ifnonnull 20
aload 17
astore 16
goto 21
StackMap locals:
StackMap stack:
20: aload 16
aload 17
if_acmpeq 21
aload 16
aload 17
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
21: aload 16
athrow
end local 14 22: StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Debug$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 15
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
23: aload 13
ifnull 29
aload 13
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
goto 29
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Debug$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
24: astore 11
aload 13
ifnull 25
aload 13
invokeinterface org.graalvm.compiler.debug.Indent.close:()V
end local 13 StackMap locals:
StackMap stack:
25: aload 11
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
26: astore 12
aload 11
ifnonnull 27
aload 12
astore 11
goto 28
StackMap locals:
StackMap stack:
27: aload 11
aload 12
if_acmpeq 28
aload 11
aload 12
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
28: aload 11
athrow
end local 7 29: StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Debug$Scope org.graalvm.compiler.lir.ValueProcedure top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
30: iload 8
iload 9
if_icmplt 4
end local 6 31: aload 5
ifnull 37
aload 5
invokeinterface org.graalvm.compiler.debug.Debug$Scope.close:()V
goto 37
StackMap locals: org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator org.graalvm.compiler.lir.gen.LIRGenerationResult jdk.vm.ci.code.StackSlot[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Debug$Scope
StackMap stack: java.lang.Throwable
32: astore 3
aload 5
ifnull 33
aload 5
invokeinterface org.graalvm.compiler.debug.Debug$Scope.close:()V
end local 5 StackMap locals:
StackMap stack:
33: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
34: astore 4
aload 3
ifnonnull 35
aload 4
astore 3
goto 36
StackMap locals:
StackMap stack:
35: aload 3
aload 4
if_acmpeq 36
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
36: aload 3
athrow
37: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lorg/graalvm/compiler/lir/stackslotalloc/SimpleStackSlotAllocator;
0 38 1 res Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
0 38 2 mapping [Ljdk/vm/ci/code/StackSlot;
2 33 5 scope Lorg/graalvm/compiler/debug/Debug$Scope;
3 31 6 updateProc Lorg/graalvm/compiler/lir/ValueProcedure;
5 29 7 block Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
7 25 13 indent0 Lorg/graalvm/compiler/debug/Indent;
9 22 14 inst Lorg/graalvm/compiler/lir/LIRInstruction;
11 18 18 indent1 Lorg/graalvm/compiler/debug/Indent;
Exception table:
from to target type
11 16 17 any
10 19 19 any
7 23 24 any
6 26 26 any
2 31 32 any
1 34 34 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=3, 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
aload 2
invokevirtual org.graalvm.compiler.lir.framemap.VirtualStackSlotRange.getObjects:()Ljava/util/BitSet;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.allocateStackSlots:(ILjava/util/BitSet;)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[], jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet);
descriptor: ([Ljdk/vm/ci/code/StackSlot;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=3, locals=5, args_size=4
start local 1 start local 2 start local 3 0: aload 1
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVirtualStackSlot:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
1: aload 0
aload 1
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 4
start local 4 2: ldc "map %s -> %s"
aload 1
aload 4
invokestatic org.graalvm.compiler.debug.Debug.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
3: aload 4
areturn
end local 4 4: StackMap locals:
StackMap stack:
aload 1
areturn
end local 3 end local 2 end local 1 LocalVariableTable:
Start End Slot Name Signature
0 5 1 value Ljdk/vm/ci/meta/Value;
0 5 2 mode Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
0 5 3 flags Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
2 4 4 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.Debug$Scope of org.graalvm.compiler.debug.Debug
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