class org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6 implements org.graalvm.compiler.lir.ValueProcedure
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6
  super_class: java.lang.Object
{
  final org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser this$1;
    descriptor: Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private final boolean val$hintAtDef;
    descriptor: Z
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final jdk.vm.ci.meta.Value val$targetValue;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final org.graalvm.compiler.lir.LIRInstruction val$op;
    descriptor: Lorg/graalvm/compiler/lir/LIRInstruction;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser, boolean, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction);
    descriptor: (Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;ZLjdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6 this
         0: .line 385
            aload 0 /* this */
            aload 1
            putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.this$1:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
            aload 0 /* this */
            iload 2
            putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$hintAtDef:Z
            aload 0 /* this */
            aload 3
            putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$targetValue:Ljdk/vm/ci/meta/Value;
            aload 0 /* this */
            aload 4
            putfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$op:Lorg/graalvm/compiler/lir/LIRInstruction;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser$6;
    MethodParameters:
                 Name  Flags
      this$0           final
      val$hintAtDef    final
      val$targetValue  final
      val$op           final

  public jdk.vm.ci.meta.Value doValue(jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRInstruction$OperandMode, java.util.EnumSet<org.graalvm.compiler.lir.LIRInstruction$OperandFlag>);
    descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6 this
        start local 1 // jdk.vm.ci.meta.Value registerHint
        start local 2 // org.graalvm.compiler.lir.LIRInstruction$OperandMode valueMode
        start local 3 // java.util.EnumSet valueFlags
         0: .line 388
            aload 1 /* registerHint */
            invokestatic org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase.isVariableOrRegister:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 20
         1: .line 395
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$hintAtDef:Z
            ifeq 5
         2: .line 396
            aload 1 /* registerHint */
            checkcast jdk.vm.ci.meta.AllocatableValue
            astore 4 /* fromValue */
        start local 4 // jdk.vm.ci.meta.AllocatableValue fromValue
         3: .line 397
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$targetValue:Ljdk/vm/ci/meta/Value;
            checkcast jdk.vm.ci.meta.AllocatableValue
            astore 5 /* toValue */
        start local 5 // jdk.vm.ci.meta.AllocatableValue toValue
         4: .line 398
            goto 7
        end local 5 // jdk.vm.ci.meta.AllocatableValue toValue
        end local 4 // jdk.vm.ci.meta.AllocatableValue fromValue
         5: .line 399
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$targetValue:Ljdk/vm/ci/meta/Value;
            checkcast jdk.vm.ci.meta.AllocatableValue
            astore 4 /* fromValue */
        start local 4 // jdk.vm.ci.meta.AllocatableValue fromValue
         6: .line 400
            aload 1 /* registerHint */
            checkcast jdk.vm.ci.meta.AllocatableValue
            astore 5 /* toValue */
        start local 5 // jdk.vm.ci.meta.AllocatableValue toValue
         7: .line 402
      StackMap locals: jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.meta.AllocatableValue
      StackMap stack:
            ldc "addRegisterHint %s to %s"
            aload 4 /* fromValue */
            aload 5 /* toValue */
            invokestatic org.graalvm.compiler.debug.Debug.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         8: .line 405
            aload 5 /* toValue */
            invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 14
         9: .line 406
            aload 4 /* fromValue */
            invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 11
        10: .line 408
            aconst_null
            areturn
        11: .line 410
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.this$1:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
            aload 5 /* toValue */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser.getIntervalHint:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/IntervalHint;
            astore 7 /* from */
        start local 7 // org.graalvm.compiler.lir.alloc.trace.lsra.IntervalHint from
        12: .line 411
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.this$1:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            aload 4 /* fromValue */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getOrCreateInterval:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
            astore 6 /* to */
        start local 6 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval to
        13: .line 412
            goto 16
        end local 7 // org.graalvm.compiler.lir.alloc.trace.lsra.IntervalHint from
        end local 6 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval to
        14: .line 413
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.this$1:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser.allocator:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanPhase$TraceLinearScan;
            aload 5 /* toValue */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan.getOrCreateInterval:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
            astore 6 /* to */
        start local 6 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval to
        15: .line 414
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.this$1:Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser;
            aload 4 /* fromValue */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser.getIntervalHint:(Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/alloc/trace/lsra/IntervalHint;
            astore 7 /* from */
        start local 7 // org.graalvm.compiler.lir.alloc.trace.lsra.IntervalHint from
        16: .line 417
      StackMap locals: org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval org.graalvm.compiler.lir.alloc.trace.lsra.IntervalHint
      StackMap stack:
            aload 6 /* to */
            aload 7 /* from */
            invokevirtual org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval.setLocationHint:(Lorg/graalvm/compiler/lir/alloc/trace/lsra/IntervalHint;)V
        17: .line 418
            invokestatic org.graalvm.compiler.debug.Debug.isLogEnabled:()Z
            ifeq 19
        18: .line 419
            ldc "operation at opId %d: added hint from interval %s to %s"
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6.val$op:Lorg/graalvm/compiler/lir/LIRInstruction;
            invokevirtual org.graalvm.compiler.lir.LIRInstruction.id:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 7 /* from */
            aload 6 /* to */
            invokestatic org.graalvm.compiler.debug.Debug.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        19: .line 422
      StackMap locals:
      StackMap stack:
            aload 1 /* registerHint */
            areturn
        end local 7 // org.graalvm.compiler.lir.alloc.trace.lsra.IntervalHint from
        end local 6 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceInterval to
        end local 5 // jdk.vm.ci.meta.AllocatableValue toValue
        end local 4 // jdk.vm.ci.meta.AllocatableValue fromValue
        20: .line 424
      StackMap locals: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6 jdk.vm.ci.meta.Value org.graalvm.compiler.lir.LIRInstruction$OperandMode java.util.EnumSet
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.util.EnumSet valueFlags
        end local 2 // org.graalvm.compiler.lir.LIRInstruction$OperandMode valueMode
        end local 1 // jdk.vm.ci.meta.Value registerHint
        end local 0 // org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6 this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   21     0          this  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceLinearScanLifetimeAnalysisPhase$Analyser$6;
            0   21     1  registerHint  Ljdk/vm/ci/meta/Value;
            0   21     2     valueMode  Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;
            0   21     3    valueFlags  Ljava/util/EnumSet<Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;>;
            3    5     4     fromValue  Ljdk/vm/ci/meta/AllocatableValue;
            6   20     4     fromValue  Ljdk/vm/ci/meta/AllocatableValue;
            4    5     5       toValue  Ljdk/vm/ci/meta/AllocatableValue;
            7   20     5       toValue  Ljdk/vm/ci/meta/AllocatableValue;
           13   14     6            to  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
           15   20     6            to  Lorg/graalvm/compiler/lir/alloc/trace/lsra/TraceInterval;
           12   14     7          from  Lorg/graalvm/compiler/lir/alloc/trace/lsra/IntervalHint;
           16   20     7          from  Lorg/graalvm/compiler/lir/alloc/trace/lsra/IntervalHint;
    Signature: (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
      registerHint  
      valueMode     
      valueFlags    
}
SourceFile: "TraceLinearScanLifetimeAnalysisPhase.java"
EnclosingMethod: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser.addRegisterHint:(Lorg/graalvm/compiler/lir/LIRInstruction;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRInstruction$OperandMode;Ljava/util/EnumSet;Z)V
NestHost: org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase
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 final Analyser = org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser of org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase
  org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanLifetimeAnalysisPhase$Analyser$6
  public final TraceLinearScan = org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase$TraceLinearScan of org.graalvm.compiler.lir.alloc.trace.lsra.TraceLinearScanPhase