public final class org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp 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.AMD64ArrayCompareToOp
  super_class: org.graalvm.compiler.lir.amd64.AMD64LIRInstruction
{
  public static final org.graalvm.compiler.lir.LIRInstructionClass<org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp> 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/AMD64ArrayCompareToOp;>;

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

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

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

  private final int array2BaseOffset;
    descriptor: I
    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 array1Value;
    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 array2Value;
    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 length1Value;
    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 length2Value;
    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 length1ValueTemp;
    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 length2ValueTemp;
    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 temp1;
    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 temp2;
    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 vectorTemp1;
    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

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

  public void <init>(org.graalvm.compiler.lir.gen.LIRGeneratorTool, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, 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: (Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;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: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=9, args_size=9
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp this
        start local 1 // org.graalvm.compiler.lir.gen.LIRGeneratorTool tool
        start local 2 // jdk.vm.ci.meta.JavaKind kind1
        start local 3 // jdk.vm.ci.meta.JavaKind kind2
        start local 4 // jdk.vm.ci.meta.Value result
        start local 5 // jdk.vm.ci.meta.Value array1
        start local 6 // jdk.vm.ci.meta.Value array2
        start local 7 // jdk.vm.ci.meta.Value length1
        start local 8 // jdk.vm.ci.meta.Value length2
         0: .line 82
            aload 0 /* this */
            getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.TYPE:Lorg/graalvm/compiler/lir/LIRInstructionClass;
            invokespecial org.graalvm.compiler.lir.amd64.AMD64LIRInstruction.<init>:(Lorg/graalvm/compiler/lir/LIRInstructionClass;)V
         1: .line 83
            aload 0 /* this */
            aload 2 /* kind1 */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
         2: .line 84
            aload 0 /* this */
            aload 3 /* kind2 */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
         3: .line 87
            aload 0 /* this */
            aload 1 /* 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 /* kind1 */
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.getArrayBaseOffset:(Ljdk/vm/ci/meta/JavaKind;)I
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array1BaseOffset:I
         4: .line 88
            aload 0 /* this */
            aload 1 /* 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 3 /* kind2 */
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.getArrayBaseOffset:(Ljdk/vm/ci/meta/JavaKind;)I
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array2BaseOffset:I
         5: .line 90
            aload 0 /* this */
            aload 4 /* result */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.resultValue:Ljdk/vm/ci/meta/Value;
         6: .line 91
            aload 0 /* this */
            aload 5 /* array1 */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array1Value:Ljdk/vm/ci/meta/Value;
         7: .line 92
            aload 0 /* this */
            aload 6 /* array2 */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array2Value:Ljdk/vm/ci/meta/Value;
         8: .line 97
            aload 0 /* this */
            aload 7 /* length1 */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.length1Value:Ljdk/vm/ci/meta/Value;
         9: .line 98
            aload 0 /* this */
            aload 8 /* length2 */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.length2Value:Ljdk/vm/ci/meta/Value;
        10: .line 99
            aload 0 /* this */
            aload 7 /* length1 */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.length1ValueTemp:Ljdk/vm/ci/meta/Value;
        11: .line 100
            aload 0 /* this */
            aload 8 /* length2 */
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.length2ValueTemp:Ljdk/vm/ci/meta/Value;
        12: .line 103
            aload 0 /* this */
            aload 1 /* tool */
            aload 1 /* 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.unknownReference:(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.AMD64ArrayCompareToOp.temp1:Ljdk/vm/ci/meta/Value;
        13: .line 104
            aload 0 /* this */
            aload 1 /* tool */
            aload 1 /* 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.unknownReference:(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.AMD64ArrayCompareToOp.temp2:Ljdk/vm/ci/meta/Value;
        14: .line 107
            aload 1 /* tool */
            invokeinterface org.graalvm.compiler.lir.gen.LIRGeneratorTool.target:()Ljdk/vm/ci/code/TargetDescription;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.supportsSSE42:(Ljdk/vm/ci/code/TargetDescription;)Z
            ifeq 17
        15: .line 108
            aload 0 /* this */
            aload 1 /* tool */
            getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE: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.AMD64ArrayCompareToOp.vectorTemp1:Ljdk/vm/ci/meta/Value;
        16: .line 109
            goto 18
        17: .line 110
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp org.graalvm.compiler.lir.gen.LIRGeneratorTool jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.JavaKind 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:
            aload 0 /* this */
            getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
            putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.vectorTemp1:Ljdk/vm/ci/meta/Value;
        18: .line 112
      StackMap locals:
      StackMap stack:
            return
        end local 8 // jdk.vm.ci.meta.Value length2
        end local 7 // jdk.vm.ci.meta.Value length1
        end local 6 // jdk.vm.ci.meta.Value array2
        end local 5 // jdk.vm.ci.meta.Value array1
        end local 4 // jdk.vm.ci.meta.Value result
        end local 3 // jdk.vm.ci.meta.JavaKind kind2
        end local 2 // jdk.vm.ci.meta.JavaKind kind1
        end local 1 // org.graalvm.compiler.lir.gen.LIRGeneratorTool tool
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayCompareToOp;
            0   19     1     tool  Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
            0   19     2    kind1  Ljdk/vm/ci/meta/JavaKind;
            0   19     3    kind2  Ljdk/vm/ci/meta/JavaKind;
            0   19     4   result  Ljdk/vm/ci/meta/Value;
            0   19     5   array1  Ljdk/vm/ci/meta/Value;
            0   19     6   array2  Ljdk/vm/ci/meta/Value;
            0   19     7  length1  Ljdk/vm/ci/meta/Value;
            0   19     8  length2  Ljdk/vm/ci/meta/Value;
    MethodParameters:
         Name  Flags
      tool     
      kind1    
      kind2    
      result   
      array1   
      array2   
      length1  
      length2  

  private static boolean supportsSSE42(jdk.vm.ci.code.TargetDescription);
    descriptor: (Ljdk/vm/ci/code/TargetDescription;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.vm.ci.code.TargetDescription target
         0: .line 115
            aload 0 /* target */
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            checkcast jdk.vm.ci.amd64.AMD64
            astore 1 /* arch */
        start local 1 // jdk.vm.ci.amd64.AMD64 arch
         1: .line 116
            aload 1 /* arch */
            invokevirtual jdk.vm.ci.amd64.AMD64.getFeatures:()Ljava/util/EnumSet;
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.SSE4_2:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // jdk.vm.ci.amd64.AMD64 arch
        end local 0 // jdk.vm.ci.code.TargetDescription target
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  target  Ljdk/vm/ci/code/TargetDescription;
            1    2     1    arch  Ljdk/vm/ci/amd64/AMD64;
    MethodParameters:
        Name  Flags
      target  

  private static boolean supportsAVX2(jdk.vm.ci.code.TargetDescription);
    descriptor: (Ljdk/vm/ci/code/TargetDescription;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.vm.ci.code.TargetDescription target
         0: .line 120
            aload 0 /* target */
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            checkcast jdk.vm.ci.amd64.AMD64
            astore 1 /* arch */
        start local 1 // jdk.vm.ci.amd64.AMD64 arch
         1: .line 121
            aload 1 /* arch */
            invokevirtual jdk.vm.ci.amd64.AMD64.getFeatures:()Ljava/util/EnumSet;
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX2:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // jdk.vm.ci.amd64.AMD64 arch
        end local 0 // jdk.vm.ci.code.TargetDescription target
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  target  Ljdk/vm/ci/code/TargetDescription;
            1    2     1    arch  Ljdk/vm/ci/amd64/AMD64;
    MethodParameters:
        Name  Flags
      target  

  private static boolean supportsAVX512VLBW(jdk.vm.ci.code.TargetDescription);
    descriptor: (Ljdk/vm/ci/code/TargetDescription;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.vm.ci.code.TargetDescription target
         0: .line 125
            aload 0 /* target */
            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;
            astore 1 /* features */
        start local 1 // java.util.EnumSet features
         1: .line 126
            aload 1 /* features */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX512BW:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifeq 2
            aload 1 /* features */
            getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX512VL:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ifeq 2
            iconst_1
            ireturn
      StackMap locals: java.util.EnumSet
      StackMap stack:
         2: iconst_0
            ireturn
        end local 1 // java.util.EnumSet features
        end local 0 // jdk.vm.ci.code.TargetDescription target
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0    target  Ljdk/vm/ci/code/TargetDescription;
            1    3     1  features  Ljava/util/EnumSet<Ljdk/vm/ci/amd64/AMD64$CPUFeature;>;
    MethodParameters:
        Name  Flags
      target  

  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=10, locals=34, args_size=3
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp this
        start local 1 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 2 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler masm
         0: .line 131
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.resultValue:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 3 /* result */
        start local 3 // jdk.vm.ci.code.Register result
         1: .line 132
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.temp1:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 4 /* str1 */
        start local 4 // jdk.vm.ci.code.Register str1
         2: .line 133
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.temp2:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 5 /* str2 */
        start local 5 // jdk.vm.ci.code.Register str2
         3: .line 136
            aload 2 /* masm */
            aload 4 /* str1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array1Value:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array1BaseOffset: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
         4: .line 137
            aload 2 /* masm */
            aload 5 /* str2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array2Value:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array2BaseOffset: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
         5: .line 138
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.length1Value:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 6 /* cnt1 */
        start local 6 // jdk.vm.ci.code.Register cnt1
         6: .line 139
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.length2Value:Ljdk/vm/ci/meta/Value;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 7 /* cnt2 */
        start local 7 // jdk.vm.ci.code.Register cnt2
         7: .line 142
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 8 /* LENGTH_DIFF_LABEL */
        start local 8 // org.graalvm.compiler.asm.Label LENGTH_DIFF_LABEL
         8: .line 143
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 9 /* POP_LABEL */
        start local 9 // org.graalvm.compiler.asm.Label POP_LABEL
         9: .line 144
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 10 /* DONE_LABEL */
        start local 10 // org.graalvm.compiler.asm.Label DONE_LABEL
        10: .line 145
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 11 /* WHILE_HEAD_LABEL */
        start local 11 // org.graalvm.compiler.asm.Label WHILE_HEAD_LABEL
        11: .line 146
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 12 /* COMPARE_WIDE_VECTORS_LOOP_FAILED */
        start local 12 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS_LOOP_FAILED
        12: .line 148
            iconst_m1
            istore 15 /* adr_stride */
        start local 15 // int adr_stride
        13: .line 149
            iconst_m1
            istore 16 /* adr_stride1 */
        start local 16 // int adr_stride1
        14: .line 150
            iconst_m1
            istore 17 /* adr_stride2 */
        start local 17 // int adr_stride2
        15: .line 152
            bipush 64
            istore 18 /* stride2x2 */
        start local 18 // int stride2x2
        16: .line 153
            aconst_null
            astore 19 /* scale */
        start local 19 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale
        17: .line 154
            aconst_null
            astore 20 /* scale1 */
        start local 20 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale1
        18: .line 155
            aconst_null
            astore 21 /* scale2 */
        start local 21 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale2
        19: .line 158
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 21
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 21
        20: .line 159
            bipush 32
            istore 18 /* stride2x2 */
        21: .line 163
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler 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 org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label top top int int int int org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 23
        22: .line 164
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.shrl:(Ljdk/vm/ci/code/Register;I)V
        23: .line 169
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 3 /* result */
            aload 6 /* cnt1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        24: .line 170
            aload 2 /* masm */
            aload 6 /* cnt1 */
            aload 7 /* cnt2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        25: .line 171
            aload 2 /* masm */
            aload 6 /* cnt1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.push:(Ljdk/vm/ci/code/Register;)V
        26: .line 172
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.LessEqual:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 7 /* cnt2 */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmovl:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        27: .line 175
            aload 2 /* masm */
            aload 7 /* cnt2 */
            aload 7 /* cnt2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.testl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        28: .line 176
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 8 /* LENGTH_DIFF_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
        29: .line 178
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 33
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 33
        30: .line 180
            aload 2 /* masm */
            aload 3 /* result */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzbl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        31: .line 181
            aload 2 /* masm */
            aload 6 /* cnt1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzbl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        32: .line 183
            goto 39
      StackMap locals:
      StackMap stack:
        33: aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 37
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 37
        34: .line 185
            aload 2 /* masm */
            aload 3 /* result */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzwl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        35: .line 186
            aload 2 /* masm */
            aload 6 /* cnt1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzwl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        36: .line 187
            goto 39
        37: .line 188
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 3 /* result */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzbl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        38: .line 189
            aload 2 /* masm */
            aload 6 /* cnt1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzwl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        39: .line 191
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 3 /* result */
            aload 6 /* cnt1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        40: .line 192
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 9 /* POP_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
        41: .line 195
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 43
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 43
        42: .line 197
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.shrl:(Ljdk/vm/ci/code/Register;I)V
        43: .line 199
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpl:(Ljdk/vm/ci/code/Register;I)V
        44: .line 200
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Equal:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 8 /* LENGTH_DIFF_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
        45: .line 204
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 55
        46: .line 205
            aload 2 /* masm */
            aload 4 /* str1 */
            aload 5 /* str2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpptr:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        47: .line 206
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Equal:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 8 /* LENGTH_DIFF_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
        48: .line 208
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 52
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 52
        49: .line 209
            getstatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.Times1:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            astore 19 /* scale */
        50: .line 210
            bipush 16
            istore 13 /* stride */
        start local 13 // int stride
        51: .line 211
            goto 58
        end local 13 // int stride
        52: .line 212
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.Times2:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            astore 19 /* scale */
        53: .line 213
            bipush 8
            istore 13 /* stride */
        start local 13 // int stride
        54: .line 215
            goto 58
        end local 13 // int stride
        55: .line 216
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.Times1:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            astore 20 /* scale1 */
        56: .line 217
            getstatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.Times2:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            astore 21 /* scale2 */
        57: .line 219
            bipush 8
            istore 13 /* stride */
        start local 13 // int stride
        58: .line 223
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler 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 org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int top int int int int org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale
      StackMap stack:
            aload 1 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.target:Ljdk/vm/ci/code/TargetDescription;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.supportsAVX2:(Ljdk/vm/ci/code/TargetDescription;)Z
            ifeq 188
            aload 1 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.target:Ljdk/vm/ci/code/TargetDescription;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.supportsSSE42:(Ljdk/vm/ci/code/TargetDescription;)Z
            ifeq 188
        59: .line 224
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.vectorTemp1:Ljdk/vm/ci/meta/Value;
            getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/PlatformKind;)Ljdk/vm/ci/code/Register;
            astore 22 /* vec1 */
        start local 22 // jdk.vm.ci.code.Register vec1
        60: .line 227
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 23 /* COMPARE_WIDE_VECTORS */
        start local 23 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS
        61: .line 228
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 24 /* VECTOR_NOT_EQUAL */
        start local 24 // org.graalvm.compiler.asm.Label VECTOR_NOT_EQUAL
        62: .line 229
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 25 /* COMPARE_WIDE_TAIL */
        start local 25 // org.graalvm.compiler.asm.Label COMPARE_WIDE_TAIL
        63: .line 230
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 26 /* COMPARE_SMALL_STR */
        start local 26 // org.graalvm.compiler.asm.Label COMPARE_SMALL_STR
        64: .line 231
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 27 /* COMPARE_WIDE_VECTORS_LOOP */
        start local 27 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS_LOOP
        65: .line 232
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 28 /* COMPARE_16_CHARS */
        start local 28 // org.graalvm.compiler.asm.Label COMPARE_16_CHARS
        66: .line 233
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 29 /* COMPARE_INDEX_CHAR */
        start local 29 // org.graalvm.compiler.asm.Label COMPARE_INDEX_CHAR
        67: .line 234
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 30 /* COMPARE_WIDE_VECTORS_LOOP_AVX2 */
        start local 30 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS_LOOP_AVX2
        68: .line 235
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 31 /* COMPARE_TAIL_LONG */
        start local 31 // org.graalvm.compiler.asm.Label COMPARE_TAIL_LONG
        69: .line 236
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 32 /* COMPARE_WIDE_VECTORS_LOOP_AVX3 */
        start local 32 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS_LOOP_AVX3
        70: .line 239
            bipush 25
            istore 33 /* pcmpmask */
        start local 33 // int pcmpmask
        71: .line 241
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 73
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 73
        72: .line 242
            iload 33 /* pcmpmask */
            bipush -2
            iand
            istore 33 /* pcmpmask */
        73: .line 248
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler 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 org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int top int int int int org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale 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 org.graalvm.compiler.asm.Label int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 76
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 76
        74: .line 249
            bipush 32
            istore 14 /* stride2 */
        start local 14 // int stride2
        75: .line 250
            goto 77
        end local 14 // int stride2
        76: .line 251
      StackMap locals:
      StackMap stack:
            bipush 16
            istore 14 /* stride2 */
        start local 14 // int stride2
        77: .line 254
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler 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 org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int int int int int int org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale 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 org.graalvm.compiler.asm.Label int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 80
        78: .line 255
            iload 13 /* stride */
            aload 19 /* scale */
            getfield org.graalvm.compiler.asm.amd64.AMD64Address$Scale.log2:I
            ishl
            istore 15 /* adr_stride */
        79: .line 256
            goto 82
        80: .line 257
      StackMap locals:
      StackMap stack:
            bipush 8
            istore 16 /* adr_stride1 */
        81: .line 258
            bipush 16
            istore 17 /* adr_stride2 */
        82: .line 261
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.$assertionsDisabled:Z
            ifne 84
            aload 3 /* result */
            getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 83
            aload 7 /* cnt2 */
            getstatic jdk.vm.ci.amd64.AMD64.rdx:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 83
            aload 6 /* cnt1 */
            getstatic jdk.vm.ci.amd64.AMD64.rcx:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifne 84
      StackMap locals:
      StackMap stack:
        83: new java.lang.AssertionError
            dup
            ldc "pcmpestri"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        84: .line 263
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 3 /* result */
            aload 7 /* cnt2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        85: .line 264
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iload 14 /* stride2 */
            iconst_1
            isub
            iconst_m1
            ixor
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.andl:(Ljdk/vm/ci/code/Register;I)V
        86: .line 265
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 31 /* COMPARE_TAIL_LONG */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
        87: .line 268
            aload 2 /* masm */
            aload 28 /* COMPARE_16_CHARS */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
        88: .line 270
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 91
        89: .line 271
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movdqu:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        90: .line 272
            goto 92
        91: .line 273
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pmovzxbw:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        92: .line 275
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            iload 33 /* pcmpmask */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
        93: .line 276
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Below:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 29 /* COMPARE_INDEX_CHAR */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
        94: .line 279
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 98
        95: .line 280
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            iload 15 /* adr_stride */
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movdqu:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        96: .line 281
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            iload 15 /* adr_stride */
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            iload 33 /* pcmpmask */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
        97: .line 282
            goto 100
        98: .line 283
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            iload 16 /* adr_stride1 */
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pmovzxbw:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        99: .line 284
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            iload 17 /* adr_stride2 */
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            iload 33 /* pcmpmask */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
       100: .line 286
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.AboveEqual:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 23 /* COMPARE_WIDE_VECTORS */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       101: .line 287
            aload 2 /* masm */
            aload 6 /* cnt1 */
            iload 13 /* stride */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addl:(Ljdk/vm/ci/code/Register;I)V
       102: .line 290
            aload 2 /* masm */
            aload 29 /* COMPARE_INDEX_CHAR */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       103: .line 291
            aload 0 /* this */
            aload 2 /* masm */
            aload 3 /* result */
            aload 7 /* cnt2 */
            aload 4 /* str1 */
            aload 5 /* str2 */
            aload 19 /* scale */
            aload 20 /* scale1 */
            aload 21 /* scale2 */
            aload 6 /* cnt1 */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.loadNextElements:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Ljdk/vm/ci/code/Register;)V
       104: .line 292
            aload 2 /* masm */
            aload 3 /* result */
            aload 7 /* cnt2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       105: .line 293
            aload 2 /* masm */
            aload 9 /* POP_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmp:(Lorg/graalvm/compiler/asm/Label;)V
       106: .line 296
            aload 2 /* masm */
            aload 23 /* COMPARE_WIDE_VECTORS */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       107: .line 298
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 111
       108: .line 299
            aload 2 /* masm */
            aload 4 /* str1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       109: .line 300
            aload 2 /* masm */
            aload 5 /* str2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       110: .line 301
            goto 113
       111: .line 302
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 4 /* str1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 20 /* scale1 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       112: .line 303
            aload 2 /* masm */
            aload 5 /* str2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 21 /* scale2 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       113: .line 305
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 3 /* result */
            iload 14 /* stride2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;I)V
       114: .line 306
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iload 14 /* stride2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;I)V
       115: .line 307
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 25 /* COMPARE_WIDE_TAIL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       116: .line 308
            aload 2 /* masm */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
       117: .line 311
            aload 2 /* masm */
            aload 27 /* COMPARE_WIDE_VECTORS_LOOP */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       118: .line 314
            aload 1 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.target:Ljdk/vm/ci/code/TargetDescription;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.supportsAVX512VLBW:(Ljdk/vm/ci/code/TargetDescription;)Z
            ifeq 137
       119: .line 315
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iload 18 /* stride2x2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpl:(Ljdk/vm/ci/code/Register;I)V
       120: .line 316
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Below:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 30 /* COMPARE_WIDE_VECTORS_LOOP_AVX2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       121: .line 317
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iload 18 /* stride2x2 */
            iconst_1
            isub
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.testl:(Ljdk/vm/ci/code/Register;I)V
       122: .line 319
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 30 /* COMPARE_WIDE_VECTORS_LOOP_AVX2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       123: .line 321
            aload 2 /* masm */
            aload 32 /* COMPARE_WIDE_VECTORS_LOOP_AVX3 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       124: .line 323
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 128
       125: .line 324
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.evmovdqu64:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       126: .line 326
            aload 2 /* masm */
            getstatic jdk.vm.ci.amd64.AMD64.k7:Ljdk/vm/ci/code/Register;
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.evpcmpeqb:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       127: .line 327
            goto 130
       128: .line 328
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 20 /* scale1 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.evpmovzxbw:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       129: .line 330
            aload 2 /* masm */
            getstatic jdk.vm.ci.amd64.AMD64.k7:Ljdk/vm/ci/code/Register;
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 21 /* scale2 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.evpcmpeqb:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       130: .line 332
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            getstatic jdk.vm.ci.amd64.AMD64.k7:Ljdk/vm/ci/code/Register;
            getstatic jdk.vm.ci.amd64.AMD64.k7:Ljdk/vm/ci/code/Register;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.kortestq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       131: .line 333
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.AboveEqual:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 12 /* COMPARE_WIDE_VECTORS_LOOP_FAILED */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       132: .line 334
            aload 2 /* masm */
            aload 3 /* result */
            iload 18 /* stride2x2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;I)V
       133: .line 335
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iload 18 /* stride2x2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;I)V
       134: .line 336
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 32 /* COMPARE_WIDE_VECTORS_LOOP_AVX3 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       135: .line 338
            aload 2 /* masm */
            aload 22 /* vec1 */
            aload 22 /* vec1 */
            aload 22 /* vec1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vpxor:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       136: .line 339
            aload 2 /* masm */
            aload 25 /* COMPARE_WIDE_TAIL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
       137: .line 342
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 30 /* COMPARE_WIDE_VECTORS_LOOP_AVX2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       138: .line 344
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 142
       139: .line 345
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vmovdqu:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       140: .line 346
            aload 2 /* masm */
            aload 22 /* vec1 */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vpxor:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       141: .line 347
            goto 144
       142: .line 348
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 20 /* scale1 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vpmovzxbw:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       143: .line 349
            aload 2 /* masm */
            aload 22 /* vec1 */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 21 /* scale2 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vpxor:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       144: .line 351
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 22 /* vec1 */
            aload 22 /* vec1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vptest:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       145: .line 352
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 24 /* VECTOR_NOT_EQUAL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       146: .line 353
            aload 2 /* masm */
            aload 3 /* result */
            iload 14 /* stride2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;I)V
       147: .line 354
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iload 14 /* stride2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;I)V
       148: .line 355
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 27 /* COMPARE_WIDE_VECTORS_LOOP */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       149: .line 357
            aload 2 /* masm */
            aload 22 /* vec1 */
            aload 22 /* vec1 */
            aload 22 /* vec1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vpxor:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       150: .line 360
            aload 2 /* masm */
            aload 25 /* COMPARE_WIDE_TAIL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       151: .line 361
            aload 2 /* masm */
            aload 3 /* result */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.testq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       152: .line 362
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 8 /* LENGTH_DIFF_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       153: .line 364
            aload 2 /* masm */
            aload 3 /* result */
            iload 14 /* stride2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;I)V
       154: .line 365
            aload 2 /* masm */
            aload 7 /* cnt2 */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       155: .line 366
            aload 2 /* masm */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
       156: .line 367
            aload 2 /* masm */
            aload 30 /* COMPARE_WIDE_VECTORS_LOOP_AVX2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmp:(Lorg/graalvm/compiler/asm/Label;)V
       157: .line 370
            aload 2 /* masm */
            aload 24 /* VECTOR_NOT_EQUAL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       158: .line 372
            aload 2 /* masm */
            aload 22 /* vec1 */
            aload 22 /* vec1 */
            aload 22 /* vec1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vpxor:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       159: .line 374
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 163
       160: .line 375
            aload 2 /* masm */
            aload 4 /* str1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       161: .line 376
            aload 2 /* masm */
            aload 5 /* str2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       162: .line 377
            goto 165
       163: .line 378
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 4 /* str1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 20 /* scale1 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       164: .line 379
            aload 2 /* masm */
            aload 5 /* str2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 21 /* scale2 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       165: .line 381
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 28 /* COMPARE_16_CHARS */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmp:(Lorg/graalvm/compiler/asm/Label;)V
       166: .line 384
            aload 2 /* masm */
            aload 31 /* COMPARE_TAIL_LONG */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       167: .line 385
            aload 2 /* masm */
            aload 7 /* cnt2 */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       168: .line 386
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iload 13 /* stride */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpl:(Ljdk/vm/ci/code/Register;I)V
       169: .line 387
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Less:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 26 /* COMPARE_SMALL_STR */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       170: .line 390
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 173
       171: .line 391
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movdqu:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       172: .line 392
            goto 174
       173: .line 393
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pmovzxbw:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       174: .line 395
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            iconst_0
            invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
            iload 33 /* pcmpmask */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
       175: .line 396
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Below:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 29 /* COMPARE_INDEX_CHAR */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       176: .line 397
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iload 13 /* stride */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subq:(Ljdk/vm/ci/code/Register;I)V
       177: .line 398
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 8 /* LENGTH_DIFF_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       178: .line 400
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 182
       179: .line 401
            aload 2 /* masm */
            aload 4 /* str1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       180: .line 402
            aload 2 /* masm */
            aload 5 /* str2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       181: .line 403
            goto 184
       182: .line 404
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 4 /* str1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 20 /* scale1 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       183: .line 405
            aload 2 /* masm */
            aload 5 /* str2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 21 /* scale2 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       184: .line 407
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 7 /* cnt2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
       185: .line 408
            aload 2 /* masm */
            aload 11 /* WHILE_HEAD_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
       186: .line 410
            aload 2 /* masm */
            aload 26 /* COMPARE_SMALL_STR */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
        end local 33 // int pcmpmask
        end local 32 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS_LOOP_AVX3
        end local 31 // org.graalvm.compiler.asm.Label COMPARE_TAIL_LONG
        end local 30 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS_LOOP_AVX2
        end local 29 // org.graalvm.compiler.asm.Label COMPARE_INDEX_CHAR
        end local 28 // org.graalvm.compiler.asm.Label COMPARE_16_CHARS
        end local 27 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS_LOOP
        end local 26 // org.graalvm.compiler.asm.Label COMPARE_SMALL_STR
        end local 25 // org.graalvm.compiler.asm.Label COMPARE_WIDE_TAIL
        end local 24 // org.graalvm.compiler.asm.Label VECTOR_NOT_EQUAL
        end local 23 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS
        end local 22 // jdk.vm.ci.code.Register vec1
       187: .line 411
            goto 238
        end local 14 // int stride2
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler 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 org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int top int int int int org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale
      StackMap stack:
       188: aload 1 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.target:Ljdk/vm/ci/code/TargetDescription;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.supportsSSE42:(Ljdk/vm/ci/code/TargetDescription;)Z
            ifeq 238
       189: .line 412
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.vectorTemp1:Ljdk/vm/ci/meta/Value;
            getstatic jdk.vm.ci.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/PlatformKind;)Ljdk/vm/ci/code/Register;
            astore 22 /* vec1 */
        start local 22 // jdk.vm.ci.code.Register vec1
       190: .line 415
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 23 /* COMPARE_WIDE_VECTORS */
        start local 23 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS
       191: .line 416
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 24 /* VECTOR_NOT_EQUAL */
        start local 24 // org.graalvm.compiler.asm.Label VECTOR_NOT_EQUAL
       192: .line 417
            new org.graalvm.compiler.asm.Label
            dup
            invokespecial org.graalvm.compiler.asm.Label.<init>:()V
            astore 25 /* COMPARE_TAIL */
        start local 25 // org.graalvm.compiler.asm.Label COMPARE_TAIL
       193: .line 419
            bipush 25
            istore 26 /* pcmpmask */
        start local 26 // int pcmpmask
       194: .line 422
            aload 2 /* masm */
            aload 3 /* result */
            aload 7 /* cnt2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       195: .line 423
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iload 13 /* stride */
            iconst_1
            isub
            iconst_m1
            ixor
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.andl:(Ljdk/vm/ci/code/Register;I)V
       196: .line 425
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 198
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 198
       197: .line 426
            iload 26 /* pcmpmask */
            bipush -2
            iand
            istore 26 /* pcmpmask */
       198: .line 428
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler 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 org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int top int int int int org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale jdk.vm.ci.code.Register org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int
      StackMap stack:
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 25 /* COMPARE_TAIL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       199: .line 430
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 203
       200: .line 431
            aload 2 /* masm */
            aload 4 /* str1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       201: .line 432
            aload 2 /* masm */
            aload 5 /* str2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       202: .line 433
            goto 205
       203: .line 434
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 4 /* str1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 20 /* scale1 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       204: .line 435
            aload 2 /* masm */
            aload 5 /* str2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 21 /* scale2 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       205: .line 437
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
       206: .line 449
            getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.$assertionsDisabled:Z
            ifne 208
            aload 3 /* result */
            getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 207
            aload 7 /* cnt2 */
            getstatic jdk.vm.ci.amd64.AMD64.rdx:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 207
            aload 6 /* cnt1 */
            getstatic jdk.vm.ci.amd64.AMD64.rcx:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifne 208
      StackMap locals:
      StackMap stack:
       207: new java.lang.AssertionError
            dup
            ldc "pcmpestri"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
       208: .line 451
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 23 /* COMPARE_WIDE_VECTORS */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       209: .line 453
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 213
       210: .line 454
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movdqu:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       211: .line 455
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            iload 26 /* pcmpmask */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
       212: .line 456
            goto 215
       213: .line 457
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 20 /* scale1 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pmovzxbw:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       214: .line 458
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 21 /* scale2 */
            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;)V
            iload 26 /* pcmpmask */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
       215: .line 462
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Below:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 24 /* VECTOR_NOT_EQUAL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       216: .line 463
            aload 2 /* masm */
            aload 3 /* result */
            iload 13 /* stride */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;I)V
       217: .line 464
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iload 13 /* stride */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subq:(Ljdk/vm/ci/code/Register;I)V
       218: .line 465
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 23 /* COMPARE_WIDE_VECTORS */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       219: .line 468
            aload 2 /* masm */
            aload 3 /* result */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.testq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       220: .line 469
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 8 /* LENGTH_DIFF_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       221: .line 471
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iload 13 /* stride */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;I)V
       222: .line 472
            aload 2 /* masm */
            aload 3 /* result */
            iload 13 /* stride */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;I)V
       223: .line 473
            aload 2 /* masm */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
       224: .line 475
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 228
       225: .line 476
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movdqu:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       226: .line 477
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            iload 26 /* pcmpmask */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
       227: .line 478
            goto 230
       228: .line 479
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 20 /* scale1 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pmovzxbw:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       229: .line 480
            aload 2 /* masm */
            aload 22 /* vec1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 21 /* scale2 */
            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;)V
            iload 26 /* pcmpmask */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
       230: .line 482
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.AboveEqual:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 8 /* LENGTH_DIFF_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       231: .line 485
            aload 2 /* masm */
            aload 24 /* VECTOR_NOT_EQUAL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       232: .line 486
            aload 2 /* masm */
            aload 6 /* cnt1 */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       233: .line 487
            aload 0 /* this */
            aload 2 /* masm */
            aload 3 /* result */
            aload 7 /* cnt2 */
            aload 4 /* str1 */
            aload 5 /* str2 */
            aload 19 /* scale */
            aload 20 /* scale1 */
            aload 21 /* scale2 */
            aload 6 /* cnt1 */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.loadNextElements:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Ljdk/vm/ci/code/Register;)V
       234: .line 488
            aload 2 /* masm */
            aload 3 /* result */
            aload 7 /* cnt2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       235: .line 489
            aload 2 /* masm */
            aload 9 /* POP_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
       236: .line 491
            aload 2 /* masm */
            aload 25 /* COMPARE_TAIL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       237: .line 492
            aload 2 /* masm */
            aload 7 /* cnt2 */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        end local 26 // int pcmpmask
        end local 25 // org.graalvm.compiler.asm.Label COMPARE_TAIL
        end local 24 // org.graalvm.compiler.asm.Label VECTOR_NOT_EQUAL
        end local 23 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS
        end local 22 // jdk.vm.ci.code.Register vec1
       238: .line 498
      StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.amd64.AMD64MacroAssembler 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 org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label org.graalvm.compiler.asm.Label int top int int int int org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale org.graalvm.compiler.asm.amd64.AMD64Address$Scale
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 242
       239: .line 499
            aload 2 /* masm */
            aload 4 /* str1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 7 /* cnt2 */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       240: .line 500
            aload 2 /* masm */
            aload 5 /* str2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 7 /* cnt2 */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       241: .line 501
            goto 244
       242: .line 502
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 4 /* str1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 7 /* cnt2 */
            aload 20 /* scale1 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       243: .line 503
            aload 2 /* masm */
            aload 5 /* str2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 7 /* cnt2 */
            aload 21 /* scale2 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.leaq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       244: .line 505
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 7 /* cnt2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.decrementl:(Ljdk/vm/ci/code/Register;)V
       245: .line 506
            aload 2 /* masm */
            aload 7 /* cnt2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
       246: .line 509
            aload 2 /* masm */
            aload 11 /* WHILE_HEAD_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       247: .line 510
            aload 0 /* this */
            aload 2 /* masm */
            aload 3 /* result */
            aload 6 /* cnt1 */
            aload 4 /* str1 */
            aload 5 /* str2 */
            aload 19 /* scale */
            aload 20 /* scale1 */
            aload 21 /* scale2 */
            aload 7 /* cnt2 */
            invokevirtual org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.loadNextElements:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Ljdk/vm/ci/code/Register;)V
       248: .line 511
            aload 2 /* masm */
            aload 3 /* result */
            aload 6 /* cnt1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       249: .line 512
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 9 /* POP_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       250: .line 513
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.incrementq:(Ljdk/vm/ci/code/Register;I)V
       251: .line 514
            aload 2 /* masm */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
            aload 11 /* WHILE_HEAD_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
       252: .line 517
            aload 2 /* masm */
            aload 8 /* LENGTH_DIFF_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       253: .line 518
            aload 2 /* masm */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pop:(Ljdk/vm/ci/code/Register;)V
       254: .line 520
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 256
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 256
       255: .line 522
            aload 2 /* masm */
            aload 3 /* result */
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.sarl:(Ljdk/vm/ci/code/Register;I)V
       256: .line 524
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 10 /* DONE_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
       257: .line 527
            aload 1 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.target:Ljdk/vm/ci/code/TargetDescription;
            invokestatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.supportsAVX512VLBW:(Ljdk/vm/ci/code/TargetDescription;)Z
            ifeq 277
       258: .line 528
            aload 2 /* masm */
            aload 12 /* COMPARE_WIDE_VECTORS_LOOP_FAILED */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       259: .line 530
            aload 2 /* masm */
            aload 6 /* cnt1 */
            getstatic jdk.vm.ci.amd64.AMD64.k7:Ljdk/vm/ci/code/Register;
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.kmovq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       260: .line 531
            aload 2 /* masm */
            aload 6 /* cnt1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.notq:(Ljdk/vm/ci/code/Register;)V
       261: .line 532
            aload 2 /* masm */
            aload 7 /* cnt2 */
            aload 6 /* cnt1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bsfq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       262: .line 534
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 264
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 264
       263: .line 536
            aload 2 /* masm */
            aload 7 /* cnt2 */
            iconst_1
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.sarl:(Ljdk/vm/ci/code/Register;I)V
       264: .line 538
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 3 /* result */
            aload 7 /* cnt2 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       265: .line 540
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 269
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 269
       266: .line 541
            aload 2 /* masm */
            aload 6 /* cnt1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.Times1:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzbl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       267: .line 542
            aload 2 /* masm */
            aload 3 /* result */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            getstatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.Times1:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzbl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       268: .line 543
            goto 275
      StackMap locals:
      StackMap stack:
       269: aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 273
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 273
       270: .line 544
            aload 2 /* masm */
            aload 6 /* cnt1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzwl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       271: .line 545
            aload 2 /* masm */
            aload 3 /* result */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 19 /* scale */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzwl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       272: .line 546
            goto 275
       273: .line 547
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 6 /* cnt1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 3 /* result */
            aload 21 /* scale2 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzwl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       274: .line 548
            aload 2 /* masm */
            aload 3 /* result */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 3 /* result */
            aload 20 /* scale1 */
            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;)V
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzbl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
       275: .line 550
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 3 /* result */
            aload 6 /* cnt1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
       276: .line 551
            aload 2 /* masm */
            aload 9 /* POP_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
       277: .line 555
      StackMap locals:
      StackMap stack:
            aload 2 /* masm */
            aload 9 /* POP_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       278: .line 556
            aload 2 /* masm */
            aload 6 /* cnt1 */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pop:(Ljdk/vm/ci/code/Register;)V
       279: .line 559
            aload 2 /* masm */
            aload 10 /* DONE_LABEL */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
       280: .line 561
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 282
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 282
       281: .line 562
            aload 2 /* masm */
            aload 3 /* result */
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negl:(Ljdk/vm/ci/code/Register;)V
       282: .line 564
      StackMap locals:
      StackMap stack:
            return
        end local 21 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale2
        end local 20 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale1
        end local 19 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale
        end local 18 // int stride2x2
        end local 17 // int adr_stride2
        end local 16 // int adr_stride1
        end local 15 // int adr_stride
        end local 13 // int stride
        end local 12 // org.graalvm.compiler.asm.Label COMPARE_WIDE_VECTORS_LOOP_FAILED
        end local 11 // org.graalvm.compiler.asm.Label WHILE_HEAD_LABEL
        end local 10 // org.graalvm.compiler.asm.Label DONE_LABEL
        end local 9 // org.graalvm.compiler.asm.Label POP_LABEL
        end local 8 // org.graalvm.compiler.asm.Label LENGTH_DIFF_LABEL
        end local 7 // jdk.vm.ci.code.Register cnt2
        end local 6 // jdk.vm.ci.code.Register cnt1
        end local 5 // jdk.vm.ci.code.Register str2
        end local 4 // jdk.vm.ci.code.Register str1
        end local 3 // jdk.vm.ci.code.Register result
        end local 2 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler masm
        end local 1 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp this
      LocalVariableTable:
        Start  End  Slot                              Name  Signature
            0  283     0                              this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayCompareToOp;
            0  283     1                               crb  Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
            0  283     2                              masm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            1  283     3                            result  Ljdk/vm/ci/code/Register;
            2  283     4                              str1  Ljdk/vm/ci/code/Register;
            3  283     5                              str2  Ljdk/vm/ci/code/Register;
            6  283     6                              cnt1  Ljdk/vm/ci/code/Register;
            7  283     7                              cnt2  Ljdk/vm/ci/code/Register;
            8  283     8                 LENGTH_DIFF_LABEL  Lorg/graalvm/compiler/asm/Label;
            9  283     9                         POP_LABEL  Lorg/graalvm/compiler/asm/Label;
           10  283    10                        DONE_LABEL  Lorg/graalvm/compiler/asm/Label;
           11  283    11                  WHILE_HEAD_LABEL  Lorg/graalvm/compiler/asm/Label;
           12  283    12  COMPARE_WIDE_VECTORS_LOOP_FAILED  Lorg/graalvm/compiler/asm/Label;
           51   52    13                            stride  I
           54   55    13                            stride  I
           58  283    13                            stride  I
           75   76    14                           stride2  I
           77  188    14                           stride2  I
           13  283    15                        adr_stride  I
           14  283    16                       adr_stride1  I
           15  283    17                       adr_stride2  I
           16  283    18                         stride2x2  I
           17  283    19                             scale  Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
           18  283    20                            scale1  Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
           19  283    21                            scale2  Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
           60  187    22                              vec1  Ljdk/vm/ci/code/Register;
           61  187    23              COMPARE_WIDE_VECTORS  Lorg/graalvm/compiler/asm/Label;
           62  187    24                  VECTOR_NOT_EQUAL  Lorg/graalvm/compiler/asm/Label;
           63  187    25                 COMPARE_WIDE_TAIL  Lorg/graalvm/compiler/asm/Label;
           64  187    26                 COMPARE_SMALL_STR  Lorg/graalvm/compiler/asm/Label;
           65  187    27         COMPARE_WIDE_VECTORS_LOOP  Lorg/graalvm/compiler/asm/Label;
           66  187    28                  COMPARE_16_CHARS  Lorg/graalvm/compiler/asm/Label;
           67  187    29                COMPARE_INDEX_CHAR  Lorg/graalvm/compiler/asm/Label;
           68  187    30    COMPARE_WIDE_VECTORS_LOOP_AVX2  Lorg/graalvm/compiler/asm/Label;
           69  187    31                 COMPARE_TAIL_LONG  Lorg/graalvm/compiler/asm/Label;
           70  187    32    COMPARE_WIDE_VECTORS_LOOP_AVX3  Lorg/graalvm/compiler/asm/Label;
           71  187    33                          pcmpmask  I
          190  238    22                              vec1  Ljdk/vm/ci/code/Register;
          191  238    23              COMPARE_WIDE_VECTORS  Lorg/graalvm/compiler/asm/Label;
          192  238    24                  VECTOR_NOT_EQUAL  Lorg/graalvm/compiler/asm/Label;
          193  238    25                      COMPARE_TAIL  Lorg/graalvm/compiler/asm/Label;
          194  238    26                          pcmpmask  I
    MethodParameters:
      Name  Flags
      crb   
      masm  

  private void loadNextElements(org.graalvm.compiler.asm.amd64.AMD64MacroAssembler, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.amd64.AMD64Address$Scale, org.graalvm.compiler.asm.amd64.AMD64Address$Scale, org.graalvm.compiler.asm.amd64.AMD64Address$Scale, jdk.vm.ci.code.Register);
    descriptor: (Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;Ljdk/vm/ci/code/Register;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=10, args_size=10
        start local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp this
        start local 1 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler masm
        start local 2 // jdk.vm.ci.code.Register elem1
        start local 3 // jdk.vm.ci.code.Register elem2
        start local 4 // jdk.vm.ci.code.Register str1
        start local 5 // jdk.vm.ci.code.Register str2
        start local 6 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale
        start local 7 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale1
        start local 8 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale2
        start local 9 // jdk.vm.ci.code.Register index
         0: .line 570
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 4
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 4
         1: .line 571
            aload 1 /* masm */
            aload 2 /* elem1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 9 /* index */
            aload 6 /* scale */
            iconst_0
            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
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzbl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
         2: .line 572
            aload 1 /* masm */
            aload 3 /* elem2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 9 /* index */
            aload 6 /* scale */
            iconst_0
            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
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzbl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
         3: .line 574
            goto 10
      StackMap locals:
      StackMap stack:
         4: aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 8
            aload 0 /* this */
            getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 8
         5: .line 575
            aload 1 /* masm */
            aload 2 /* elem1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 9 /* index */
            aload 6 /* scale */
            iconst_0
            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
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzwl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
         6: .line 576
            aload 1 /* masm */
            aload 3 /* elem2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 9 /* index */
            aload 6 /* scale */
            iconst_0
            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
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzwl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
         7: .line 577
            goto 10
         8: .line 578
      StackMap locals:
      StackMap stack:
            aload 1 /* masm */
            aload 2 /* elem1 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 4 /* str1 */
            aload 9 /* index */
            aload 7 /* scale1 */
            iconst_0
            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
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzbl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
         9: .line 579
            aload 1 /* masm */
            aload 3 /* elem2 */
            new org.graalvm.compiler.asm.amd64.AMD64Address
            dup
            aload 5 /* str2 */
            aload 9 /* index */
            aload 8 /* scale2 */
            iconst_0
            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
            invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movzwl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
        10: .line 581
      StackMap locals:
      StackMap stack:
            return
        end local 9 // jdk.vm.ci.code.Register index
        end local 8 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale2
        end local 7 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale1
        end local 6 // org.graalvm.compiler.asm.amd64.AMD64Address$Scale scale
        end local 5 // jdk.vm.ci.code.Register str2
        end local 4 // jdk.vm.ci.code.Register str1
        end local 3 // jdk.vm.ci.code.Register elem2
        end local 2 // jdk.vm.ci.code.Register elem1
        end local 1 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler masm
        end local 0 // org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lorg/graalvm/compiler/lir/amd64/AMD64ArrayCompareToOp;
            0   11     1    masm  Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
            0   11     2   elem1  Ljdk/vm/ci/code/Register;
            0   11     3   elem2  Ljdk/vm/ci/code/Register;
            0   11     4    str1  Ljdk/vm/ci/code/Register;
            0   11     5    str2  Ljdk/vm/ci/code/Register;
            0   11     6   scale  Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            0   11     7  scale1  Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            0   11     8  scale2  Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
            0   11     9   index  Ljdk/vm/ci/code/Register;
    MethodParameters:
        Name  Flags
      masm    
      elem1   
      elem2   
      str1    
      str2    
      scale   
      scale1  
      scale2  
      index   
}
SourceFile: "AMD64ArrayCompareToOp.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 ConditionFlag = org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag of org.graalvm.compiler.asm.amd64.AMD64Assembler
  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 = "ARRAY_COMPARE_TO")