Files
FEX-Emu--FEX/unittests/InstructionCountCI/FlagM/VEX_map1.json
T
2026-09-04 07:32:09 +02:00

120 lines
2.7 KiB
JSON

{
"Features": {
"Bitness": 64,
"EnabledHostFeatures": [
"SVE128",
"SVE256",
"FLAGM",
"FLAGM2"
],
"DisabledHostFeatures": [
"FCMA",
"RPRES",
"AFP"
],
"BinaryCacheVersion": 12
},
"Instructions": {
"vucomiss xmm0, xmm1": {
"ExpectedInstructionCount": 4,
"Comment": [
"Map 1 0b00 0x2e 128-bit"
],
"ExpectedArm64ASM": [
"fcmp s16, s17",
"cset x26, vc",
"mov w27, #0x0",
"axflag"
]
},
"vucomisd xmm0, xmm1": {
"ExpectedInstructionCount": 4,
"Comment": [
"Map 1 0b01 0x2e 128-bit"
],
"ExpectedArm64ASM": [
"fcmp d16, d17",
"cset x26, vc",
"mov w27, #0x0",
"axflag"
]
},
"vcomiss xmm0, xmm1": {
"ExpectedInstructionCount": 4,
"Comment": [
"Map 1 0b00 0x2f 128-bit"
],
"ExpectedArm64ASM": [
"fcmp s16, s17",
"cset x26, vc",
"mov w27, #0x0",
"axflag"
]
},
"vcomisd xmm0, xmm1": {
"ExpectedInstructionCount": 4,
"Comment": [
"Map 1 0b01 0x2f 128-bit"
],
"ExpectedArm64ASM": [
"fcmp d16, d17",
"cset x26, vc",
"mov w27, #0x0",
"axflag"
]
},
"vpmovmskb rax, xmm0": {
"ExpectedInstructionCount": 7,
"Comment": [
"Map 1 0b01 0xd7 256-bit"
],
"ExpectedArm64ASM": [
"ldr q2, [x28, #3408]",
"cmlt v3.16b, v16.16b, #0",
"and v2.16b, v3.16b, v2.16b",
"addp v2.16b, v2.16b, v2.16b",
"addp v2.8b, v2.8b, v2.8b",
"addp v2.8b, v2.8b, v2.8b",
"umov w4, v2.h[0]"
]
},
"vpmovmskb rax, ymm0": {
"ExpectedInstructionCount": 17,
"Comment": [
"Map 1 0b01 0xd7 256-bit"
],
"ExpectedArm64ASM": [
"ldr x0, [x28, #2536]",
"ld1b {z2.b}, p7/z, [x0]",
"mrs x0, nzcv",
"mov z0.d, #0",
"cmplt p0.b, p7/z, z16.b, #0",
"not z0.b, p0/m, z16.b",
"orr z0.b, p0/m, z0.b, z16.b",
"mov z3.d, z0.d",
"msr nzcv, x0",
"and z2.d, z3.d, z2.d",
"addp z2.b, p7/m, z2.b, z2.b",
"uzp1 z2.b, z2.b, z2.b",
"uzp2 z1.b, z2.b, z2.b",
"splice z2.d, p6, z2.d, z1.d",
"addp v2.16b, v2.16b, v2.16b",
"addp v2.8b, v2.8b, v2.8b",
"mov w4, v2.s[0]"
]
},
"vmaskmovdqu xmm0, xmm1": {
"ExpectedInstructionCount": 4,
"Comment": [
"Map 1 0b01 0xf7 128-bit"
],
"ExpectedArm64ASM": [
"cmlt v2.16b, v17.16b, #0",
"ldr q3, [x11]",
"bsl v2.16b, v16.16b, v3.16b",
"str q2, [x11]"
]
}
}
}