public abstract class org.graalvm.compiler.nodes.java.AccessMonitorNode extends org.graalvm.compiler.nodes.memory.AbstractMemoryCheckpoint implements org.graalvm.compiler.nodes.memory.MemoryCheckpoint, org.graalvm.compiler.nodes.DeoptimizingNode$DeoptBefore, org.graalvm.compiler.nodes.DeoptimizingNode$DeoptAfter
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.graalvm.compiler.nodes.java.AccessMonitorNode
  super_class: org.graalvm.compiler.nodes.memory.AbstractMemoryCheckpoint
{
  public static final org.graalvm.compiler.graph.NodeClass<org.graalvm.compiler.nodes.java.AccessMonitorNode> TYPE;
    descriptor: Lorg/graalvm/compiler/graph/NodeClass;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/compiler/graph/NodeClass<Lorg/graalvm/compiler/nodes/java/AccessMonitorNode;>;

  org.graalvm.compiler.nodes.FrameState stateBefore;
    descriptor: Lorg/graalvm/compiler/nodes/FrameState;
    flags: (0x0000) 
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$OptionalInput(value = org.graalvm.compiler.nodeinfo.InputType.State:Lorg/graalvm/compiler/nodeinfo/InputType;)

  org.graalvm.compiler.nodes.ValueNode object;
    descriptor: Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0000) 
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$Input()

  org.graalvm.compiler.nodes.java.MonitorIdNode monitorId;
    descriptor: Lorg/graalvm/compiler/nodes/java/MonitorIdNode;
    flags: (0x0000) 
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$Input(value = org.graalvm.compiler.nodeinfo.InputType.Association:Lorg/graalvm/compiler/nodeinfo/InputType;)

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 48
            ldc Lorg/graalvm/compiler/nodes/java/AccessMonitorNode;
            invokestatic org.graalvm.compiler.graph.NodeClass.create:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/NodeClass;
            putstatic org.graalvm.compiler.nodes.java.AccessMonitorNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean canDeoptimize();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
         0: .line 55
            iconst_1
            ireturn
        end local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/nodes/java/AccessMonitorNode;

  public org.graalvm.compiler.nodes.FrameState stateBefore();
    descriptor: ()Lorg/graalvm/compiler/nodes/FrameState;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
         0: .line 60
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.java.AccessMonitorNode.stateBefore:Lorg/graalvm/compiler/nodes/FrameState;
            areturn
        end local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/nodes/java/AccessMonitorNode;

  public void setStateBefore(org.graalvm.compiler.nodes.FrameState);
    descriptor: (Lorg/graalvm/compiler/nodes/FrameState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
        start local 1 // org.graalvm.compiler.nodes.FrameState f
         0: .line 65
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.java.AccessMonitorNode.stateBefore:Lorg/graalvm/compiler/nodes/FrameState;
            aload 1 /* f */
            invokevirtual org.graalvm.compiler.nodes.java.AccessMonitorNode.updateUsages:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
         1: .line 66
            aload 0 /* this */
            aload 1 /* f */
            putfield org.graalvm.compiler.nodes.java.AccessMonitorNode.stateBefore:Lorg/graalvm/compiler/nodes/FrameState;
         2: .line 67
            return
        end local 1 // org.graalvm.compiler.nodes.FrameState f
        end local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/nodes/java/AccessMonitorNode;
            0    3     1     f  Lorg/graalvm/compiler/nodes/FrameState;
    MethodParameters:
      Name  Flags
      f     

  public org.graalvm.compiler.nodes.ValueNode object();
    descriptor: ()Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
         0: .line 70
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.java.AccessMonitorNode.object:Lorg/graalvm/compiler/nodes/ValueNode;
            areturn
        end local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/nodes/java/AccessMonitorNode;

  public void setObject(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
        start local 1 // org.graalvm.compiler.nodes.ValueNode lockedObject
         0: .line 74
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.java.AccessMonitorNode.object:Lorg/graalvm/compiler/nodes/ValueNode;
            aload 1 /* lockedObject */
            invokevirtual org.graalvm.compiler.nodes.java.AccessMonitorNode.updateUsages:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
         1: .line 75
            aload 0 /* this */
            aload 1 /* lockedObject */
            putfield org.graalvm.compiler.nodes.java.AccessMonitorNode.object:Lorg/graalvm/compiler/nodes/ValueNode;
         2: .line 76
            return
        end local 1 // org.graalvm.compiler.nodes.ValueNode lockedObject
        end local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/graalvm/compiler/nodes/java/AccessMonitorNode;
            0    3     1  lockedObject  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
              Name  Flags
      lockedObject  

  public org.graalvm.compiler.nodes.java.MonitorIdNode getMonitorId();
    descriptor: ()Lorg/graalvm/compiler/nodes/java/MonitorIdNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
         0: .line 79
            aload 0 /* this */
            getfield org.graalvm.compiler.nodes.java.AccessMonitorNode.monitorId:Lorg/graalvm/compiler/nodes/java/MonitorIdNode;
            areturn
        end local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/nodes/java/AccessMonitorNode;

  protected void <init>(org.graalvm.compiler.graph.NodeClass<? extends org.graalvm.compiler.nodes.java.AccessMonitorNode>, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.java.MonitorIdNode);
    descriptor: (Lorg/graalvm/compiler/graph/NodeClass;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/java/MonitorIdNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
        start local 1 // org.graalvm.compiler.graph.NodeClass c
        start local 2 // org.graalvm.compiler.nodes.ValueNode object
        start local 3 // org.graalvm.compiler.nodes.java.MonitorIdNode monitorId
         0: .line 88
            aload 0 /* this */
            aload 1 /* c */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forVoid:()Lorg/graalvm/compiler/core/common/type/Stamp;
            invokespecial org.graalvm.compiler.nodes.memory.AbstractMemoryCheckpoint.<init>:(Lorg/graalvm/compiler/graph/NodeClass;Lorg/graalvm/compiler/core/common/type/Stamp;)V
         1: .line 89
            aload 0 /* this */
            aload 2 /* object */
            putfield org.graalvm.compiler.nodes.java.AccessMonitorNode.object:Lorg/graalvm/compiler/nodes/ValueNode;
         2: .line 90
            aload 0 /* this */
            aload 3 /* monitorId */
            putfield org.graalvm.compiler.nodes.java.AccessMonitorNode.monitorId:Lorg/graalvm/compiler/nodes/java/MonitorIdNode;
         3: .line 91
            return
        end local 3 // org.graalvm.compiler.nodes.java.MonitorIdNode monitorId
        end local 2 // org.graalvm.compiler.nodes.ValueNode object
        end local 1 // org.graalvm.compiler.graph.NodeClass c
        end local 0 // org.graalvm.compiler.nodes.java.AccessMonitorNode this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/graalvm/compiler/nodes/java/AccessMonitorNode;
            0    4     1          c  Lorg/graalvm/compiler/graph/NodeClass<+Lorg/graalvm/compiler/nodes/java/AccessMonitorNode;>;
            0    4     2     object  Lorg/graalvm/compiler/nodes/ValueNode;
            0    4     3  monitorId  Lorg/graalvm/compiler/nodes/java/MonitorIdNode;
    Signature: (Lorg/graalvm/compiler/graph/NodeClass<+Lorg/graalvm/compiler/nodes/java/AccessMonitorNode;>;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/java/MonitorIdNode;)V
    MethodParameters:
           Name  Flags
      c          
      object     
      monitorId  
}
SourceFile: "AccessMonitorNode.java"
InnerClasses:
  public abstract Input = org.graalvm.compiler.graph.Node$Input of org.graalvm.compiler.graph.Node
  public abstract OptionalInput = org.graalvm.compiler.graph.Node$OptionalInput of org.graalvm.compiler.graph.Node
  public abstract DeoptAfter = org.graalvm.compiler.nodes.DeoptimizingNode$DeoptAfter of org.graalvm.compiler.nodes.DeoptimizingNode
  public abstract DeoptBefore = org.graalvm.compiler.nodes.DeoptimizingNode$DeoptBefore of org.graalvm.compiler.nodes.DeoptimizingNode
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.nodeinfo.NodeInfo(allowedUsageTypes = {org.graalvm.compiler.nodeinfo.InputType.Memory:Lorg/graalvm/compiler/nodeinfo/InputType;})