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
private final int useAVX3Threshold;
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: 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: 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, int, 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;ILjdk/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=10, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: aload 0
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: getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.$assertionsDisabled:Z
ifne 2
iload 2
invokestatic jdk.vm.ci.code.CodeUtil.isPowerOf2:(I)Z
ifne 2
new java.lang.AssertionError
dup
ldc "AVX3Threshold must be power of 2"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals: org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp org.graalvm.compiler.lir.gen.LIRGeneratorTool int 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
iload 2
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.useAVX3Threshold:I
3: aload 0
aload 3
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
4: aload 0
aload 4
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
5: aload 0
aload 1
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
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.getArrayBaseOffset:(Ljdk/vm/ci/meta/JavaKind;)I
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array1BaseOffset:I
6: aload 0
aload 1
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 4
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.getArrayBaseOffset:(Ljdk/vm/ci/meta/JavaKind;)I
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array2BaseOffset:I
7: aload 0
aload 5
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.resultValue:Ljdk/vm/ci/meta/Value;
8: aload 0
aload 6
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array1Value:Ljdk/vm/ci/meta/Value;
9: aload 0
aload 7
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.array2Value:Ljdk/vm/ci/meta/Value;
10: aload 0
aload 8
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.length1Value:Ljdk/vm/ci/meta/Value;
11: aload 0
aload 9
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.length2Value:Ljdk/vm/ci/meta/Value;
12: aload 0
aload 8
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.length1ValueTemp:Ljdk/vm/ci/meta/Value;
13: aload 0
aload 9
putfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.length2ValueTemp:Ljdk/vm/ci/meta/Value;
14: aload 0
aload 1
aload 1
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;
15: aload 0
aload 1
aload 1
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;
16: aload 1
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 19
17: aload 0
aload 1
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;
18: goto 20
19: StackMap locals:
StackMap stack:
aload 0
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;
20: StackMap locals:
StackMap stack:
return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/graalvm/compiler/lir/amd64/AMD64ArrayCompareToOp;
0 21 1 tool Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 21 2 useAVX3Threshold I
0 21 3 kind1 Ljdk/vm/ci/meta/JavaKind;
0 21 4 kind2 Ljdk/vm/ci/meta/JavaKind;
0 21 5 result Ljdk/vm/ci/meta/Value;
0 21 6 array1 Ljdk/vm/ci/meta/Value;
0 21 7 array2 Ljdk/vm/ci/meta/Value;
0 21 8 length1 Ljdk/vm/ci/meta/Value;
0 21 9 length2 Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
tool
useAVX3Threshold
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 0: aload 0
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
checkcast jdk.vm.ci.amd64.AMD64
astore 1
start local 1 1: aload 1
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 end local 0 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 0: aload 0
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
checkcast jdk.vm.ci.amd64.AMD64
astore 1
start local 1 1: aload 1
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 end local 0 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 0: aload 0
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
start local 1 1: aload 1
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
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 end local 0 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 start local 1 start local 2 0: aload 0
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
start local 3 1: aload 0
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
start local 4 2: aload 0
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
start local 5 3: aload 2
aload 4
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 0
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
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: aload 2
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 0
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
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: aload 0
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
start local 6 6: aload 0
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
start local 7 7: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 8
start local 8 8: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 9
start local 9 9: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 10
start local 10 10: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 11
start local 11 11: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 12
start local 12 12: iconst_m1
istore 15
start local 15 13: iconst_m1
istore 16
start local 16 14: iconst_m1
istore 17
start local 17 15: bipush 64
istore 18
start local 18 16: aconst_null
astore 19
start local 19 17: aconst_null
astore 20
start local 20 18: aconst_null
astore 21
start local 21 19: aload 0
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 20
aload 0
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 21
20: 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:
bipush 32
istore 18
21: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpeq 23
22: aload 2
aload 7
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.shrl:(Ljdk/vm/ci/code/Register;I)V
23: StackMap locals:
StackMap stack:
aload 2
aload 3
aload 6
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
24: aload 2
aload 6
aload 7
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
25: aload 2
aload 6
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.push:(Ljdk/vm/ci/code/Register;)V
26: aload 2
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.LessEqual:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 7
aload 3
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: aload 2
aload 7
aload 7
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 8
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.testlAndJcc:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
28: aload 0
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 32
aload 0
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 32
29: aload 2
aload 3
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
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
30: aload 2
aload 6
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
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: goto 38
StackMap locals:
StackMap stack:
32: aload 0
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 36
aload 0
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 36
33: aload 2
aload 3
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
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
34: aload 2
aload 6
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
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: goto 38
36: StackMap locals:
StackMap stack:
aload 2
aload 3
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
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
37: aload 2
aload 6
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
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
38: StackMap locals:
StackMap stack:
aload 2
aload 3
aload 6
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 9
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.sublAndJcc:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
39: aload 0
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 41
aload 0
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 41
40: aload 2
aload 7
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.shrl:(Ljdk/vm/ci/code/Register;I)V
41: StackMap locals:
StackMap stack:
aload 2
aload 7
iconst_1
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Equal:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 8
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmplAndJcc:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
42: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 51
43: aload 2
aload 4
aload 5
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Equal:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 8
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmpqAndJcc:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)I
pop
44: aload 0
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 48
aload 0
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 48
45: getstatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.Times1:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
astore 19
46: bipush 16
istore 13
start local 13 47: goto 54
end local 13 48: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.Times2:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
astore 19
49: bipush 8
istore 13
start local 13 50: goto 54
end local 13 51: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.Times1:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
astore 20
52: getstatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.Times2:Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
astore 21
53: bipush 8
istore 13
start local 13 54: 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
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 175
aload 1
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 175
55: aload 0
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
start local 22 56: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 23
start local 23 57: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 24
start local 24 58: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 25
start local 25 59: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 26
start local 26 60: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 27
start local 27 61: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 28
start local 28 62: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 29
start local 29 63: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 30
start local 30 64: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 31
start local 31 65: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 32
start local 32 66: bipush 25
istore 33
start local 33 67: aload 0
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 69
aload 0
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 69
68: iload 33
bipush -2
iand
istore 33
69: 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
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 72
aload 0
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 72
70: bipush 32
istore 14
start local 14 71: goto 73
end local 14 72: StackMap locals:
StackMap stack:
bipush 16
istore 14
start local 14 73: 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
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 76
74: iload 13
aload 19
getfield org.graalvm.compiler.asm.amd64.AMD64Address$Scale.log2:I
ishl
istore 15
75: goto 78
76: StackMap locals:
StackMap stack:
bipush 8
istore 16
77: bipush 16
istore 17
78: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.$assertionsDisabled:Z
ifne 80
aload 3
getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
ifeq 79
aload 7
getstatic jdk.vm.ci.amd64.AMD64.rdx:Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
ifeq 79
aload 6
getstatic jdk.vm.ci.amd64.AMD64.rcx:Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
ifne 80
StackMap locals:
StackMap stack:
79: new java.lang.AssertionError
dup
ldc "pcmpestri"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
80: StackMap locals:
StackMap stack:
aload 2
aload 3
aload 7
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
81: aload 2
aload 7
iload 14
iconst_1
isub
iconst_m1
ixor
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 31
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.andlAndJcc:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
82: aload 2
aload 28
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
83: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 86
84: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
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
85: goto 87
86: StackMap locals:
StackMap stack:
aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
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
87: StackMap locals:
StackMap stack:
aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
iconst_0
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
iload 33
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
88: aload 2
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Below:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 29
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
89: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 93
90: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
iload 15
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
91: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
iload 15
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
iload 33
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
92: goto 95
93: StackMap locals:
StackMap stack:
aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
iload 16
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
94: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
iload 17
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
iload 33
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
95: StackMap locals:
StackMap stack:
aload 2
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.AboveEqual:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 23
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
96: aload 2
aload 6
iload 13
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addl:(Ljdk/vm/ci/code/Register;I)V
97: aload 2
aload 29
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
98: aload 0
aload 2
aload 3
aload 7
aload 4
aload 5
aload 19
aload 20
aload 21
aload 6
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
99: aload 2
aload 3
aload 7
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
100: aload 2
aload 9
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmp:(Lorg/graalvm/compiler/asm/Label;)V
101: aload 2
aload 23
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
102: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 106
103: aload 2
aload 4
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 19
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
104: aload 2
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 19
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
105: goto 108
106: StackMap locals:
StackMap stack:
aload 2
aload 4
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 20
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
107: aload 2
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 21
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
108: StackMap locals:
StackMap stack:
aload 2
aload 3
iload 14
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;I)V
109: aload 2
aload 7
iload 14
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 25
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.sublAndJcc:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
110: aload 2
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
111: aload 2
aload 27
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
112: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.useAVX3Threshold:I
ifne 128
aload 1
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 128
113: aload 2
aload 7
iload 18
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Below:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 30
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmplAndJcc:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
114: aload 2
aload 7
iload 18
iconst_1
isub
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 30
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.testlAndJcc:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
115: aload 2
aload 32
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
116: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 120
117: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 19
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
118: aload 2
getstatic jdk.vm.ci.amd64.AMD64.k7:Ljdk/vm/ci/code/Register;
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 19
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
119: goto 122
120: StackMap locals:
StackMap stack:
aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 20
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
121: aload 2
getstatic jdk.vm.ci.amd64.AMD64.k7:Ljdk/vm/ci/code/Register;
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 21
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
122: StackMap locals:
StackMap stack:
aload 2
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
123: aload 2
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.AboveEqual:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 12
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
124: aload 2
aload 3
iload 18
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;I)V
125: aload 2
aload 7
iload 18
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 32
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.sublAndJcc:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
126: aload 2
aload 22
aload 22
aload 22
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vpxor:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
127: aload 2
aload 25
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
128: StackMap locals:
StackMap stack:
aload 2
aload 30
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
129: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 133
130: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 19
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
131: aload 2
aload 22
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 19
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
132: goto 135
133: StackMap locals:
StackMap stack:
aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 20
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
134: aload 2
aload 22
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 21
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
135: StackMap locals:
StackMap stack:
aload 2
aload 22
aload 22
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vptest:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
136: aload 2
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 24
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
137: aload 2
aload 3
iload 14
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;I)V
138: aload 2
aload 7
iload 14
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 27
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.sublAndJcc:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
139: aload 2
aload 22
aload 22
aload 22
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vpxor:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
140: aload 2
aload 25
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
141: aload 2
aload 3
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 8
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.testqAndJcc:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)I
pop
142: aload 2
aload 3
iload 14
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;I)V
143: aload 2
aload 7
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
144: aload 2
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
145: aload 2
aload 30
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmp:(Lorg/graalvm/compiler/asm/Label;)V
146: aload 2
aload 24
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
147: aload 2
aload 22
aload 22
aload 22
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.vpxor:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
148: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 152
149: aload 2
aload 4
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 19
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
150: aload 2
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 19
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
151: goto 154
152: StackMap locals:
StackMap stack:
aload 2
aload 4
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 20
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
153: aload 2
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 21
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
154: StackMap locals:
StackMap stack:
aload 2
aload 28
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmp:(Lorg/graalvm/compiler/asm/Label;)V
155: aload 2
aload 31
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
156: aload 2
aload 7
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
157: aload 2
aload 7
iload 13
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Less:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 26
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.cmplAndJcc:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
158: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 161
159: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
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
160: goto 162
161: StackMap locals:
StackMap stack:
aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
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
162: StackMap locals:
StackMap stack:
aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
iconst_0
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
iload 33
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
163: aload 2
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Below:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 29
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jcc:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
164: aload 2
aload 7
iload 13
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 8
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subqAndJcc:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
165: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 169
166: aload 2
aload 4
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 19
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
167: aload 2
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 19
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
168: goto 171
169: StackMap locals:
StackMap stack:
aload 2
aload 4
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 20
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
170: aload 2
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 21
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
171: StackMap locals:
StackMap stack:
aload 2
aload 7
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
172: aload 2
aload 11
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
173: aload 2
aload 26
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
end local 33 end local 32 end local 31 end local 30 end local 29 end local 28 end local 27 end local 26 end local 25 end local 24 end local 23 end local 22 174: goto 222
end local 14 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:
175: aload 1
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 222
176: aload 0
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
start local 22 177: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 23
start local 23 178: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 24
start local 24 179: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 25
start local 25 180: bipush 25
istore 26
start local 26 181: aload 2
aload 3
aload 7
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
182: aload 0
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 184
aload 0
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 184
183: iload 26
bipush -2
iand
istore 26
184: 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
aload 7
iload 13
iconst_1
isub
iconst_m1
ixor
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 25
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.andlAndJcc:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
185: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 189
186: aload 2
aload 4
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 19
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
187: aload 2
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 19
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
188: goto 191
189: StackMap locals:
StackMap stack:
aload 2
aload 4
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 20
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
190: aload 2
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 21
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
191: StackMap locals:
StackMap stack:
aload 2
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
192: getstatic org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.$assertionsDisabled:Z
ifne 194
aload 3
getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
ifeq 193
aload 7
getstatic jdk.vm.ci.amd64.AMD64.rdx:Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
ifeq 193
aload 6
getstatic jdk.vm.ci.amd64.AMD64.rcx:Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
ifne 194
StackMap locals:
StackMap stack:
193: new java.lang.AssertionError
dup
ldc "pcmpestri"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
194: StackMap locals:
StackMap stack:
aload 2
aload 23
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
195: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 199
196: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 19
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
197: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 19
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
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
198: goto 201
199: StackMap locals:
StackMap stack:
aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 20
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
200: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 21
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
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
201: StackMap locals:
StackMap stack:
aload 2
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Below:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 24
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
202: aload 2
aload 3
iload 13
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;I)V
203: aload 2
aload 7
iload 13
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 23
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subqAndJcc:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
204: aload 2
aload 3
aload 3
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Zero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 8
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.testqAndJcc:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)I
pop
205: aload 2
aload 7
iload 13
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;I)V
206: aload 2
aload 3
iload 13
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;I)V
207: aload 2
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
208: aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 212
209: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 19
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
210: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 19
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
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
211: goto 214
212: StackMap locals:
StackMap stack:
aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 20
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
213: aload 2
aload 22
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 21
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
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pcmpestri:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
214: StackMap locals:
StackMap stack:
aload 2
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.AboveEqual:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 8
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jccb:(Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;)V
215: aload 2
aload 24
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
216: aload 2
aload 6
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
217: aload 0
aload 2
aload 3
aload 7
aload 4
aload 5
aload 19
aload 20
aload 21
aload 6
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
218: aload 2
aload 3
aload 7
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
219: aload 2
aload 9
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
220: aload 2
aload 25
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
221: aload 2
aload 7
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
end local 26 end local 25 end local 24 end local 23 end local 22 222: 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
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind1:Ljdk/vm/ci/meta/JavaKind;
aload 0
getfield org.graalvm.compiler.lir.amd64.AMD64ArrayCompareToOp.kind2:Ljdk/vm/ci/meta/JavaKind;
if_acmpne 226
223: aload 2
aload 4
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 7
aload 19
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
224: aload 2
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 7
aload 19
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
225: goto 228
226: StackMap locals:
StackMap stack:
aload 2
aload 4
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 7
aload 20
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
227: aload 2
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 7
aload 21
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
228: StackMap locals:
StackMap stack:
aload 2
aload 7
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.decrementl:(Ljdk/vm/ci/code/Register;)V
229: aload 2
aload 7
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negq:(Ljdk/vm/ci/code/Register;)V
230: aload 2
aload 11
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
231: aload 0
aload 2
aload 3
aload 6
aload 4
aload 5
aload 19
aload 20
aload 21
aload 7
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
232: aload 2
aload 3
aload 6
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 9
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.sublAndJcc:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
233: aload 2
aload 7
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.NotZero:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 11
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.incqAndJcc:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)V
234: aload 2
aload 8
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
235: aload 2
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pop:(Ljdk/vm/ci/code/Register;)V
236: aload 0
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 238
aload 0
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 238
237: aload 2
aload 3
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.sarl:(Ljdk/vm/ci/code/Register;I)V
238: StackMap locals:
StackMap stack:
aload 2
aload 10
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
239: aload 1
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 259
240: aload 2
aload 12
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
241: aload 2
aload 6
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
242: aload 2
aload 6
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.notq:(Ljdk/vm/ci/code/Register;)V
243: aload 2
aload 7
aload 6
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bsfq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
244: aload 0
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 245
aload 0
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 246
245: StackMap locals:
StackMap stack:
aload 2
aload 7
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.sarl:(Ljdk/vm/ci/code/Register;I)V
246: StackMap locals:
StackMap stack:
aload 2
aload 3
aload 7
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.addq:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
247: aload 0
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 251
aload 0
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 251
248: aload 2
aload 6
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
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
249: aload 2
aload 3
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
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
250: goto 257
StackMap locals:
StackMap stack:
251: aload 0
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 255
aload 0
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 255
252: aload 2
aload 6
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 19
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
253: aload 2
aload 3
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 19
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
254: goto 257
255: StackMap locals:
StackMap stack:
aload 2
aload 6
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 3
aload 21
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
256: aload 2
aload 3
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 3
aload 20
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
257: StackMap locals:
StackMap stack:
aload 2
aload 3
aload 6
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.subl:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
258: aload 2
aload 9
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmpb:(Lorg/graalvm/compiler/asm/Label;)V
259: StackMap locals:
StackMap stack:
aload 2
aload 9
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
260: aload 2
aload 6
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.pop:(Ljdk/vm/ci/code/Register;)V
261: aload 2
aload 10
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
262: aload 0
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 264
aload 0
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 264
263: aload 2
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.negl:(Ljdk/vm/ci/code/Register;)V
264: StackMap locals:
StackMap stack:
return
end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 265 0 this Lorg/graalvm/compiler/lir/amd64/AMD64ArrayCompareToOp;
0 265 1 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 265 2 masm Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
1 265 3 result Ljdk/vm/ci/code/Register;
2 265 4 str1 Ljdk/vm/ci/code/Register;
3 265 5 str2 Ljdk/vm/ci/code/Register;
6 265 6 cnt1 Ljdk/vm/ci/code/Register;
7 265 7 cnt2 Ljdk/vm/ci/code/Register;
8 265 8 LENGTH_DIFF_LABEL Lorg/graalvm/compiler/asm/Label;
9 265 9 POP_LABEL Lorg/graalvm/compiler/asm/Label;
10 265 10 DONE_LABEL Lorg/graalvm/compiler/asm/Label;
11 265 11 WHILE_HEAD_LABEL Lorg/graalvm/compiler/asm/Label;
12 265 12 COMPARE_WIDE_VECTORS_LOOP_FAILED Lorg/graalvm/compiler/asm/Label;
47 48 13 stride I
50 51 13 stride I
54 265 13 stride I
71 72 14 stride2 I
73 175 14 stride2 I
13 265 15 adr_stride I
14 265 16 adr_stride1 I
15 265 17 adr_stride2 I
16 265 18 stride2x2 I
17 265 19 scale Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
18 265 20 scale1 Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
19 265 21 scale2 Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
56 174 22 vec1 Ljdk/vm/ci/code/Register;
57 174 23 COMPARE_WIDE_VECTORS Lorg/graalvm/compiler/asm/Label;
58 174 24 VECTOR_NOT_EQUAL Lorg/graalvm/compiler/asm/Label;
59 174 25 COMPARE_WIDE_TAIL Lorg/graalvm/compiler/asm/Label;
60 174 26 COMPARE_SMALL_STR Lorg/graalvm/compiler/asm/Label;
61 174 27 COMPARE_WIDE_VECTORS_LOOP Lorg/graalvm/compiler/asm/Label;
62 174 28 COMPARE_16_CHARS Lorg/graalvm/compiler/asm/Label;
63 174 29 COMPARE_INDEX_CHAR Lorg/graalvm/compiler/asm/Label;
64 174 30 COMPARE_WIDE_VECTORS_LOOP_AVX2 Lorg/graalvm/compiler/asm/Label;
65 174 31 COMPARE_TAIL_LONG Lorg/graalvm/compiler/asm/Label;
66 174 32 COMPARE_WIDE_VECTORS_LOOP_AVX3 Lorg/graalvm/compiler/asm/Label;
67 174 33 pcmpmask I
177 222 22 vec1 Ljdk/vm/ci/code/Register;
178 222 23 COMPARE_WIDE_VECTORS Lorg/graalvm/compiler/asm/Label;
179 222 24 VECTOR_NOT_EQUAL Lorg/graalvm/compiler/asm/Label;
180 222 25 COMPARE_TAIL Lorg/graalvm/compiler/asm/Label;
181 222 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 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: aload 0
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
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: aload 1
aload 2
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 9
aload 6
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: aload 1
aload 3
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 9
aload 6
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: goto 10
StackMap locals:
StackMap stack:
4: aload 0
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
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: aload 1
aload 2
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 9
aload 6
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: aload 1
aload 3
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 9
aload 6
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: goto 10
8: StackMap locals:
StackMap stack:
aload 1
aload 2
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
aload 9
aload 7
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: aload 1
aload 3
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
aload 9
aload 8
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: StackMap locals:
StackMap stack:
return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 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
public boolean needsClearUpperVectorRegisters();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/amd64/AMD64ArrayCompareToOp;
}
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")