public interface org.graalvm.compiler.nodes.spi.VirtualizerTool
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: org.graalvm.compiler.nodes.spi.VirtualizerTool
  super_class: java.lang.Object
{
  public abstract jdk.vm.ci.meta.MetaAccessProvider getMetaAccessProvider();
    descriptor: ()Ljdk/vm/ci/meta/MetaAccessProvider;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract jdk.vm.ci.meta.ConstantReflectionProvider getConstantReflectionProvider();
    descriptor: ()Ljdk/vm/ci/meta/ConstantReflectionProvider;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract org.graalvm.compiler.core.common.spi.ArrayOffsetProvider getArrayOffsetProvider();
    descriptor: ()Lorg/graalvm/compiler/core/common/spi/ArrayOffsetProvider;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract int getMaximumEntryCount();
    descriptor: ()I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void createVirtualObject(org.graalvm.compiler.nodes.virtual.VirtualObjectNode, org.graalvm.compiler.nodes.ValueNode[], java.util.List<org.graalvm.compiler.nodes.java.MonitorIdNode>, );
    descriptor: (Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;[Lorg/graalvm/compiler/nodes/ValueNode;Ljava/util/List;Z)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;[Lorg/graalvm/compiler/nodes/ValueNode;Ljava/util/List<Lorg/graalvm/compiler/nodes/java/MonitorIdNode;>;Z)V
    MethodParameters:
                   Name  Flags
      virtualObject      
      entryState         
      locks              
      ensureVirtualized  

  public abstract org.graalvm.compiler.nodes.ValueNode getAlias(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
       Name  Flags
      value  

  public abstract boolean setVirtualEntry(org.graalvm.compiler.nodes.virtual.VirtualObjectNode, int, org.graalvm.compiler.nodes.ValueNode, jdk.vm.ci.meta.JavaKind, long);
    descriptor: (Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;ILorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/JavaKind;J)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
               Name  Flags
      virtualObject  
      index          
      value          
      accessKind     
      offset         

  public void setVirtualEntry(org.graalvm.compiler.nodes.virtual.VirtualObjectNode, int, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;ILorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.nodes.spi.VirtualizerTool this
        start local 1 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtualObject
        start local 2 // int index
        start local 3 // org.graalvm.compiler.nodes.ValueNode value
         0: .line 107
            aload 0 /* this */
            aload 1 /* virtualObject */
            iload 2 /* index */
            aload 3 /* value */
            aconst_null
            lconst_0
            invokeinterface org.graalvm.compiler.nodes.spi.VirtualizerTool.setVirtualEntry:(Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;ILorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/JavaKind;J)Z
            ifne 2
         1: .line 108
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "unexpected failure when updating virtual entry"
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 110
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.graalvm.compiler.nodes.ValueNode value
        end local 2 // int index
        end local 1 // org.graalvm.compiler.nodes.virtual.VirtualObjectNode virtualObject
        end local 0 // org.graalvm.compiler.nodes.spi.VirtualizerTool this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/graalvm/compiler/nodes/spi/VirtualizerTool;
            0    3     1  virtualObject  Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
            0    3     2          index  I
            0    3     3          value  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
               Name  Flags
      virtualObject  
      index          
      value          

  public abstract org.graalvm.compiler.nodes.ValueNode getEntry(org.graalvm.compiler.nodes.virtual.VirtualObjectNode, int);
    descriptor: (Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;I)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
               Name  Flags
      virtualObject  
      index          

  public abstract void addLock(org.graalvm.compiler.nodes.virtual.VirtualObjectNode, org.graalvm.compiler.nodes.java.MonitorIdNode);
    descriptor: (Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;Lorg/graalvm/compiler/nodes/java/MonitorIdNode;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
               Name  Flags
      virtualObject  
      monitorId      

  public abstract org.graalvm.compiler.nodes.java.MonitorIdNode removeLock(org.graalvm.compiler.nodes.virtual.VirtualObjectNode);
    descriptor: (Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Lorg/graalvm/compiler/nodes/java/MonitorIdNode;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
               Name  Flags
      virtualObject  

  public abstract void setEnsureVirtualized(org.graalvm.compiler.nodes.virtual.VirtualObjectNode, boolean);
    descriptor: (Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;Z)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
                   Name  Flags
      virtualObject      
      ensureVirtualized  

  public abstract boolean getEnsureVirtualized(org.graalvm.compiler.nodes.virtual.VirtualObjectNode);
    descriptor: (Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
               Name  Flags
      virtualObject  

  public abstract void replaceWithVirtual(org.graalvm.compiler.nodes.virtual.VirtualObjectNode);
    descriptor: (Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
               Name  Flags
      virtualObject  

  public abstract void replaceWithValue(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
             Name  Flags
      replacement  

  public abstract void delete();
    descriptor: ()V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract void replaceFirstInput(org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
             Name  Flags
      oldInput     
      replacement  

  public abstract void addNode(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      node  

  public abstract void replaceWith(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
       Name  Flags
      value  

  public abstract boolean ensureMaterialized(org.graalvm.compiler.nodes.virtual.VirtualObjectNode);
    descriptor: (Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
               Name  Flags
      virtualObject  

  public abstract org.graalvm.compiler.options.OptionValues getOptions();
    descriptor: ()Lorg/graalvm/compiler/options/OptionValues;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract org.graalvm.compiler.debug.DebugContext getDebug();
    descriptor: ()Lorg/graalvm/compiler/debug/DebugContext;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
}
SourceFile: "VirtualizerTool.java"