public final class org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp extends org.graalvm.compiler.lir.amd64.AMD64LIRInstruction
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
  super_class: org.graalvm.compiler.lir.amd64.AMD64LIRInstruction
{
  public static final org.graalvm.compiler.lir.LIRInstructionClass<org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp> TYPE;
    descriptor: Lorg/graalvm/compiler/lir/LIRInstructionClass;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/compiler/lir/LIRInstructionClass<Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;>;

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

  private final int nValues;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final jdk.vm.ci.amd64.AMD64Kind vectorKind;
    descriptor: Ljdk/vm/ci/amd64/AMD64Kind;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int arrayBaseOffset;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.asm.amd64.AMD64Address$Scale arrayIndexScale;
    descriptor: Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected jdk.vm.ci.meta.Value resultValue;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Def(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value arrayPtrValue;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Alive(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value arrayLengthValue;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Alive(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value fromIndexValue;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Use(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value searchValue1;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Alive(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.STACK:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.CONST:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value searchValue2;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Alive(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.STACK:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.CONST:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value searchValue3;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Alive(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.STACK:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.CONST:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value searchValue4;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Alive(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.STACK:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.CONST:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value comparisonResult1;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Temp(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value comparisonResult2;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Temp(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value vectorCompareVal1;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Temp(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value vectorCompareVal2;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Temp(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value vectorCompareVal3;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Temp(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value vectorCompareVal4;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Temp(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value vectorArray1;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Temp(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value vectorArray2;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Temp(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value vectorArray3;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Temp(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

  protected jdk.vm.ci.meta.Value vectorArray4;
    descriptor: Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.LIRInstruction$Temp(value = {org.graalvm.compiler.lir.LIRInstruction$OperandFlag.REG:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;, org.graalvm.compiler.lir.LIRInstruction$OperandFlag.ILLEGAL:Lorg/graalvm/compiler/lir/LIRInstruction$OperandFlag;})

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

  private static volatile int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 68
            ldc Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;
            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.lir.amd64.AMD64ArrayIndexOfOp.$assertionsDisabled:Z
         3: .line 69
            ldc Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;
            invokestatic org.graalvm.compiler.lir.LIRInstructionClass.create:(Ljava/lang/Class;)Lorg/graalvm/compiler/lir/LIRInstructionClass;
            putstatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.TYPE:Lorg/graalvm/compiler/lir/LIRInstructionClass;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, boolean, int, org.graalvm.compiler.lir.gen.LIRGeneratorTool, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value[]);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;ZILorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=11, args_size=11
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
        start local 1 // jdk.vm.ci.meta.JavaKind arrayKind
        start local 2 // jdk.vm.ci.meta.JavaKind valueKind
        start local 3 // boolean findTwoConsecutive
        start local 4 // int maxVectorSize
        start local 5 // org.graalvm.compiler.lir.gen.LIRGeneratorTool tool
        start local 6 // jdk.vm.ci.meta.Value result
        start local 7 // jdk.vm.ci.meta.Value arrayPtr
        start local 8 // jdk.vm.ci.meta.Value arrayLength
        start local 9 // jdk.vm.ci.meta.Value fromIndex
        start local 10 // jdk.vm.ci.meta.Value[] searchValues
         0: .line 99
            aload 0 /* this */
            getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.TYPE:Lorg/graalvm/compiler/lir/LIRInstructionClass;
            invokespecial org.graalvm.compiler.lir.amd64.AMD64LIRInstruction.<init>:(Lorg/graalvm/compiler/lir/LIRInstructionClass;)V
         1: .line 100
            aload 0 /* this */
            aload 2 /* valueKind */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
         2: .line 101
            aload 0 /* this */
            aload 5 /* tool */
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.getProviders:()Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;
            invokeinterface org.graalvm.compiler.core.common.spi.CodeGenProviders.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 1 /* arrayKind */
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.getArrayBaseOffset:(Ljdk/vm/ci/meta/JavaKind;)I
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.arrayBaseOffset:I
         3: .line 102
            aload 0 /* this */
            aload 5 /* tool */
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.getProviders:()Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;
            invokeinterface org.graalvm.compiler.core.common.spi.CodeGenProviders.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 2 /* valueKind */
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.getArrayIndexScale:(Ljdk/vm/ci/meta/JavaKind;)I
            invokestatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.fromInt:(I)Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.asm.amd64.AMD64Address$Scale
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.arrayIndexScale:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
         4: .line 103
            aload 0 /* this */
            iload 3 /* findTwoConsecutive */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
         5: .line 104
            getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.$assertionsDisabled:Z
            ifne 7
            aload 10 /* searchValues */
            arraylength
            ifle 6
            aload 10 /* searchValues */
            arraylength
            iconst_4
            if_icmple 7
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind int int org.graalvm.compiler.lir.gen.LIRGeneratorTool jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value[]
      StackMap stack:
         6: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 105
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.$assertionsDisabled:Z
            ifne 8
            aload 2 /* valueKind */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.byteMode:(Ljdk/vm/ci/meta/JavaKind;)Z
            ifne 8
            aload 2 /* valueKind */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.charMode:(Ljdk/vm/ci/meta/JavaKind;)Z
            ifne 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 106
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.$assertionsDisabled:Z
            ifne 9
            aload 5 /* tool */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.SSE2:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.supports:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifne 9
            aload 5 /* tool */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.supports:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifne 9
            aload 5 /* tool */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.supportsAVX2:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;)Z
            ifne 9
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         9: .line 107
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* searchValues */
            arraylength
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
        10: .line 108
            getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.$assertionsDisabled:Z
            ifne 11
            iload 3 /* findTwoConsecutive */
            ifeq 11
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_1
            if_icmpeq 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        11: .line 109
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* result */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.resultValue:Ljdk/vm/ci/meta/Value;
        12: .line 110
            aload 0 /* this */
            aload 7 /* arrayPtr */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.arrayPtrValue:Ljdk/vm/ci/meta/Value;
        13: .line 111
            aload 0 /* this */
            aload 8 /* arrayLength */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.arrayLengthValue:Ljdk/vm/ci/meta/Value;
        14: .line 112
            aload 0 /* this */
            aload 9 /* fromIndex */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.fromIndexValue:Ljdk/vm/ci/meta/Value;
        15: .line 113
            aload 0 /* this */
            aload 10 /* searchValues */
            iconst_0
            aaload
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.searchValue1:Ljdk/vm/ci/meta/Value;
        16: .line 114
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_1
            if_icmple 17
            aload 10 /* searchValues */
            iconst_1
            aaload
            goto 18
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
        17: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind int int org.graalvm.compiler.lir.gen.LIRGeneratorTool jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value[]
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.Value
        18: putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.searchValue2:Ljdk/vm/ci/meta/Value;
        19: .line 115
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_2
            if_icmple 20
            aload 10 /* searchValues */
            iconst_2
            aaload
            goto 21
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
        20: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind int int org.graalvm.compiler.lir.gen.LIRGeneratorTool jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value[]
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.Value
        21: putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.searchValue3:Ljdk/vm/ci/meta/Value;
        22: .line 116
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_3
            if_icmple 23
            aload 10 /* searchValues */
            iconst_3
            aaload
            goto 24
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
        23: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind int int org.graalvm.compiler.lir.gen.LIRGeneratorTool jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value[]
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.Value
        24: putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.searchValue4:Ljdk/vm/ci/meta/Value;
        25: .line 117
            aload 0 /* this */
            aload 5 /* tool */
            aload 5 /* tool */
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            invokevirtual jdk.vm.ci.code.Architecture.getWordKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.comparisonResult1:Ljdk/vm/ci/meta/Value;
        26: .line 118
            aload 0 /* this */
            iload 3 /* findTwoConsecutive */
            ifeq 27
            aload 5 /* tool */
            aload 5 /* tool */
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            invokevirtual jdk.vm.ci.code.Architecture.getWordKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            goto 28
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
        27: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind int int org.graalvm.compiler.lir.gen.LIRGeneratorTool jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value[]
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.AllocatableValue
        28: putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.comparisonResult2:Ljdk/vm/ci/meta/Value;
        29: .line 119
            aload 0 /* this */
            aload 5 /* tool */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.supportsAVX2:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;)Z
            ifeq 32
            iload 4 /* maxVectorSize */
            iflt 30
            iload 4 /* maxVectorSize */
            bipush 32
            if_icmplt 32
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
        30: aload 2 /* valueKind */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.byteMode:(Ljdk/vm/ci/meta/JavaKind;)Z
            ifeq 31
            getstatic jdk.vm.ci.amd64.AMD64Kind.V256_BYTE:Ljdk/vm/ci/amd64/AMD64Kind;
            goto 34
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
        31: getstatic jdk.vm.ci.amd64.AMD64Kind.V256_WORD:Ljdk/vm/ci/amd64/AMD64Kind;
            goto 34
        32: .line 120
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
            aload 2 /* valueKind */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.byteMode:(Ljdk/vm/ci/meta/JavaKind;)Z
            ifeq 33
            getstatic jdk.vm.ci.amd64.AMD64Kind.V128_BYTE:Ljdk/vm/ci/amd64/AMD64Kind;
            goto 34
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
        33: getstatic jdk.vm.ci.amd64.AMD64Kind.V128_WORD:Ljdk/vm/ci/amd64/AMD64Kind;
        34: .line 119
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind int int org.graalvm.compiler.lir.gen.LIRGeneratorTool jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value[]
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.amd64.AMD64Kind
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorKind:Ljdk/vm/ci/amd64/AMD64Kind;
        35: .line 121
            aload 0 /* this */
            aload 5 /* tool */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorKind:Ljdk/vm/ci/amd64/AMD64Kind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorCompareVal1:Ljdk/vm/ci/meta/Value;
        36: .line 122
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_1
            if_icmple 37
            aload 5 /* tool */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorKind:Ljdk/vm/ci/amd64/AMD64Kind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            goto 38
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
        37: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind int int org.graalvm.compiler.lir.gen.LIRGeneratorTool jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value[]
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.AllocatableValue
        38: putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorCompareVal2:Ljdk/vm/ci/meta/Value;
        39: .line 123
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_2
            if_icmple 40
            aload 5 /* tool */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorKind:Ljdk/vm/ci/amd64/AMD64Kind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            goto 41
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
        40: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind int int org.graalvm.compiler.lir.gen.LIRGeneratorTool jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value[]
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.AllocatableValue
        41: putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorCompareVal3:Ljdk/vm/ci/meta/Value;
        42: .line 124
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_3
            if_icmple 43
            aload 5 /* tool */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorKind:Ljdk/vm/ci/amd64/AMD64Kind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            goto 44
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp
        43: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind int int org.graalvm.compiler.lir.gen.LIRGeneratorTool jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value[]
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp jdk.vm.ci.meta.AllocatableValue
        44: putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorCompareVal4:Ljdk/vm/ci/meta/Value;
        45: .line 125
            aload 0 /* this */
            aload 5 /* tool */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorKind:Ljdk/vm/ci/amd64/AMD64Kind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorArray1:Ljdk/vm/ci/meta/Value;
        46: .line 126
            aload 0 /* this */
            aload 5 /* tool */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorKind:Ljdk/vm/ci/amd64/AMD64Kind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorArray2:Ljdk/vm/ci/meta/Value;
        47: .line 127
            aload 0 /* this */
            aload 5 /* tool */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorKind:Ljdk/vm/ci/amd64/AMD64Kind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorArray3:Ljdk/vm/ci/meta/Value;
        48: .line 128
            aload 0 /* this */
            aload 5 /* tool */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorKind:Ljdk/vm/ci/amd64/AMD64Kind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorArray4:Ljdk/vm/ci/meta/Value;
        49: .line 129
            return
        end local 10 // jdk.vm.ci.meta.Value[] searchValues
        end local 9 // jdk.vm.ci.meta.Value fromIndex
        end local 8 // jdk.vm.ci.meta.Value arrayLength
        end local 7 // jdk.vm.ci.meta.Value arrayPtr
        end local 6 // jdk.vm.ci.meta.Value result
        end local 5 // org.graalvm.compiler.lir.gen.LIRGeneratorTool tool
        end local 4 // int maxVectorSize
        end local 3 // boolean findTwoConsecutive
        end local 2 // jdk.vm.ci.meta.JavaKind valueKind
        end local 1 // jdk.vm.ci.meta.JavaKind arrayKind
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   50     0                this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;
            0   50     1           arrayKind  Ljdk/vm/ci/meta/JavaKind;
            0   50     2           valueKind  Ljdk/vm/ci/meta/JavaKind;
            0   50     3  findTwoConsecutive  Z
            0   50     4       maxVectorSize  I
            0   50     5                tool  Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
            0   50     6              result  Ljdk/vm/ci/meta/Value;
            0   50     7            arrayPtr  Ljdk/vm/ci/meta/Value;
            0   50     8         arrayLength  Ljdk/vm/ci/meta/Value;
            0   50     9           fromIndex  Ljdk/vm/ci/meta/Value;
            0   50    10        searchValues  [Ljdk/vm/ci/meta/Value;
    MethodParameters:
                    Name  Flags
      arrayKind           
      valueKind           
      findTwoConsecutive  
      maxVectorSize       
      tool                
      result              
      arrayPtr            
      arrayLength         
      fromIndex           
      searchValues        

  private static boolean byteMode(jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.meta.JavaKind kind
         0: .line 132
            aload 0 /* kind */
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.vm.ci.meta.JavaKind kind
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  kind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
      Name  Flags
      kind  

  private static boolean charMode(jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.meta.JavaKind kind
         0: .line 136
            aload 0 /* kind */
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.vm.ci.meta.JavaKind kind
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  kind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
      Name  Flags
      kind  

  private jdk.vm.ci.meta.JavaKind getComparisonKind();
    descriptor: ()Ljdk/vm/ci/meta/JavaKind;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
         0: .line 140
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 2
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.byteMode:(Ljdk/vm/ci/meta/JavaKind;)Z
            ifeq 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.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
      StackMap locals:
      StackMap stack: jdk.vm.ci.meta.JavaKind
         3: areturn
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;

  private org.graalvm.compiler.asm.amd64.AVXKind$AVXSize getVectorSize();
    descriptor: ()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
         0: .line 144
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorKind:Ljdk/vm/ci/amd64/AMD64Kind;
            invokestatic org.graalvm.compiler.asm.amd64.AVXKind.getDataSize:(Ljdk/vm/ci/amd64/AMD64Kind;)Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            areturn
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;

  public void emitCode(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.amd64.AMD64MacroAssembler);
    descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=30, args_size=3
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
        start local 1 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 2 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
         0: .line 149
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_1
            if_icmpne 1
            iconst_4
            goto 3
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_2
            if_icmpne 2
            iconst_2
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* nVectors */
        start local 3 // int nVectors
         4: .line 150
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.arrayPtrValue:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 4 /* arrayPtr */
        start local 4 // jdk.vm.ci.code.Register arrayPtr
         5: .line 151
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.arrayLengthValue:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 5 /* arrayLength */
        start local 5 // jdk.vm.ci.code.Register arrayLength
         6: .line 152
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.fromIndexValue:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 6 /* fromIndex */
        start local 6 // jdk.vm.ci.code.Register fromIndex
         7: .line 153
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.resultValue:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 7 /* index */
        start local 7 // jdk.vm.ci.code.Register index
         8: .line 154
            iconst_4
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
         9: .line 155
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            ifle 10
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.searchValue1:Ljdk/vm/ci/meta/Value;
            goto 11
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: jdk.vm.ci.meta.Value[] jdk.vm.ci.meta.Value[] int
        10: aconst_null
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: jdk.vm.ci.meta.Value[] jdk.vm.ci.meta.Value[] int jdk.vm.ci.meta.Value
        11: aastore
            dup
            iconst_1
        12: .line 156
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_1
            if_icmple 13
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.searchValue2:Ljdk/vm/ci/meta/Value;
            goto 14
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: jdk.vm.ci.meta.Value[] jdk.vm.ci.meta.Value[] int
        13: aconst_null
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: jdk.vm.ci.meta.Value[] jdk.vm.ci.meta.Value[] int jdk.vm.ci.meta.Value
        14: aastore
            dup
            iconst_2
        15: .line 157
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_2
            if_icmple 16
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.searchValue3:Ljdk/vm/ci/meta/Value;
            goto 17
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: jdk.vm.ci.meta.Value[] jdk.vm.ci.meta.Value[] int
        16: aconst_null
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: jdk.vm.ci.meta.Value[] jdk.vm.ci.meta.Value[] int jdk.vm.ci.meta.Value
        17: aastore
            dup
            iconst_3
        18: .line 158
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_3
            if_icmple 19
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.searchValue4:Ljdk/vm/ci/meta/Value;
            goto 20
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: jdk.vm.ci.meta.Value[] jdk.vm.ci.meta.Value[] int
        19: aconst_null
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: jdk.vm.ci.meta.Value[] jdk.vm.ci.meta.Value[] int jdk.vm.ci.meta.Value
        20: aastore
        21: .line 154
            astore 8 /* searchValue */
        start local 8 // jdk.vm.ci.meta.Value[] searchValue
        22: .line 160
            iconst_4
            anewarray jdk.vm.ci.code.Register
            dup
            iconst_0
        23: .line 161
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            ifle 24
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorCompareVal1:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            goto 25
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[]
      StackMap stack: jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] int
        24: aconst_null
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[]
      StackMap stack: jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] int jdk.vm.ci.code.Register
        25: aastore
            dup
            iconst_1
        26: .line 162
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_1
            if_icmple 27
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorCompareVal2:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            goto 28
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[]
      StackMap stack: jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] int
        27: aconst_null
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[]
      StackMap stack: jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] int jdk.vm.ci.code.Register
        28: aastore
            dup
            iconst_2
        29: .line 163
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_2
            if_icmple 30
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorCompareVal3:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            goto 31
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[]
      StackMap stack: jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] int
        30: aconst_null
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[]
      StackMap stack: jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] int jdk.vm.ci.code.Register
        31: aastore
            dup
            iconst_3
        32: .line 164
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_3
            if_icmple 33
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorCompareVal4:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            goto 34
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[]
      StackMap stack: jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] int
        33: aconst_null
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[]
      StackMap stack: jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] int jdk.vm.ci.code.Register
        34: aastore
        35: .line 160
            astore 9 /* vecCmp */
        start local 9 // jdk.vm.ci.code.Register[] vecCmp
        36: .line 166
            iconst_4
            anewarray jdk.vm.ci.code.Register
            dup
            iconst_0
        37: .line 167
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorArray1:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aastore
            dup
            iconst_1
        38: .line 168
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorArray2:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aastore
            dup
            iconst_2
        39: .line 169
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorArray3:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aastore
            dup
            iconst_3
        40: .line 170
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.vectorArray4:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aastore
        41: .line 166
            astore 10 /* vecArray */
        start local 10 // jdk.vm.ci.code.Register[] vecArray
        42: .line 172
            iconst_2
            anewarray jdk.vm.ci.code.Register
            dup
            iconst_0
        43: .line 173
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.comparisonResult1:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aastore
            dup
            iconst_1
        44: .line 174
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 45
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.comparisonResult2:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            goto 46
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[]
      StackMap stack: jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] int
        45: aconst_null
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[]
      StackMap stack: jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] int jdk.vm.ci.code.Register
        46: aastore
        47: .line 172
            astore 11 /* cmpResult */
        start local 11 // jdk.vm.ci.code.Register[] cmpResult
        48: .line 176
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 12 /* ret */
        start local 12 // org.graalvm.compiler.asm.Label ret
        49: .line 178
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 13 /* bulkVectorLoop */
        start local 13 // org.graalvm.compiler.asm.Label bulkVectorLoop
        50: .line 179
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 14 /* singleVectorLoop */
        start local 14 // org.graalvm.compiler.asm.Label singleVectorLoop
        51: .line 180
            iconst_4
            anewarray org.graalvm.compiler.asm.Label
            dup
            iconst_0
        52: .line 181
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            aastore
            dup
            iconst_1
        53: .line 182
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            aastore
            dup
            iconst_2
        54: .line 183
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            aastore
            dup
            iconst_3
        55: .line 184
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            aastore
        56: .line 180
            astore 15 /* vectorFound */
        start local 15 // org.graalvm.compiler.asm.Label[] vectorFound
        57: .line 186
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 16 /* runVectorized */
        start local 16 // org.graalvm.compiler.asm.Label runVectorized
        58: .line 187
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 17 /* elementWiseLoop */
        start local 17 // org.graalvm.compiler.asm.Label elementWiseLoop
        59: .line 188
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 18 /* elementWiseFound */
        start local 18 // org.graalvm.compiler.asm.Label elementWiseFound
        60: .line 189
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 19 /* elementWiseNotFound */
        start local 19 // org.graalvm.compiler.asm.Label elementWiseNotFound
        61: .line 190
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 20 /* skipBulkVectorLoop */
        start local 20 // org.graalvm.compiler.asm.Label skipBulkVectorLoop
        62: .line 191
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            invokevirtual org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.getBytes:()I
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.getByteCount:()I
            idiv
            istore 21 /* vectorSize */
        start local 21 // int vectorSize
        63: .line 192
            iload 21 /* vectorSize */
            iload 3 /* nVectors */
            imul
            istore 22 /* bulkSize */
        start local 22 // int bulkSize
        64: .line 193
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            astore 23 /* vectorCompareKind */
        start local 23 // jdk.vm.ci.meta.JavaKind vectorCompareKind
        65: .line 194
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 70
        66: .line 195
            iload 22 /* bulkSize */
            iconst_2
            idiv
            istore 22 /* bulkSize */
        67: .line 196
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.byteMode:(Ljdk/vm/ci/meta/JavaKind;)Z
            ifeq 68
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            goto 69
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind
      StackMap stack:
        68: getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
      StackMap locals:
      StackMap stack: jdk.vm.ci.meta.JavaKind
        69: astore 23 /* vectorCompareKind */
        70: .line 201
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 7 /* index */
        71: new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 6 /* fromIndex */
            iload 21 /* vectorSize */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 72
            iconst_1
            goto 73
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind
      StackMap stack: org.graalvm.compiler.asm.amd64.AMD64MacroAssembler jdk.vm.ci.code.Register new 71 new 71 jdk.vm.ci.code.Register int
        72: iconst_0
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind
      StackMap stack: org.graalvm.compiler.asm.amd64.AMD64MacroAssembler jdk.vm.ci.code.Register new 71 new 71 jdk.vm.ci.code.Register int int
        73: iadd
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        74: .line 204
            aload 2 /* asm */
            aload 7 /* index */
            aload 5 /* arrayLength */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        75: .line 205
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.LessEqual:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 16 /* runVectorized */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
        76: .line 210
            aload 2 /* asm */
            aload 7 /* index */
            iload 21 /* vectorSize */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subq:(Ljdk/vm/ci/code/Register;I)V
        77: .line 212
            aload 2 /* asm */
            aload 7 /* index */
            aload 5 /* arrayLength */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        78: .line 213
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.GreaterEqual:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 19 /* elementWiseNotFound */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
        79: .line 215
            aload 2 /* asm */
            aload 17 /* elementWiseLoop */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
        80: .line 217
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getComparisonKind:()Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getOpSize:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
            astore 24 /* cmpSize */
        start local 24 // org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize cmpSize
        81: .line 219
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* arrayPtr */
            aload 7 /* index */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.arrayIndexScale:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.arrayBaseOffset:I
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 82
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.getByteCount:()I
            goto 83
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
      StackMap stack: new 81 new 81 jdk.vm.ci.code.Register jdk.vm.ci.code.Register org.graalvm.compiler.asm.amd64.AMD64Address$Scale int
        82: iconst_0
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize
      StackMap stack: new 81 new 81 jdk.vm.ci.code.Register jdk.vm.ci.code.Register org.graalvm.compiler.asm.amd64.AMD64Address$Scale int int
        83: isub
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;I)V
            astore 25 /* arrayAddr */
        start local 25 // org.graalvm.compiler.asm.amd64.AMD64Address arrayAddr
        84: .line 220
            aload 0 /* this */
            aload 8 /* searchValue */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.searchValuesOnStack:([Ljdk/vm/ci/meta/Value;)Z
            istore 26 /* valuesOnStack */
        start local 26 // boolean valuesOnStack
        85: .line 221
            iload 26 /* valuesOnStack */
            ifeq 103
        86: .line 222
            aload 24 /* cmpSize */
            getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.BYTE:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
            if_acmpne 87
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOVB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
            goto 88
      StackMap locals: org.graalvm.compiler.asm.amd64.AMD64Address int
      StackMap stack:
        87: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.MOV:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp
        88: aload 2 /* asm */
            aload 24 /* cmpSize */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            aload 25 /* arrayAddr */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        89: .line 223
            iconst_0
            istore 27 /* i */
        start local 27 // int i
        90: goto 101
        91: .line 224
      StackMap locals: int
      StackMap stack:
            aload 8 /* searchValue */
            iload 27 /* i */
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.isConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 95
        92: .line 225
            aload 8 /* searchValue */
            iload 27 /* i */
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.asConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            istore 28 /* imm */
        start local 28 // int imm
        93: .line 226
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
            aload 24 /* cmpSize */
            iload 28 /* imm */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isByte:(I)Z
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getMIOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Z)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
            aload 2 /* asm */
            aload 24 /* cmpSize */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            iload 28 /* imm */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Ljdk/vm/ci/code/Register;I)V
        end local 28 // int imm
        94: .line 227
            goto 99
      StackMap locals:
      StackMap stack:
        95: aload 8 /* searchValue */
            iload 27 /* i */
            aaload
            invokestatic jdk.vm.ci.code.ValueUtil.isStackSlot:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 98
        96: .line 228
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
            aload 24 /* cmpSize */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
            aload 2 /* asm */
            aload 24 /* cmpSize */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            aload 1 /* crb */
            aload 8 /* searchValue */
            iload 27 /* i */
            aaload
            invokevirtual org.graalvm.compiler.lir.asm.CompilationResultBuilder.asAddress:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/asm/AbstractAddress;
            checkcast org.graalvm.compiler.asm.amd64.AMD64Address
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        97: .line 229
            goto 99
        98: .line 230
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
            aload 24 /* cmpSize */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
            aload 2 /* asm */
            aload 24 /* cmpSize */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            aload 8 /* searchValue */
            iload 27 /* i */
            aaload
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        99: .line 232
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Equal:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 18 /* elementWiseFound */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       100: .line 223
            iinc 27 /* i */ 1
      StackMap locals:
      StackMap stack:
       101: iload 27 /* i */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            if_icmplt 91
        end local 27 // int i
       102: .line 234
            goto 113
       103: .line 235
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 27 /* i */
        start local 27 // int i
       104: goto 112
       105: .line 236
      StackMap locals: int
      StackMap stack:
            aload 8 /* searchValue */
            iload 27 /* i */
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.isConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 109
       106: .line 237
            aload 8 /* searchValue */
            iload 27 /* i */
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.asConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            istore 28 /* imm */
        start local 28 // int imm
       107: .line 238
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
            aload 24 /* cmpSize */
            iload 28 /* imm */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isByte:(I)Z
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getMIOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Z)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64MIOp;
            aload 2 /* asm */
            aload 24 /* cmpSize */
            aload 25 /* arrayAddr */
            iload 28 /* imm */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
        end local 28 // int imm
       108: .line 239
            goto 110
       109: .line 240
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.CMP:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64BinaryArithmetic;
            aload 24 /* cmpSize */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic.getRMOpcode:(Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;)Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$AMD64RMOp;
            aload 2 /* asm */
            aload 24 /* cmpSize */
            aload 8 /* searchValue */
            iload 27 /* i */
            aaload
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aload 25 /* arrayAddr */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       110: .line 242
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Equal:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 18 /* elementWiseFound */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       111: .line 235
            iinc 27 /* i */ 1
      StackMap locals:
      StackMap stack:
       112: iload 27 /* i */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            if_icmplt 105
        end local 27 // int i
       113: .line 246
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 7 /* index */
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.incrementq:(Ljdk/vm/ci/code/Register;I)V
       114: .line 248
            aload 2 /* asm */
            aload 7 /* index */
            aload 5 /* arrayLength */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       115: .line 249
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Less:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 17 /* elementWiseLoop */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       116: .line 251
            aload 2 /* asm */
            aload 19 /* elementWiseNotFound */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       117: .line 252
            aload 2 /* asm */
            aload 7 /* index */
            aload 7 /* index */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.xorq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       118: .line 254
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 122
       119: .line 255
            aload 2 /* asm */
            aload 18 /* elementWiseFound */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       120: .line 256
            aload 2 /* asm */
            aload 7 /* index */
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.decrementq:(Ljdk/vm/ci/code/Register;I)V
       121: .line 257
            goto 124
       122: .line 258
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 7 /* index */
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.decrementq:(Ljdk/vm/ci/code/Register;I)V
       123: .line 259
            aload 2 /* asm */
            aload 18 /* elementWiseFound */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       124: .line 261
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 12 /* ret */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmp:(Lorg/graalvm/compiler/asm/Label;)V
       125: .line 264
            aload 2 /* asm */
            aload 16 /* runVectorized */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       126: .line 267
            iconst_0
            istore 27 /* i */
        start local 27 // int i
       127: goto 130
       128: .line 269
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* crb */
            aload 2 /* asm */
            aload 9 /* vecCmp */
            iload 27 /* i */
            aaload
            aload 8 /* searchValue */
            iload 27 /* i */
            aaload
            aload 11 /* cmpResult */
            iconst_0
            aaload
            aload 10 /* vecArray */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.broadcastSearchValue:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       129: .line 267
            iinc 27 /* i */ 1
      StackMap locals:
      StackMap stack:
       130: iload 27 /* i */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            if_icmplt 128
        end local 27 // int i
       131: .line 273
            aload 0 /* this */
            aload 2 /* asm */
            aload 23 /* vectorCompareKind */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 132
            iconst_2
            goto 133
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize org.graalvm.compiler.asm.amd64.AMD64Address int
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.asm.amd64.AMD64MacroAssembler jdk.vm.ci.meta.JavaKind
       132: iconst_1
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize org.graalvm.compiler.asm.amd64.AMD64Address int
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.asm.amd64.AMD64MacroAssembler jdk.vm.ci.meta.JavaKind int
       133: aload 4 /* arrayPtr */
            aload 7 /* index */
            aload 9 /* vecCmp */
            aload 10 /* vecArray */
            aload 11 /* cmpResult */
            aload 15 /* vectorFound */
            iconst_0
            iconst_0
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitVectorCompare:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/JavaKind;ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Lorg/graalvm/compiler/asm/Label;ZZ)V
       134: .line 276
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* arrayPtr */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.arrayBaseOffset:I
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       135: .line 277
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.charMode:(Ljdk/vm/ci/meta/JavaKind;)Z
            ifeq 137
       136: .line 278
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.shrq:(Ljdk/vm/ci/code/Register;I)V
       137: .line 280
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 7 /* index */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       138: .line 282
            aload 2 /* asm */
            aload 7 /* index */
            iload 21 /* vectorSize */
            iconst_1
            isub
            iconst_m1
            ixor
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.andq:(Ljdk/vm/ci/code/Register;I)V
       139: .line 283
            aload 2 /* asm */
            aload 7 /* index */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       140: .line 285
            aload 2 /* asm */
            aload 7 /* index */
            iload 22 /* bulkSize */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;I)V
       141: .line 288
            aload 2 /* asm */
            aload 7 /* index */
            aload 5 /* arrayLength */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       142: .line 289
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Greater:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 20 /* skipBulkVectorLoop */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       143: .line 291
            aload 1 /* crb */
            aload 2 /* asm */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitAlign:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;)V
       144: .line 292
            aload 2 /* asm */
            aload 13 /* bulkVectorLoop */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       145: .line 294
            aload 0 /* this */
            aload 2 /* asm */
            aload 23 /* vectorCompareKind */
            iload 3 /* nVectors */
            aload 4 /* arrayPtr */
            aload 7 /* index */
            aload 9 /* vecCmp */
            aload 10 /* vecArray */
            aload 11 /* cmpResult */
            aload 15 /* vectorFound */
            iconst_0
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 146
            iconst_0
            goto 147
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize org.graalvm.compiler.asm.amd64.AMD64Address int
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.asm.amd64.AMD64MacroAssembler jdk.vm.ci.meta.JavaKind int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label[] int
       146: iconst_1
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize org.graalvm.compiler.asm.amd64.AMD64Address int
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.asm.amd64.AMD64MacroAssembler jdk.vm.ci.meta.JavaKind int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label[] int int
       147: invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitVectorCompare:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/JavaKind;ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Lorg/graalvm/compiler/asm/Label;ZZ)V
       148: .line 296
            aload 2 /* asm */
            aload 7 /* index */
            iload 22 /* bulkSize */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;I)V
       149: .line 298
            aload 2 /* asm */
            aload 7 /* index */
            aload 5 /* arrayLength */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       150: .line 299
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.LessEqual:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 13 /* bulkVectorLoop */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       151: .line 301
            aload 2 /* asm */
            aload 20 /* skipBulkVectorLoop */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       152: .line 302
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 153
            iload 3 /* nVectors */
            iconst_2
            if_icmpeq 154
      StackMap locals:
      StackMap stack:
       153: iload 3 /* nVectors */
            iconst_1
            if_icmpne 159
       154: .line 304
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 7 /* index */
            aload 5 /* arrayLength */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       155: .line 306
            aload 0 /* this */
            aload 2 /* asm */
            aload 23 /* vectorCompareKind */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 156
            iconst_2
            goto 157
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize org.graalvm.compiler.asm.amd64.AMD64Address int
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.asm.amd64.AMD64MacroAssembler jdk.vm.ci.meta.JavaKind
       156: iconst_1
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize org.graalvm.compiler.asm.amd64.AMD64Address int
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.asm.amd64.AMD64MacroAssembler jdk.vm.ci.meta.JavaKind int
       157: aload 4 /* arrayPtr */
            aload 7 /* index */
            aload 9 /* vecCmp */
            aload 10 /* vecArray */
            aload 11 /* cmpResult */
            aload 15 /* vectorFound */
            iconst_1
            iconst_0
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitVectorCompare:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/JavaKind;ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Lorg/graalvm/compiler/asm/Label;ZZ)V
       158: .line 307
            goto 170
       159: .line 309
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 7 /* index */
            iload 22 /* bulkSize */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subq:(Ljdk/vm/ci/code/Register;I)V
       160: .line 310
            aload 1 /* crb */
            aload 2 /* asm */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitAlign:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;)V
       161: .line 312
            aload 2 /* asm */
            aload 14 /* singleVectorLoop */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       162: .line 314
            aload 2 /* asm */
            aload 7 /* index */
            iload 21 /* vectorSize */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;I)V
       163: .line 316
            aload 2 /* asm */
            aload 7 /* index */
            aload 5 /* arrayLength */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       164: .line 318
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Greater:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 7 /* index */
            aload 5 /* arrayLength */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmovq:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       165: .line 320
            aload 0 /* this */
            aload 2 /* asm */
            aload 23 /* vectorCompareKind */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 166
            iconst_2
            goto 167
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize org.graalvm.compiler.asm.amd64.AMD64Address int
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.asm.amd64.AMD64MacroAssembler jdk.vm.ci.meta.JavaKind
       166: iconst_1
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.meta.Value[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] jdk.vm.ci.code.Register[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label[] org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int jdk.vm.ci.meta.JavaKind org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize org.graalvm.compiler.asm.amd64.AMD64Address int
      StackMap stack: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp org.graalvm.compiler.asm.amd64.AMD64MacroAssembler jdk.vm.ci.meta.JavaKind int
       167: aload 4 /* arrayPtr */
            aload 7 /* index */
            aload 9 /* vecCmp */
            aload 10 /* vecArray */
            aload 11 /* cmpResult */
            aload 15 /* vectorFound */
            iconst_1
            iconst_0
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitVectorCompare:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/JavaKind;ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Lorg/graalvm/compiler/asm/Label;ZZ)V
       168: .line 322
            aload 2 /* asm */
            aload 7 /* index */
            aload 5 /* arrayLength */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       169: .line 323
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Less:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 14 /* singleVectorLoop */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       170: .line 326
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 7 /* index */
            iconst_m1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;I)V
       171: .line 327
            aload 2 /* asm */
            aload 12 /* ret */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
       172: .line 329
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 206
       173: .line 330
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 27 /* vectorFound2Done */
        start local 27 // org.graalvm.compiler.asm.Label vectorFound2Done
       174: .line 333
            aload 2 /* asm */
            aload 15 /* vectorFound */
            iconst_2
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       175: .line 335
            aload 2 /* asm */
            aload 7 /* index */
            aload 0 /* this */
            iconst_2
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getResultIndexDelta:(I)I
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subq:(Ljdk/vm/ci/code/Register;I)V
       176: .line 336
            aload 2 /* asm */
            aload 27 /* vectorFound2Done */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
       177: .line 338
            aload 2 /* asm */
            aload 15 /* vectorFound */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       178: .line 340
            aload 2 /* asm */
            aload 7 /* index */
            aload 0 /* this */
            iconst_0
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getResultIndexDelta:(I)I
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subq:(Ljdk/vm/ci/code/Register;I)V
       179: .line 341
            aload 2 /* asm */
            aload 27 /* vectorFound2Done */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       180: .line 343
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            aload 11 /* cmpResult */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bsfq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       181: .line 344
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.charMode:(Ljdk/vm/ci/meta/JavaKind;)Z
            ifeq 183
       182: .line 346
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.shrl:(Ljdk/vm/ci/code/Register;I)V
       183: .line 349
      StackMap locals: org.graalvm.compiler.asm.Label
      StackMap stack:
            aload 2 /* asm */
            aload 7 /* index */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       184: .line 350
            aload 2 /* asm */
            aload 12 /* ret */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
       185: .line 352
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 28 /* minResult */
        start local 28 // org.graalvm.compiler.asm.Label minResult
       186: .line 353
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 29 /* minResultDone */
        start local 29 // org.graalvm.compiler.asm.Label minResultDone
       187: .line 356
            iload 3 /* nVectors */
            iconst_2
            if_icmple 191
       188: .line 357
            aload 2 /* asm */
            aload 15 /* vectorFound */
            iconst_3
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       189: .line 359
            aload 2 /* asm */
            aload 7 /* index */
            aload 0 /* this */
            iconst_3
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getResultIndexDelta:(I)I
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subq:(Ljdk/vm/ci/code/Register;I)V
       190: .line 360
            aload 2 /* asm */
            aload 28 /* minResult */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
       191: .line 363
      StackMap locals: org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label
      StackMap stack:
            aload 2 /* asm */
            aload 15 /* vectorFound */
            iconst_1
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       192: .line 365
            aload 2 /* asm */
            aload 7 /* index */
            aload 0 /* this */
            iconst_1
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getResultIndexDelta:(I)I
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subq:(Ljdk/vm/ci/code/Register;I)V
       193: .line 367
            aload 2 /* asm */
            aload 28 /* minResult */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       194: .line 369
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_1
            aaload
            aload 11 /* cmpResult */
            iconst_1
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bsfq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       195: .line 371
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            aload 11 /* cmpResult */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.testq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       196: .line 372
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 29 /* minResultDone */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       197: .line 374
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            aload 11 /* cmpResult */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bsfq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       198: .line 375
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.getByteCount:()I
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;I)V
       199: .line 377
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_1
            aaload
            aload 11 /* cmpResult */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       200: .line 378
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Greater:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 11 /* cmpResult */
            iconst_1
            aaload
            aload 11 /* cmpResult */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmovq:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       201: .line 379
            aload 2 /* asm */
            aload 29 /* minResultDone */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       202: .line 380
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.charMode:(Ljdk/vm/ci/meta/JavaKind;)Z
            ifeq 204
       203: .line 382
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_1
            aaload
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.shrl:(Ljdk/vm/ci/code/Register;I)V
       204: .line 385
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 7 /* index */
            aload 11 /* cmpResult */
            iconst_1
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        end local 29 // org.graalvm.compiler.asm.Label minResultDone
        end local 28 // org.graalvm.compiler.asm.Label minResult
        end local 27 // org.graalvm.compiler.asm.Label vectorFound2Done
       205: .line 386
            goto 220
       206: .line 387
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 27 /* end */
        start local 27 // org.graalvm.compiler.asm.Label end
       207: .line 388
            iconst_0
            istore 28 /* i */
        start local 28 // int i
       208: goto 214
       209: .line 389
      StackMap locals: org.graalvm.compiler.asm.Label int
      StackMap stack:
            aload 2 /* asm */
            aload 15 /* vectorFound */
            iload 28 /* i */
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       210: .line 391
            aload 2 /* asm */
            aload 7 /* index */
            aload 0 /* this */
            iload 28 /* i */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getResultIndexDelta:(I)I
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subq:(Ljdk/vm/ci/code/Register;I)V
       211: .line 392
            iload 28 /* i */
            iload 3 /* nVectors */
            iconst_1
            isub
            if_icmpge 213
       212: .line 393
            aload 2 /* asm */
            aload 27 /* end */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
       213: .line 388
      StackMap locals:
      StackMap stack:
            iinc 28 /* i */ 1
      StackMap locals:
      StackMap stack:
       214: iload 28 /* i */
            iload 3 /* nVectors */
            if_icmplt 209
        end local 28 // int i
       215: .line 396
            aload 2 /* asm */
            aload 27 /* end */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       216: .line 398
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            aload 11 /* cmpResult */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bsfq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       217: .line 399
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.charMode:(Ljdk/vm/ci/meta/JavaKind;)Z
            ifeq 219
       218: .line 401
            aload 2 /* asm */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.shrl:(Ljdk/vm/ci/code/Register;I)V
       219: .line 404
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 7 /* index */
            aload 11 /* cmpResult */
            iconst_0
            aaload
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        end local 27 // org.graalvm.compiler.asm.Label end
       220: .line 406
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 12 /* ret */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       221: .line 407
            return
        end local 26 // boolean valuesOnStack
        end local 25 // org.graalvm.compiler.asm.amd64.AMD64Address arrayAddr
        end local 24 // org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize cmpSize
        end local 23 // jdk.vm.ci.meta.JavaKind vectorCompareKind
        end local 22 // int bulkSize
        end local 21 // int vectorSize
        end local 20 // org.graalvm.compiler.asm.Label skipBulkVectorLoop
        end local 19 // org.graalvm.compiler.asm.Label elementWiseNotFound
        end local 18 // org.graalvm.compiler.asm.Label elementWiseFound
        end local 17 // org.graalvm.compiler.asm.Label elementWiseLoop
        end local 16 // org.graalvm.compiler.asm.Label runVectorized
        end local 15 // org.graalvm.compiler.asm.Label[] vectorFound
        end local 14 // org.graalvm.compiler.asm.Label singleVectorLoop
        end local 13 // org.graalvm.compiler.asm.Label bulkVectorLoop
        end local 12 // org.graalvm.compiler.asm.Label ret
        end local 11 // jdk.vm.ci.code.Register[] cmpResult
        end local 10 // jdk.vm.ci.code.Register[] vecArray
        end local 9 // jdk.vm.ci.code.Register[] vecCmp
        end local 8 // jdk.vm.ci.meta.Value[] searchValue
        end local 7 // jdk.vm.ci.code.Register index
        end local 6 // jdk.vm.ci.code.Register fromIndex
        end local 5 // jdk.vm.ci.code.Register arrayLength
        end local 4 // jdk.vm.ci.code.Register arrayPtr
        end local 3 // int nVectors
        end local 2 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        end local 1 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0  222     0                 this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;
            0  222     1                  crb  Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
            0  222     2                  asm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            4  222     3             nVectors  I
            5  222     4             arrayPtr  Ljdk/vm/ci/code/Register;
            6  222     5          arrayLength  Ljdk/vm/ci/code/Register;
            7  222     6            fromIndex  Ljdk/vm/ci/code/Register;
            8  222     7                index  Ljdk/vm/ci/code/Register;
           22  222     8          searchValue  [Ljdk/vm/ci/meta/Value;
           36  222     9               vecCmp  [Ljdk/vm/ci/code/Register;
           42  222    10             vecArray  [Ljdk/vm/ci/code/Register;
           48  222    11            cmpResult  [Ljdk/vm/ci/code/Register;
           49  222    12                  ret  Lorg/graalvm/compiler/asm/Label;
           50  222    13       bulkVectorLoop  Lorg/graalvm/compiler/asm/Label;
           51  222    14     singleVectorLoop  Lorg/graalvm/compiler/asm/Label;
           57  222    15          vectorFound  [Lorg/graalvm/compiler/asm/Label;
           58  222    16        runVectorized  Lorg/graalvm/compiler/asm/Label;
           59  222    17      elementWiseLoop  Lorg/graalvm/compiler/asm/Label;
           60  222    18     elementWiseFound  Lorg/graalvm/compiler/asm/Label;
           61  222    19  elementWiseNotFound  Lorg/graalvm/compiler/asm/Label;
           62  222    20   skipBulkVectorLoop  Lorg/graalvm/compiler/asm/Label;
           63  222    21           vectorSize  I
           64  222    22             bulkSize  I
           65  222    23    vectorCompareKind  Ljdk/vm/ci/meta/JavaKind;
           81  222    24              cmpSize  Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
           84  222    25            arrayAddr  Lorg/graalvm/compiler/asm/amd64/AMD64Address;
           85  222    26        valuesOnStack  Z
           90  102    27                    i  I
           93   94    28                  imm  I
          104  113    27                    i  I
          107  108    28                  imm  I
          127  131    27                    i  I
          174  205    27     vectorFound2Done  Lorg/graalvm/compiler/asm/Label;
          186  205    28            minResult  Lorg/graalvm/compiler/asm/Label;
          187  205    29        minResultDone  Lorg/graalvm/compiler/asm/Label;
          207  220    27                  end  Lorg/graalvm/compiler/asm/Label;
          208  215    28                    i  I
    MethodParameters:
      Name  Flags
      crb   
      asm   

  private boolean searchValuesOnStack(jdk.vm.ci.meta.Value[]);
    descriptor: ([Ljdk/vm/ci/meta/Value;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
        start local 1 // jdk.vm.ci.meta.Value[] searchValue
         0: .line 410
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 411
      StackMap locals: int
      StackMap stack:
            aload 1 /* searchValue */
            iload 2 /* i */
            aaload
            invokestatic jdk.vm.ci.code.ValueUtil.isStackSlot:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 4
         3: .line 412
            iconst_1
            ireturn
         4: .line 410
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            if_icmplt 2
        end local 2 // int i
         6: .line 415
            iconst_0
            ireturn
        end local 1 // jdk.vm.ci.meta.Value[] searchValue
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;
            0    7     1  searchValue  [Ljdk/vm/ci/meta/Value;
            1    6     2            i  I
    MethodParameters:
             Name  Flags
      searchValue  

  private int getResultIndexDelta(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
        start local 1 // int i
         0: .line 419
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 1
            iload 1 /* i */
            iconst_2
            idiv
            goto 2
      StackMap locals:
      StackMap stack:
         1: iload 1 /* i */
      StackMap locals:
      StackMap stack: int
         2: iconst_1
            iadd
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            invokevirtual org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.getBytes:()I
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.getByteCount:()I
            idiv
            imul
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifeq 3
            iload 1 /* i */
            iconst_1
            iand
            goto 4
      StackMap locals:
      StackMap stack: int
         3: iconst_0
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp int
      StackMap stack: int int
         4: iadd
            ireturn
        end local 1 // int i
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;
            0    5     1     i  I
    MethodParameters:
      Name  Flags
      i     

  private int getVectorOffset(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
        start local 1 // int i
         0: .line 423
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.arrayBaseOffset:I
            aload 0 /* this */
            iload 1 /* i */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getResultIndexDelta:(I)I
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.valueKind:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.getByteCount:()I
            imul
            isub
            ireturn
        end local 1 // int i
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;
            0    1     1     i  I
    MethodParameters:
      Name  Flags
      i     

  private void broadcastSearchValue(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.amd64.AMD64MacroAssembler, jdk.vm.ci.code.Register, jdk.vm.ci.meta.Value, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=7
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
        start local 1 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 2 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        start local 3 // jdk.vm.ci.code.Register dst
        start local 4 // jdk.vm.ci.meta.Value srcVal
        start local 5 // jdk.vm.ci.code.Register tmpReg
        start local 6 // jdk.vm.ci.code.Register tmpVector
         0: .line 427
            aload 1 /* crb */
            aload 2 /* asm */
            aload 4 /* srcVal */
            aload 5 /* tmpReg */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.asRegOrTmpReg:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/code/Register;)Ljdk/vm/ci/code/Register;
            astore 7 /* src */
        start local 7 // jdk.vm.ci.code.Register src
         1: .line 428
            aload 2 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 4
         2: .line 429
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMoveOp.VMOVD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMoveOp;
            aload 2 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            aload 3 /* dst */
            aload 7 /* src */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMoveOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         3: .line 430
            goto 5
         4: .line 431
      StackMap locals: jdk.vm.ci.code.Register
      StackMap stack:
            aload 2 /* asm */
            aload 3 /* dst */
            aload 7 /* src */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movdl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         5: .line 433
      StackMap locals:
      StackMap stack:
            aload 2 /* asm */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getComparisonKind:()Ljdk/vm/ci/meta/JavaKind;
            aload 3 /* dst */
            aload 6 /* tmpVector */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitBroadcast:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;)V
         6: .line 434
            return
        end local 7 // jdk.vm.ci.code.Register src
        end local 6 // jdk.vm.ci.code.Register tmpVector
        end local 5 // jdk.vm.ci.code.Register tmpReg
        end local 4 // jdk.vm.ci.meta.Value srcVal
        end local 3 // jdk.vm.ci.code.Register dst
        end local 2 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        end local 1 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;
            0    7     1        crb  Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
            0    7     2        asm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            0    7     3        dst  Ljdk/vm/ci/code/Register;
            0    7     4     srcVal  Ljdk/vm/ci/meta/Value;
            0    7     5     tmpReg  Ljdk/vm/ci/code/Register;
            0    7     6  tmpVector  Ljdk/vm/ci/code/Register;
            1    7     7        src  Ljdk/vm/ci/code/Register;
    MethodParameters:
           Name  Flags
      crb        
      asm        
      dst        
      srcVal     
      tmpReg     
      tmpVector  

  private static boolean isConstant(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.meta.Value val
         0: .line 437
            getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.$assertionsDisabled:Z
            ifne 1
            aload 0 /* val */
            instanceof org.graalvm.compiler.lir.ConstantValue
            ifeq 1
            aload 0 /* val */
            checkcast org.graalvm.compiler.lir.ConstantValue
            invokevirtual org.graalvm.compiler.lir.ConstantValue.isJavaConstant:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 438
      StackMap locals:
      StackMap stack:
            aload 0 /* val */
            instanceof org.graalvm.compiler.lir.ConstantValue
            ireturn
        end local 0 // jdk.vm.ci.meta.Value val
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   val  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      val   

  private static jdk.vm.ci.meta.JavaConstant asConstant(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.vm.ci.meta.Value val
         0: .line 442
            aload 0 /* val */
            checkcast org.graalvm.compiler.lir.ConstantValue
            invokevirtual org.graalvm.compiler.lir.ConstantValue.getJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            areturn
        end local 0 // jdk.vm.ci.meta.Value val
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   val  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      val   

  private static jdk.vm.ci.code.Register asRegOrTmpReg(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.amd64.AMD64MacroAssembler, jdk.vm.ci.meta.Value, jdk.vm.ci.code.Register);
    descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/code/Register;)Ljdk/vm/ci/code/Register;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        start local 2 // jdk.vm.ci.meta.Value val
        start local 3 // jdk.vm.ci.code.Register tmpReg
         0: .line 446
            aload 2 /* val */
            invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 2
         1: .line 447
            aload 2 /* val */
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            areturn
         2: .line 448
      StackMap locals:
      StackMap stack:
            aload 2 /* val */
            invokestatic jdk.vm.ci.code.ValueUtil.isStackSlot:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 5
         3: .line 449
            aload 1 /* asm */
            aload 3 /* tmpReg */
            aload 0 /* crb */
            aload 2 /* val */
            invokevirtual org.graalvm.compiler.lir.asm.CompilationResultBuilder.asAddress:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/asm/AbstractAddress;
            checkcast org.graalvm.compiler.asm.amd64.AMD64Address
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
         4: .line 450
            aload 3 /* tmpReg */
            areturn
         5: .line 452
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.$assertionsDisabled:Z
            ifne 6
            aload 2 /* val */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.isConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifne 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 453
      StackMap locals:
      StackMap stack:
            aload 1 /* asm */
            aload 3 /* tmpReg */
            aload 2 /* val */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.asConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;I)V
         7: .line 454
            aload 3 /* tmpReg */
            areturn
        end local 3 // jdk.vm.ci.code.Register tmpReg
        end local 2 // jdk.vm.ci.meta.Value val
        end local 1 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0     crb  Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
            0    8     1     asm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            0    8     2     val  Ljdk/vm/ci/meta/Value;
            0    8     3  tmpReg  Ljdk/vm/ci/code/Register;
    MethodParameters:
        Name  Flags
      crb     
      asm     
      val     
      tmpReg  

  private static void emitAlign(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.amd64.AMD64MacroAssembler);
    descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
         0: .line 459
            aload 1 /* asm */
            aload 0 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.target:Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.wordSize:I
            iconst_2
            imul
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.align:(I)V
         1: .line 460
            return
        end local 1 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   crb  Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
            0    2     1   asm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
    MethodParameters:
      Name  Flags
      crb   
      asm   

  private static void emitBroadcast(org.graalvm.compiler.asm.amd64.AMD64MacroAssembler, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        start local 1 // jdk.vm.ci.meta.JavaKind kind
        start local 2 // jdk.vm.ci.code.Register vecDst
        start local 3 // jdk.vm.ci.code.Register vecTmp
        start local 4 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize vectorSize
         0: .line 466
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
            aload 1 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iaload
            tableswitch { // 2 - 5
                    2: 1
                    3: 16
                    4: 16
                    5: 26
              default: 34
          }
         1: .line 468
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX2:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 4
         2: .line 469
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMOp.VPBROADCASTB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRMOp;
            aload 0 /* asm */
            aload 4 /* vectorSize */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         3: .line 470
            goto 35
      StackMap locals:
      StackMap stack:
         4: aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 8
         5: .line 471
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VPXOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
            aload 0 /* asm */
            aload 4 /* vectorSize */
            aload 3 /* vecTmp */
            aload 3 /* vecTmp */
            aload 3 /* vecTmp */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         6: .line 472
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VPSHUFB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
            aload 0 /* asm */
            aload 4 /* vectorSize */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            aload 3 /* vecTmp */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         7: .line 473
            goto 35
      StackMap locals:
      StackMap stack:
         8: aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.SSSE3:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 12
         9: .line 474
            aload 0 /* asm */
            aload 3 /* vecTmp */
            aload 3 /* vecTmp */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pxor:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        10: .line 475
            aload 0 /* asm */
            aload 2 /* vecDst */
            aload 3 /* vecTmp */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pshufb:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        11: .line 476
            goto 35
        12: .line 477
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.punpcklbw:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        13: .line 478
            aload 0 /* asm */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.punpcklbw:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        14: .line 479
            aload 0 /* asm */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            iconst_0
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pshufd:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
        15: .line 481
            goto 35
        16: .line 484
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX2:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 19
        17: .line 485
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMOp.VPBROADCASTW:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRMOp;
            aload 0 /* asm */
            aload 4 /* vectorSize */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        18: .line 486
            goto 35
      StackMap locals:
      StackMap stack:
        19: aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 23
        20: .line 487
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMIOp.VPSHUFLW:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRMIOp;
            aload 0 /* asm */
            aload 4 /* vectorSize */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            iconst_0
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMIOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
        21: .line 488
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMIOp.VPSHUFD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRMIOp;
            aload 0 /* asm */
            aload 4 /* vectorSize */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            iconst_0
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMIOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
        22: .line 489
            goto 35
        23: .line 490
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            iconst_0
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pshuflw:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
        24: .line 491
            aload 0 /* asm */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            iconst_0
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pshufd:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
        25: .line 493
            goto 35
        26: .line 495
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX2:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 29
        27: .line 496
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMOp.VPBROADCASTD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRMOp;
            aload 0 /* asm */
            aload 4 /* vectorSize */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        28: .line 497
            goto 35
      StackMap locals:
      StackMap stack:
        29: aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 32
        30: .line 498
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMIOp.VPSHUFD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRMIOp;
            aload 0 /* asm */
            aload 4 /* vectorSize */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            iconst_0
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMIOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
        31: .line 499
            goto 35
        32: .line 500
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            aload 2 /* vecDst */
            aload 2 /* vecDst */
            iconst_0
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pshufd:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
        33: .line 502
            goto 35
        34: .line 504
      StackMap locals:
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        35: .line 506
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize vectorSize
        end local 3 // jdk.vm.ci.code.Register vecTmp
        end local 2 // jdk.vm.ci.code.Register vecDst
        end local 1 // jdk.vm.ci.meta.JavaKind kind
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   36     0         asm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            0   36     1        kind  Ljdk/vm/ci/meta/JavaKind;
            0   36     2      vecDst  Ljdk/vm/ci/code/Register;
            0   36     3      vecTmp  Ljdk/vm/ci/code/Register;
            0   36     4  vectorSize  Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
    MethodParameters:
            Name  Flags
      asm         
      kind        
      vecDst      
      vecTmp      
      vectorSize  

  private void emitVectorCompare(org.graalvm.compiler.asm.amd64.AMD64MacroAssembler, jdk.vm.ci.meta.JavaKind, int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register[], jdk.vm.ci.code.Register[], jdk.vm.ci.code.Register[], org.graalvm.compiler.asm.Label[], boolean, boolean);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/JavaKind;ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/code/Register;[Lorg/graalvm/compiler/asm/Label;ZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=15, args_size=12
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
        start local 1 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        start local 2 // jdk.vm.ci.meta.JavaKind kind
        start local 3 // int nVectors
        start local 4 // jdk.vm.ci.code.Register arrayPtr
        start local 5 // jdk.vm.ci.code.Register index
        start local 6 // jdk.vm.ci.code.Register[] vecCmp
        start local 7 // jdk.vm.ci.code.Register[] vecArray
        start local 8 // jdk.vm.ci.code.Register[] cmpResult
        start local 9 // org.graalvm.compiler.asm.Label[] vectorFound
        start local 10 // boolean shortJmp
        start local 11 // boolean alignedLoad
         0: .line 520
            iconst_0
            istore 12 /* i */
        start local 12 // int i
         1: goto 9
         2: .line 521
      StackMap locals: int
      StackMap stack:
            iload 12 /* i */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            imul
            istore 13 /* base */
        start local 13 // int base
         3: .line 522
            iconst_0
            istore 14 /* j */
        start local 14 // int j
         4: goto 7
         5: .line 523
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* asm */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            aload 7 /* vecArray */
            iload 13 /* base */
            iload 14 /* j */
            iadd
            aaload
            aload 4 /* arrayPtr */
            aload 5 /* index */
            aload 0 /* this */
            iload 3 /* nVectors */
            iload 12 /* i */
            iconst_1
            iadd
            isub
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorOffset:(I)I
            iload 11 /* alignedLoad */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitArrayLoad:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IZ)V
         6: .line 522
            iinc 14 /* j */ 1
      StackMap locals:
      StackMap stack:
         7: iload 14 /* j */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            if_icmplt 5
        end local 14 // int j
        end local 13 // int base
         8: .line 520
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 12 /* i */
            iload 3 /* nVectors */
            if_icmplt 2
        end local 12 // int i
        10: .line 528
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.findTwoConsecutive:Z
            ifne 28
        11: .line 529
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        12: goto 26
        13: .line 530
      StackMap locals:
      StackMap stack:
            iload 12 /* i */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            imul
            istore 13 /* base */
        start local 13 // int base
        14: .line 531
            iconst_0
            istore 14 /* j */
        start local 14 // int j
        15: goto 20
        16: .line 532
      StackMap locals: int int
      StackMap stack:
            aload 1 /* asm */
            aload 2 /* kind */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            aload 7 /* vecArray */
            iload 13 /* base */
            iload 14 /* j */
            iadd
            aaload
            aload 6 /* vecCmp */
            iload 14 /* j */
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitVectorCompareInst:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        17: .line 533
            iload 14 /* j */
            iconst_1
            iand
            iconst_1
            if_icmpne 19
        18: .line 534
            aload 1 /* asm */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            aload 7 /* vecArray */
            iload 13 /* base */
            iload 14 /* j */
            iadd
            iconst_1
            isub
            aaload
            aload 7 /* vecArray */
            iload 13 /* base */
            iload 14 /* j */
            iadd
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitPOR:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        19: .line 531
      StackMap locals:
      StackMap stack:
            iinc 14 /* j */ 1
      StackMap locals:
      StackMap stack:
        20: iload 14 /* j */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            if_icmplt 16
        end local 14 // int j
        21: .line 537
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.nValues:I
            iconst_2
            if_icmple 23
        22: .line 538
            aload 1 /* asm */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            aload 7 /* vecArray */
            iload 13 /* base */
            aaload
            aload 7 /* vecArray */
            iload 13 /* base */
            iconst_2
            iadd
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitPOR:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        23: .line 540
      StackMap locals:
      StackMap stack:
            aload 1 /* asm */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            aload 8 /* cmpResult */
            iconst_0
            aaload
            aload 7 /* vecArray */
            iload 13 /* base */
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitMOVMSK:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        24: .line 541
            aload 1 /* asm */
            aload 8 /* cmpResult */
            iconst_0
            aaload
            aload 9 /* vectorFound */
            iload 3 /* nVectors */
            iload 12 /* i */
            iconst_1
            iadd
            isub
            aaload
            iload 10 /* shortJmp */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitJnz:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/Label;Z)V
        end local 13 // int base
        25: .line 529
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 12 /* i */
            iload 3 /* nVectors */
            if_icmplt 13
        end local 12 // int i
        27: .line 543
            goto 38
        28: .line 544
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        29: goto 37
        30: .line 545
      StackMap locals: int
      StackMap stack:
            aload 1 /* asm */
            aload 2 /* kind */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            aload 7 /* vecArray */
            iload 12 /* i */
            aaload
            aload 6 /* vecCmp */
            iconst_0
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitVectorCompareInst:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        31: .line 546
            aload 1 /* asm */
            aload 2 /* kind */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            aload 7 /* vecArray */
            iload 12 /* i */
            iconst_1
            iadd
            aaload
            aload 6 /* vecCmp */
            iconst_0
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitVectorCompareInst:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        32: .line 547
            aload 1 /* asm */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            aload 8 /* cmpResult */
            iconst_1
            aaload
            aload 7 /* vecArray */
            iload 12 /* i */
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitMOVMSK:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        33: .line 548
            aload 1 /* asm */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.getVectorSize:()Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            aload 8 /* cmpResult */
            iconst_0
            aaload
            aload 7 /* vecArray */
            iload 12 /* i */
            iconst_1
            iadd
            aaload
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitMOVMSK:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        34: .line 549
            aload 1 /* asm */
            aload 8 /* cmpResult */
            iconst_1
            aaload
            aload 9 /* vectorFound */
            iload 3 /* nVectors */
            iload 12 /* i */
            iconst_1
            iadd
            isub
            aaload
            iload 10 /* shortJmp */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitJnz:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/Label;Z)V
        35: .line 550
            aload 1 /* asm */
            aload 8 /* cmpResult */
            iconst_0
            aaload
            aload 9 /* vectorFound */
            iload 3 /* nVectors */
            iload 12 /* i */
            iconst_2
            iadd
            isub
            aaload
            iload 10 /* shortJmp */
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.emitJnz:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/Label;Z)V
        36: .line 544
            iinc 12 /* i */ 2
      StackMap locals:
      StackMap stack:
        37: iload 12 /* i */
            iload 3 /* nVectors */
            if_icmplt 30
        end local 12 // int i
        38: .line 553
      StackMap locals:
      StackMap stack:
            return
        end local 11 // boolean alignedLoad
        end local 10 // boolean shortJmp
        end local 9 // org.graalvm.compiler.asm.Label[] vectorFound
        end local 8 // jdk.vm.ci.code.Register[] cmpResult
        end local 7 // jdk.vm.ci.code.Register[] vecArray
        end local 6 // jdk.vm.ci.code.Register[] vecCmp
        end local 5 // jdk.vm.ci.code.Register index
        end local 4 // jdk.vm.ci.code.Register arrayPtr
        end local 3 // int nVectors
        end local 2 // jdk.vm.ci.meta.JavaKind kind
        end local 1 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   39     0         this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;
            0   39     1          asm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            0   39     2         kind  Ljdk/vm/ci/meta/JavaKind;
            0   39     3     nVectors  I
            0   39     4     arrayPtr  Ljdk/vm/ci/code/Register;
            0   39     5        index  Ljdk/vm/ci/code/Register;
            0   39     6       vecCmp  [Ljdk/vm/ci/code/Register;
            0   39     7     vecArray  [Ljdk/vm/ci/code/Register;
            0   39     8    cmpResult  [Ljdk/vm/ci/code/Register;
            0   39     9  vectorFound  [Lorg/graalvm/compiler/asm/Label;
            0   39    10     shortJmp  Z
            0   39    11  alignedLoad  Z
            1   10    12            i  I
            3    8    13         base  I
            4    8    14            j  I
           12   27    12            i  I
           14   25    13         base  I
           15   21    14            j  I
           29   38    12            i  I
    MethodParameters:
             Name  Flags
      asm          
      kind         
      nVectors     
      arrayPtr     
      index        
      vecCmp       
      vecArray     
      cmpResult    
      vectorFound  
      shortJmp     
      alignedLoad  

  private static void emitJnz(org.graalvm.compiler.asm.amd64.AMD64MacroAssembler, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.Label, boolean);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/Label;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        start local 1 // jdk.vm.ci.code.Register cond
        start local 2 // org.graalvm.compiler.asm.Label tgt
        start local 3 // boolean shortJmp
         0: .line 556
            aload 0 /* asm */
            aload 1 /* cond */
            aload 1 /* cond */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.testl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         1: .line 557
            iload 3 /* shortJmp */
            ifeq 4
         2: .line 558
            aload 0 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 2 /* tgt */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
         3: .line 559
            goto 5
         4: .line 560
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 2 /* tgt */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
         5: .line 562
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean shortJmp
        end local 2 // org.graalvm.compiler.asm.Label tgt
        end local 1 // jdk.vm.ci.code.Register cond
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0       asm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            0    6     1      cond  Ljdk/vm/ci/code/Register;
            0    6     2       tgt  Lorg/graalvm/compiler/asm/Label;
            0    6     3  shortJmp  Z
    MethodParameters:
          Name  Flags
      asm       
      cond      
      tgt       
      shortJmp  

  private void emitArrayLoad(org.graalvm.compiler.asm.amd64.AMD64MacroAssembler, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, boolean);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=8
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
        start local 1 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        start local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize vectorSize
        start local 3 // jdk.vm.ci.code.Register vecDst
        start local 4 // jdk.vm.ci.code.Register arrayPtr
        start local 5 // jdk.vm.ci.code.Register index
        start local 6 // int offset
        start local 7 // boolean alignedLoad
         0: .line 565
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* arrayPtr */
            aload 5 /* index */
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.arrayIndexScale:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            iload 6 /* offset */
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;I)V
            astore 8 /* src */
        start local 8 // org.graalvm.compiler.asm.amd64.AMD64Address src
         1: .line 566
            aload 1 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 7
         2: .line 567
            iload 7 /* alignedLoad */
            ifeq 3
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMoveOp.VMOVDQA32:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMoveOp;
            goto 4
      StackMap locals: org.graalvm.compiler.asm.amd64.AMD64Address
      StackMap stack:
         3: getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMoveOp.VMOVDQU32:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMoveOp;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMoveOp
         4: astore 9 /* loadOp */
        start local 9 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMoveOp loadOp
         5: .line 568
            aload 9 /* loadOp */
            aload 1 /* asm */
            aload 2 /* vectorSize */
            aload 3 /* vecDst */
            aload 8 /* src */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMoveOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        end local 9 // org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMoveOp loadOp
         6: .line 569
            goto 8
         7: .line 571
      StackMap locals:
      StackMap stack:
            aload 1 /* asm */
            aload 3 /* vecDst */
            aload 8 /* src */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movdqu:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
         8: .line 573
      StackMap locals:
      StackMap stack:
            return
        end local 8 // org.graalvm.compiler.asm.amd64.AMD64Address src
        end local 7 // boolean alignedLoad
        end local 6 // int offset
        end local 5 // jdk.vm.ci.code.Register index
        end local 4 // jdk.vm.ci.code.Register arrayPtr
        end local 3 // jdk.vm.ci.code.Register vecDst
        end local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize vectorSize
        end local 1 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp;
            0    9     1          asm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            0    9     2   vectorSize  Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            0    9     3       vecDst  Ljdk/vm/ci/code/Register;
            0    9     4     arrayPtr  Ljdk/vm/ci/code/Register;
            0    9     5        index  Ljdk/vm/ci/code/Register;
            0    9     6       offset  I
            0    9     7  alignedLoad  Z
            1    9     8          src  Lorg/graalvm/compiler/asm/amd64/AMD64Address;
            5    6     9       loadOp  Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexMoveOp;
    MethodParameters:
             Name  Flags
      asm          
      vectorSize   
      vecDst       
      arrayPtr     
      index        
      offset       
      alignedLoad  

  private static void emitVectorCompareInst(org.graalvm.compiler.asm.amd64.AMD64MacroAssembler, jdk.vm.ci.meta.JavaKind, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        start local 1 // jdk.vm.ci.meta.JavaKind kind
        start local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize vectorSize
        start local 3 // jdk.vm.ci.code.Register vecArray
        start local 4 // jdk.vm.ci.code.Register vecCmp
         0: .line 580
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
            aload 1 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iaload
            tableswitch { // 2 - 5
                    2: 1
                    3: 6
                    4: 6
                    5: 11
              default: 16
          }
         1: .line 582
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 4
         2: .line 583
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VPCMPEQB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
            aload 0 /* asm */
            aload 2 /* vectorSize */
            aload 3 /* vecArray */
            aload 4 /* vecCmp */
            aload 3 /* vecArray */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         3: .line 584
            goto 17
         4: .line 585
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            aload 3 /* vecArray */
            aload 4 /* vecCmp */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpeqb:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         5: .line 587
            goto 17
         6: .line 590
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 9
         7: .line 591
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VPCMPEQW:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
            aload 0 /* asm */
            aload 2 /* vectorSize */
            aload 3 /* vecArray */
            aload 4 /* vecCmp */
            aload 3 /* vecArray */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         8: .line 592
            goto 17
         9: .line 593
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            aload 3 /* vecArray */
            aload 4 /* vecCmp */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpeqw:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        10: .line 595
            goto 17
        11: .line 597
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 14
        12: .line 598
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VPCMPEQD:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
            aload 0 /* asm */
            aload 2 /* vectorSize */
            aload 3 /* vecArray */
            aload 4 /* vecCmp */
            aload 3 /* vecArray */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        13: .line 599
            goto 17
        14: .line 600
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            aload 3 /* vecArray */
            aload 4 /* vecCmp */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpeqd:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        15: .line 602
            goto 17
        16: .line 604
      StackMap locals:
      StackMap stack:
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        17: .line 606
      StackMap locals:
      StackMap stack:
            return
        end local 4 // jdk.vm.ci.code.Register vecCmp
        end local 3 // jdk.vm.ci.code.Register vecArray
        end local 2 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize vectorSize
        end local 1 // jdk.vm.ci.meta.JavaKind kind
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   18     0         asm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            0   18     1        kind  Ljdk/vm/ci/meta/JavaKind;
            0   18     2  vectorSize  Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            0   18     3    vecArray  Ljdk/vm/ci/code/Register;
            0   18     4      vecCmp  Ljdk/vm/ci/code/Register;
    MethodParameters:
            Name  Flags
      asm         
      kind        
      vectorSize  
      vecArray    
      vecCmp      

  private static void emitPOR(org.graalvm.compiler.asm.amd64.AMD64MacroAssembler, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        start local 1 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize vectorSize
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register vecSrc
         0: .line 609
            aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 3
         1: .line 610
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.VPOR:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRVMOp;
            aload 0 /* asm */
            aload 1 /* vectorSize */
            aload 2 /* dst */
            aload 2 /* dst */
            aload 3 /* vecSrc */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         2: .line 611
            goto 4
         3: .line 613
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            aload 2 /* dst */
            aload 3 /* vecSrc */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.por:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         4: .line 615
      StackMap locals:
      StackMap stack:
            return
        end local 3 // jdk.vm.ci.code.Register vecSrc
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize vectorSize
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0         asm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            0    5     1  vectorSize  Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            0    5     2         dst  Ljdk/vm/ci/code/Register;
            0    5     3      vecSrc  Ljdk/vm/ci/code/Register;
    MethodParameters:
            Name  Flags
      asm         
      vectorSize  
      dst         
      vecSrc      

  private static void emitMOVMSK(org.graalvm.compiler.asm.amd64.AMD64MacroAssembler, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
        start local 1 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize vectorSize
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register vecSrc
         0: .line 618
            aload 0 /* asm */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.supports:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ifeq 3
         1: .line 619
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMOp.VPMOVMSKB:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$VexRMOp;
            aload 0 /* asm */
            aload 1 /* vectorSize */
            aload 2 /* dst */
            aload 3 /* vecSrc */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMOp.emit:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         2: .line 620
            goto 4
         3: .line 622
      StackMap locals:
      StackMap stack:
            aload 0 /* asm */
            aload 2 /* dst */
            aload 3 /* vecSrc */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pmovmskb:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         4: .line 624
      StackMap locals:
      StackMap stack:
            return
        end local 3 // jdk.vm.ci.code.Register vecSrc
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.amd64.AVXKind$AVXSize vectorSize
        end local 0 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0         asm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            0    5     1  vectorSize  Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
            0    5     2         dst  Ljdk/vm/ci/code/Register;
            0    5     3      vecSrc  Ljdk/vm/ci/code/Register;
    MethodParameters:
            Name  Flags
      asm         
      vectorSize  
      dst         
      vecSrc      

  private static org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize getOpSize(jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.meta.JavaKind kind
         0: .line 627
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
            aload 0 /* kind */
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iaload
            tableswitch { // 2 - 5
                    2: 1
                    3: 2
                    4: 2
                    5: 3
              default: 4
          }
         1: .line 629
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.BYTE:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
            areturn
         2: .line 632
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.WORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
            areturn
         3: .line 634
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
            areturn
         4: .line 636
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AMD64BaseAssembler$OperandSize;
            areturn
        end local 0 // jdk.vm.ci.meta.JavaKind kind
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  kind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
      Name  Flags
      kind  

  private static boolean supportsAVX2(org.graalvm.compiler.lir.gen.LIRGeneratorTool);
    descriptor: (Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.lir.gen.LIRGeneratorTool tool
         0: .line 641
            aload 0 /* tool */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX2:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.supports:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
            ireturn
        end local 0 // org.graalvm.compiler.lir.gen.LIRGeneratorTool tool
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  tool  Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
    MethodParameters:
      Name  Flags
      tool  

  private static boolean supports(org.graalvm.compiler.lir.gen.LIRGeneratorTool, jdk.vm.ci.amd64.AMD64$CPUFeature);
    descriptor: (Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/amd64/AMD64$CPUFeature;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.lir.gen.LIRGeneratorTool tool
        start local 1 // jdk.vm.ci.amd64.AMD64$CPUFeature cpuFeature
         0: .line 645
            aload 0 /* tool */
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            checkcast jdk.vm.ci.amd64.AMD64
            invokevirtual jdk.vm.ci.amd64.AMD64.getFeatures:()Ljava/util/EnumSet;
            aload 1 /* cpuFeature */
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // jdk.vm.ci.amd64.AMD64$CPUFeature cpuFeature
        end local 0 // org.graalvm.compiler.lir.gen.LIRGeneratorTool tool
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        tool  Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
            0    1     1  cpuFeature  Ljdk/vm/ci/amd64/AMD64$CPUFeature;
    MethodParameters:
            Name  Flags
      tool        
      cpuFeature  

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

  static int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 68
            getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic jdk.vm.ci.meta.JavaKind.values:()[Ljdk/vm/ci/meta/JavaKind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Boolean:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_4
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Double:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 8
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Float:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 6
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Illegal:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 11
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_5
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 7
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 9
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Short:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_3
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Void:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 10
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            dup
            putstatic org.graalvm.compiler.lir.amd64.AMD64ArrayIndexOfOp.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
}
SourceFile: "AMD64ArrayIndexOfOp.java"
InnerClasses:
  public final CPUFeature = jdk.vm.ci.amd64.AMD64$CPUFeature of jdk.vm.ci.amd64.AMD64
  public final Scale = org.graalvm.compiler.asm.amd64.AMD64Address$Scale of org.graalvm.compiler.asm.amd64.AMD64Address
  public final AMD64BinaryArithmetic = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64BinaryArithmetic of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public AMD64MIOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64MIOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public AMD64RMOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$AMD64RMOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public final ConditionFlag = org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public final VexMoveOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$VexMoveOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public final VexRMIOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMIOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public VexRMOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRMOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public VexRVMOp = org.graalvm.compiler.asm.amd64.AMD64Assembler$VexRVMOp of org.graalvm.compiler.asm.amd64.AMD64Assembler
  public OperandSize = org.graalvm.compiler.asm.amd64.AMD64BaseAssembler$OperandSize of org.graalvm.compiler.asm.amd64.AMD64BaseAssembler
  public final AVXSize = org.graalvm.compiler.asm.amd64.AVXKind$AVXSize of org.graalvm.compiler.asm.amd64.AVXKind
  public abstract Alive = org.graalvm.compiler.lir.LIRInstruction$Alive of org.graalvm.compiler.lir.LIRInstruction
  public abstract Def = org.graalvm.compiler.lir.LIRInstruction$Def of org.graalvm.compiler.lir.LIRInstruction
  public final OperandFlag = org.graalvm.compiler.lir.LIRInstruction$OperandFlag of org.graalvm.compiler.lir.LIRInstruction
  public abstract Temp = org.graalvm.compiler.lir.LIRInstruction$Temp of org.graalvm.compiler.lir.LIRInstruction
  public abstract Use = org.graalvm.compiler.lir.LIRInstruction$Use of org.graalvm.compiler.lir.LIRInstruction
    RuntimeVisibleAnnotations: 
      org.graalvm.compiler.lir.Opcode(value = "AMD64_ARRAY_INDEX_OF")