final class org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator
  super_class: java.lang.Object
{
  private final org.graalvm.compiler.lir.LIR lir;
    descriptor: Lorg/graalvm/compiler/lir/LIR;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.debug.DebugContext debug;
    descriptor: Lorg/graalvm/compiler/debug/DebugContext;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.lir.framemap.FrameMapBuilderTool frameMapBuilder;
    descriptor: Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.lir.stackslotalloc.StackInterval[] stackSlotMap;
    descriptor: [Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.PriorityQueue<org.graalvm.compiler.lir.stackslotalloc.StackInterval> unhandled;
    descriptor: Ljava/util/PriorityQueue;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/PriorityQueue<Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;>;

  private final java.util.PriorityQueue<org.graalvm.compiler.lir.stackslotalloc.StackInterval> active;
    descriptor: Ljava/util/PriorityQueue;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/PriorityQueue<Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;>;

  private final org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?>[] sortedBlocks;
    descriptor: [Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: [Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;

  private final int maxOpId;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final java.util.function.Predicate<org.graalvm.compiler.lir.stackslotalloc.StackInterval> IS_REFERENCE_INTERVAL;
    descriptor: Ljava/util/function/Predicate;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/function/Predicate<Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;>;

  private static final java.util.function.Predicate<org.graalvm.compiler.lir.stackslotalloc.StackInterval> IS_PRIMITIVE_INTERVAL;
    descriptor: Ljava/util/function/Predicate;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/function/Predicate<Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;>;

  private java.util.ArrayList<java.util.Deque<jdk.vm.ci.code.StackSlot>> freeSlots;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/ArrayList<Ljava/util/Deque<Ljdk/vm/ci/code/StackSlot;>;>;

  org.graalvm.compiler.lir.ValueProcedure assignSlot;
    descriptor: Lorg/graalvm/compiler/lir/ValueProcedure;
    flags: (0x0000) 

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 110
            ldc Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator;
            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.stackslotalloc.LSStackSlotAllocator$Allocator.$assertionsDisabled:Z
         3: .line 257
            new org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator$1
            dup
            invokespecial org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator$1.<init>:()V
            putstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.IS_REFERENCE_INTERVAL:Ljava/util/function/Predicate;
         4: .line 264
            new org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator$2
            dup
            invokespecial org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator$2.<init>:()V
            putstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.IS_PRIMITIVE_INTERVAL:Ljava/util/function/Predicate;
         5: .line 269
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(org.graalvm.compiler.lir.LIR, org.graalvm.compiler.lir.framemap.FrameMapBuilderTool);
    descriptor: (Lorg/graalvm/compiler/lir/LIR;Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // org.graalvm.compiler.lir.LIR lir
        start local 2 // org.graalvm.compiler.lir.framemap.FrameMapBuilderTool frameMapBuilder
         0: .line 122
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 424
            aload 0 /* this */
            new org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator$3
            dup
            aload 0 /* this */
            invokespecial org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator$3.<init>:(Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;)V
            putfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.assignSlot:Lorg/graalvm/compiler/lir/ValueProcedure;
         2: .line 123
            aload 0 /* this */
            aload 1 /* lir */
            putfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.lir:Lorg/graalvm/compiler/lir/LIR;
         3: .line 124
            aload 0 /* this */
            aload 1 /* lir */
            invokevirtual org.graalvm.compiler.lir.LIR.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
            putfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
         4: .line 125
            aload 0 /* this */
            aload 2 /* frameMapBuilder */
            putfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.frameMapBuilder:Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
         5: .line 126
            aload 0 /* this */
            aload 2 /* frameMapBuilder */
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getNumberOfStackSlots:()I
            anewarray org.graalvm.compiler.lir.stackslotalloc.StackInterval
            putfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.stackSlotMap:[Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
         6: .line 127
            aload 0 /* this */
            aload 1 /* 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;
            putfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.sortedBlocks:[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
         7: .line 130
            aload 0 /* this */
            new java.util.PriorityQueue
            dup
            invokedynamic compare()Ljava/util/Comparator;
              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:
                  (Ljava/lang/Object;Ljava/lang/Object;)I
                  org/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator.lambda$0(Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;)I (6)
                  (Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;)I
            invokespecial java.util.PriorityQueue.<init>:(Ljava/util/Comparator;)V
            putfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.unhandled:Ljava/util/PriorityQueue;
         8: .line 132
            aload 0 /* this */
            new java.util.PriorityQueue
            dup
            invokedynamic compare()Ljava/util/Comparator;
              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:
                  (Ljava/lang/Object;Ljava/lang/Object;)I
                  org/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator.lambda$1(Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;)I (6)
                  (Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;)I
            invokespecial java.util.PriorityQueue.<init>:(Ljava/util/Comparator;)V
            putfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.active:Ljava/util/PriorityQueue;
         9: .line 134
            aconst_null
            astore 3
            aconst_null
            astore 4
        10: getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.NumInstTimer:Lorg/graalvm/compiler/debug/TimerKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.TimerKey.start:(Lorg/graalvm/compiler/debug/DebugContext;)Lorg/graalvm/compiler/debug/DebugCloseable;
            astore 5 /* t */
        start local 5 // org.graalvm.compiler.debug.DebugCloseable t
        11: .line 136
            aload 0 /* this */
            aload 1 /* lir */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.sortedBlocks:[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            invokestatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.numberInstructions:(Lorg/graalvm/compiler/lir/LIR;[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)I
            putfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.maxOpId:I
        12: .line 137
            aload 5 /* t */
            ifnull 18
            aload 5 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
            goto 18
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator org.graalvm.compiler.lir.LIR org.graalvm.compiler.lir.framemap.FrameMapBuilderTool java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
      StackMap stack: java.lang.Throwable
        13: astore 3
            aload 5 /* t */
            ifnull 14
            aload 5 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
        end local 5 // org.graalvm.compiler.debug.DebugCloseable t
      StackMap locals:
      StackMap stack:
        14: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 4
            aload 3
            ifnonnull 16
            aload 4
            astore 3
            goto 17
      StackMap locals:
      StackMap stack:
        16: aload 3
            aload 4
            if_acmpeq 17
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        17: aload 3
            athrow
        18: .line 138
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.graalvm.compiler.lir.framemap.FrameMapBuilderTool frameMapBuilder
        end local 1 // org.graalvm.compiler.lir.LIR lir
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   19     0             this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0   19     1              lir  Lorg/graalvm/compiler/lir/LIR;
            0   19     2  frameMapBuilder  Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
           11   14     5                t  Lorg/graalvm/compiler/debug/DebugCloseable;
      Exception table:
        from    to  target  type
          11    12      13  any
          10    15      15  any
    MethodParameters:
                 Name  Flags
      lir              
      frameMapBuilder  

  private void allocate();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=1
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
         0: .line 142
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            iconst_3
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.lir:Lorg/graalvm/compiler/lir/LIR;
            ldc "After StackSlot numbering"
            invokevirtual org.graalvm.compiler.debug.DebugContext.dump:(ILjava/lang/Object;Ljava/lang/String;)V
         1: .line 144
            getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.allocatedFramesize:Lorg/graalvm/compiler/debug/CounterKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.CounterKey.isEnabled:(Lorg/graalvm/compiler/debug/DebugContext;)Z
            istore 1 /* allocationFramesizeEnabled */
        start local 1 // boolean allocationFramesizeEnabled
         2: .line 145
            iload 1 /* allocationFramesizeEnabled */
            ifeq 3
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.frameMapBuilder:Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.currentFrameSize:()I
            goto 4
      StackMap locals: int
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: i2l
            lstore 2 /* currentFrameSize */
        start local 2 // long currentFrameSize
         5: .line 148
            aconst_null
            astore 5
            aconst_null
            astore 6
         6: aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "StackSlotAllocationBuildIntervals"
            invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
            astore 7 /* s */
        start local 7 // org.graalvm.compiler.debug.DebugContext$Scope s
         7: aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "BuildIntervals"
            invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/Indent;
            astore 8 /* indent */
        start local 8 // org.graalvm.compiler.debug.Indent indent
         8: getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.BuildIntervalsTimer:Lorg/graalvm/compiler/debug/TimerKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.TimerKey.start:(Lorg/graalvm/compiler/debug/DebugContext;)Lorg/graalvm/compiler/debug/DebugCloseable;
            astore 9 /* t */
        start local 9 // org.graalvm.compiler.debug.DebugCloseable t
         9: .line 149
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.buildIntervals:()Ljdk/internal/vm/compiler/collections/EconomicSet;
            astore 4 /* usePos */
        start local 4 // jdk.internal.vm.compiler.collections.EconomicSet usePos
        10: .line 150
            aload 9 /* t */
            ifnull 13
            aload 9 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
            goto 13
        end local 4 // jdk.internal.vm.compiler.collections.EconomicSet usePos
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator int long top java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.debug.Indent org.graalvm.compiler.debug.DebugCloseable
      StackMap stack: java.lang.Throwable
        11: astore 5
            aload 9 /* t */
            ifnull 12
            aload 9 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
        end local 9 // org.graalvm.compiler.debug.DebugCloseable t
      StackMap locals:
      StackMap stack:
        12: aload 5
            athrow
        start local 4 // jdk.internal.vm.compiler.collections.EconomicSet usePos
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator int long jdk.internal.vm.compiler.collections.EconomicSet java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.debug.Indent
      StackMap stack:
        13: aload 8 /* indent */
            ifnull 18
            aload 8 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
            goto 18
        end local 4 // jdk.internal.vm.compiler.collections.EconomicSet usePos
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator int long top java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.debug.Indent
      StackMap stack: java.lang.Throwable
        14: astore 6
            aload 5
            ifnonnull 15
            aload 6
            astore 5
            goto 16
      StackMap locals:
      StackMap stack:
        15: aload 5
            aload 6
            if_acmpeq 16
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        16: aload 8 /* indent */
            ifnull 17
            aload 8 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        end local 8 // org.graalvm.compiler.debug.Indent indent
      StackMap locals:
      StackMap stack:
        17: aload 5
            athrow
        start local 4 // jdk.internal.vm.compiler.collections.EconomicSet usePos
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator int long jdk.internal.vm.compiler.collections.EconomicSet java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
      StackMap stack:
        18: aload 7 /* s */
            ifnull 26
            aload 7 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
            goto 26
        end local 4 // jdk.internal.vm.compiler.collections.EconomicSet usePos
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator int long top java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
      StackMap stack: java.lang.Throwable
        19: astore 6
            aload 5
            ifnonnull 20
            aload 6
            astore 5
            goto 21
      StackMap locals:
      StackMap stack:
        20: aload 5
            aload 6
            if_acmpeq 21
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        21: aload 7 /* s */
            ifnull 22
            aload 7 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
        end local 7 // org.graalvm.compiler.debug.DebugContext$Scope s
      StackMap locals:
      StackMap stack:
        22: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        23: astore 6
            aload 5
            ifnonnull 24
            aload 6
            astore 5
            goto 25
      StackMap locals:
      StackMap stack:
        24: aload 5
            aload 6
            if_acmpeq 25
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        25: aload 5
            athrow
        start local 4 // jdk.internal.vm.compiler.collections.EconomicSet usePos
        26: .line 152
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator int long jdk.internal.vm.compiler.collections.EconomicSet
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokevirtual org.graalvm.compiler.debug.DebugContext.areScopesEnabled:()Z
            ifeq 36
        27: .line 153
            aconst_null
            astore 5
            aconst_null
            astore 6
        28: getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.VerifyIntervalsTimer:Lorg/graalvm/compiler/debug/TimerKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.TimerKey.start:(Lorg/graalvm/compiler/debug/DebugContext;)Lorg/graalvm/compiler/debug/DebugCloseable;
            astore 7 /* t */
        start local 7 // org.graalvm.compiler.debug.DebugCloseable t
        29: .line 154
            getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.$assertionsDisabled:Z
            ifne 30
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.verifyIntervals:()Z
            ifne 30
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        30: .line 155
      StackMap locals: java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
      StackMap stack:
            aload 7 /* t */
            ifnull 36
            aload 7 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
            goto 36
      StackMap locals:
      StackMap stack: java.lang.Throwable
        31: astore 5
            aload 7 /* t */
            ifnull 32
            aload 7 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
        end local 7 // org.graalvm.compiler.debug.DebugCloseable t
      StackMap locals:
      StackMap stack:
        32: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        33: astore 6
            aload 5
            ifnonnull 34
            aload 6
            astore 5
            goto 35
      StackMap locals:
      StackMap stack:
        34: aload 5
            aload 6
            if_acmpeq 35
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        35: aload 5
            athrow
        36: .line 157
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            iconst_3
            invokevirtual org.graalvm.compiler.debug.DebugContext.isDumpEnabled:(I)Z
            ifeq 38
        37: .line 158
            aload 0 /* this */
            ldc "Before stack slot allocation"
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.dumpIntervals:(Ljava/lang/String;)V
        38: .line 161
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5
            aconst_null
            astore 6
        39: getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.AllocateSlotsTimer:Lorg/graalvm/compiler/debug/TimerKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.TimerKey.start:(Lorg/graalvm/compiler/debug/DebugContext;)Lorg/graalvm/compiler/debug/DebugCloseable;
            astore 7 /* t */
        start local 7 // org.graalvm.compiler.debug.DebugCloseable t
        40: .line 169
            aload 0 /* this */
            getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.IS_PRIMITIVE_INTERVAL:Ljava/util/function/Predicate;
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.allocateStackSlots:(Ljava/util/function/Predicate;)V
        41: .line 170
            aload 0 /* this */
            getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.IS_REFERENCE_INTERVAL:Ljava/util/function/Predicate;
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.allocateStackSlots:(Ljava/util/function/Predicate;)V
        42: .line 171
            aload 7 /* t */
            ifnull 48
            aload 7 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
            goto 48
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator int long jdk.internal.vm.compiler.collections.EconomicSet java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
      StackMap stack: java.lang.Throwable
        43: astore 5
            aload 7 /* t */
            ifnull 44
            aload 7 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
        end local 7 // org.graalvm.compiler.debug.DebugCloseable t
      StackMap locals:
      StackMap stack:
        44: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        45: astore 6
            aload 5
            ifnonnull 46
            aload 6
            astore 5
            goto 47
      StackMap locals:
      StackMap stack:
        46: aload 5
            aload 6
            if_acmpeq 47
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        47: aload 5
            athrow
        48: .line 172
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            iconst_3
            invokevirtual org.graalvm.compiler.debug.DebugContext.isDumpEnabled:(I)Z
            ifeq 50
        49: .line 173
            aload 0 /* this */
            ldc "After stack slot allocation"
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.dumpIntervals:(Ljava/lang/String;)V
        50: .line 177
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5
            aconst_null
            astore 6
        51: getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator.AssignSlotsTimer:Lorg/graalvm/compiler/debug/TimerKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.TimerKey.start:(Lorg/graalvm/compiler/debug/DebugContext;)Lorg/graalvm/compiler/debug/DebugCloseable;
            astore 7 /* t */
        start local 7 // org.graalvm.compiler.debug.DebugCloseable t
        52: .line 178
            aload 0 /* this */
            aload 4 /* usePos */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.assignStackSlots:(Ljdk/internal/vm/compiler/collections/EconomicSet;)V
        53: .line 179
            aload 7 /* t */
            ifnull 59
            aload 7 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
            goto 59
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator int long jdk.internal.vm.compiler.collections.EconomicSet java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugCloseable
      StackMap stack: java.lang.Throwable
        54: astore 5
            aload 7 /* t */
            ifnull 55
            aload 7 /* t */
            invokeinterface org.graalvm.compiler.debug.DebugCloseable.close:()V
        end local 7 // org.graalvm.compiler.debug.DebugCloseable t
      StackMap locals:
      StackMap stack:
        55: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        56: astore 6
            aload 5
            ifnonnull 57
            aload 6
            astore 5
            goto 58
      StackMap locals:
      StackMap stack:
        57: aload 5
            aload 6
            if_acmpeq 58
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        58: aload 5
            athrow
        59: .line 180
      StackMap locals:
      StackMap stack:
            iload 1 /* allocationFramesizeEnabled */
            ifeq 61
        60: .line 181
            getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.allocatedFramesize:Lorg/graalvm/compiler/debug/CounterKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.frameMapBuilder:Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
            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 2 /* currentFrameSize */
            lsub
            invokeinterface org.graalvm.compiler.debug.CounterKey.add:(Lorg/graalvm/compiler/debug/DebugContext;J)V
        61: .line 183
      StackMap locals:
      StackMap stack:
            return
        end local 4 // jdk.internal.vm.compiler.collections.EconomicSet usePos
        end local 2 // long currentFrameSize
        end local 1 // boolean allocationFramesizeEnabled
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   62     0                        this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            2   62     1  allocationFramesizeEnabled  Z
            5   62     2            currentFrameSize  J
           10   11     4                      usePos  Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/lir/LIRInstruction;>;
           13   14     4                      usePos  Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/lir/LIRInstruction;>;
           18   19     4                      usePos  Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/lir/LIRInstruction;>;
           26   62     4                      usePos  Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/lir/LIRInstruction;>;
            7   22     7                           s  Lorg/graalvm/compiler/debug/DebugContext$Scope;
            8   17     8                      indent  Lorg/graalvm/compiler/debug/Indent;
            9   12     9                           t  Lorg/graalvm/compiler/debug/DebugCloseable;
           29   32     7                           t  Lorg/graalvm/compiler/debug/DebugCloseable;
           40   44     7                           t  Lorg/graalvm/compiler/debug/DebugCloseable;
           52   55     7                           t  Lorg/graalvm/compiler/debug/DebugCloseable;
      Exception table:
        from    to  target  type
           9    10      11  any
           8    13      14  any
           7    18      19  any
           6    23      23  any
          29    30      31  any
          28    33      33  any
          40    42      43  any
          39    45      45  any
          52    53      54  any
          51    56      56  any

  private static int numberInstructions(org.graalvm.compiler.lir.LIR, org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?>[]);
    descriptor: (Lorg/graalvm/compiler/lir/LIR;[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=12, args_size=2
        start local 0 // org.graalvm.compiler.lir.LIR lir
        start local 1 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] sortedBlocks
         0: .line 195
            iconst_0
            istore 2 /* opId */
        start local 2 // int opId
         1: .line 196
            iconst_0
            istore 3 /* index */
        start local 3 // int index
         2: .line 197
            aload 1 /* sortedBlocks */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 15
      StackMap locals: org.graalvm.compiler.lir.LIR org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] int int top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
         3: aload 7
            iload 5
            aaload
            astore 4 /* block */
        start local 4 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
         4: .line 199
            aload 0 /* lir */
            aload 4 /* block */
            invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
            astore 8 /* instructions */
        start local 8 // java.util.ArrayList instructions
         5: .line 201
            aload 8 /* instructions */
            invokevirtual java.util.ArrayList.size:()I
            istore 9 /* numInst */
        start local 9 // int numInst
         6: .line 202
            iconst_0
            istore 10 /* j */
        start local 10 // int j
         7: goto 13
         8: .line 203
      StackMap locals: org.graalvm.compiler.lir.LIR org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] 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 8 /* instructions */
            iload 10 /* j */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.lir.LIRInstruction
            astore 11 /* op */
        start local 11 // org.graalvm.compiler.lir.LIRInstruction op
         9: .line 204
            aload 11 /* op */
            iload 2 /* opId */
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.setId:(I)V
        10: .line 206
            iinc 3 /* index */ 1
        11: .line 207
            iinc 2 /* opId */ 2
        end local 11 // org.graalvm.compiler.lir.LIRInstruction op
        12: .line 202
            iinc 10 /* j */ 1
      StackMap locals:
      StackMap stack:
        13: iload 10 /* j */
            iload 9 /* numInst */
            if_icmplt 8
        end local 10 // int j
        end local 9 // int numInst
        end local 8 // java.util.ArrayList instructions
        end local 4 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
        14: .line 197
            iinc 5 1
      StackMap locals: org.graalvm.compiler.lir.LIR org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] int int top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
        15: iload 5
            iload 6
            if_icmplt 3
        16: .line 210
            getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.$assertionsDisabled:Z
            ifne 17
            iload 3 /* index */
            iconst_1
            ishl
            iload 2 /* opId */
            if_icmpeq 17
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "must match: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* index */
            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
        17: .line 211
      StackMap locals: org.graalvm.compiler.lir.LIR org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] int int
      StackMap stack:
            iload 2 /* opId */
            iconst_2
            isub
            ireturn
        end local 3 // int index
        end local 2 // int opId
        end local 1 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] sortedBlocks
        end local 0 // org.graalvm.compiler.lir.LIR lir
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0           lir  Lorg/graalvm/compiler/lir/LIR;
            0   18     1  sortedBlocks  [Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            1   18     2          opId  I
            2   18     3         index  I
            4   14     4         block  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
            5   14     8  instructions  Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;
            6   14     9       numInst  I
            7   14    10             j  I
            9   12    11            op  Lorg/graalvm/compiler/lir/LIRInstruction;
    Signature: (Lorg/graalvm/compiler/lir/LIR;[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;)I
    MethodParameters:
              Name  Flags
      lir           
      sortedBlocks  

  private jdk.internal.vm.compiler.collections.EconomicSet<org.graalvm.compiler.lir.LIRInstruction> buildIntervals();
    descriptor: ()Ljdk/internal/vm/compiler/collections/EconomicSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
         0: .line 219
            new org.graalvm.compiler.lir.stackslotalloc.FixPointIntervalBuilder
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.lir:Lorg/graalvm/compiler/lir/LIR;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.stackSlotMap:[Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.maxOpId:()I
            invokespecial org.graalvm.compiler.lir.stackslotalloc.FixPointIntervalBuilder.<init>:(Lorg/graalvm/compiler/lir/LIR;[Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;I)V
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.FixPointIntervalBuilder.build:()Ljdk/internal/vm/compiler/collections/EconomicSet;
            areturn
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
    Signature: ()Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/lir/LIRInstruction;>;

  private boolean verifyIntervals();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
         0: .line 227
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.stackSlotMap:[Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 5
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator top int int org.graalvm.compiler.lir.stackslotalloc.StackInterval[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* interval */
        start local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval interval
         2: .line 228
            aload 1 /* interval */
            ifnull 4
         3: .line 229
            getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.$assertionsDisabled:Z
            ifne 4
            aload 1 /* interval */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.maxOpId:()I
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.StackInterval.verify:(I)Z
            ifne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval interval
         4: .line 227
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         5: iload 2
            iload 3
            if_icmplt 1
         6: .line 232
            iconst_1
            ireturn
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            2    4     1  interval  Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;

  private void allocateStackSlots(java.util.function.Predicate<org.graalvm.compiler.lir.stackslotalloc.StackInterval>);
    descriptor: (Ljava/util/function/Predicate;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // java.util.function.Predicate predicate
         0: .line 241
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.stackSlotMap:[Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 5
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator java.util.function.Predicate top int int org.graalvm.compiler.lir.stackslotalloc.StackInterval[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* interval */
        start local 2 // org.graalvm.compiler.lir.stackslotalloc.StackInterval interval
         2: .line 242
            aload 2 /* interval */
            ifnull 4
            aload 1 /* predicate */
            ifnull 3
            aload 1 /* predicate */
            aload 2 /* interval */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 243
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator java.util.function.Predicate org.graalvm.compiler.lir.stackslotalloc.StackInterval int int org.graalvm.compiler.lir.stackslotalloc.StackInterval[]
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.unhandled:Ljava/util/PriorityQueue;
            aload 2 /* interval */
            invokevirtual java.util.PriorityQueue.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // org.graalvm.compiler.lir.stackslotalloc.StackInterval interval
         4: .line 241
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator java.util.function.Predicate top int int org.graalvm.compiler.lir.stackslotalloc.StackInterval[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         5: iload 3
            iload 4
            if_icmplt 1
         6: .line 246
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.activateNext:()Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            astore 2 /* current */
        start local 2 // org.graalvm.compiler.lir.stackslotalloc.StackInterval current
         7: goto 18
         8: .line 247
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator java.util.function.Predicate org.graalvm.compiler.lir.stackslotalloc.StackInterval
      StackMap stack:
            aconst_null
            astore 3
            aconst_null
            astore 4
         9: aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "allocate %s"
            aload 2 /* current */
            invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
            astore 5 /* indent */
        start local 5 // org.graalvm.compiler.debug.Indent indent
        10: .line 248
            aload 0 /* this */
            aload 2 /* current */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.allocateSlot:(Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;)V
        11: .line 249
            aload 5 /* indent */
            ifnull 17
            aload 5 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
            goto 17
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator java.util.function.Predicate org.graalvm.compiler.lir.stackslotalloc.StackInterval java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
      StackMap stack: java.lang.Throwable
        12: astore 3
            aload 5 /* indent */
            ifnull 13
            aload 5 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        end local 5 // org.graalvm.compiler.debug.Indent indent
      StackMap locals:
      StackMap stack:
        13: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: astore 4
            aload 3
            ifnonnull 15
            aload 4
            astore 3
            goto 16
      StackMap locals:
      StackMap stack:
        15: aload 3
            aload 4
            if_acmpeq 16
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        16: aload 3
            athrow
        17: .line 246
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.activateNext:()Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            astore 2 /* current */
      StackMap locals:
      StackMap stack:
        18: aload 2 /* current */
            ifnonnull 8
        end local 2 // org.graalvm.compiler.lir.stackslotalloc.StackInterval current
        19: .line 253
            aload 0 /* this */
            aconst_null
            putfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlots:Ljava/util/ArrayList;
        20: .line 254
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.active:Ljava/util/PriorityQueue;
            invokevirtual java.util.PriorityQueue.clear:()V
        21: .line 255
            return
        end local 1 // java.util.function.Predicate predicate
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   22     0       this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0   22     1  predicate  Ljava/util/function/Predicate<Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;>;
            2    4     2   interval  Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            7   19     2    current  Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
           10   13     5     indent  Lorg/graalvm/compiler/debug/Indent;
      Exception table:
        from    to  target  type
          10    11      12  any
           9    14      14  any
    Signature: (Ljava/util/function/Predicate<Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;>;)V
    MethodParameters:
           Name  Flags
      predicate  

  private void allocateSlot(org.graalvm.compiler.lir.stackslotalloc.StackInterval);
    descriptor: (Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval current
         0: .line 272
            aload 1 /* current */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.StackInterval.getOperand:()Lorg/graalvm/compiler/lir/VirtualStackSlot;
            astore 2 /* virtualSlot */
        start local 2 // org.graalvm.compiler.lir.VirtualStackSlot virtualSlot
         1: .line 274
            aload 2 /* virtualSlot */
            instanceof org.graalvm.compiler.lir.framemap.VirtualStackSlotRange
            ifeq 7
         2: .line 276
            aload 2 /* virtualSlot */
            checkcast org.graalvm.compiler.lir.framemap.VirtualStackSlotRange
            astore 4 /* slotRange */
        start local 4 // org.graalvm.compiler.lir.framemap.VirtualStackSlotRange slotRange
         3: .line 277
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.frameMapBuilder:Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
            aload 4 /* slotRange */
            invokevirtual org.graalvm.compiler.lir.framemap.VirtualStackSlotRange.getSlots:()I
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.allocateStackSlots:(I)Ljdk/vm/ci/code/StackSlot;
            astore 3 /* location */
        start local 3 // jdk.vm.ci.code.StackSlot location
         4: .line 278
            getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.virtualFramesize:Lorg/graalvm/compiler/debug/CounterKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.frameMapBuilder:Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
            aload 4 /* slotRange */
            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
         5: .line 279
            getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.allocatedSlots:Lorg/graalvm/compiler/debug/CounterKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.CounterKey.increment:(Lorg/graalvm/compiler/debug/DebugContext;)V
        end local 4 // org.graalvm.compiler.lir.framemap.VirtualStackSlotRange slotRange
         6: .line 280
            goto 18
        end local 3 // jdk.vm.ci.code.StackSlot location
         7: .line 281
      StackMap locals: org.graalvm.compiler.lir.VirtualStackSlot
      StackMap stack:
            getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.$assertionsDisabled:Z
            ifne 8
            aload 2 /* virtualSlot */
            instanceof org.graalvm.compiler.lir.framemap.SimpleVirtualStackSlot
            ifne 8
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unexpected VirtualStackSlot type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* virtualSlot */
            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
         8: .line 282
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* virtualSlot */
            checkcast org.graalvm.compiler.lir.framemap.SimpleVirtualStackSlot
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.findFreeSlot:(Lorg/graalvm/compiler/lir/framemap/SimpleVirtualStackSlot;)Ljdk/vm/ci/code/StackSlot;
            astore 4 /* slot */
        start local 4 // jdk.vm.ci.code.StackSlot slot
         9: .line 283
            aload 4 /* slot */
            ifnull 14
        10: .line 288
            aload 1 /* current */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.StackInterval.kind:()Ljdk/vm/ci/meta/ValueKind;
            aload 4 /* slot */
            invokevirtual jdk.vm.ci.code.StackSlot.getRawOffset:()I
            aload 4 /* slot */
            invokevirtual jdk.vm.ci.code.StackSlot.getRawAddFrameSize:()Z
            invokestatic jdk.vm.ci.code.StackSlot.get:(Ljdk/vm/ci/meta/ValueKind;IZ)Ljdk/vm/ci/code/StackSlot;
            astore 3 /* location */
        start local 3 // jdk.vm.ci.code.StackSlot location
        11: .line 289
            getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.reusedSlots:Lorg/graalvm/compiler/debug/CounterKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.CounterKey.increment:(Lorg/graalvm/compiler/debug/DebugContext;)V
        12: .line 290
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            iconst_1
            ldc "Reuse stack slot %s (reallocated from %s) for virtual stack slot %s"
            aload 3 /* location */
            aload 4 /* slot */
            aload 2 /* virtualSlot */
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(ILjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        13: .line 291
            goto 18
        end local 3 // jdk.vm.ci.code.StackSlot location
        14: .line 293
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator org.graalvm.compiler.lir.stackslotalloc.StackInterval org.graalvm.compiler.lir.VirtualStackSlot top jdk.vm.ci.code.StackSlot
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.frameMapBuilder:Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
            aload 2 /* virtualSlot */
            invokevirtual org.graalvm.compiler.lir.VirtualStackSlot.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.allocateSpillSlot:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/StackSlot;
            astore 3 /* location */
        start local 3 // jdk.vm.ci.code.StackSlot location
        15: .line 294
            getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.virtualFramesize:Lorg/graalvm/compiler/debug/CounterKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.frameMapBuilder:Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
            aload 2 /* virtualSlot */
            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
        16: .line 295
            getstatic org.graalvm.compiler.lir.stackslotalloc.StackSlotAllocatorUtil.allocatedSlots:Lorg/graalvm/compiler/debug/CounterKey;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            invokeinterface org.graalvm.compiler.debug.CounterKey.increment:(Lorg/graalvm/compiler/debug/DebugContext;)V
        17: .line 296
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            iconst_1
            ldc "New stack slot %s for virtual stack slot %s"
            aload 3 /* location */
            aload 2 /* virtualSlot */
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(ILjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        end local 4 // jdk.vm.ci.code.StackSlot slot
        18: .line 299
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator org.graalvm.compiler.lir.stackslotalloc.StackInterval org.graalvm.compiler.lir.VirtualStackSlot jdk.vm.ci.code.StackSlot
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "Allocate location %s for interval %s"
            aload 3 /* location */
            aload 1 /* current */
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        19: .line 300
            aload 1 /* current */
            aload 3 /* location */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.StackInterval.setLocation:(Ljdk/vm/ci/code/StackSlot;)V
        20: .line 301
            return
        end local 3 // jdk.vm.ci.code.StackSlot location
        end local 2 // org.graalvm.compiler.lir.VirtualStackSlot virtualSlot
        end local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval current
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   21     0         this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0   21     1      current  Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            1   21     2  virtualSlot  Lorg/graalvm/compiler/lir/VirtualStackSlot;
            4    7     3     location  Ljdk/vm/ci/code/StackSlot;
           11   14     3     location  Ljdk/vm/ci/code/StackSlot;
           15   21     3     location  Ljdk/vm/ci/code/StackSlot;
            3    6     4    slotRange  Lorg/graalvm/compiler/lir/framemap/VirtualStackSlotRange;
            9   18     4         slot  Ljdk/vm/ci/code/StackSlot;
    MethodParameters:
         Name  Flags
      current  

  private java.util.Deque<jdk.vm.ci.code.StackSlot> getNullOrFreeSlots(int);
    descriptor: (I)Ljava/util/Deque;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // int index
         0: .line 313
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlots:Ljava/util/ArrayList;
            ifnonnull 2
         1: .line 314
            aconst_null
            areturn
         2: .line 316
      StackMap locals:
      StackMap stack:
            iload 1 /* index */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlots:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            if_icmpge 4
         3: .line 317
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlots:Ljava/util/ArrayList;
            iload 1 /* index */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.util.Deque
            areturn
         4: .line 319
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // int index
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0    5     1  index  I
    Signature: (I)Ljava/util/Deque<Ljdk/vm/ci/code/StackSlot;>;
    MethodParameters:
       Name  Flags
      index  

  private java.util.Deque<jdk.vm.ci.code.StackSlot> getOrInitFreeSlots(int);
    descriptor: (I)Ljava/util/Deque;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // int index
         0: .line 327
            aconst_null
            astore 2 /* freeList */
        start local 2 // java.util.Deque freeList
         1: .line 328
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlots:Ljava/util/ArrayList;
            ifnonnull 4
         2: .line 329
            aload 0 /* this */
            new java.util.ArrayList
            dup
            bipush 6
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlots:Ljava/util/ArrayList;
         3: .line 330
            goto 6
      StackMap locals: java.util.Deque
      StackMap stack:
         4: iload 1 /* index */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlots:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            if_icmpge 6
         5: .line 331
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlots:Ljava/util/ArrayList;
            iload 1 /* index */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.util.Deque
            astore 2 /* freeList */
         6: .line 333
      StackMap locals:
      StackMap stack:
            aload 2 /* freeList */
            ifnonnull 15
         7: .line 334
            iload 1 /* index */
            iconst_1
            iadd
            istore 3 /* requiredSize */
        start local 3 // int requiredSize
         8: .line 335
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlots:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 4 /* i */
        start local 4 // int i
         9: goto 12
        10: .line 336
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlots:Ljava/util/ArrayList;
            aconst_null
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        11: .line 335
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 4 /* i */
            iload 3 /* requiredSize */
            if_icmplt 10
        end local 4 // int i
        13: .line 338
            new java.util.ArrayDeque
            dup
            invokespecial java.util.ArrayDeque.<init>:()V
            astore 2 /* freeList */
        14: .line 339
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlots:Ljava/util/ArrayList;
            iload 1 /* index */
            aload 2 /* freeList */
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        end local 3 // int requiredSize
        15: .line 341
      StackMap locals:
      StackMap stack:
            aload 2 /* freeList */
            areturn
        end local 2 // java.util.Deque freeList
        end local 1 // int index
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   16     0          this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0   16     1         index  I
            1   16     2      freeList  Ljava/util/Deque<Ljdk/vm/ci/code/StackSlot;>;
            8   15     3  requiredSize  I
            9   13     4             i  I
    Signature: (I)Ljava/util/Deque<Ljdk/vm/ci/code/StackSlot;>;
    MethodParameters:
       Name  Flags
      index  

  private jdk.vm.ci.code.StackSlot findFreeSlot(org.graalvm.compiler.lir.framemap.SimpleVirtualStackSlot);
    descriptor: (Lorg/graalvm/compiler/lir/framemap/SimpleVirtualStackSlot;)Ljdk/vm/ci/code/StackSlot;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // org.graalvm.compiler.lir.framemap.SimpleVirtualStackSlot slot
         0: .line 348
            getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.$assertionsDisabled:Z
            ifne 1
            aload 1 /* slot */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 349
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* slot */
            invokevirtual org.graalvm.compiler.lir.framemap.SimpleVirtualStackSlot.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.log2SpillSlotSize:(Ljdk/vm/ci/meta/ValueKind;)I
            istore 2 /* size */
        start local 2 // int size
         2: .line 350
            aload 0 /* this */
            iload 2 /* size */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.getNullOrFreeSlots:(I)Ljava/util/Deque;
            astore 3 /* freeList */
        start local 3 // java.util.Deque freeList
         3: .line 351
            aload 3 /* freeList */
            ifnonnull 5
         4: .line 352
            aconst_null
            areturn
         5: .line 354
      StackMap locals: int java.util.Deque
      StackMap stack:
            aload 3 /* freeList */
            invokeinterface java.util.Deque.pollLast:()Ljava/lang/Object;
            checkcast jdk.vm.ci.code.StackSlot
            areturn
        end local 3 // java.util.Deque freeList
        end local 2 // int size
        end local 1 // org.graalvm.compiler.lir.framemap.SimpleVirtualStackSlot slot
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0    6     1      slot  Lorg/graalvm/compiler/lir/framemap/SimpleVirtualStackSlot;
            2    6     2      size  I
            3    6     3  freeList  Ljava/util/Deque<Ljdk/vm/ci/code/StackSlot;>;
    MethodParameters:
      Name  Flags
      slot  

  private void freeSlot(jdk.vm.ci.code.StackSlot);
    descriptor: (Ljdk/vm/ci/code/StackSlot;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // jdk.vm.ci.code.StackSlot slot
         0: .line 361
            aload 0 /* this */
            aload 1 /* slot */
            invokevirtual jdk.vm.ci.code.StackSlot.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.log2SpillSlotSize:(Ljdk/vm/ci/meta/ValueKind;)I
            istore 2 /* size */
        start local 2 // int size
         1: .line 362
            aload 0 /* this */
            iload 2 /* size */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.getOrInitFreeSlots:(I)Ljava/util/Deque;
            aload 1 /* slot */
            invokeinterface java.util.Deque.addLast:(Ljava/lang/Object;)V
         2: .line 363
            return
        end local 2 // int size
        end local 1 // jdk.vm.ci.code.StackSlot slot
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0    3     1  slot  Ljdk/vm/ci/code/StackSlot;
            1    3     2  size  I
    MethodParameters:
      Name  Flags
      slot  

  private int log2SpillSlotSize(jdk.vm.ci.meta.ValueKind<?>);
    descriptor: (Ljdk/vm/ci/meta/ValueKind;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // jdk.vm.ci.meta.ValueKind kind
         0: .line 366
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.frameMapBuilder:Lorg/graalvm/compiler/lir/framemap/FrameMapBuilderTool;
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilderTool.getFrameMap:()Lorg/graalvm/compiler/lir/framemap/FrameMap;
            aload 1 /* kind */
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.spillSlotSize:(Ljdk/vm/ci/meta/ValueKind;)I
            istore 2 /* size */
        start local 2 // int size
         1: .line 367
            getstatic org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.$assertionsDisabled:Z
            ifne 2
            iload 2 /* size */
            invokestatic jdk.vm.ci.code.CodeUtil.isPowerOf2:(I)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 368
      StackMap locals: int
      StackMap stack:
            iload 2 /* size */
            invokestatic jdk.vm.ci.code.CodeUtil.log2:(I)I
            ireturn
        end local 2 // int size
        end local 1 // jdk.vm.ci.meta.ValueKind kind
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0    3     1  kind  Ljdk/vm/ci/meta/ValueKind<*>;
            1    3     2  size  I
    Signature: (Ljdk/vm/ci/meta/ValueKind<*>;)I
    MethodParameters:
      Name  Flags
      kind  

  private org.graalvm.compiler.lir.stackslotalloc.StackInterval activateNext();
    descriptor: ()Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
         0: .line 375
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.unhandled:Ljava/util/PriorityQueue;
            invokevirtual java.util.PriorityQueue.isEmpty:()Z
            ifeq 2
         1: .line 376
            aconst_null
            areturn
         2: .line 378
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.unhandled:Ljava/util/PriorityQueue;
            invokevirtual java.util.PriorityQueue.poll:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.lir.stackslotalloc.StackInterval
            astore 1 /* next */
        start local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval next
         3: .line 380
            aload 1 /* next */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.StackInterval.from:()I
            istore 2 /* id */
        start local 2 // int id
         4: goto 6
         5: .line 381
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.StackInterval int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.active:Ljava/util/PriorityQueue;
            invokevirtual java.util.PriorityQueue.poll:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.lir.stackslotalloc.StackInterval
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.finished:(Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;)V
         6: .line 380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.activePeekId:()I
            iload 2 /* id */
            if_icmplt 5
        end local 2 // int id
         7: .line 383
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "active %s"
            aload 1 /* next */
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;)V
         8: .line 384
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.active:Ljava/util/PriorityQueue;
            aload 1 /* next */
            invokevirtual java.util.PriorityQueue.add:(Ljava/lang/Object;)Z
            pop
         9: .line 385
            aload 1 /* next */
            areturn
        end local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval next
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            3   10     1  next  Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            4    7     2    id  I

  private int activePeekId();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
         0: .line 393
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.active:Ljava/util/PriorityQueue;
            invokevirtual java.util.PriorityQueue.peek:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.lir.stackslotalloc.StackInterval
            astore 1 /* first */
        start local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval first
         1: .line 394
            aload 1 /* first */
            ifnonnull 3
         2: .line 395
            ldc 2147483647
            ireturn
         3: .line 397
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.StackInterval
      StackMap stack:
            aload 1 /* first */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.StackInterval.to:()I
            ireturn
        end local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval first
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            1    4     1  first  Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;

  private void finished(org.graalvm.compiler.lir.stackslotalloc.StackInterval);
    descriptor: (Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval interval
         0: .line 404
            aload 1 /* interval */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.StackInterval.location:()Ljdk/vm/ci/code/StackSlot;
            astore 2 /* location */
        start local 2 // jdk.vm.ci.code.StackSlot location
         1: .line 405
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "finished %s (freeing %s)"
            aload 1 /* interval */
            aload 2 /* location */
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 406
            aload 0 /* this */
            aload 2 /* location */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.freeSlot:(Ljdk/vm/ci/code/StackSlot;)V
         3: .line 407
            return
        end local 2 // jdk.vm.ci.code.StackSlot location
        end local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval interval
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0    4     1  interval  Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            1    4     2  location  Ljdk/vm/ci/code/StackSlot;
    MethodParameters:
          Name  Flags
      interval  

  private void assignStackSlots(jdk.internal.vm.compiler.collections.EconomicSet<org.graalvm.compiler.lir.LIRInstruction>);
    descriptor: (Ljdk/internal/vm/compiler/collections/EconomicSet;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // jdk.internal.vm.compiler.collections.EconomicSet usePos
         0: .line 414
            aload 1 /* usePos */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicSet.iterator:()Ljava/util/Iterator;
            astore 3
            goto 7
      StackMap locals: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator jdk.internal.vm.compiler.collections.EconomicSet top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.lir.LIRInstruction
            astore 2 /* op */
        start local 2 // org.graalvm.compiler.lir.LIRInstruction op
         2: .line 415
            aload 2 /* op */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.assignSlot:Lorg/graalvm/compiler/lir/ValueProcedure;
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachInput:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
         3: .line 416
            aload 2 /* op */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.assignSlot:Lorg/graalvm/compiler/lir/ValueProcedure;
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachAlive:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
         4: .line 417
            aload 2 /* op */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.assignSlot:Lorg/graalvm/compiler/lir/ValueProcedure;
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachState:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
         5: .line 419
            aload 2 /* op */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.assignSlot:Lorg/graalvm/compiler/lir/ValueProcedure;
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachTemp:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
         6: .line 420
            aload 2 /* op */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.assignSlot:Lorg/graalvm/compiler/lir/ValueProcedure;
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachOutput:(Lorg/graalvm/compiler/lir/ValueProcedure;)V
        end local 2 // org.graalvm.compiler.lir.LIRInstruction op
         7: .line 414
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         8: .line 422
            return
        end local 1 // jdk.internal.vm.compiler.collections.EconomicSet usePos
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0    9     1  usePos  Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/lir/LIRInstruction;>;
            2    7     2      op  Lorg/graalvm/compiler/lir/LIRInstruction;
    Signature: (Ljdk/internal/vm/compiler/collections/EconomicSet<Lorg/graalvm/compiler/lir/LIRInstruction;>;)V
    MethodParameters:
        Name  Flags
      usePos  

  private int maxOpId();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
         0: .line 445
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.maxOpId:I
            ireturn
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;

  private org.graalvm.compiler.lir.stackslotalloc.StackInterval get(org.graalvm.compiler.lir.VirtualStackSlot);
    descriptor: (Lorg/graalvm/compiler/lir/VirtualStackSlot;)Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // org.graalvm.compiler.lir.VirtualStackSlot stackSlot
         0: .line 449
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.stackSlotMap:[Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            aload 1 /* stackSlot */
            invokevirtual org.graalvm.compiler.lir.VirtualStackSlot.getId:()I
            aaload
            areturn
        end local 1 // org.graalvm.compiler.lir.VirtualStackSlot stackSlot
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0    1     1  stackSlot  Lorg/graalvm/compiler/lir/VirtualStackSlot;
    MethodParameters:
           Name  Flags
      stackSlot  

  private void dumpIntervals(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
        start local 1 // java.lang.String label
         0: .line 453
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.debug:Lorg/graalvm/compiler/debug/DebugContext;
            iconst_3
            new org.graalvm.compiler.lir.stackslotalloc.StackIntervalDumper
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.stackSlotMap:[Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator.stackSlotMap:[Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            arraylength
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast org.graalvm.compiler.lir.stackslotalloc.StackInterval[]
            invokespecial org.graalvm.compiler.lir.stackslotalloc.StackIntervalDumper.<init>:([Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;)V
            aload 1 /* label */
            invokevirtual org.graalvm.compiler.debug.DebugContext.dump:(ILjava/lang/Object;Ljava/lang/String;)V
         1: .line 454
            return
        end local 1 // java.lang.String label
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/lir/stackslotalloc/LSStackSlotAllocator$Allocator;
            0    2     1  label  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      label  

  private static int lambda$0(org.graalvm.compiler.lir.stackslotalloc.StackInterval, org.graalvm.compiler.lir.stackslotalloc.StackInterval);
    descriptor: (Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.StackInterval a
        start local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval b
         0: .line 130
            aload 0 /* a */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.StackInterval.from:()I
            aload 1 /* b */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.StackInterval.from:()I
            isub
            ireturn
        end local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval b
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.StackInterval a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            0    1     1     b  Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;

  private static int lambda$1(org.graalvm.compiler.lir.stackslotalloc.StackInterval, org.graalvm.compiler.lir.stackslotalloc.StackInterval);
    descriptor: (Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.lir.stackslotalloc.StackInterval a
        start local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval b
         0: .line 132
            aload 0 /* a */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.StackInterval.to:()I
            aload 1 /* b */
            invokevirtual org.graalvm.compiler.lir.stackslotalloc.StackInterval.to:()I
            isub
            ireturn
        end local 1 // org.graalvm.compiler.lir.stackslotalloc.StackInterval b
        end local 0 // org.graalvm.compiler.lir.stackslotalloc.StackInterval a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
            0    1     1     b  Lorg/graalvm/compiler/lir/stackslotalloc/StackInterval;
}
SourceFile: "LSStackSlotAllocator.java"
NestHost: org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator
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
  private final Allocator = org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator of org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator
  org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator$1
  org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator$2
  org.graalvm.compiler.lir.stackslotalloc.LSStackSlotAllocator$Allocator$3