public class org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode extends org.graalvm.compiler.nodes.FixedWithNextNode implements org.graalvm.compiler.graph.spi.Canonicalizable, org.graalvm.compiler.nodes.spi.Lowerable, org.graalvm.compiler.nodes.memory.MemoryAccess, org.graalvm.compiler.nodes.DeoptimizingNode$DeoptBefore
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode
  super_class: org.graalvm.compiler.nodes.FixedWithNextNode
{
  public static final org.graalvm.compiler.graph.NodeClass<org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode> TYPE;
    descriptor: Lorg/graalvm/compiler/graph/NodeClass;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/compiler/graph/NodeClass<Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;>;

  private final org.graalvm.compiler.core.common.spi.ForeignCallSignature stubCallDescriptor;
    descriptor: Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.vm.ci.meta.JavaKind arrayKind;
    descriptor: Ljdk/vm/ci/meta/JavaKind;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.vm.ci.meta.JavaKind valueKind;
    descriptor: Ljdk/vm/ci/meta/JavaKind;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean findTwoConsecutive;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.graalvm.compiler.nodes.ValueNode arrayPointer;
    descriptor: Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$Input()

  private org.graalvm.compiler.nodes.ValueNode arrayLength;
    descriptor: Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$Input()

  private org.graalvm.compiler.nodes.ValueNode fromIndex;
    descriptor: Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$Input()

  private org.graalvm.compiler.graph.NodeInputList<org.graalvm.compiler.nodes.ValueNode> searchValues;
    descriptor: Lorg/graalvm/compiler/graph/NodeInputList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lorg/graalvm/compiler/graph/NodeInputList<Lorg/graalvm/compiler/nodes/ValueNode;>;
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$Input()

  private org.graalvm.compiler.nodes.memory.MemoryKill lastLocationAccess;
    descriptor: Lorg/graalvm/compiler/nodes/memory/MemoryKill;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$OptionalInput(value = org.graalvm.compiler.nodeinfo.InputType.Memory:Lorg/graalvm/compiler/nodeinfo/InputType;)

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

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 63
            ldc Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.$assertionsDisabled:Z
         3: .line 65
            ldc Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;
            invokestatic org.graalvm.compiler.graph.NodeClass.create:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/NodeClass;
            putstatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.graalvm.compiler.core.common.spi.ForeignCallSignature, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode[]);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;[Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=5, locals=9, args_size=9
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
        start local 1 // org.graalvm.compiler.core.common.spi.ForeignCallSignature stubCallDescriptor
        start local 2 // jdk.vm.ci.meta.JavaKind arrayKind
        start local 3 // jdk.vm.ci.meta.JavaKind valueKind
        start local 4 // boolean findTwoConsecutive
        start local 5 // org.graalvm.compiler.nodes.ValueNode arrayPointer
        start local 6 // org.graalvm.compiler.nodes.ValueNode arrayLength
        start local 7 // org.graalvm.compiler.nodes.ValueNode fromIndex
        start local 8 // org.graalvm.compiler.nodes.ValueNode[] searchValues
         0: .line 82
            aload 0 /* this */
            getstatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokespecial org.graalvm.compiler.nodes.FixedWithNextNode.<init>:(Lorg/graalvm/compiler/graph/NodeClass;Lorg/graalvm/compiler/core/common/type/Stamp;)V
         1: .line 83
            aload 0 /* this */
            aload 1 /* stubCallDescriptor */
            putfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.stubCallDescriptor:Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
         2: .line 84
            aload 0 /* this */
            aload 2 /* arrayKind */
            putfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayKind:Ljdk/vm/ci/meta/JavaKind;
         3: .line 85
            aload 0 /* this */
            aload 3 /* valueKind */
            putfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.valueKind:Ljdk/vm/ci/meta/JavaKind;
         4: .line 86
            aload 0 /* this */
            iload 4 /* findTwoConsecutive */
            putfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.findTwoConsecutive:Z
         5: .line 87
            aload 0 /* this */
            aload 5 /* arrayPointer */
            putfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayPointer:Lorg/graalvm/compiler/nodes/ValueNode;
         6: .line 88
            aload 0 /* this */
            aload 6 /* arrayLength */
            putfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayLength:Lorg/graalvm/compiler/nodes/ValueNode;
         7: .line 89
            aload 0 /* this */
            aload 7 /* fromIndex */
            putfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.fromIndex:Lorg/graalvm/compiler/nodes/ValueNode;
         8: .line 90
            aload 0 /* this */
            new org.graalvm.compiler.graph.NodeInputList
            dup
            aload 0 /* this */
            aload 8 /* searchValues */
            invokespecial org.graalvm.compiler.graph.NodeInputList.<init>:(Lorg/graalvm/compiler/graph/Node;[Lorg/graalvm/compiler/graph/Node;)V
            putfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.searchValues:Lorg/graalvm/compiler/graph/NodeInputList;
         9: .line 91
            return
        end local 8 // org.graalvm.compiler.nodes.ValueNode[] searchValues
        end local 7 // org.graalvm.compiler.nodes.ValueNode fromIndex
        end local 6 // org.graalvm.compiler.nodes.ValueNode arrayLength
        end local 5 // org.graalvm.compiler.nodes.ValueNode arrayPointer
        end local 4 // boolean findTwoConsecutive
        end local 3 // jdk.vm.ci.meta.JavaKind valueKind
        end local 2 // jdk.vm.ci.meta.JavaKind arrayKind
        end local 1 // org.graalvm.compiler.core.common.spi.ForeignCallSignature stubCallDescriptor
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   10     0                this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;
            0   10     1  stubCallDescriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0   10     2           arrayKind  Ljdk/vm/ci/meta/JavaKind;
            0   10     3           valueKind  Ljdk/vm/ci/meta/JavaKind;
            0   10     4  findTwoConsecutive  Z
            0   10     5        arrayPointer  Lorg/graalvm/compiler/nodes/ValueNode;
            0   10     6         arrayLength  Lorg/graalvm/compiler/nodes/ValueNode;
            0   10     7           fromIndex  Lorg/graalvm/compiler/nodes/ValueNode;
            0   10     8        searchValues  [Lorg/graalvm/compiler/nodes/ValueNode;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      2:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      3:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      4:
      5:
      6:
      7:
    MethodParameters:
                    Name  Flags
      stubCallDescriptor  
      arrayKind           
      valueKind           
      findTwoConsecutive  
      arrayPointer        
      arrayLength         
      fromIndex           
      searchValues        

  public boolean isFindTwoConsecutive();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
         0: .line 94
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.findTwoConsecutive:Z
            ireturn
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;

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

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

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

  public org.graalvm.compiler.graph.NodeInputList<org.graalvm.compiler.nodes.ValueNode> getSearchValues();
    descriptor: ()Lorg/graalvm/compiler/graph/NodeInputList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
         0: .line 110
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.searchValues:Lorg/graalvm/compiler/graph/NodeInputList;
            areturn
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;
    Signature: ()Lorg/graalvm/compiler/graph/NodeInputList<Lorg/graalvm/compiler/nodes/ValueNode;>;

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

  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.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
        start local 1 // org.graalvm.compiler.nodes.FrameState f
         0: .line 120
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.stateBefore:Lorg/graalvm/compiler/nodes/FrameState;
            aload 1 /* f */
            invokevirtual org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.updateUsages:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
         1: .line 121
            aload 0 /* this */
            aload 1 /* f */
            putfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.stateBefore:Lorg/graalvm/compiler/nodes/FrameState;
         2: .line 122
            return
        end local 1 // org.graalvm.compiler.nodes.FrameState f
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;
            0    3     1     f  Lorg/graalvm/compiler/nodes/FrameState;
    MethodParameters:
      Name  Flags
      f     

  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.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
         0: .line 126
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.stateBefore:Lorg/graalvm/compiler/nodes/FrameState;
            areturn
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;

  public org.graalvm.compiler.core.common.spi.ForeignCallSignature getStubCallDescriptor();
    descriptor: ()Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
         0: .line 130
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.stubCallDescriptor:Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            areturn
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;

  public int getNumberOfValues();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
         0: .line 134
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.searchValues:Lorg/graalvm/compiler/graph/NodeInputList;
            invokevirtual org.graalvm.compiler.graph.NodeInputList.size:()I
            ireturn
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;

  public jdk.vm.ci.meta.JavaKind getArrayKind();
    descriptor: ()Ljdk/vm/ci/meta/JavaKind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
         0: .line 138
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayKind:Ljdk/vm/ci/meta/JavaKind;
            areturn
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;

  public jdk.vm.ci.meta.JavaKind getValueKind();
    descriptor: ()Ljdk/vm/ci/meta/JavaKind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
         0: .line 142
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.valueKind:Ljdk/vm/ci/meta/JavaKind;
            areturn
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;

  public jdk.vm.ci.meta.JavaKind getComparisonKind();
    descriptor: ()Ljdk/vm/ci/meta/JavaKind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
         0: .line 146
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.findTwoConsecutive:Z
            ifeq 2
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.valueKind:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 1
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            goto 3
      StackMap locals:
      StackMap stack:
         1: getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.valueKind:Ljdk/vm/ci/meta/JavaKind;
      StackMap locals:
      StackMap stack: jdk.vm.ci.meta.JavaKind
         3: areturn
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;

  public org.graalvm.compiler.nodes.ValueNode[] getStubCallArgs();
    descriptor: ()[Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
         0: .line 150
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.searchValues:Lorg/graalvm/compiler/graph/NodeInputList;
            invokevirtual org.graalvm.compiler.graph.NodeInputList.size:()I
            iconst_3
            iadd
            anewarray org.graalvm.compiler.nodes.ValueNode
            astore 1 /* ret */
        start local 1 // org.graalvm.compiler.nodes.ValueNode[] ret
         1: .line 151
            aload 1 /* ret */
            iconst_0
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayPointer:Lorg/graalvm/compiler/nodes/ValueNode;
            aastore
         2: .line 152
            aload 1 /* ret */
            iconst_1
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayLength:Lorg/graalvm/compiler/nodes/ValueNode;
            aastore
         3: .line 153
            aload 1 /* ret */
            iconst_2
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.fromIndex:Lorg/graalvm/compiler/nodes/ValueNode;
            aastore
         4: .line 154
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         5: goto 8
         6: .line 155
      StackMap locals: org.graalvm.compiler.nodes.ValueNode[] int
      StackMap stack:
            aload 1 /* ret */
            iconst_3
            iload 2 /* i */
            iadd
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.searchValues:Lorg/graalvm/compiler/graph/NodeInputList;
            iload 2 /* i */
            invokevirtual org.graalvm.compiler.graph.NodeInputList.get:(I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            aastore
         7: .line 154
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.searchValues:Lorg/graalvm/compiler/graph/NodeInputList;
            invokevirtual org.graalvm.compiler.graph.NodeInputList.size:()I
            if_icmplt 6
        end local 2 // int i
         9: .line 157
            aload 1 /* ret */
            areturn
        end local 1 // org.graalvm.compiler.nodes.ValueNode[] ret
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;
            1   10     1   ret  [Lorg/graalvm/compiler/nodes/ValueNode;
            5    9     2     i  I

  public void <init>(org.graalvm.compiler.core.common.spi.ForeignCallSignature, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode[]);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;[Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=9, locals=8, args_size=8
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
        start local 1 // org.graalvm.compiler.core.common.spi.ForeignCallSignature stubCallDescriptor
        start local 2 // jdk.vm.ci.meta.JavaKind arrayKind
        start local 3 // jdk.vm.ci.meta.JavaKind valueKind
        start local 4 // org.graalvm.compiler.nodes.ValueNode arrayPointer
        start local 5 // org.graalvm.compiler.nodes.ValueNode arrayLength
        start local 6 // org.graalvm.compiler.nodes.ValueNode fromIndex
        start local 7 // org.graalvm.compiler.nodes.ValueNode[] searchValues
         0: .line 162
            aload 0 /* this */
            aload 1 /* stubCallDescriptor */
            aload 2 /* arrayKind */
            aload 3 /* valueKind */
            iconst_0
            aload 4 /* arrayPointer */
            aload 5 /* arrayLength */
            aload 6 /* fromIndex */
            aload 7 /* searchValues */
            invokespecial org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;[Lorg/graalvm/compiler/nodes/ValueNode;)V
         1: .line 163
            return
        end local 7 // org.graalvm.compiler.nodes.ValueNode[] searchValues
        end local 6 // org.graalvm.compiler.nodes.ValueNode fromIndex
        end local 5 // org.graalvm.compiler.nodes.ValueNode arrayLength
        end local 4 // org.graalvm.compiler.nodes.ValueNode arrayPointer
        end local 3 // jdk.vm.ci.meta.JavaKind valueKind
        end local 2 // jdk.vm.ci.meta.JavaKind arrayKind
        end local 1 // org.graalvm.compiler.core.common.spi.ForeignCallSignature stubCallDescriptor
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;
            0    2     1  stubCallDescriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    2     2           arrayKind  Ljdk/vm/ci/meta/JavaKind;
            0    2     3           valueKind  Ljdk/vm/ci/meta/JavaKind;
            0    2     4        arrayPointer  Lorg/graalvm/compiler/nodes/ValueNode;
            0    2     5         arrayLength  Lorg/graalvm/compiler/nodes/ValueNode;
            0    2     6           fromIndex  Lorg/graalvm/compiler/nodes/ValueNode;
            0    2     7        searchValues  [Lorg/graalvm/compiler/nodes/ValueNode;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      2:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      3:
      4:
      5:
      6:
    MethodParameters:
                    Name  Flags
      stubCallDescriptor  
      arrayKind           
      valueKind           
      arrayPointer        
      arrayLength         
      fromIndex           
      searchValues        

  public jdk.internal.vm.compiler.word.LocationIdentity getLocationIdentity();
    descriptor: ()Ljdk/internal/vm/compiler/word/LocationIdentity;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
         0: .line 167
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayKind:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.nodes.NamedLocationIdentity.getArrayLocation:(Ljdk/vm/ci/meta/JavaKind;)Ljdk/internal/vm/compiler/word/LocationIdentity;
            areturn
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;

  public org.graalvm.compiler.graph.Node canonical(org.graalvm.compiler.graph.spi.CanonicalizerTool);
    descriptor: (Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;)Lorg/graalvm/compiler/graph/Node;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=11, args_size=2
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
        start local 1 // org.graalvm.compiler.graph.spi.CanonicalizerTool tool
         0: .line 172
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.findTwoConsecutive:Z
            ifne 42
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayPointer:Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 42
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayPointer:Lorg/graalvm/compiler/nodes/ValueNode;
            checkcast org.graalvm.compiler.nodes.ConstantNode
            invokevirtual org.graalvm.compiler.nodes.ConstantNode.getStableDimension:()I
            ifle 42
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.fromIndex:Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 42
         1: .line 173
            aload 1 /* tool */
            invokeinterface org.graalvm.compiler.graph.spi.CanonicalizerTool.getConstantReflection:()Ljdk/vm/ci/meta/ConstantReflectionProvider;
            astore 2 /* provider */
        start local 2 // jdk.vm.ci.meta.ConstantReflectionProvider provider
         2: .line 174
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayPointer:Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            astore 3 /* arrayConstant */
        start local 3 // jdk.vm.ci.meta.JavaConstant arrayConstant
         3: .line 175
            aload 2 /* provider */
            aload 3 /* arrayConstant */
            invokeinterface jdk.vm.ci.meta.ConstantReflectionProvider.readArrayLength:(Ljdk/vm/ci/meta/JavaConstant;)Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            istore 4 /* length */
        start local 4 // int length
         4: .line 176
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.fromIndex:Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            istore 5 /* fromIndexConstant */
        start local 5 // int fromIndexConstant
         5: .line 178
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.searchValues:Lorg/graalvm/compiler/graph/NodeInputList;
            invokevirtual org.graalvm.compiler.graph.NodeInputList.size:()I
            iconst_1
            if_icmpne 42
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.searchValues:Lorg/graalvm/compiler/graph/NodeInputList;
            iconst_0
            invokevirtual org.graalvm.compiler.graph.NodeInputList.get:(I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 42
         6: .line 179
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.searchValues:Lorg/graalvm/compiler/graph/NodeInputList;
            iconst_0
            invokevirtual org.graalvm.compiler.graph.NodeInputList.get:(I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            istore 6 /* ch */
        start local 6 // int ch
         7: .line 180
            getstatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.$assertionsDisabled:Z
            ifne 8
            iload 6 /* ch */
            ldc 65536
            if_icmplt 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 181
      StackMap locals: org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode org.graalvm.compiler.graph.spi.CanonicalizerTool jdk.vm.ci.meta.ConstantReflectionProvider jdk.vm.ci.meta.JavaConstant int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayKind:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 33
         9: .line 183
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.valueKind:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 17
            iload 4 /* length */
            getstatic org.graalvm.compiler.core.common.GraalOptions.StringIndexOfLimit:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* tool */
            invokeinterface org.graalvm.compiler.graph.spi.CanonicalizerTool.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            if_icmpge 17
        10: .line 184
            iload 5 /* fromIndexConstant */
            istore 7 /* i */
        start local 7 // int i
        11: goto 15
        12: .line 185
      StackMap locals: int
      StackMap stack:
            aload 2 /* provider */
            aload 3 /* arrayConstant */
            iload 7 /* i */
            invokeinterface jdk.vm.ci.meta.ConstantReflectionProvider.readArrayElement:(Ljdk/vm/ci/meta/JavaConstant;I)Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            sipush 255
            iand
            iload 6 /* ch */
            if_icmpne 14
        13: .line 186
            iload 7 /* i */
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forInt:(I)Lorg/graalvm/compiler/nodes/ConstantNode;
            areturn
        14: .line 184
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 7 /* i */
            iload 4 /* length */
            if_icmplt 12
        end local 7 // int i
        16: .line 189
            iconst_m1
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forInt:(I)Lorg/graalvm/compiler/nodes/ConstantNode;
            areturn
        17: .line 190
      StackMap locals:
      StackMap stack:
            iload 4 /* length */
            getstatic org.graalvm.compiler.core.common.GraalOptions.StringIndexOfLimit:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* tool */
            invokeinterface org.graalvm.compiler.graph.spi.CanonicalizerTool.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            iconst_2
            imul
            if_icmpge 42
        18: .line 191
            getstatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.$assertionsDisabled:Z
            ifne 19
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.valueKind:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 19
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        19: .line 192
      StackMap locals:
      StackMap stack:
            iload 4 /* length */
            iconst_1
            ishr
            istore 4 /* length */
        20: .line 193
            iload 5 /* fromIndexConstant */
            istore 7 /* i */
        start local 7 // int i
        21: goto 31
        22: .line 194
      StackMap locals: int
      StackMap stack:
            aload 2 /* provider */
            aload 3 /* arrayConstant */
            iload 7 /* i */
            iconst_2
            imul
            invokeinterface jdk.vm.ci.meta.ConstantReflectionProvider.readArrayElement:(Ljdk/vm/ci/meta/JavaConstant;I)Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            sipush 255
            iand
            istore 8 /* b0 */
        start local 8 // int b0
        23: .line 195
            aload 2 /* provider */
            aload 3 /* arrayConstant */
            iload 7 /* i */
            iconst_2
            imul
            iconst_1
            iadd
            invokeinterface jdk.vm.ci.meta.ConstantReflectionProvider.readArrayElement:(Ljdk/vm/ci/meta/JavaConstant;I)Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            sipush 255
            iand
            istore 9 /* b1 */
        start local 9 // int b1
        24: .line 197
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            getstatic java.nio.ByteOrder.BIG_ENDIAN:Ljava/nio/ByteOrder;
            if_acmpne 27
        25: .line 198
            iload 8 /* b0 */
            bipush 8
            ishl
            iload 9 /* b1 */
            ior
            i2c
            istore 10 /* c */
        start local 10 // char c
        26: .line 199
            goto 28
        end local 10 // char c
        27: .line 200
      StackMap locals: int int
      StackMap stack:
            iload 8 /* b0 */
            iload 9 /* b1 */
            bipush 8
            ishl
            ior
            i2c
            istore 10 /* c */
        start local 10 // char c
        28: .line 202
      StackMap locals: int
      StackMap stack:
            iload 10 /* c */
            iload 6 /* ch */
            if_icmpne 30
        29: .line 203
            iload 7 /* i */
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forInt:(I)Lorg/graalvm/compiler/nodes/ConstantNode;
            areturn
        end local 10 // char c
        end local 9 // int b1
        end local 8 // int b0
        30: .line 193
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        31: iload 7 /* i */
            iload 4 /* length */
            if_icmplt 22
        end local 7 // int i
        32: .line 206
            iconst_m1
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forInt:(I)Lorg/graalvm/compiler/nodes/ConstantNode;
            areturn
        33: .line 208
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.arrayKind:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 42
            iload 4 /* length */
            getstatic org.graalvm.compiler.core.common.GraalOptions.StringIndexOfLimit:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* tool */
            invokeinterface org.graalvm.compiler.graph.spi.CanonicalizerTool.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            if_icmpge 42
        34: .line 210
            getstatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.$assertionsDisabled:Z
            ifne 35
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.valueKind:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 35
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        35: .line 211
      StackMap locals:
      StackMap stack:
            iload 5 /* fromIndexConstant */
            istore 7 /* i */
        start local 7 // int i
        36: goto 40
        37: .line 212
      StackMap locals: int
      StackMap stack:
            aload 2 /* provider */
            aload 3 /* arrayConstant */
            iload 7 /* i */
            invokeinterface jdk.vm.ci.meta.ConstantReflectionProvider.readArrayElement:(Ljdk/vm/ci/meta/JavaConstant;I)Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            ldc 65535
            iand
            iload 6 /* ch */
            if_icmpne 39
        38: .line 213
            iload 7 /* i */
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forInt:(I)Lorg/graalvm/compiler/nodes/ConstantNode;
            areturn
        39: .line 211
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 7 /* i */
            iload 4 /* length */
            if_icmplt 37
        end local 7 // int i
        41: .line 216
            iconst_m1
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forInt:(I)Lorg/graalvm/compiler/nodes/ConstantNode;
            areturn
        end local 6 // int ch
        end local 5 // int fromIndexConstant
        end local 4 // int length
        end local 3 // jdk.vm.ci.meta.JavaConstant arrayConstant
        end local 2 // jdk.vm.ci.meta.ConstantReflectionProvider provider
        42: .line 220
      StackMap locals: org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode org.graalvm.compiler.graph.spi.CanonicalizerTool
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // org.graalvm.compiler.graph.spi.CanonicalizerTool tool
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   43     0               this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;
            0   43     1               tool  Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;
            2   42     2           provider  Ljdk/vm/ci/meta/ConstantReflectionProvider;
            3   42     3      arrayConstant  Ljdk/vm/ci/meta/JavaConstant;
            4   42     4             length  I
            5   42     5  fromIndexConstant  I
            7   42     6                 ch  I
           11   16     7                  i  I
           21   32     7                  i  I
           23   30     8                 b0  I
           24   30     9                 b1  I
           26   27    10                  c  C
           28   30    10                  c  C
           36   41     7                  i  I
    MethodParameters:
      Name  Flags
      tool  

  public org.graalvm.compiler.nodes.memory.MemoryKill getLastLocationAccess();
    descriptor: ()Lorg/graalvm/compiler/nodes/memory/MemoryKill;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
         0: .line 225
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.lastLocationAccess:Lorg/graalvm/compiler/nodes/memory/MemoryKill;
            areturn
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;

  public void setLastLocationAccess(org.graalvm.compiler.nodes.memory.MemoryKill);
    descriptor: (Lorg/graalvm/compiler/nodes/memory/MemoryKill;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
        start local 1 // org.graalvm.compiler.nodes.memory.MemoryKill lla
         0: .line 230
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.lastLocationAccess:Lorg/graalvm/compiler/nodes/memory/MemoryKill;
            invokestatic org.graalvm.compiler.nodes.ValueNodeUtil.asNode:(Lorg/graalvm/compiler/nodes/memory/MemoryKill;)Lorg/graalvm/compiler/nodes/ValueNode;
            aload 1 /* lla */
            invokestatic org.graalvm.compiler.nodes.ValueNodeUtil.asNode:(Lorg/graalvm/compiler/nodes/memory/MemoryKill;)Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.updateUsages:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
         1: .line 231
            aload 0 /* this */
            aload 1 /* lla */
            putfield org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.lastLocationAccess:Lorg/graalvm/compiler/nodes/memory/MemoryKill;
         2: .line 232
            return
        end local 1 // org.graalvm.compiler.nodes.memory.MemoryKill lla
        end local 0 // org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/replacements/amd64/AMD64ArrayIndexOfDispatchNode;
            0    3     1   lla  Lorg/graalvm/compiler/nodes/memory/MemoryKill;
    MethodParameters:
      Name  Flags
      lla   

  private static native int optimizedArrayIndexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, java.lang.Object, int, int, byte);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IIB)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      2:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      3:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      4:
      5:
      6:
      7:
    MethodParameters:
                    Name  Flags
      descriptor          
      arrayKind           
      valueKind           
      findTwoConsecutive  
      array               
      arrayLength         
      fromIndex           
      v1                  

  private static native int optimizedArrayIndexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, java.lang.Object, int, int, byte, byte);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IIBB)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      2:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      3:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      4:
      5:
      6:
      7:
      8:
    MethodParameters:
                    Name  Flags
      descriptor          
      arrayKind           
      valueKind           
      findTwoConsecutive  
      array               
      arrayLength         
      fromIndex           
      v1                  
      v2                  

  private static native int optimizedArrayIndexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, java.lang.Object, int, int, byte, byte, byte);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IIBBB)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      2:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      3:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      4:
      5:
      6:
      7:
      8:
      9:
    MethodParameters:
                    Name  Flags
      descriptor          
      arrayKind           
      valueKind           
      findTwoConsecutive  
      array               
      arrayLength         
      fromIndex           
      v1                  
      v2                  
      v3                  

  private static native int optimizedArrayIndexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, java.lang.Object, int, int, byte, byte, byte, byte);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IIBBBB)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      2:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      3:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      4:
      5:
      6:
      7:
      8:
      9:
      10:
    MethodParameters:
                    Name  Flags
      descriptor          
      arrayKind           
      valueKind           
      findTwoConsecutive  
      array               
      arrayLength         
      fromIndex           
      v1                  
      v2                  
      v3                  
      v4                  

  private static native int optimizedArrayIndexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, java.lang.Object, int, int, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IIC)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      2:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      3:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      4:
      5:
      6:
      7:
    MethodParameters:
                    Name  Flags
      descriptor          
      arrayKind           
      valueKind           
      findTwoConsecutive  
      array               
      arrayLength         
      fromIndex           
      v1                  

  private static native int optimizedArrayIndexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, java.lang.Object, int, int, char, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IICC)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      2:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      3:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      4:
      5:
      6:
      7:
      8:
    MethodParameters:
                    Name  Flags
      descriptor          
      arrayKind           
      valueKind           
      findTwoConsecutive  
      array               
      arrayLength         
      fromIndex           
      v1                  
      v2                  

  private static native int optimizedArrayIndexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, java.lang.Object, int, int, char, char, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IICCC)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      2:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      3:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      4:
      5:
      6:
      7:
      8:
      9:
    MethodParameters:
                    Name  Flags
      descriptor          
      arrayKind           
      valueKind           
      findTwoConsecutive  
      array               
      arrayLength         
      fromIndex           
      v1                  
      v2                  
      v3                  

  private static native int optimizedArrayIndexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, java.lang.Object, int, int, char, char, char, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IICCCC)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      2:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      3:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      4:
      5:
      6:
      7:
      8:
      9:
      10:
    MethodParameters:
                    Name  Flags
      descriptor          
      arrayKind           
      valueKind           
      findTwoConsecutive  
      array               
      arrayLength         
      fromIndex           
      v1                  
      v2                  
      v3                  
      v4                  

  private static native int optimizedArrayIndexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, java.lang.Object, int, int, int);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;III)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.graph.Node$NodeIntrinsic()
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      2:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      3:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      4:
      5:
      6:
      7:
    MethodParameters:
                    Name  Flags
      descriptor          
      arrayKind           
      valueKind           
      findTwoConsecutive  
      array               
      arrayLength         
      fromIndex           
      searchValue         

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, byte[], int, int, byte);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[BIIB)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // byte[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // byte v1
         0: .line 307
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IIB)I
            ireturn
        end local 4 // byte v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // byte[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [B
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  B
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, byte[], int, int, byte, byte);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[BIIBB)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // byte[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // byte v1
        start local 5 // byte v2
         0: .line 311
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            iload 5 /* v2 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IIBB)I
            ireturn
        end local 5 // byte v2
        end local 4 // byte v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // byte[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [B
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  B
            0    1     5           v2  B
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
      5:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           
      v2           

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, byte[], int, int, byte, byte, byte);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[BIIBBB)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=10, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // byte[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // byte v1
        start local 5 // byte v2
        start local 6 // byte v3
         0: .line 315
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            iload 5 /* v2 */
            iload 6 /* v3 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IIBBB)I
            ireturn
        end local 6 // byte v3
        end local 5 // byte v2
        end local 4 // byte v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // byte[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [B
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  B
            0    1     5           v2  B
            0    1     6           v3  B
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
      5:
      6:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           
      v2           
      v3           

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, byte[], int, int, byte, byte, byte, byte);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[BIIBBBB)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=8, args_size=8
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // byte[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // byte v1
        start local 5 // byte v2
        start local 6 // byte v3
        start local 7 // byte v4
         0: .line 319
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            iload 5 /* v2 */
            iload 6 /* v3 */
            iload 7 /* v4 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IIBBBB)I
            ireturn
        end local 7 // byte v4
        end local 6 // byte v3
        end local 5 // byte v2
        end local 4 // byte v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // byte[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [B
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  B
            0    1     5           v2  B
            0    1     6           v3  B
            0    1     7           v4  B
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
      5:
      6:
      7:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           
      v2           
      v3           
      v4           

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, byte[], int, int, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[BIIC)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // byte[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // char v1
         0: .line 323
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IIC)I
            ireturn
        end local 4 // char v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // byte[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [B
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  C
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, byte[], int, int, char, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[BIICC)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // byte[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // char v1
        start local 5 // char v2
         0: .line 327
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            iload 5 /* v2 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IICC)I
            ireturn
        end local 5 // char v2
        end local 4 // char v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // byte[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [B
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  C
            0    1     5           v2  C
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
      5:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           
      v2           

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, byte[], int, int, char, char, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[BIICCC)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=10, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // byte[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // char v1
        start local 5 // char v2
        start local 6 // char v3
         0: .line 331
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            iload 5 /* v2 */
            iload 6 /* v3 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IICCC)I
            ireturn
        end local 6 // char v3
        end local 5 // char v2
        end local 4 // char v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // byte[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [B
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  C
            0    1     5           v2  C
            0    1     6           v3  C
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
      5:
      6:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           
      v2           
      v3           

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, byte[], int, int, char, char, char, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[BIICCCC)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=8, args_size=8
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // byte[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // char v1
        start local 5 // char v2
        start local 6 // char v3
        start local 7 // char v4
         0: .line 335
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            iload 5 /* v2 */
            iload 6 /* v3 */
            iload 7 /* v4 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IICCCC)I
            ireturn
        end local 7 // char v4
        end local 6 // char v3
        end local 5 // char v2
        end local 4 // char v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // byte[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [B
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  C
            0    1     5           v2  C
            0    1     6           v3  C
            0    1     7           v4  C
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
      5:
      6:
      7:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           
      v2           
      v3           
      v4           

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, char[], int, int, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[CIIC)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // char[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // char v1
         0: .line 339
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IIC)I
            ireturn
        end local 4 // char v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // char[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [C
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  C
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, char[], int, int, char, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[CIICC)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // char[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // char v1
        start local 5 // char v2
         0: .line 343
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            iload 5 /* v2 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IICC)I
            ireturn
        end local 5 // char v2
        end local 4 // char v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // char[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [C
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  C
            0    1     5           v2  C
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
      5:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           
      v2           

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, char[], int, int, char, char, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[CIICCC)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=10, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // char[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // char v1
        start local 5 // char v2
        start local 6 // char v3
         0: .line 347
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            iload 5 /* v2 */
            iload 6 /* v3 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IICCC)I
            ireturn
        end local 6 // char v3
        end local 5 // char v2
        end local 4 // char v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // char[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [C
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  C
            0    1     5           v2  C
            0    1     6           v3  C
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
      5:
      6:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           
      v2           
      v3           

  public static int indexOf(org.graalvm.compiler.core.common.spi.ForeignCallSignature, char[], int, int, char, char, char, char);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[CIICCCC)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=8, args_size=8
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // char[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // char v1
        start local 5 // char v2
        start local 6 // char v3
        start local 7 // char v4
         0: .line 351
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            iconst_0
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* v1 */
            iload 5 /* v2 */
            iload 6 /* v3 */
            iload 7 /* v4 */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;IICCCC)I
            ireturn
        end local 7 // char v4
        end local 6 // char v3
        end local 5 // char v2
        end local 4 // char v1
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // char[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [C
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4           v1  C
            0    1     5           v2  C
            0    1     6           v3  C
            0    1     7           v4  C
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
      5:
      6:
      7:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      v1           
      v2           
      v3           
      v4           

  public static int indexOf2ConsecutiveBytes(org.graalvm.compiler.core.common.spi.ForeignCallSignature, byte[], int, int, int);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[BIII)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // byte[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // int values
         0: .line 355
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            iconst_1
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* values */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;III)I
            ireturn
        end local 4 // int values
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // byte[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [B
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4       values  I
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      values       

  public static int indexOf2ConsecutiveChars(org.graalvm.compiler.core.common.spi.ForeignCallSignature, byte[], int, int, int);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[BIII)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // byte[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // int values
         0: .line 359
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            iconst_1
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* values */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;III)I
            ireturn
        end local 4 // int values
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // byte[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [B
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4       values  I
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      values       

  public static int indexOf2ConsecutiveChars(org.graalvm.compiler.core.common.spi.ForeignCallSignature, char[], int, int, int);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;[CIII)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
        start local 1 // char[] array
        start local 2 // int arrayLength
        start local 3 // int fromIndex
        start local 4 // int values
         0: .line 363
            aload 0 /* descriptor */
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            iconst_1
            aload 1 /* array */
            iload 2 /* arrayLength */
            iload 3 /* fromIndex */
            iload 4 /* values */
            invokestatic org.graalvm.compiler.replacements.amd64.AMD64ArrayIndexOfDispatchNode.optimizedArrayIndexOf:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZLjava/lang/Object;III)I
            ireturn
        end local 4 // int values
        end local 3 // int fromIndex
        end local 2 // int arrayLength
        end local 1 // char[] array
        end local 0 // org.graalvm.compiler.core.common.spi.ForeignCallSignature descriptor
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0   descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            0    1     1        array  [C
            0    1     2  arrayLength  I
            0    1     3    fromIndex  I
            0    1     4       values  I
    RuntimeVisibleParameterAnnotations: 
      0:
        org.graalvm.compiler.graph.Node$ConstantNodeParameter()
      1:
      2:
      3:
      4:
    MethodParameters:
             Name  Flags
      descriptor   
      array        
      arrayLength  
      fromIndex    
      values       
}
SourceFile: "AMD64ArrayIndexOfDispatchNode.java"
InnerClasses:
  public abstract ConstantNodeParameter = org.graalvm.compiler.graph.Node$ConstantNodeParameter of org.graalvm.compiler.graph.Node
  public abstract Input = org.graalvm.compiler.graph.Node$Input of org.graalvm.compiler.graph.Node
  public abstract NodeIntrinsic = org.graalvm.compiler.graph.Node$NodeIntrinsic of org.graalvm.compiler.graph.Node
  public abstract OptionalInput = org.graalvm.compiler.graph.Node$OptionalInput of org.graalvm.compiler.graph.Node
  public abstract DeoptBefore = org.graalvm.compiler.nodes.DeoptimizingNode$DeoptBefore of org.graalvm.compiler.nodes.DeoptimizingNode
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.nodeinfo.NodeInfo(size = org.graalvm.compiler.nodeinfo.NodeSize.SIZE_512:Lorg/graalvm/compiler/nodeinfo/NodeSize;, cycles = org.graalvm.compiler.nodeinfo.NodeCycles.CYCLES_UNKNOWN:Lorg/graalvm/compiler/nodeinfo/NodeCycles;)