public final class org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator extends org.graalvm.compiler.lir.phases.AllocationPhase
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator
  super_class: org.graalvm.compiler.lir.phases.AllocationPhase
{
  private static final org.graalvm.compiler.debug.TimerKey MainTimer;
    descriptor: Lorg/graalvm/compiler/debug/TimerKey;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.debug.TimerKey NumInstTimer;
    descriptor: Lorg/graalvm/compiler/debug/TimerKey;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.debug.TimerKey BuildIntervalsTimer;
    descriptor: Lorg/graalvm/compiler/debug/TimerKey;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.debug.TimerKey VerifyIntervalsTimer;
    descriptor: Lorg/graalvm/compiler/debug/TimerKey;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.debug.TimerKey AllocateSlotsTimer;
    descriptor: Lorg/graalvm/compiler/debug/TimerKey;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.graalvm.compiler.debug.TimerKey AssignSlotsTimer;
    descriptor: Lorg/graalvm/compiler/debug/TimerKey;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 83
            ldc "LSStackSlotAllocator"
            invokestatic org.graalvm.compiler.debug.DebugContext.timer:(Ljava/lang/CharSequence;)Lorg/graalvm/compiler/debug/TimerKey;
            putstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.MainTimer:Lorg/graalvm/compiler/debug/TimerKey;
         1: .line 84
            ldc "LSStackSlotAllocator[NumberInstruction]"
            invokestatic org.graalvm.compiler.debug.DebugContext.timer:(Ljava/lang/CharSequence;)Lorg/graalvm/compiler/debug/TimerKey;
            putstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.NumInstTimer:Lorg/graalvm/compiler/debug/TimerKey;
         2: .line 85
            ldc "LSStackSlotAllocator[BuildIntervals]"
            invokestatic org.graalvm.compiler.debug.DebugContext.timer:(Ljava/lang/CharSequence;)Lorg/graalvm/compiler/debug/TimerKey;
            putstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.BuildIntervalsTimer:Lorg/graalvm/compiler/debug/TimerKey;
         3: .line 86
            ldc "LSStackSlotAllocator[VerifyIntervals]"
            invokestatic org.graalvm.compiler.debug.DebugContext.timer:(Ljava/lang/CharSequence;)Lorg/graalvm/compiler/debug/TimerKey;
            putstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.VerifyIntervalsTimer:Lorg/graalvm/compiler/debug/TimerKey;
         4: .line 87
            ldc "LSStackSlotAllocator[AllocateSlots]"
            invokestatic org.graalvm.compiler.debug.DebugContext.timer:(Ljava/lang/CharSequence;)Lorg/graalvm/compiler/debug/TimerKey;
            putstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.AllocateSlotsTimer:Lorg/graalvm/compiler/debug/TimerKey;
         5: .line 88
            ldc "LSStackSlotAllocator[AssignSlots]"
            invokestatic org.graalvm.compiler.debug.DebugContext.timer:(Ljava/lang/CharSequence;)Lorg/graalvm/compiler/debug/TimerKey;
            putstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.AssignSlotsTimer:Lorg/graalvm/compiler/debug/TimerKey;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator this
         0: .line 74
            aload 0 /* this */
            invokespecial org.graalvm.compiler.lir.phases.AllocationPhase.<init>:()V
            return
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator;

  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=2, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator this
        start local 1 // jdk.vm.ci.code.TargetDescription target
        start local 2 // org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenRes
        start local 3 // org.graalvm.compiler.lir.phases.AllocationPhase$AllocationContext context
         0: .line 92
            aload 2 /* lirGenRes */
            invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
            checkcast org.graalvm.compiler.lir.framemap.FrameMapBuilderTool
            aload 2 /* lirGenRes */
            invokestatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.allocateStackSlots:(Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
         1: .line 93
            aload 2 /* lirGenRes */
            invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.buildFrameMap:()V
         2: .line 94
            return
        end local 3 // org.graalvm.compiler.lir.phases.AllocationPhase$AllocationContext context
        end local 2 // org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenRes
        end local 1 // jdk.vm.ci.code.TargetDescription target
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator;
            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 static 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: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.lir.framemap.FrameMapBuilderTool builder
        start local 1 // org.graalvm.compiler.lir.gen.LIRGenerationResult res
         0: .line 98
            aload 0 /* builder */
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getNumberOfStackSlots:()I
            ifle 10
         1: .line 99
            aconst_null
            astore 2
            aconst_null
            astore 3
         2: getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.MainTimer:Lorg/graalvm/compiler/debug/TimerKey;
            aload 1 /* res */
            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;
            invokeinterface org.graalvm.compiler.debug.TimerKey.start:(Lorg/graalvm/compiler/debug/DebugContext;)Lorg/graalvm/compiler/debug/DebugCloseable;
            astore 4 /* t */
        start local 4 // org.graalvm.compiler.debug.DebugCloseable t
         3: .line 100
            new org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator
            dup
            aload 1 /* res */
            invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
            aload 0 /* builder */
            invokespecial org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.<init>:(Lorg/graalvm/compiler/lir/LIR;Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;)V
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.allocate:()V
         4: .line 101
            aload 4 /* t */
            ifnull 10
            aload 4 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
            goto 10
      StackMap locals: org.graalvm.compiler.lir.framemap.FrameMapBuilderTool org.graalvm.compiler.lir.gen.LIRGenerationResult java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
      StackMap stack: java.lang.Throwable
         5: astore 2
            aload 4 /* t */
            ifnull 6
            aload 4 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
        end local 4 // org.graalvm.compiler.debug.DebugCloseable t
      StackMap locals:
      StackMap stack:
         6: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: astore 3
            aload 2
            ifnonnull 8
            aload 3
            astore 2
            goto 9
      StackMap locals:
      StackMap stack:
         8: aload 2
            aload 3
            if_acmpeq 9
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
         9: aload 2
            athrow
        10: .line 103
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.compiler.lir.gen.LIRGenerationResult res
        end local 0 // org.graalvm.compiler.lir.framemap.FrameMapBuilderTool builder
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0  builder  Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
            0   11     1      res  Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
            3    6     4        t  Lorg/graalvm/compiler/debug/DebugCloseable;
      Exception table:
        from    to  target  type
           3     4       5  any
           2     7       7  any
    MethodParameters:
         Name  Flags
      builder  
      res      

  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: .line 1
            aload 0
            aload 1
            aload 2
            aload 3
            checkcast org.graalvm.compiler.lir.phases.AllocationPhase$AllocationContext
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.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
}
SourceFile: "LSStackSlotAllocator.java"
NestMembers:
  org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator  org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator$1  org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator$SlotSize  org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Options
InnerClasses:
  public final AllocationContext = org.graalvm.compiler.lir.phases.AllocationPhase$AllocationContext of org.graalvm.compiler.lir.phases.AllocationPhase
  private final Allocator = org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator of org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator
  public Options = org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Options of org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator