class sun.jvm.hotspot.runtime.InterpreterFrameClosure implements sun.jvm.hotspot.interpreter.OffsetClosure
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.jvm.hotspot.runtime.InterpreterFrameClosure
  super_class: java.lang.Object
{
  private static final boolean DEBUG;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private sun.jvm.hotspot.runtime.Frame fr;
    descriptor: Lsun/jvm/hotspot/runtime/Frame;
    flags: (0x0002) ACC_PRIVATE

  private sun.jvm.hotspot.runtime.AddressVisitor f;
    descriptor: Lsun/jvm/hotspot/runtime/AddressVisitor;
    flags: (0x0002) ACC_PRIVATE

  private int maxLocals;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int maxStack;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  void <init>(sun.jvm.hotspot.runtime.Frame, int, int, sun.jvm.hotspot.runtime.AddressVisitor);
    descriptor: (Lsun/jvm/hotspot/runtime/Frame;IILsun/jvm/hotspot/runtime/AddressVisitor;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // sun.jvm.hotspot.runtime.InterpreterFrameClosure this
        start local 1 // sun.jvm.hotspot.runtime.Frame fr
        start local 2 // int maxLocals
        start local 3 // int maxStack
        start local 4 // sun.jvm.hotspot.runtime.AddressVisitor f
         0: .line 652
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 653
            aload 0 /* this */
            aload 1 /* fr */
            putfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.fr:Lsun/jvm/hotspot/runtime/Frame;
         2: .line 654
            aload 0 /* this */
            iload 2 /* maxLocals */
            putfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.maxLocals:I
         3: .line 655
            aload 0 /* this */
            iload 3 /* maxStack */
            putfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.maxStack:I
         4: .line 656
            aload 0 /* this */
            aload 4 /* f */
            putfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.f:Lsun/jvm/hotspot/runtime/AddressVisitor;
         5: .line 657
            return
        end local 4 // sun.jvm.hotspot.runtime.AddressVisitor f
        end local 3 // int maxStack
        end local 2 // int maxLocals
        end local 1 // sun.jvm.hotspot.runtime.Frame fr
        end local 0 // sun.jvm.hotspot.runtime.InterpreterFrameClosure this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lsun/jvm/hotspot/runtime/InterpreterFrameClosure;
            0    6     1         fr  Lsun/jvm/hotspot/runtime/Frame;
            0    6     2  maxLocals  I
            0    6     3   maxStack  I
            0    6     4          f  Lsun/jvm/hotspot/runtime/AddressVisitor;
    MethodParameters:
           Name  Flags
      fr         
      maxLocals  
      maxStack   
      f          

  public void offsetDo(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // sun.jvm.hotspot.runtime.InterpreterFrameClosure this
        start local 1 // int offset
         0: .line 667
            iload 1 /* offset */
            aload 0 /* this */
            getfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.maxLocals:I
            if_icmpge 6
         1: .line 668
            aload 0 /* this */
            getfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.fr:Lsun/jvm/hotspot/runtime/Frame;
            iload 1 /* offset */
            invokevirtual sun.jvm.hotspot.runtime.Frame.addressOfInterpreterFrameLocal:(I)Lsun/jvm/hotspot/debugger/Address;
            astore 2 /* addr */
        start local 2 // sun.jvm.hotspot.debugger.Address addr
         2: .line 669
            getstatic sun.jvm.hotspot.utilities.Assert.ASSERTS_ENABLED:Z
            ifeq 4
         3: .line 670
            aload 2 /* addr */
            aload 0 /* this */
            getfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.fr:Lsun/jvm/hotspot/runtime/Frame;
            invokevirtual sun.jvm.hotspot.runtime.Frame.getSP:()Lsun/jvm/hotspot/debugger/Address;
            invokestatic sun.jvm.hotspot.utilities.AddressOps.gte:(Lsun/jvm/hotspot/debugger/Address;Lsun/jvm/hotspot/debugger/Address;)Z
            ldc "must be inside the frame"
            invokestatic sun.jvm.hotspot.utilities.Assert.that:(ZLjava/lang/String;)V
         4: .line 675
      StackMap locals: sun.jvm.hotspot.debugger.Address
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.f:Lsun/jvm/hotspot/runtime/AddressVisitor;
            aload 2 /* addr */
            invokeinterface sun.jvm.hotspot.runtime.AddressVisitor.visitAddress:(Lsun/jvm/hotspot/debugger/Address;)V
         5: .line 676
            goto 13
        end local 2 // sun.jvm.hotspot.debugger.Address addr
         6: .line 677
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.fr:Lsun/jvm/hotspot/runtime/Frame;
            iload 1 /* offset */
            aload 0 /* this */
            getfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.maxLocals:I
            isub
            invokevirtual sun.jvm.hotspot.runtime.Frame.addressOfInterpreterFrameExpressionStackSlot:(I)Lsun/jvm/hotspot/debugger/Address;
            astore 2 /* addr */
        start local 2 // sun.jvm.hotspot.debugger.Address addr
         7: .line 685
            aload 0 /* this */
            getfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.fr:Lsun/jvm/hotspot/runtime/Frame;
            invokevirtual sun.jvm.hotspot.runtime.Frame.getInterpreterFrameExpressionStackDirection:()I
            ifle 10
         8: .line 686
            aload 2 /* addr */
            aload 0 /* this */
            getfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.fr:Lsun/jvm/hotspot/runtime/Frame;
            invokevirtual sun.jvm.hotspot.runtime.Frame.addressOfInterpreterFrameTOS:()Lsun/jvm/hotspot/debugger/Address;
            invokestatic sun.jvm.hotspot.utilities.AddressOps.lte:(Lsun/jvm/hotspot/debugger/Address;Lsun/jvm/hotspot/debugger/Address;)Z
            istore 3 /* inStack */
        start local 3 // boolean inStack
         9: .line 687
            goto 11
        end local 3 // boolean inStack
        10: .line 688
      StackMap locals: sun.jvm.hotspot.debugger.Address
      StackMap stack:
            aload 2 /* addr */
            aload 0 /* this */
            getfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.fr:Lsun/jvm/hotspot/runtime/Frame;
            invokevirtual sun.jvm.hotspot.runtime.Frame.addressOfInterpreterFrameTOS:()Lsun/jvm/hotspot/debugger/Address;
            invokestatic sun.jvm.hotspot.utilities.AddressOps.gte:(Lsun/jvm/hotspot/debugger/Address;Lsun/jvm/hotspot/debugger/Address;)Z
            istore 3 /* inStack */
        start local 3 // boolean inStack
        11: .line 690
      StackMap locals: int
      StackMap stack:
            iload 3 /* inStack */
            ifeq 13
        12: .line 694
            aload 0 /* this */
            getfield sun.jvm.hotspot.runtime.InterpreterFrameClosure.f:Lsun/jvm/hotspot/runtime/AddressVisitor;
            aload 2 /* addr */
            invokeinterface sun.jvm.hotspot.runtime.AddressVisitor.visitAddress:(Lsun/jvm/hotspot/debugger/Address;)V
        end local 3 // boolean inStack
        13: .line 699
      StackMap locals:
      StackMap stack:
            return
        end local 2 // sun.jvm.hotspot.debugger.Address addr
        end local 1 // int offset
        end local 0 // sun.jvm.hotspot.runtime.InterpreterFrameClosure this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lsun/jvm/hotspot/runtime/InterpreterFrameClosure;
            0   14     1   offset  I
            2    6     2     addr  Lsun/jvm/hotspot/debugger/Address;
            7   14     2     addr  Lsun/jvm/hotspot/debugger/Address;
            9   10     3  inStack  Z
           11   13     3  inStack  Z
    MethodParameters:
        Name  Flags
      offset  
}
SourceFile: "Frame.java"