final class org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion
super_class: java.lang.Object
{
private final jdk.vm.ci.amd64.AMD64$CPUFeature avx128feature;
descriptor: Ljdk/vm/ci/amd64/AMD64$CPUFeature;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.vm.ci.amd64.AMD64$CPUFeature avx256feature;
descriptor: Ljdk/vm/ci/amd64/AMD64$CPUFeature;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.vm.ci.code.Register$RegisterCategory rCategory;
descriptor: Ljdk/vm/ci/code/Register$RegisterCategory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.vm.ci.code.Register$RegisterCategory vCategory;
descriptor: Ljdk/vm/ci/code/Register$RegisterCategory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.vm.ci.code.Register$RegisterCategory mCategory;
descriptor: Ljdk/vm/ci/code/Register$RegisterCategory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.vm.ci.code.Register$RegisterCategory imm8Category;
descriptor: Ljdk/vm/ci/code/Register$RegisterCategory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$org$graalvm$compiler$asm$amd64$AVXKind$AVXSize;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/asm/amd64/AMD64VectorAssembler;
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.asm.amd64.AMD64VectorAssembler$OpAssertion.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(jdk.vm.ci.amd64.AMD64$CPUFeature, jdk.vm.ci.amd64.AMD64$CPUFeature);
descriptor: (Ljdk/vm/ci/amd64/AMD64$CPUFeature;Ljdk/vm/ci/amd64/AMD64$CPUFeature;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
getstatic jdk.vm.ci.amd64.AMD64.XMM:Ljdk/vm/ci/code/Register$RegisterCategory;
getstatic jdk.vm.ci.amd64.AMD64.XMM:Ljdk/vm/ci/code/Register$RegisterCategory;
getstatic jdk.vm.ci.amd64.AMD64.XMM:Ljdk/vm/ci/code/Register$RegisterCategory;
getstatic jdk.vm.ci.amd64.AMD64.XMM:Ljdk/vm/ci/code/Register$RegisterCategory;
invokespecial org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.<init>:(Ljdk/vm/ci/amd64/AMD64$CPUFeature;Ljdk/vm/ci/amd64/AMD64$CPUFeature;Ljdk/vm/ci/code/Register$RegisterCategory;Ljdk/vm/ci/code/Register$RegisterCategory;Ljdk/vm/ci/code/Register$RegisterCategory;Ljdk/vm/ci/code/Register$RegisterCategory;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/asm/amd64/AMD64VectorAssembler$OpAssertion;
0 2 1 avx128feature Ljdk/vm/ci/amd64/AMD64$CPUFeature;
0 2 2 avx256feature Ljdk/vm/ci/amd64/AMD64$CPUFeature;
MethodParameters:
Name Flags
avx128feature
avx256feature
private void <init>(jdk.vm.ci.amd64.AMD64$CPUFeature, jdk.vm.ci.amd64.AMD64$CPUFeature, jdk.vm.ci.code.Register$RegisterCategory, jdk.vm.ci.code.Register$RegisterCategory, jdk.vm.ci.code.Register$RegisterCategory, jdk.vm.ci.code.Register$RegisterCategory);
descriptor: (Ljdk/vm/ci/amd64/AMD64$CPUFeature;Ljdk/vm/ci/amd64/AMD64$CPUFeature;Ljdk/vm/ci/code/Register$RegisterCategory;Ljdk/vm/ci/code/Register$RegisterCategory;Ljdk/vm/ci/code/Register$RegisterCategory;Ljdk/vm/ci/code/Register$RegisterCategory;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.avx128feature:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
2: aload 0
aload 2
putfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.avx256feature:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
3: aload 0
aload 3
putfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.rCategory:Ljdk/vm/ci/code/Register$RegisterCategory;
4: aload 0
aload 4
putfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.vCategory:Ljdk/vm/ci/code/Register$RegisterCategory;
5: aload 0
aload 5
putfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.mCategory:Ljdk/vm/ci/code/Register$RegisterCategory;
6: aload 0
aload 6
putfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.imm8Category:Ljdk/vm/ci/code/Register$RegisterCategory;
7: return
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 8 0 this Lorg/graalvm/compiler/asm/amd64/AMD64VectorAssembler$OpAssertion;
0 8 1 avx128feature Ljdk/vm/ci/amd64/AMD64$CPUFeature;
0 8 2 avx256feature Ljdk/vm/ci/amd64/AMD64$CPUFeature;
0 8 3 rCategory Ljdk/vm/ci/code/Register$RegisterCategory;
0 8 4 vCategory Ljdk/vm/ci/code/Register$RegisterCategory;
0 8 5 mCategory Ljdk/vm/ci/code/Register$RegisterCategory;
0 8 6 imm8Category Ljdk/vm/ci/code/Register$RegisterCategory;
MethodParameters:
Name Flags
avx128feature
avx256feature
rCategory
vCategory
mCategory
imm8Category
public boolean check(jdk.vm.ci.amd64.AMD64, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
descriptor: (Ljdk/vm/ci/amd64/AMD64;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 2
aload 3
aload 4
aload 5
aconst_null
invokevirtual org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.check:(Ljdk/vm/ci/amd64/AMD64;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)Z
ireturn
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 1 0 this Lorg/graalvm/compiler/asm/amd64/AMD64VectorAssembler$OpAssertion;
0 1 1 arch Ljdk/vm/ci/amd64/AMD64;
0 1 2 size Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
0 1 3 r Ljdk/vm/ci/code/Register;
0 1 4 v Ljdk/vm/ci/code/Register;
0 1 5 m Ljdk/vm/ci/code/Register;
MethodParameters:
Name Flags
arch
size
r
v
m
public boolean check(jdk.vm.ci.amd64.AMD64, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
descriptor: (Ljdk/vm/ci/amd64/AMD64;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: invokestatic org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.$SWITCH_TABLE$org$graalvm$compiler$asm$amd64$AVXKind$AVXSize:()[I
aload 2
invokevirtual org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 3
default: 5
}
1: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.$assertionsDisabled:Z
ifne 5
aload 0
getfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.avx128feature:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
ifnull 2
aload 1
invokevirtual jdk.vm.ci.amd64.AMD64.getFeatures:()Ljava/util/EnumSet;
aload 0
getfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.avx128feature:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifne 5
StackMap locals:
StackMap stack:
2: new java.lang.AssertionError
dup
ldc "emitting illegal 128 bit instruction"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
3: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.$assertionsDisabled:Z
ifne 5
aload 0
getfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.avx256feature:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
ifnull 4
aload 1
invokevirtual jdk.vm.ci.amd64.AMD64.getFeatures:()Ljava/util/EnumSet;
aload 0
getfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.avx256feature:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifne 5
StackMap locals:
StackMap stack:
4: new java.lang.AssertionError
dup
ldc "emitting illegal 256 bit instruction"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
5: StackMap locals:
StackMap stack:
aload 3
ifnull 7
6: getstatic org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.$assertionsDisabled:Z
ifne 7
aload 3
invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
aload 0
getfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.rCategory:Ljdk/vm/ci/code/Register$RegisterCategory;
invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
ifne 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals:
StackMap stack:
aload 4
ifnull 9
8: getstatic org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.$assertionsDisabled:Z
ifne 9
aload 4
invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
aload 0
getfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.vCategory:Ljdk/vm/ci/code/Register$RegisterCategory;
invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
ifne 9
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
9: StackMap locals:
StackMap stack:
aload 5
ifnull 11
10: getstatic org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.$assertionsDisabled:Z
ifne 11
aload 5
invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
aload 0
getfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.mCategory:Ljdk/vm/ci/code/Register$RegisterCategory;
invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
ifne 11
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
11: StackMap locals:
StackMap stack:
aload 6
ifnull 13
12: getstatic org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.$assertionsDisabled:Z
ifne 13
aload 6
invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
aload 0
getfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.imm8Category:Ljdk/vm/ci/code/Register$RegisterCategory;
invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
ifne 13
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
13: StackMap locals:
StackMap stack:
iconst_1
ireturn
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 14 0 this Lorg/graalvm/compiler/asm/amd64/AMD64VectorAssembler$OpAssertion;
0 14 1 arch Ljdk/vm/ci/amd64/AMD64;
0 14 2 size Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
0 14 3 r Ljdk/vm/ci/code/Register;
0 14 4 v Ljdk/vm/ci/code/Register;
0 14 5 m Ljdk/vm/ci/code/Register;
0 14 6 imm8 Ljdk/vm/ci/code/Register;
MethodParameters:
Name Flags
arch
size
r
v
m
imm8
public boolean supports(java.util.EnumSet<jdk.vm.ci.amd64.AMD64$CPUFeature>, org.graalvm.compiler.asm.amd64.AVXKind$AVXSize);
descriptor: (Ljava/util/EnumSet;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.$SWITCH_TABLE$org$graalvm$compiler$asm$amd64$AVXKind$AVXSize:()[I
aload 2
invokevirtual org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.ordinal:()I
iaload
tableswitch { // 3 - 4
3: 1
4: 2
default: 3
}
1: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.avx128feature:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ireturn
2: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.avx256feature:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ireturn
3: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/asm/amd64/AMD64VectorAssembler$OpAssertion;
0 4 1 features Ljava/util/EnumSet<Ljdk/vm/ci/amd64/AMD64$CPUFeature;>;
0 4 2 avxSize Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
Signature: (Ljava/util/EnumSet<Ljdk/vm/ci/amd64/AMD64$CPUFeature;>;Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;)Z
MethodParameters:
Name Flags
features
avxSize
static int[] $SWITCH_TABLE$org$graalvm$compiler$asm$amd64$AVXKind$AVXSize();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.$SWITCH_TABLE$org$graalvm$compiler$asm$amd64$AVXKind$AVXSize:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.values:()[Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.DWORD:Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
invokevirtual org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.ordinal:()I
iconst_1
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.QWORD:Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
invokevirtual org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.ordinal:()I
iconst_2
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.XMM:Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
invokevirtual org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.ordinal:()I
iconst_3
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.YMM:Lorg/graalvm/compiler/asm/amd64/AVXKind$AVXSize;
invokevirtual org.graalvm.compiler.asm.amd64.AVXKind$AVXSize.ordinal:()I
iconst_4
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
dup
putstatic org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion.$SWITCH_TABLE$org$graalvm$compiler$asm$amd64$AVXKind$AVXSize:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
}
SourceFile: "AMD64VectorAssembler.java"
NestHost: org.graalvm.compiler.asm.amd64.AMD64VectorAssembler
InnerClasses:
public final CPUFeature = jdk.vm.ci.amd64.AMD64$CPUFeature of jdk.vm.ci.amd64.AMD64
public RegisterCategory = jdk.vm.ci.code.Register$RegisterCategory of jdk.vm.ci.code.Register
private final OpAssertion = org.graalvm.compiler.asm.amd64.AMD64VectorAssembler$OpAssertion of org.graalvm.compiler.asm.amd64.AMD64VectorAssembler
public final AVXSize = org.graalvm.compiler.asm.amd64.AVXKind$AVXSize of org.graalvm.compiler.asm.amd64.AVXKind