abstract class com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode extends com.oracle.truffle.js.nodes.access.LocalVarIncNode
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode
  super_class: com.oracle.truffle.js.nodes.access.LocalVarIncNode
{
  protected void <init>(com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp, com.oracle.truffle.api.frame.FrameSlot, boolean, com.oracle.truffle.js.nodes.access.ScopeFrameNode, com.oracle.truffle.api.frame.FrameDescriptor);
    descriptor: (Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;Lcom/oracle/truffle/api/frame/FrameSlot;ZLcom/oracle/truffle/js/nodes/access/ScopeFrameNode;Lcom/oracle/truffle/api/frame/FrameDescriptor;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp op
        start local 2 // com.oracle.truffle.api.frame.FrameSlot frameSlot
        start local 3 // boolean hasTemporalDeadZone
        start local 4 // com.oracle.truffle.js.nodes.access.ScopeFrameNode scopeFrameNode
        start local 5 // com.oracle.truffle.api.frame.FrameDescriptor frameDescriptor
         0: .line 420
            aload 0 /* this */
            aload 1 /* op */
            aload 2 /* frameSlot */
            iload 3 /* hasTemporalDeadZone */
            aload 4 /* scopeFrameNode */
            aload 5 /* frameDescriptor */
            invokespecial com.oracle.truffle.js.nodes.access.LocalVarIncNode.<init>:(Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;Lcom/oracle/truffle/api/frame/FrameSlot;ZLcom/oracle/truffle/js/nodes/access/ScopeFrameNode;Lcom/oracle/truffle/api/frame/FrameDescriptor;)V
         1: .line 421
            return
        end local 5 // com.oracle.truffle.api.frame.FrameDescriptor frameDescriptor
        end local 4 // com.oracle.truffle.js.nodes.access.ScopeFrameNode scopeFrameNode
        end local 3 // boolean hasTemporalDeadZone
        end local 2 // com.oracle.truffle.api.frame.FrameSlot frameSlot
        end local 1 // com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp op
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    2     0                 this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    2     1                   op  Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            0    2     2            frameSlot  Lcom/oracle/truffle/api/frame/FrameSlot;
            0    2     3  hasTemporalDeadZone  Z
            0    2     4       scopeFrameNode  Lcom/oracle/truffle/js/nodes/access/ScopeFrameNode;
            0    2     5      frameDescriptor  Lcom/oracle/truffle/api/frame/FrameDescriptor;
    MethodParameters:
                     Name  Flags
      op                   
      frameSlot            
      hasTemporalDeadZone  
      scopeFrameNode       
      frameDescriptor      

  public com.oracle.truffle.api.instrumentation.InstrumentableNode materializeInstrumentableNodes(java.util.Set<java.lang.Class<? extends com.oracle.truffle.api.instrumentation.Tag>>);
    descriptor: (Ljava/util/Set;)Lcom/oracle/truffle/api/instrumentation/InstrumentableNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // java.util.Set materializedTags
         0: .line 425
            aload 1 /* materializedTags */
            ldc Lcom/oracle/truffle/js/nodes/instrumentation/JSTags$ReadVariableTag;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 4
         1: .line 426
            aload 1 /* materializedTags */
            ldc Lcom/oracle/truffle/js/nodes/instrumentation/JSTags$WriteVariableTag;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 4
         2: .line 427
            aload 1 /* materializedTags */
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$ReadVariableTag;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 428
            aload 1 /* materializedTags */
            ldc Lcom/oracle/truffle/api/instrumentation/StandardTags$WriteVariableTag;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 429
      StackMap locals:
      StackMap stack:
            new com.oracle.truffle.js.nodes.access.LocalVarPrefixIncMaterializedNode
            dup
            aload 0 /* this */
            aload 1 /* materializedTags */
            invokespecial com.oracle.truffle.js.nodes.access.LocalVarPrefixIncMaterializedNode.<init>:(Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;Ljava/util/Set;)V
            areturn
         5: .line 431
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // java.util.Set materializedTags
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0              this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    6     1  materializedTags  Ljava/util/Set<Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;>;
    Signature: (Ljava/util/Set<Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;>;)Lcom/oracle/truffle/api/instrumentation/InstrumentableNode;
    MethodParameters:
                  Name  Flags
      materializedTags  

  public int doBoolean(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 437
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getBoolean:(Lcom/oracle/truffle/api/frame/Frame;)Z
            invokestatic com.oracle.truffle.js.runtime.JSRuntime.booleanToNumber:(Z)I
            istore 2 /* value */
        start local 2 // int value
         1: .line 438
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            iload 2 /* value */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doInt:(I)I
            istore 3 /* newValue */
        start local 3 // int newValue
         2: .line 439
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            iload 3 /* newValue */
            invokeinterface com.oracle.truffle.api.frame.Frame.setInt:(Lcom/oracle/truffle/api/frame/FrameSlot;I)V
         3: .line 440
            iload 3 /* newValue */
            ireturn
        end local 3 // int newValue
        end local 2 // int value
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    4     1     frame  Lcom/oracle/truffle/api/frame/Frame;
            1    4     2     value  I
            2    4     3  newValue  I
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isBoolean(frame)", "isIntegerKind(frame)"})
    MethodParameters:
       Name  Flags
      frame  

  public int doBooleanDouble(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 445
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getBoolean:(Lcom/oracle/truffle/api/frame/Frame;)Z
            invokestatic com.oracle.truffle.js.runtime.JSRuntime.booleanToNumber:(Z)I
            istore 2 /* value */
        start local 2 // int value
         1: .line 446
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            iload 2 /* value */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doInt:(I)I
            istore 3 /* newValue */
        start local 3 // int newValue
         2: .line 447
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            iload 3 /* newValue */
            i2d
            invokeinterface com.oracle.truffle.api.frame.Frame.setDouble:(Lcom/oracle/truffle/api/frame/FrameSlot;D)V
         3: .line 448
            iload 3 /* newValue */
            ireturn
        end local 3 // int newValue
        end local 2 // int value
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    4     1     frame  Lcom/oracle/truffle/api/frame/Frame;
            1    4     2     value  I
            2    4     3  newValue  I
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isBoolean(frame)", "isDoubleKind(frame)"}, replaces = {"doBoolean"})
    MethodParameters:
       Name  Flags
      frame  

  public int doBooleanObject(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 453
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.ensureObjectKind:(Lcom/oracle/truffle/api/frame/Frame;)V
         1: .line 454
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getBoolean:(Lcom/oracle/truffle/api/frame/Frame;)Z
            invokestatic com.oracle.truffle.js.runtime.JSRuntime.booleanToNumber:(Z)I
            istore 2 /* value */
        start local 2 // int value
         2: .line 455
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            iload 2 /* value */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doInt:(I)I
            istore 3 /* newValue */
        start local 3 // int newValue
         3: .line 456
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            iload 3 /* newValue */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface com.oracle.truffle.api.frame.Frame.setObject:(Lcom/oracle/truffle/api/frame/FrameSlot;Ljava/lang/Object;)V
         4: .line 457
            iload 3 /* newValue */
            ireturn
        end local 3 // int newValue
        end local 2 // int value
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    5     1     frame  Lcom/oracle/truffle/api/frame/Frame;
            2    5     2     value  I
            3    5     3  newValue  I
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isBoolean(frame)"}, replaces = {"doBooleanDouble"})
    MethodParameters:
       Name  Flags
      frame  

  public int doInt(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 462
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getInt:(Lcom/oracle/truffle/api/frame/Frame;)I
            istore 2 /* value */
        start local 2 // int value
         1: .line 463
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            iload 2 /* value */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doInt:(I)I
            istore 3 /* newValue */
        start local 3 // int newValue
         2: .line 464
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            iload 3 /* newValue */
            invokeinterface com.oracle.truffle.api.frame.Frame.setInt:(Lcom/oracle/truffle/api/frame/FrameSlot;I)V
         3: .line 465
            iload 3 /* newValue */
            ireturn
        end local 3 // int newValue
        end local 2 // int value
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    4     1     frame  Lcom/oracle/truffle/api/frame/Frame;
            1    4     2     value  I
            2    4     3  newValue  I
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isInt(frame)", "isIntegerKind(frame)"}, rewriteOn = {Ljava/lang/ArithmeticException;})
    MethodParameters:
       Name  Flags
      frame  

  public double doIntOverflow(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 470
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getInt:(Lcom/oracle/truffle/api/frame/Frame;)I
            istore 2 /* value */
        start local 2 // int value
         1: .line 471
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            iload 2 /* value */
            i2d
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doDouble:(D)D
            dstore 3 /* newValue */
        start local 3 // double newValue
         2: .line 472
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            dload 3 /* newValue */
            invokeinterface com.oracle.truffle.api.frame.Frame.setDouble:(Lcom/oracle/truffle/api/frame/FrameSlot;D)V
         3: .line 473
            dload 3 /* newValue */
            dreturn
        end local 3 // double newValue
        end local 2 // int value
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    4     1     frame  Lcom/oracle/truffle/api/frame/Frame;
            1    4     2     value  I
            2    4     3  newValue  D
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isInt(frame)", "isDoubleKind(frame)"}, replaces = {"doInt"})
    MethodParameters:
       Name  Flags
      frame  

  public double doIntOverflowObject(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 478
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.ensureObjectKind:(Lcom/oracle/truffle/api/frame/Frame;)V
         1: .line 479
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getInt:(Lcom/oracle/truffle/api/frame/Frame;)I
            istore 2 /* value */
        start local 2 // int value
         2: .line 480
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            iload 2 /* value */
            i2d
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doDouble:(D)D
            dstore 3 /* newValue */
        start local 3 // double newValue
         3: .line 481
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            dload 3 /* newValue */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokeinterface com.oracle.truffle.api.frame.Frame.setObject:(Lcom/oracle/truffle/api/frame/FrameSlot;Ljava/lang/Object;)V
         4: .line 482
            dload 3 /* newValue */
            dreturn
        end local 3 // double newValue
        end local 2 // int value
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    5     1     frame  Lcom/oracle/truffle/api/frame/Frame;
            2    5     2     value  I
            3    5     3  newValue  D
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isInt(frame)"}, replaces = {"doIntOverflow"})
    MethodParameters:
       Name  Flags
      frame  

  public double doDouble(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 487
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getDouble:(Lcom/oracle/truffle/api/frame/Frame;)D
            dstore 2 /* doubleValue */
        start local 2 // double doubleValue
         1: .line 488
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            dload 2 /* doubleValue */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doDouble:(D)D
            dstore 4 /* newValue */
        start local 4 // double newValue
         2: .line 489
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            dload 4 /* newValue */
            invokeinterface com.oracle.truffle.api.frame.Frame.setDouble:(Lcom/oracle/truffle/api/frame/FrameSlot;D)V
         3: .line 490
            dload 4 /* newValue */
            dreturn
        end local 4 // double newValue
        end local 2 // double doubleValue
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    4     1        frame  Lcom/oracle/truffle/api/frame/Frame;
            1    4     2  doubleValue  D
            2    4     4     newValue  D
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isDouble(frame)", "isDoubleKind(frame)"})
    MethodParameters:
       Name  Flags
      frame  

  public double doDoubleObject(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 495
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.ensureObjectKind:(Lcom/oracle/truffle/api/frame/Frame;)V
         1: .line 496
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getDouble:(Lcom/oracle/truffle/api/frame/Frame;)D
            dstore 2 /* doubleValue */
        start local 2 // double doubleValue
         2: .line 497
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            dload 2 /* doubleValue */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doDouble:(D)D
            dstore 4 /* newValue */
        start local 4 // double newValue
         3: .line 498
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            dload 4 /* newValue */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokeinterface com.oracle.truffle.api.frame.Frame.setObject:(Lcom/oracle/truffle/api/frame/FrameSlot;Ljava/lang/Object;)V
         4: .line 499
            dload 4 /* newValue */
            dreturn
        end local 4 // double newValue
        end local 2 // double doubleValue
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    5     1        frame  Lcom/oracle/truffle/api/frame/Frame;
            2    5     2  doubleValue  D
            3    5     4     newValue  D
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isDouble(frame)"}, replaces = {"doDouble"})
    MethodParameters:
       Name  Flags
      frame  

  public java.lang.Object doObject(com.oracle.truffle.api.frame.Frame, com.oracle.truffle.api.profiles.ConditionProfile, com.oracle.truffle.api.profiles.ConditionProfile, com.oracle.truffle.api.profiles.ConditionProfile, com.oracle.truffle.js.nodes.cast.JSToNumericNode, com.oracle.truffle.api.profiles.BranchProfile);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;Lcom/oracle/truffle/api/profiles/ConditionProfile;Lcom/oracle/truffle/api/profiles/ConditionProfile;Lcom/oracle/truffle/api/profiles/ConditionProfile;Lcom/oracle/truffle/js/nodes/cast/JSToNumericNode;Lcom/oracle/truffle/api/profiles/BranchProfile;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=10, args_size=7
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
        start local 2 // com.oracle.truffle.api.profiles.ConditionProfile isIntegerProfile
        start local 3 // com.oracle.truffle.api.profiles.ConditionProfile isBigIntProfile
        start local 4 // com.oracle.truffle.api.profiles.ConditionProfile isBoundaryProfile
        start local 5 // com.oracle.truffle.js.nodes.cast.JSToNumericNode toNumeric
        start local 6 // com.oracle.truffle.api.profiles.BranchProfile deadBranch
         0: .line 509
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.ensureObjectKind:(Lcom/oracle/truffle/api/frame/Frame;)V
         1: .line 510
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getObject:(Lcom/oracle/truffle/api/frame/Frame;)Ljava/lang/Object;
            astore 7 /* value */
        start local 7 // java.lang.Object value
         2: .line 511
            aload 0 /* this */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.hasTemporalDeadZone:()Z
            ifeq 4
         3: .line 512
            aload 0 /* this */
            aload 7 /* value */
            aload 6 /* deadBranch */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.checkNotDead:(Ljava/lang/Object;Lcom/oracle/truffle/api/profiles/BranchProfile;)Ljava/lang/Object;
            pop
         4: .line 514
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 5 /* toNumeric */
            aload 7 /* value */
            invokevirtual com.oracle.truffle.js.nodes.cast.JSToNumericNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 8 /* number */
        start local 8 // java.lang.Object number
         5: .line 516
            aload 3 /* isBigIntProfile */
            aload 8 /* number */
            instanceof com.oracle.truffle.js.runtime.BigInt
            invokevirtual com.oracle.truffle.api.profiles.ConditionProfile.profile:(Z)Z
            ifeq 8
         6: .line 517
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            aload 8 /* number */
            checkcast com.oracle.truffle.js.runtime.BigInt
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doBigInt:(Lcom/oracle/truffle/js/runtime/BigInt;)Lcom/oracle/truffle/js/runtime/BigInt;
            astore 9 /* newValue */
        start local 9 // java.lang.Object newValue
         7: .line 518
            goto 9
        end local 9 // java.lang.Object newValue
         8: .line 519
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            aload 8 /* number */
            checkcast java.lang.Number
            aload 2 /* isIntegerProfile */
            aload 4 /* isBoundaryProfile */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doNumber:(Ljava/lang/Number;Lcom/oracle/truffle/api/profiles/ConditionProfile;Lcom/oracle/truffle/api/profiles/ConditionProfile;)Ljava/lang/Number;
            astore 9 /* newValue */
        start local 9 // java.lang.Object newValue
         9: .line 521
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            aload 9 /* newValue */
            invokeinterface com.oracle.truffle.api.frame.Frame.setObject:(Lcom/oracle/truffle/api/frame/FrameSlot;Ljava/lang/Object;)V
        10: .line 522
            aload 9 /* newValue */
            areturn
        end local 9 // java.lang.Object newValue
        end local 8 // java.lang.Object number
        end local 7 // java.lang.Object value
        end local 6 // com.oracle.truffle.api.profiles.BranchProfile deadBranch
        end local 5 // com.oracle.truffle.js.nodes.cast.JSToNumericNode toNumeric
        end local 4 // com.oracle.truffle.api.profiles.ConditionProfile isBoundaryProfile
        end local 3 // com.oracle.truffle.api.profiles.ConditionProfile isBigIntProfile
        end local 2 // com.oracle.truffle.api.profiles.ConditionProfile isIntegerProfile
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   11     0               this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0   11     1              frame  Lcom/oracle/truffle/api/frame/Frame;
            0   11     2   isIntegerProfile  Lcom/oracle/truffle/api/profiles/ConditionProfile;
            0   11     3    isBigIntProfile  Lcom/oracle/truffle/api/profiles/ConditionProfile;
            0   11     4  isBoundaryProfile  Lcom/oracle/truffle/api/profiles/ConditionProfile;
            0   11     5          toNumeric  Lcom/oracle/truffle/js/nodes/cast/JSToNumericNode;
            0   11     6         deadBranch  Lcom/oracle/truffle/api/profiles/BranchProfile;
            2   11     7              value  Ljava/lang/Object;
            5   11     8             number  Ljava/lang/Object;
            7    8     9           newValue  Ljava/lang/Object;
            9   11     9           newValue  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isObject(frame)"})
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
        com.oracle.truffle.api.dsl.Cached(value = "createBinaryProfile()")
      2:
        com.oracle.truffle.api.dsl.Cached(value = "createBinaryProfile()")
      3:
        com.oracle.truffle.api.dsl.Cached(value = "createBinaryProfile()")
      4:
        com.oracle.truffle.api.dsl.Cached(value = "create()")
      5:
        com.oracle.truffle.api.dsl.Cached(value = "create()")
    MethodParameters:
                   Name  Flags
      frame              
      isIntegerProfile   
      isBigIntProfile    
      isBoundaryProfile  
      toNumeric          
      deadBranch         

  public com.oracle.truffle.js.runtime.SafeInteger doSafeInteger(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)Lcom/oracle/truffle/js/runtime/SafeInteger;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 527
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getLong:(Lcom/oracle/truffle/api/frame/Frame;)J
            invokestatic com.oracle.truffle.js.runtime.SafeInteger.valueOf:(J)Lcom/oracle/truffle/js/runtime/SafeInteger;
            astore 2 /* oldValue */
        start local 2 // com.oracle.truffle.js.runtime.SafeInteger oldValue
         1: .line 528
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            aload 2 /* oldValue */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doSafeInteger:(Lcom/oracle/truffle/js/runtime/SafeInteger;)Lcom/oracle/truffle/js/runtime/SafeInteger;
            astore 3 /* newValue */
        start local 3 // com.oracle.truffle.js.runtime.SafeInteger newValue
         2: .line 529
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            aload 3 /* newValue */
            invokevirtual com.oracle.truffle.js.runtime.SafeInteger.longValue:()J
            invokeinterface com.oracle.truffle.api.frame.Frame.setLong:(Lcom/oracle/truffle/api/frame/FrameSlot;J)V
         3: .line 530
            aload 3 /* newValue */
            areturn
        end local 3 // com.oracle.truffle.js.runtime.SafeInteger newValue
        end local 2 // com.oracle.truffle.js.runtime.SafeInteger oldValue
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    4     1     frame  Lcom/oracle/truffle/api/frame/Frame;
            1    4     2  oldValue  Lcom/oracle/truffle/js/runtime/SafeInteger;
            2    4     3  newValue  Lcom/oracle/truffle/js/runtime/SafeInteger;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isLong(frame)", "isLongKind(frame)"}, rewriteOn = {Ljava/lang/ArithmeticException;})
    MethodParameters:
       Name  Flags
      frame  

  public double doSafeIntegerToDouble(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 535
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getLong:(Lcom/oracle/truffle/api/frame/Frame;)J
            l2d
            dstore 2 /* oldValue */
        start local 2 // double oldValue
         1: .line 536
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            dload 2 /* oldValue */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doDouble:(D)D
            dstore 4 /* newValue */
        start local 4 // double newValue
         2: .line 537
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            dload 4 /* newValue */
            invokeinterface com.oracle.truffle.api.frame.Frame.setDouble:(Lcom/oracle/truffle/api/frame/FrameSlot;D)V
         3: .line 538
            dload 4 /* newValue */
            dreturn
        end local 4 // double newValue
        end local 2 // double oldValue
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    4     1     frame  Lcom/oracle/truffle/api/frame/Frame;
            1    4     2  oldValue  D
            2    4     4  newValue  D
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isLong(frame)", "isDoubleKind(frame)"}, replaces = {"doSafeInteger"})
    MethodParameters:
       Name  Flags
      frame  

  public double doSafeIntegerToObject(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 543
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.ensureObjectKind:(Lcom/oracle/truffle/api/frame/Frame;)V
         1: .line 544
            aload 0 /* this */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.getLong:(Lcom/oracle/truffle/api/frame/Frame;)J
            l2d
            dstore 2 /* oldValue */
        start local 2 // double oldValue
         2: .line 545
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.op:Lcom/oracle/truffle/js/nodes/access/LocalVarIncNode$LocalVarOp;
            dload 2 /* oldValue */
            invokevirtual com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp.doDouble:(D)D
            dstore 4 /* newValue */
        start local 4 // double newValue
         3: .line 546
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode.frameSlot:Lcom/oracle/truffle/api/frame/FrameSlot;
            dload 4 /* newValue */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokeinterface com.oracle.truffle.api.frame.Frame.setObject:(Lcom/oracle/truffle/api/frame/FrameSlot;Ljava/lang/Object;)V
         4: .line 547
            dload 4 /* newValue */
            dreturn
        end local 4 // double newValue
        end local 2 // double oldValue
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
            0    5     1     frame  Lcom/oracle/truffle/api/frame/Frame;
            2    5     2  oldValue  D
            3    5     4  newValue  D
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isLong(frame)"}, replaces = {"doSafeIntegerToDouble"})
    MethodParameters:
       Name  Flags
      frame  

  protected com.oracle.truffle.js.nodes.JavaScriptNode copyUninitialized(java.util.Set<java.lang.Class<? extends com.oracle.truffle.api.instrumentation.Tag>>);
    descriptor: (Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
         0: .line 552
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tLocalVarPrefixIncNodeGen cannot be resolved\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.oracle.truffle.js.nodes.access.LocalVarPrefixIncNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/nodes/access/LocalVarPrefixIncNode;
    Signature: (Ljava/util/Set<Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;>;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
    MethodParameters:
                  Name  Flags
      materializedTags  
}
SourceFile: "LocalVarIncNode.java"
InnerClasses:
  public final ReadVariableTag = com.oracle.truffle.api.instrumentation.StandardTags$ReadVariableTag of com.oracle.truffle.api.instrumentation.StandardTags
  public final WriteVariableTag = com.oracle.truffle.api.instrumentation.StandardTags$WriteVariableTag of com.oracle.truffle.api.instrumentation.StandardTags
  abstract LocalVarOp = com.oracle.truffle.js.nodes.access.LocalVarIncNode$LocalVarOp of com.oracle.truffle.js.nodes.access.LocalVarIncNode
  public final ReadVariableTag = com.oracle.truffle.js.nodes.instrumentation.JSTags$ReadVariableTag of com.oracle.truffle.js.nodes.instrumentation.JSTags
  public final WriteVariableTag = com.oracle.truffle.js.nodes.instrumentation.JSTags$WriteVariableTag of com.oracle.truffle.js.nodes.instrumentation.JSTags