public class org.aspectj.apache.bcel.generic.InstructionBranch extends org.aspectj.apache.bcel.generic.Instruction implements org.aspectj.apache.bcel.generic.InstructionTargeter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.aspectj.apache.bcel.generic.InstructionBranch
  super_class: org.aspectj.apache.bcel.generic.Instruction
{
  private static final int UNSET;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  protected int targetIndex;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected org.aspectj.apache.bcel.generic.InstructionHandle targetInstruction;
    descriptor: Lorg/aspectj/apache/bcel/generic/InstructionHandle;
    flags: (0x0004) ACC_PROTECTED

  protected int positionOfThisInstruction;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  public void <init>(short, org.aspectj.apache.bcel.generic.InstructionHandle);
    descriptor: (SLorg/aspectj/apache/bcel/generic/InstructionHandle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
        start local 1 // short opcode
        start local 2 // org.aspectj.apache.bcel.generic.InstructionHandle target
         0: .line 83
            aload 0 /* this */
            iload 1 /* opcode */
            invokespecial org.aspectj.apache.bcel.generic.Instruction.<init>:(S)V
         1: .line 74
            aload 0 /* this */
            iconst_m1
            putfield org.aspectj.apache.bcel.generic.InstructionBranch.targetIndex:I
         2: .line 84
            aload 0 /* this */
            aload 2 /* target */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionBranch.setTarget:(Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
         3: .line 85
            return
        end local 2 // org.aspectj.apache.bcel.generic.InstructionHandle target
        end local 1 // short opcode
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            0    4     1  opcode  S
            0    4     2  target  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
    MethodParameters:
        Name  Flags
      opcode  
      target  

  public void <init>(short, int);
    descriptor: (SI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
        start local 1 // short opcode
        start local 2 // int index
         0: .line 88
            aload 0 /* this */
            iload 1 /* opcode */
            invokespecial org.aspectj.apache.bcel.generic.Instruction.<init>:(S)V
         1: .line 74
            aload 0 /* this */
            iconst_m1
            putfield org.aspectj.apache.bcel.generic.InstructionBranch.targetIndex:I
         2: .line 89
            aload 0 /* this */
            iload 2 /* index */
            putfield org.aspectj.apache.bcel.generic.InstructionBranch.targetIndex:I
         3: .line 90
            return
        end local 2 // int index
        end local 1 // short opcode
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            0    4     1  opcode  S
            0    4     2   index  I
    MethodParameters:
        Name  Flags
      opcode  
      index   

  public void <init>(short);
    descriptor: (S)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
        start local 1 // short opcode
         0: .line 93
            aload 0 /* this */
            iload 1 /* opcode */
            invokespecial org.aspectj.apache.bcel.generic.Instruction.<init>:(S)V
         1: .line 74
            aload 0 /* this */
            iconst_m1
            putfield org.aspectj.apache.bcel.generic.InstructionBranch.targetIndex:I
         2: .line 94
            return
        end local 1 // short opcode
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            0    3     1  opcode  S
    MethodParameters:
        Name  Flags
      opcode  

  public void dump(java.io.DataOutputStream);
    descriptor: (Ljava/io/DataOutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
        start local 1 // java.io.DataOutputStream out
         0: .line 97
            aload 0 /* this */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionBranch.getTargetOffset:()I
            istore 2 /* target */
        start local 2 // int target
         1: .line 99
            iload 2 /* target */
            invokestatic java.lang.Math.abs:(I)I
            sipush 32767
            if_icmplt 5
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            sipush 200
            if_icmpeq 5
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            sipush 201
            if_icmpeq 5
         2: .line 100
            new org.aspectj.apache.bcel.generic.ClassGenException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Branch target offset too large for short.  Instruction: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionBranch.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.toUpperCase:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 101
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 100
            invokespecial org.aspectj.apache.bcel.generic.ClassGenException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 104
      StackMap locals: int
      StackMap stack:
            aload 1 /* out */
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            invokevirtual java.io.DataOutputStream.writeByte:(I)V
         6: .line 106
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            tableswitch { // 153 - 201
                  153: 9
                  154: 9
                  155: 9
                  156: 9
                  157: 9
                  158: 9
                  159: 9
                  160: 9
                  161: 9
                  162: 9
                  163: 9
                  164: 9
                  165: 9
                  166: 9
                  167: 9
                  168: 9
                  169: 11
                  170: 11
                  171: 11
                  172: 11
                  173: 11
                  174: 11
                  175: 11
                  176: 11
                  177: 11
                  178: 11
                  179: 11
                  180: 11
                  181: 11
                  182: 11
                  183: 11
                  184: 11
                  185: 11
                  186: 11
                  187: 11
                  188: 11
                  189: 11
                  190: 11
                  191: 11
                  192: 11
                  193: 11
                  194: 11
                  195: 11
                  196: 11
                  197: 11
                  198: 9
                  199: 9
                  200: 7
                  201: 7
              default: 11
          }
         7: .line 110
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            iload 2 /* target */
            invokevirtual java.io.DataOutputStream.writeInt:(I)V
         8: .line 111
            goto 12
         9: .line 131
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            iload 2 /* target */
            invokevirtual java.io.DataOutputStream.writeShort:(I)V
        10: .line 132
            goto 12
        11: .line 135
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Don't know how to write out "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionBranch.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.toUpperCase:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 138
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int target
        end local 1 // java.io.DataOutputStream out
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0    this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            0   13     1     out  Ljava/io/DataOutputStream;
            1   13     2  target  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  protected int getTargetOffset();
    descriptor: ()I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
         0: .line 141
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            ifnonnull 2
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetIndex:I
            iconst_m1
            if_icmpne 2
         1: .line 142
            new org.aspectj.apache.bcel.generic.ClassGenException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Target of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            iconst_1
            invokespecial org.aspectj.apache.bcel.generic.Instruction.toString:(Z)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " is unknown"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.aspectj.apache.bcel.generic.ClassGenException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 145
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            ifnonnull 4
         3: .line 146
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetIndex:I
            ireturn
         4: .line 148
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getPosition:()I
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.positionOfThisInstruction:I
            isub
            ireturn
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;

  protected int updatePosition(int, int);
    descriptor: (II)I
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
        start local 1 // int offset
        start local 2 // int max_offset
         0: .line 162
            aload 0 /* this */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionBranch.getTargetOffset:()I
            istore 3 /* i */
        start local 3 // int i
         1: .line 164
            aload 0 /* this */
            dup
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.positionOfThisInstruction:I
            iload 1 /* offset */
            iadd
            putfield org.aspectj.apache.bcel.generic.InstructionBranch.positionOfThisInstruction:I
         2: .line 166
            iload 3 /* i */
            invokestatic java.lang.Math.abs:(I)I
            sipush 32767
            iload 2 /* max_offset */
            isub
            if_icmplt 12
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            sipush 201
            if_icmpeq 12
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            sipush 200
            if_icmpeq 12
         3: .line 168
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            sipush 168
            if_icmpeq 4
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            sipush 167
            if_icmpne 9
         4: .line 169
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            sipush 168
            if_icmpne 7
         5: .line 170
            aload 0 /* this */
            sipush 201
            putfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
         6: .line 171
            goto 8
         7: .line 172
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            sipush 200
            putfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
         8: .line 174
      StackMap locals:
      StackMap stack:
            iconst_2
            ireturn
         9: .line 176
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unable to pack method, jump (with opcode="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ") is too far: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 177
            iload 3 /* i */
            invokestatic java.lang.Math.abs:(I)I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 176
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 181
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // int i
        end local 2 // int max_offset
        end local 1 // int offset
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            0   13     1      offset  I
            0   13     2  max_offset  I
            1   13     3           i  I
    MethodParameters:
            Name  Flags
      offset      
      max_offset  

  public java.lang.String toString(boolean);
    descriptor: (Z)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
        start local 1 // boolean verbose
         0: .line 191
            aload 0 /* this */
            iload 1 /* verbose */
            invokespecial org.aspectj.apache.bcel.generic.Instruction.toString:(Z)Ljava/lang/String;
            astore 2 /* s */
        start local 2 // java.lang.String s
         1: .line 192
            ldc "null"
            astore 3 /* t */
        start local 3 // java.lang.String t
         2: .line 194
            iload 1 /* verbose */
            ifeq 12
         3: .line 195
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            ifnull 15
         4: .line 196
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getInstruction:()Lorg/aspectj/apache/bcel/generic/Instruction;
            aload 0 /* this */
            if_acmpne 7
         5: .line 197
            ldc "<points to itself>"
            astore 3 /* t */
         6: .line 198
            goto 15
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
         7: aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getInstruction:()Lorg/aspectj/apache/bcel/generic/Instruction;
            ifnonnull 10
         8: .line 199
            ldc "<null destination>"
            astore 3 /* t */
         9: .line 200
            goto 15
        10: .line 201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getInstruction:()Lorg/aspectj/apache/bcel/generic/Instruction;
            iconst_0
            invokevirtual org.aspectj.apache.bcel.generic.Instruction.toString:(Z)Ljava/lang/String;
            astore 3 /* t */
        11: .line 204
            goto 15
        12: .line 205
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            ifnull 15
        13: .line 206
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionBranch.getTargetOffset:()I
            putfield org.aspectj.apache.bcel.generic.InstructionBranch.targetIndex:I
        14: .line 207
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetIndex:I
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.positionOfThisInstruction:I
            iadd
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* t */
        15: .line 211
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 2 /* s */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " -> "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* t */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.String t
        end local 2 // java.lang.String s
        end local 1 // boolean verbose
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            0   16     1  verbose  Z
            1   16     2        s  Ljava/lang/String;
            2   16     3        t  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      verbose  

  public final int getIndex();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
         0: .line 218
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetIndex:I
            ireturn
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;

  public org.aspectj.apache.bcel.generic.InstructionHandle getTarget();
    descriptor: ()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
         0: .line 225
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            areturn
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;

  public void setTarget(org.aspectj.apache.bcel.generic.InstructionHandle);
    descriptor: (Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
        start local 1 // org.aspectj.apache.bcel.generic.InstructionHandle target
         0: .line 234
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            aload 1 /* target */
            aload 0 /* this */
            invokestatic org.aspectj.apache.bcel.generic.InstructionBranch.notifyTarget:(Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
         1: .line 235
            aload 0 /* this */
            aload 1 /* target */
            putfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
         2: .line 236
            return
        end local 1 // org.aspectj.apache.bcel.generic.InstructionHandle target
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            0    3     1  target  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
    MethodParameters:
        Name  Flags
      target  

  static final void notifyTarget(org.aspectj.apache.bcel.generic.InstructionHandle, org.aspectj.apache.bcel.generic.InstructionHandle, org.aspectj.apache.bcel.generic.InstructionTargeter);
    descriptor: (Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.aspectj.apache.bcel.generic.InstructionHandle oldHandle
        start local 1 // org.aspectj.apache.bcel.generic.InstructionHandle newHandle
        start local 2 // org.aspectj.apache.bcel.generic.InstructionTargeter t
         0: .line 242
            aload 0 /* oldHandle */
            ifnull 2
         1: .line 243
            aload 0 /* oldHandle */
            aload 2 /* t */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.removeTargeter:(Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
         2: .line 245
      StackMap locals:
      StackMap stack:
            aload 1 /* newHandle */
            ifnull 4
         3: .line 246
            aload 1 /* newHandle */
            aload 2 /* t */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.addTargeter:(Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
         4: .line 248
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.aspectj.apache.bcel.generic.InstructionTargeter t
        end local 1 // org.aspectj.apache.bcel.generic.InstructionHandle newHandle
        end local 0 // org.aspectj.apache.bcel.generic.InstructionHandle oldHandle
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0  oldHandle  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            0    5     1  newHandle  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            0    5     2          t  Lorg/aspectj/apache/bcel/generic/InstructionTargeter;
    MethodParameters:
           Name  Flags
      oldHandle  
      newHandle  
      t          

  public void updateTarget(org.aspectj.apache.bcel.generic.InstructionHandle, org.aspectj.apache.bcel.generic.InstructionHandle);
    descriptor: (Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
        start local 1 // org.aspectj.apache.bcel.generic.InstructionHandle oldHandle
        start local 2 // org.aspectj.apache.bcel.generic.InstructionHandle newHandle
         0: .line 258
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            aload 1 /* oldHandle */
            if_acmpne 3
         1: .line 259
            aload 0 /* this */
            aload 2 /* newHandle */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionBranch.setTarget:(Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
         2: .line 260
            goto 4
         3: .line 261
      StackMap locals:
      StackMap stack:
            new org.aspectj.apache.bcel.generic.ClassGenException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Not targeting "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* oldHandle */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ", but "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.aspectj.apache.bcel.generic.ClassGenException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 263
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.aspectj.apache.bcel.generic.InstructionHandle newHandle
        end local 1 // org.aspectj.apache.bcel.generic.InstructionHandle oldHandle
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            0    5     1  oldHandle  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            0    5     2  newHandle  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
    MethodParameters:
           Name  Flags
      oldHandle  
      newHandle  

  public boolean containsTarget(org.aspectj.apache.bcel.generic.InstructionHandle);
    descriptor: (Lorg/aspectj/apache/bcel/generic/InstructionHandle;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
        start local 1 // org.aspectj.apache.bcel.generic.InstructionHandle ih
         0: .line 269
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            aload 1 /* ih */
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // org.aspectj.apache.bcel.generic.InstructionHandle ih
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            0    2     1    ih  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
    MethodParameters:
      Name  Flags
      ih    

  void dispose();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
         0: .line 276
            aload 0 /* this */
            aconst_null
            invokevirtual org.aspectj.apache.bcel.generic.InstructionBranch.setTarget:(Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
         1: .line 277
            aload 0 /* this */
            iconst_m1
            putfield org.aspectj.apache.bcel.generic.InstructionBranch.targetIndex:I
         2: .line 278
            aload 0 /* this */
            iconst_m1
            putfield org.aspectj.apache.bcel.generic.InstructionBranch.positionOfThisInstruction:I
         3: .line 279
            return
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;

  public org.aspectj.apache.bcel.generic.Type getType(org.aspectj.apache.bcel.classfile.ConstantPool);
    descriptor: (Lorg/aspectj/apache/bcel/classfile/ConstantPool;)Lorg/aspectj/apache/bcel/generic/Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
        start local 1 // org.aspectj.apache.bcel.classfile.ConstantPool cp
         0: .line 282
            getstatic org.aspectj.apache.bcel.Constants.instFlags:[J
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            laload
            ldc 16384
            land
            lconst_0
            lcmp
            ifeq 2
         1: .line 283
            new org.aspectj.apache.bcel.generic.ReturnaddressType
            dup
            aload 0 /* this */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionBranch.physicalSuccessor:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            invokespecial org.aspectj.apache.bcel.generic.ReturnaddressType.<init>:(Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
            areturn
         2: .line 285
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cp */
            invokespecial org.aspectj.apache.bcel.generic.Instruction.getType:(Lorg/aspectj/apache/bcel/classfile/ConstantPool;)Lorg/aspectj/apache/bcel/generic/Type;
            areturn
        end local 1 // org.aspectj.apache.bcel.classfile.ConstantPool cp
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            0    3     1    cp  Lorg/aspectj/apache/bcel/classfile/ConstantPool;
    MethodParameters:
      Name  Flags
      cp    

  public org.aspectj.apache.bcel.generic.InstructionHandle physicalSuccessor();
    descriptor: ()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
         0: .line 296
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.targetInstruction:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 1 /* ih */
        start local 1 // org.aspectj.apache.bcel.generic.InstructionHandle ih
         1: .line 299
            goto 3
         2: .line 300
      StackMap locals: org.aspectj.apache.bcel.generic.InstructionHandle
      StackMap stack:
            aload 1 /* ih */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getPrev:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 1 /* ih */
         3: .line 299
      StackMap locals:
      StackMap stack:
            aload 1 /* ih */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getPrev:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            ifnonnull 2
         4: .line 304
            goto 6
         5: .line 305
      StackMap locals:
      StackMap stack:
            aload 1 /* ih */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getNext:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 1 /* ih */
         6: .line 304
      StackMap locals:
      StackMap stack:
            aload 1 /* ih */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getInstruction:()Lorg/aspectj/apache/bcel/generic/Instruction;
            aload 0 /* this */
            if_acmpne 5
         7: .line 308
            aload 1 /* ih */
            astore 2 /* toThis */
        start local 2 // org.aspectj.apache.bcel.generic.InstructionHandle toThis
         8: .line 310
            goto 12
         9: .line 311
      StackMap locals: org.aspectj.apache.bcel.generic.InstructionHandle
      StackMap stack:
            aload 1 /* ih */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getNext:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 1 /* ih */
        10: .line 312
            aload 1 /* ih */
            ifnull 12
            aload 1 /* ih */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getInstruction:()Lorg/aspectj/apache/bcel/generic/Instruction;
            aload 0 /* this */
            if_acmpne 12
        11: .line 313
            new java.lang.RuntimeException
            dup
            ldc "physicalSuccessor() called on a shared JsrInstruction."
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 310
      StackMap locals:
      StackMap stack:
            aload 1 /* ih */
            ifnonnull 9
        13: .line 318
            aload 2 /* toThis */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getNext:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            areturn
        end local 2 // org.aspectj.apache.bcel.generic.InstructionHandle toThis
        end local 1 // org.aspectj.apache.bcel.generic.InstructionHandle ih
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            1   14     1      ih  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            8   14     2  toThis  Lorg/aspectj/apache/bcel/generic/InstructionHandle;

  public boolean isIfInstruction();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
         0: .line 322
            getstatic org.aspectj.apache.bcel.Constants.instFlags:[J
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            laload
            ldc 8192
            land
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
        start local 1 // java.lang.Object other
         0: .line 330
            aload 0 /* this */
            aload 1 /* other */
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.Object other
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            0    2     1  other  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      other  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
         0: .line 334
            bipush 17
            istore 1 /* result */
        start local 1 // int result
         1: .line 335
            aload 0 /* this */
            getfield org.aspectj.apache.bcel.generic.InstructionBranch.opcode:S
            bipush 37
            imul
            iload 1 /* result */
            iadd
            istore 1 /* result */
         2: .line 336
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // org.aspectj.apache.bcel.generic.InstructionBranch this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
            1    3     1  result  I
}
SourceFile: "InstructionBranch.java"