final class org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner
  super_class: java.lang.Object
{
  private final org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan allocator;
    descriptor: Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory spillMoveFactory;
    descriptor: Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

  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=1, locals=0, args_size=0
         0: .line 79
            ldc Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan, org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory);
    descriptor: (Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
        start local 1 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan allocator
        start local 2 // org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory spillMoveFactory
         0: .line 83
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 250
            aload 0 /* this */
            new org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner$1
            dup
            aload 0 /* this */
            invokespecial org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner$1.<init>:(Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;)V
            putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.assignProc:Lorg/graalvm/compiler/lir/InstructionValueProcedure;
         2: .line 259
            aload 0 /* this */
            new org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner$2
            dup
            aload 0 /* this */
            invokespecial org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner$2.<init>:(Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;)V
            putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.debugInfoValueProc:Lorg/graalvm/compiler/lir/InstructionValueProcedure;
         3: .line 84
            aload 0 /* this */
            aload 1 /* allocator */
            putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
         4: .line 85
            aload 0 /* this */
            aload 2 /* spillMoveFactory */
            putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.spillMoveFactory:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
         5: .line 86
            return
        end local 2 // org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory spillMoveFactory
        end local 1 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan allocator
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0              this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;
            0    6     1         allocator  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            0    6     2  spillMoveFactory  Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
    MethodParameters:
                  Name  Flags
      allocator         
      spillMoveFactory  

  private jdk.vm.ci.meta.Value colorLirOperand(org.graalvm.compiler.lir.LIRInstruction, org.graalvm.compiler.lir.Variable, org.graalvm.compiler.lir.LIRInstruction$OperandMode);
    descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)Ljdk/vm/ci/meta/Value;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
        start local 1 // org.graalvm.compiler.lir.LIRInstruction op
        start local 2 // org.graalvm.compiler.lir.Variable operand
        start local 3 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
         0: .line 97
            aload 1 /* op */
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
            istore 4 /* opId */
        start local 4 // int opId
         1: .line 98
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            aload 2 /* operand */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.intervalFor:(Lorg/graalvm/compiler/lir/Variable;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
            astore 5 /* interval */
        start local 5 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval interval
         2: .line 99
            getstatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.$assertionsDisabled:Z
            ifne 3
            aload 5 /* interval */
            ifnonnull 3
            new java.lang.AssertionError
            dup
            ldc "interval must exist"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 101
      StackMap locals: int org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval
      StackMap stack:
            iload 4 /* opId */
            iconst_m1
            if_icmpeq 5
         4: .line 106
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            aload 5 /* interval */
            iload 4 /* opId */
            aload 3 /* mode */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.splitChildAtOpId:(Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;ILorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
            astore 5 /* interval */
         5: .line 109
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* op */
            aload 5 /* interval */
            aload 3 /* mode */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.getLocation:(Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)Ljdk/vm/ci/meta/Value;
            areturn
        end local 5 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval interval
        end local 4 // int opId
        end local 3 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
        end local 2 // org.graalvm.compiler.lir.Variable operand
        end local 1 // org.graalvm.compiler.lir.LIRInstruction op
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;
            0    6     1        op  Lorg/graalvm/compiler/lir/LIRInstruction;
            0    6     2   operand  Lorg/graalvm/compiler/lir/Variable;
            0    6     3      mode  Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            1    6     4      opId  I
            2    6     5  interval  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
    MethodParameters:
         Name  Flags
      op       
      operand  
      mode     

  private jdk.vm.ci.meta.Value getLocation(org.graalvm.compiler.lir.LIRInstruction, org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval, org.graalvm.compiler.lir.LIRInstruction$OperandMode);
    descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)Ljdk/vm/ci/meta/Value;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
        start local 1 // org.graalvm.compiler.lir.LIRInstruction op
        start local 2 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval interval
        start local 3 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
         0: .line 113
            aload 2 /* interval */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval.location:()Ljdk/vm/ci/meta/AllocatableValue;
            invokestatic jdk.vm.ci.code.ValueUtil.isIllegal:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 5
            aload 2 /* interval */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval.canMaterialize:()Z
            ifeq 5
         1: .line 114
            aload 1 /* op */
            instanceof org.graalvm.compiler.lir.StandardOp$LabelOp
            ifeq 3
         2: .line 119
            getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
            areturn
         3: .line 121
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.$assertionsDisabled:Z
            ifne 4
            aload 3 /* mode */
            getstatic org.graalvm.compiler.lir.LIRInstruction$OperandMode.DEF:Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            if_acmpne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 122
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.lir.ConstantValue
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            aload 2 /* interval */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getKind:(Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;)Ljdk/vm/ci/meta/ValueKind;
            aload 2 /* interval */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval.getMaterializedValue:()Ljdk/vm/ci/meta/JavaConstant;
            invokespecial org.graalvm.compiler.lir.ConstantValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)V
            areturn
         5: .line 124
      StackMap locals:
      StackMap stack:
            aload 2 /* interval */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval.location:()Ljdk/vm/ci/meta/AllocatableValue;
            areturn
        end local 3 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
        end local 2 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval interval
        end local 1 // org.graalvm.compiler.lir.LIRInstruction op
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;
            0    6     1        op  Lorg/graalvm/compiler/lir/LIRInstruction;
            0    6     2  interval  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
            0    6     3      mode  Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
    MethodParameters:
          Name  Flags
      op        
      interval  
      mode      

  private jdk.vm.ci.meta.Value debugInfoProcedure(org.graalvm.compiler.lir.LIRInstruction, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet<org.graalvm.compiler.lir.LIRInstruction$OperandFlag>);
    descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=5
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
        start local 1 // org.graalvm.compiler.lir.LIRInstruction op
        start local 2 // jdk.vm.ci.meta.Value operand
        start local 3 // org.graalvm.compiler.lir.LIRInstruction$OperandMode valueMode
        start local 4 // java.util.EnumSet flags
         0: .line 135
            aload 2 /* operand */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVirtualStackSlot:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 2
         1: .line 136
            aload 2 /* operand */
            areturn
         2: .line 138
      StackMap locals:
      StackMap stack:
            aload 1 /* op */
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
            istore 5 /* tempOpId */
        start local 5 // int tempOpId
         3: .line 139
            getstatic org.graalvm.compiler.lir.LIRInstruction$OperandMode.USE:Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            astore 6 /* mode */
        start local 6 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
         4: .line 140
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            iload 5 /* tempOpId */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.blockForId:(I)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            astore 7 /* block */
        start local 7 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
         5: .line 141
            aload 7 /* block */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getSuccessorCount:()I
            iconst_1
            if_icmpne 9
            iload 5 /* tempOpId */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            aload 7 /* block */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getLastLirInstructionId:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)I
            if_icmpne 9
         6: .line 150
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
            aload 7 /* block */
            invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
            aload 7 /* block */
            invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.lir.LIRInstruction
            astore 8 /* instr */
        start local 8 // org.graalvm.compiler.lir.LIRInstruction instr
         7: .line 151
            aload 8 /* instr */
            instanceof org.graalvm.compiler.lir.StandardOp$JumpOp
            ifeq 9
         8: .line 152
            ldc "DebugInfo on jumps are not supported!"
            invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 8 // org.graalvm.compiler.lir.LIRInstruction instr
         9: .line 161
      StackMap locals: int org.graalvm.compiler.lir.LIRInstruction$OperandMode org.graalvm.compiler.core.common.cfg.AbstractBlockBase
      StackMap stack:
            aload 0 /* this */
            aload 1 /* op */
            aload 2 /* operand */
            checkcast org.graalvm.compiler.lir.Variable
            aload 6 /* mode */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.colorLirOperand:(Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)Ljdk/vm/ci/meta/Value;
            astore 8 /* result */
        start local 8 // jdk.vm.ci.meta.Value result
        10: .line 162
            getstatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.$assertionsDisabled:Z
            ifne 11
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            iload 5 /* tempOpId */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.hasCall:(I)Z
            ifeq 11
            aload 8 /* result */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isStackSlotValue:(Ljdk/vm/ci/meta/Value;)Z
            ifne 11
            aload 8 /* result */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isConstantValue:(Ljdk/vm/ci/meta/Value;)Z
            ifne 11
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            aload 8 /* result */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.isCallerSave:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 11
            new java.lang.AssertionError
            dup
            ldc "cannot have caller-save register operands at calls"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        11: .line 163
      StackMap locals: jdk.vm.ci.meta.Value
      StackMap stack:
            aload 8 /* result */
            areturn
        end local 8 // jdk.vm.ci.meta.Value result
        end local 7 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
        end local 6 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
        end local 5 // int tempOpId
        end local 4 // java.util.EnumSet flags
        end local 3 // org.graalvm.compiler.lir.LIRInstruction$OperandMode valueMode
        end local 2 // jdk.vm.ci.meta.Value operand
        end local 1 // org.graalvm.compiler.lir.LIRInstruction op
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;
            0   12     1         op  Lorg/graalvm/compiler/lir/LIRInstruction;
            0   12     2    operand  Ljdk/vm/ci/meta/Value;
            0   12     3  valueMode  Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            0   12     4      flags  Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
            3   12     5   tempOpId  I
            4   12     6       mode  Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            5   12     7      block  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
            7    9     8      instr  Lorg/graalvm/compiler/lir/LIRInstruction;
           10   12     8     result  Ljdk/vm/ci/meta/Value;
    Signature: (Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;)Ljdk/vm/ci/meta/Value;
    MethodParameters:
           Name  Flags
      op         
      operand    
      valueMode  
      flags      

  private void assignBlock(org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?>);
    descriptor: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=11, args_size=2
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
        start local 1 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
         0: .line 168
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
            astore 2 /* debug */
        start local 2 // org.graalvm.compiler.debug.DebugContext debug
         1: .line 169
            aconst_null
            astore 3
            aconst_null
            astore 4
         2: aload 2 /* debug */
            ldc "assign locations in block B%d"
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
            invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;I)Lorg/graalvm/compiler/debug/Indent;
            astore 5 /* indent2 */
        start local 5 // org.graalvm.compiler.debug.Indent indent2
         3: .line 170
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
            astore 6 /* instructions */
        start local 6 // java.util.ArrayList instructions
         4: .line 171
            aload 0 /* this */
            aload 1 /* block */
            aload 6 /* instructions */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.handleBlockBegin:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/util/ArrayList;)V
         5: .line 172
            aload 6 /* instructions */
            invokevirtual java.util.ArrayList.size:()I
            istore 7 /* numInst */
        start local 7 // int numInst
         6: .line 173
            iconst_0
            istore 8 /* hasDead */
        start local 8 // boolean hasDead
         7: .line 175
            iconst_0
            istore 9 /* j */
        start local 9 // int j
         8: goto 16
         9: .line 176
      StackMap locals: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner org.graalvm.compiler.core.common.cfg.AbstractBlockBase org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayList int int int
      StackMap stack:
            aload 6 /* instructions */
            iload 9 /* j */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.lir.LIRInstruction
            astore 10 /* op */
        start local 10 // org.graalvm.compiler.lir.LIRInstruction op
        10: .line 177
            aload 10 /* op */
            ifnonnull 13
        11: .line 181
            iconst_1
            istore 8 /* hasDead */
        12: .line 182
            goto 15
      StackMap locals: org.graalvm.compiler.lir.LIRInstruction
      StackMap stack:
        13: aload 0 /* this */
            aload 10 /* op */
            aload 6 /* instructions */
            iload 9 /* j */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.assignLocations:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljava/util/ArrayList;I)Z
            ifeq 15
        14: .line 183
            iconst_1
            istore 8 /* hasDead */
        end local 10 // org.graalvm.compiler.lir.LIRInstruction op
        15: .line 175
      StackMap locals:
      StackMap stack:
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        16: iload 9 /* j */
            iload 7 /* numInst */
            if_icmplt 9
        end local 9 // int j
        17: .line 186
            aload 0 /* this */
            aload 1 /* block */
            aload 6 /* instructions */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.handleBlockEnd:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/util/ArrayList;)V
        18: .line 188
            iload 8 /* hasDead */
            ifeq 20
        19: .line 190
            aload 6 /* instructions */
            aconst_null
            invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
            invokevirtual java.util.ArrayList.removeAll:(Ljava/util/Collection;)Z
            pop
        end local 8 // boolean hasDead
        end local 7 // int numInst
        end local 6 // java.util.ArrayList instructions
        20: .line 192
      StackMap locals: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner org.graalvm.compiler.core.common.cfg.AbstractBlockBase org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
      StackMap stack:
            aload 5 /* indent2 */
            ifnull 26
            aload 5 /* indent2 */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
            goto 26
      StackMap locals:
      StackMap stack: java.lang.Throwable
        21: astore 3
            aload 5 /* indent2 */
            ifnull 22
            aload 5 /* indent2 */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        end local 5 // org.graalvm.compiler.debug.Indent indent2
      StackMap locals:
      StackMap stack:
        22: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        23: astore 4
            aload 3
            ifnonnull 24
            aload 4
            astore 3
            goto 25
      StackMap locals:
      StackMap stack:
        24: aload 3
            aload 4
            if_acmpeq 25
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        25: aload 3
            athrow
        26: .line 193
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.graalvm.compiler.debug.DebugContext debug
        end local 1 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   27     0          this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;
            0   27     1         block  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
            1   27     2         debug  Lorg/graalvm/compiler/debug/DebugContext;
            3   22     5       indent2  Lorg/graalvm/compiler/debug/Indent;
            4   20     6  instructions  Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;
            6   20     7       numInst  I
            7   20     8       hasDead  Z
            8   17     9             j  I
           10   15    10            op  Lorg/graalvm/compiler/lir/LIRInstruction;
      Exception table:
        from    to  target  type
           3    20      21  any
           2    23      23  any
    Signature: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;)V
    MethodParameters:
       Name  Flags
      block  

  private void handleBlockBegin(org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?>, java.util.ArrayList<org.graalvm.compiler.lir.LIRInstruction>);
    descriptor: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/util/ArrayList;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
        start local 1 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
        start local 2 // java.util.ArrayList instructions
         0: .line 196
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.hasInterTracePredecessor:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
            ifeq 8
         1: .line 198
            getstatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.$assertionsDisabled:Z
            ifne 2
            aload 2 /* instructions */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 199
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getGlobalLivenessInfo:()Lorg/graalvm/compiler/lir/alloc/trace/GlobalLivenessInfo;
            astore 3 /* li */
        start local 3 // org.graalvm.compiler.lir.alloc.trace.GlobalLivenessInfo li
         3: .line 200
            aload 2 /* instructions */
            iconst_0
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.lir.LIRInstruction
            astore 4 /* instruction */
        start local 4 // org.graalvm.compiler.lir.LIRInstruction instruction
         4: .line 201
            getstatic org.graalvm.compiler.lir.LIRInstruction$OperandMode.DEF:Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            astore 5 /* mode */
        start local 5 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
         5: .line 202
            aload 3 /* li */
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.GlobalLivenessInfo.getBlockIn:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)[I
            astore 6 /* live */
        start local 6 // int[] live
         6: .line 203
            aload 0 /* this */
            aload 4 /* instruction */
            aload 6 /* live */
            aload 5 /* mode */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.calculateBlockBoundaryValues:(Lorg/graalvm/compiler/lir/LIRInstruction;[ILorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)[Ljdk/vm/ci/meta/Value;
            astore 7 /* values */
        start local 7 // jdk.vm.ci.meta.Value[] values
         7: .line 204
            aload 3 /* li */
            aload 1 /* block */
            aload 7 /* values */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.GlobalLivenessInfo.setInLocations:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;[Ljdk/vm/ci/meta/Value;)V
        end local 7 // jdk.vm.ci.meta.Value[] values
        end local 6 // int[] live
        end local 5 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
        end local 4 // org.graalvm.compiler.lir.LIRInstruction instruction
        end local 3 // org.graalvm.compiler.lir.alloc.trace.GlobalLivenessInfo li
         8: .line 206
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.util.ArrayList instructions
        end local 1 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;
            0    9     1         block  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
            0    9     2  instructions  Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;
            3    8     3            li  Lorg/graalvm/compiler/lir/alloc/trace/GlobalLivenessInfo;
            4    8     4   instruction  Lorg/graalvm/compiler/lir/LIRInstruction;
            5    8     5          mode  Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            6    8     6          live  [I
            7    8     7        values  [Ljdk/vm/ci/meta/Value;
    Signature: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;)V
    MethodParameters:
              Name  Flags
      block         
      instructions  

  private void handleBlockEnd(org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?>, java.util.ArrayList<org.graalvm.compiler.lir.LIRInstruction>);
    descriptor: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/util/ArrayList;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
        start local 1 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
        start local 2 // java.util.ArrayList instructions
         0: .line 209
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.hasInterTraceSuccessor:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
            ifeq 8
         1: .line 211
            getstatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.$assertionsDisabled:Z
            ifne 2
            aload 2 /* instructions */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getLIR:()Lorg/graalvm/compiler/lir/LIR;
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 212
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getGlobalLivenessInfo:()Lorg/graalvm/compiler/lir/alloc/trace/GlobalLivenessInfo;
            astore 3 /* li */
        start local 3 // org.graalvm.compiler.lir.alloc.trace.GlobalLivenessInfo li
         3: .line 213
            aload 2 /* instructions */
            aload 2 /* instructions */
            invokevirtual java.util.ArrayList.size:()I
            iconst_1
            isub
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.lir.LIRInstruction
            astore 4 /* instruction */
        start local 4 // org.graalvm.compiler.lir.LIRInstruction instruction
         4: .line 214
            getstatic org.graalvm.compiler.lir.LIRInstruction$OperandMode.USE:Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            astore 5 /* mode */
        start local 5 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
         5: .line 215
            aload 3 /* li */
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.GlobalLivenessInfo.getBlockOut:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)[I
            astore 6 /* live */
        start local 6 // int[] live
         6: .line 216
            aload 0 /* this */
            aload 4 /* instruction */
            aload 6 /* live */
            aload 5 /* mode */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.calculateBlockBoundaryValues:(Lorg/graalvm/compiler/lir/LIRInstruction;[ILorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)[Ljdk/vm/ci/meta/Value;
            astore 7 /* values */
        start local 7 // jdk.vm.ci.meta.Value[] values
         7: .line 217
            aload 3 /* li */
            aload 1 /* block */
            aload 7 /* values */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.GlobalLivenessInfo.setOutLocations:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;[Ljdk/vm/ci/meta/Value;)V
        end local 7 // jdk.vm.ci.meta.Value[] values
        end local 6 // int[] live
        end local 5 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
        end local 4 // org.graalvm.compiler.lir.LIRInstruction instruction
        end local 3 // org.graalvm.compiler.lir.alloc.trace.GlobalLivenessInfo li
         8: .line 219
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.util.ArrayList instructions
        end local 1 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;
            0    9     1         block  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
            0    9     2  instructions  Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;
            3    8     3            li  Lorg/graalvm/compiler/lir/alloc/trace/GlobalLivenessInfo;
            4    8     4   instruction  Lorg/graalvm/compiler/lir/LIRInstruction;
            5    8     5          mode  Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            6    8     6          live  [I
            7    8     7        values  [Ljdk/vm/ci/meta/Value;
    Signature: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;)V
    MethodParameters:
              Name  Flags
      block         
      instructions  

  private jdk.vm.ci.meta.Value[] calculateBlockBoundaryValues(org.graalvm.compiler.lir.LIRInstruction, int[], org.graalvm.compiler.lir.LIRInstruction$OperandMode);
    descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;[ILorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)[Ljdk/vm/ci/meta/Value;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
        start local 1 // org.graalvm.compiler.lir.LIRInstruction instruction
        start local 2 // int[] live
        start local 3 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
         0: .line 222
            aload 2 /* live */
            arraylength
            anewarray jdk.vm.ci.meta.Value
            astore 4 /* values */
        start local 4 // jdk.vm.ci.meta.Value[] values
         1: .line 223
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         2: goto 7
         3: .line 224
      StackMap locals: jdk.vm.ci.meta.Value[] int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            aload 2 /* live */
            iload 5 /* i */
            iaload
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.intervalFor:(I)Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
            astore 6 /* interval */
        start local 6 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval interval
         4: .line 225
            aload 0 /* this */
            aload 1 /* instruction */
            aload 6 /* interval */
            aload 3 /* mode */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.valueAtBlockBoundary:(Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)Ljdk/vm/ci/meta/Value;
            astore 7 /* val */
        start local 7 // jdk.vm.ci.meta.Value val
         5: .line 226
            aload 4 /* values */
            iload 5 /* i */
            aload 7 /* val */
            aastore
        end local 7 // jdk.vm.ci.meta.Value val
        end local 6 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval interval
         6: .line 223
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 5 /* i */
            aload 2 /* live */
            arraylength
            if_icmplt 3
        end local 5 // int i
         8: .line 228
            aload 4 /* values */
            areturn
        end local 4 // jdk.vm.ci.meta.Value[] values
        end local 3 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
        end local 2 // int[] live
        end local 1 // org.graalvm.compiler.lir.LIRInstruction instruction
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;
            0    9     1  instruction  Lorg/graalvm/compiler/lir/LIRInstruction;
            0    9     2         live  [I
            0    9     3         mode  Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            1    9     4       values  [Ljdk/vm/ci/meta/Value;
            2    8     5            i  I
            4    6     6     interval  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
            5    6     7          val  Ljdk/vm/ci/meta/Value;
    MethodParameters:
             Name  Flags
      instruction  
      live         
      mode         

  private jdk.vm.ci.meta.Value valueAtBlockBoundary(org.graalvm.compiler.lir.LIRInstruction, org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval, org.graalvm.compiler.lir.LIRInstruction$OperandMode);
    descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)Ljdk/vm/ci/meta/Value;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
        start local 1 // org.graalvm.compiler.lir.LIRInstruction instruction
        start local 2 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval interval
        start local 3 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
         0: .line 232
            aload 3 /* mode */
            getstatic org.graalvm.compiler.lir.LIRInstruction$OperandMode.DEF:Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            if_acmpne 2
            aload 2 /* interval */
            ifnonnull 2
         1: .line 234
            getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
            areturn
         2: .line 236
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.$assertionsDisabled:Z
            ifne 3
            aload 2 /* interval */
            ifnonnull 3
            new java.lang.AssertionError
            dup
            ldc "interval must exist"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 237
      StackMap locals:
      StackMap stack:
            aload 2 /* interval */
            aload 1 /* instruction */
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
            aload 3 /* mode */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval.getSplitChildAtOpIdOrNull:(ILorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
            astore 4 /* splitInterval */
        start local 4 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval splitInterval
         4: .line 238
            aload 4 /* splitInterval */
            ifnonnull 7
         5: .line 239
            getstatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.$assertionsDisabled:Z
            ifne 6
            aload 3 /* mode */
            getstatic org.graalvm.compiler.lir.LIRInstruction$OperandMode.DEF:Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            if_acmpeq 6
            new java.lang.AssertionError
            dup
            ldc "Not split child at %d for interval %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* instruction */
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            aload 2 /* interval */
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         6: .line 241
      StackMap locals: org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval
      StackMap stack:
            getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
            areturn
         7: .line 244
      StackMap locals:
      StackMap stack:
            aload 4 /* splitInterval */
            aload 1 /* instruction */
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval.inMemoryAt:(I)Z
            ifeq 9
            aload 4 /* splitInterval */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval.location:()Ljdk/vm/ci/meta/AllocatableValue;
            invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 9
         8: .line 245
            new org.graalvm.compiler.lir.alloc.trace.ShadowedRegisterValue
            dup
            aload 4 /* splitInterval */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval.location:()Ljdk/vm/ci/meta/AllocatableValue;
            checkcast jdk.vm.ci.code.RegisterValue
            aload 4 /* splitInterval */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval.spillSlot:()Ljdk/vm/ci/meta/AllocatableValue;
            invokespecial org.graalvm.compiler.lir.alloc.trace.ShadowedRegisterValue.<init>:(Ljdk/vm/ci/code/RegisterValue;Ljdk/vm/ci/meta/AllocatableValue;)V
            areturn
         9: .line 247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* instruction */
            aload 4 /* splitInterval */
            aload 3 /* mode */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.getLocation:(Lorg/graalvm/compiler/lir/LIRInstruction;Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)Ljdk/vm/ci/meta/Value;
            areturn
        end local 4 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval splitInterval
        end local 3 // org.graalvm.compiler.lir.LIRInstruction$OperandMode mode
        end local 2 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval interval
        end local 1 // org.graalvm.compiler.lir.LIRInstruction instruction
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   10     0           this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;
            0   10     1    instruction  Lorg/graalvm/compiler/lir/LIRInstruction;
            0   10     2       interval  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
            0   10     3           mode  Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            4   10     4  splitInterval  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
    MethodParameters:
             Name  Flags
      instruction  
      interval     
      mode         

  private boolean assignLocations(org.graalvm.compiler.lir.LIRInstruction, java.util.ArrayList<org.graalvm.compiler.lir.LIRInstruction>, );
    descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;Ljava/util/ArrayList;I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
        start local 1 // org.graalvm.compiler.lir.LIRInstruction op
        start local 2 // java.util.ArrayList instructions
        start local 3 // int j
         0: .line 275
            getstatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.$assertionsDisabled:Z
            ifne 2
            aload 1 /* op */
            ifnull 1
            aload 2 /* instructions */
            iload 3 /* j */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            aload 1 /* op */
            if_acmpeq 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 278
      StackMap locals:
      StackMap stack:
            aload 1 /* op */
            invokestatic org.graalvm.compiler.lir.StandardOp$MoveOp.isMoveOp:(Lorg/graalvm/compiler/lir/LIRInstruction;)Z
            ifeq 7
         3: .line 279
            aload 1 /* op */
            invokestatic org.graalvm.compiler.lir.StandardOp$MoveOp.asMoveOp:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/StandardOp$MoveOp;
            invokeinterface org.graalvm.compiler.lir.StandardOp$MoveOp.getResult:()Ljdk/vm/ci/meta/AllocatableValue;
            astore 4 /* result */
        start local 4 // jdk.vm.ci.meta.AllocatableValue result
         4: .line 280
            aload 4 /* result */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVariable:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 7
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            aload 4 /* result */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.asVariable:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            aload 1 /* op */
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
            getstatic org.graalvm.compiler.lir.LIRInstruction$OperandMode.DEF:Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.isMaterialized:(Lorg/graalvm/compiler/lir/Variable;ILorg/graalvm/compiler/lir/LIRInstruction$OperandMode;)Z
            ifeq 7
         5: .line 286
            aload 2 /* instructions */
            iload 3 /* j */
            aconst_null
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 287
            iconst_1
            ireturn
        end local 4 // jdk.vm.ci.meta.AllocatableValue result
         7: .line 291
      StackMap locals:
      StackMap stack:
            aload 1 /* op */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.assignProc:Lorg/graalvm/compiler/lir/InstructionValueProcedure;
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachInput:(Lorg/graalvm/compiler/lir/InstructionValueProcedure;)V
         8: .line 292
            aload 1 /* op */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.assignProc:Lorg/graalvm/compiler/lir/InstructionValueProcedure;
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachAlive:(Lorg/graalvm/compiler/lir/InstructionValueProcedure;)V
         9: .line 293
            aload 1 /* op */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.assignProc:Lorg/graalvm/compiler/lir/InstructionValueProcedure;
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachTemp:(Lorg/graalvm/compiler/lir/InstructionValueProcedure;)V
        10: .line 294
            aload 1 /* op */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.assignProc:Lorg/graalvm/compiler/lir/InstructionValueProcedure;
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachOutput:(Lorg/graalvm/compiler/lir/InstructionValueProcedure;)V
        11: .line 297
            aload 1 /* op */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.debugInfoValueProc:Lorg/graalvm/compiler/lir/InstructionValueProcedure;
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.forEachState:(Lorg/graalvm/compiler/lir/InstructionValueProcedure;)V
        12: .line 300
            aload 1 /* op */
            invokestatic org.graalvm.compiler.lir.StandardOp$ValueMoveOp.isValueMoveOp:(Lorg/graalvm/compiler/lir/LIRInstruction;)Z
            ifeq 19
        13: .line 301
            aload 1 /* op */
            invokestatic org.graalvm.compiler.lir.StandardOp$ValueMoveOp.asValueMoveOp:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/StandardOp$ValueMoveOp;
            astore 4 /* move */
        start local 4 // org.graalvm.compiler.lir.StandardOp$ValueMoveOp move
        14: .line 302
            aload 4 /* move */
            invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getInput:()Ljdk/vm/ci/meta/AllocatableValue;
            aload 4 /* move */
            invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getResult:()Ljdk/vm/ci/meta/AllocatableValue;
            invokevirtual jdk.vm.ci.meta.AllocatableValue.equals:(Ljava/lang/Object;)Z
            ifeq 17
        15: .line 303
            aload 2 /* instructions */
            iload 3 /* j */
            aconst_null
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 304
            iconst_1
            ireturn
        17: .line 306
      StackMap locals: org.graalvm.compiler.lir.StandardOp$ValueMoveOp
      StackMap stack:
            aload 4 /* move */
            invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getInput:()Ljdk/vm/ci/meta/AllocatableValue;
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isStackSlotValue:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 19
            aload 4 /* move */
            invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getResult:()Ljdk/vm/ci/meta/AllocatableValue;
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isStackSlotValue:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 19
        18: .line 308
            aload 2 /* instructions */
            iload 3 /* j */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.spillMoveFactory:Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
            aload 4 /* move */
            invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getResult:()Ljdk/vm/ci/meta/AllocatableValue;
            aload 4 /* move */
            invokeinterface org.graalvm.compiler.lir.StandardOp$ValueMoveOp.getInput:()Ljdk/vm/ci/meta/AllocatableValue;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory.createStackMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/LIRInstruction;
            invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        end local 4 // org.graalvm.compiler.lir.StandardOp$ValueMoveOp move
        19: .line 311
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // int j
        end local 2 // java.util.ArrayList instructions
        end local 1 // org.graalvm.compiler.lir.LIRInstruction op
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0          this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;
            0   20     1            op  Lorg/graalvm/compiler/lir/LIRInstruction;
            0   20     2  instructions  Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;
            0   20     3             j  I
            4    7     4        result  Ljdk/vm/ci/meta/AllocatableValue;
           14   19     4          move  Lorg/graalvm/compiler/lir/StandardOp$ValueMoveOp;
    Signature: (Lorg/graalvm/compiler/lir/LIRInstruction;Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;I)Z
    MethodParameters:
              Name  Flags
      op            
      instructions  
      j             

  private void assign();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=8, args_size=1
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
         0: .line 316
            aconst_null
            astore 1
            aconst_null
            astore 2
         1: aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
            ldc "assign locations"
            invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/Indent;
            astore 3 /* indent */
        start local 3 // org.graalvm.compiler.debug.Indent indent
         2: .line 317
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.sortedBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 6
      StackMap locals: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent 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 318
            aload 0 /* this */
            aload 4 /* block */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner.assignBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)V
        end local 4 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
         5: .line 317
            iinc 5 1
      StackMap locals:
      StackMap stack:
         6: iload 5
            iload 6
            if_icmplt 3
         7: .line 320
            aload 3 /* indent */
            ifnull 13
            aload 3 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
            goto 13
      StackMap locals: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
      StackMap stack: java.lang.Throwable
         8: astore 1
            aload 3 /* indent */
            ifnull 9
            aload 3 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        end local 3 // org.graalvm.compiler.debug.Indent indent
      StackMap locals:
      StackMap stack:
         9: aload 1
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: astore 2
            aload 1
            ifnonnull 11
            aload 2
            astore 1
            goto 12
      StackMap locals:
      StackMap stack:
        11: aload 1
            aload 2
            if_acmpeq 12
            aload 1
            aload 2
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        12: aload 1
            athrow
        13: .line 321
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanAssignLocationsPhase$Assigner;
            2    9     3  indent  Lorg/graalvm/compiler/debug/Indent;
            4    5     4   block  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
      Exception table:
        from    to  target  type
           2     7       8  any
           1    10      10  any
}
SourceFile: "TraceLinearScanAssignLocationsPhase.java"
NestHost: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase
InnerClasses:
  public final OperandFlag = org.graalvm.compiler.lir.LIRInstruction$OperandFlag of org.graalvm.compiler.lir.LIRInstruction
  public final OperandMode = org.graalvm.compiler.lir.LIRInstruction$OperandMode of org.graalvm.compiler.lir.LIRInstruction
  public JumpOp = org.graalvm.compiler.lir.StandardOp$JumpOp of org.graalvm.compiler.lir.StandardOp
  public final LabelOp = org.graalvm.compiler.lir.StandardOp$LabelOp of org.graalvm.compiler.lir.StandardOp
  public abstract MoveOp = org.graalvm.compiler.lir.StandardOp$MoveOp of org.graalvm.compiler.lir.StandardOp
  public abstract ValueMoveOp = org.graalvm.compiler.lir.StandardOp$ValueMoveOp of org.graalvm.compiler.lir.StandardOp
  private final Assigner = org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner of org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase
  org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner$1
  org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanAssignLocationsPhase$Assigner$2
  public final TraceLinearScan = org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan of org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase
  public abstract MoveFactory = org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory of org.graalvm.compiler.lir.gen.LIRGeneratorTool