instcountci: Add instcountci for fnstsw from fast path

This commit is contained in:
Paulo Matos committed 2024-07-31 09:59:32 +02:00
1 parent 4227e012aa
commit 9a8e7eaace
1 file changed
+166 -2
+166 -2
View File
@@ -11725,7 +11725,7 @@
]
},
"fld and fnstsw": {
"ExpectedInstructionCount": 19,
"ExpectedInstructionCount": 163,
"x86Insts": [
"fld dword [rax]",
"fld dword [rax + 4]",
@@ -11733,7 +11733,171 @@
"fld dword [rax + 12]",
"fnstsw [rbx]"
],
"ExpectedArm64ASM": []
"ExpectedArm64ASM": [
"ldr s2, [x4]",
"mrs x0, nzcv",
"str w0, [x28, #1000]",
"stp x4, x5, [x28, #280]",
"stp x6, x7, [x28, #296]",
"str x8, [x28, #312]",
"stp x16, x17, [x28, #376]",
"sub sp, sp, #0x70 (112)",
"mov x0, sp",
"st1 {v2.2d, v3.2d}, [x0], #32",
"st1 {v4.2d, v5.2d, v6.2d, v7.2d}, [x0], #64",
"str x30, [x0], #16",
"fmov s0, s2",
"ldrh w0, [x28, #1296]",
"ldr x1, [x28, #1424]",
"blr x1",
"ldr w4, [x28, #1000]",
"msr nzcv, x4",
"ldp x4, x5, [x28, #280]",
"ldp x6, x7, [x28, #296]",
"ldr x8, [x28, #312]",
"ldp x16, x17, [x28, #376]",
"ld1 {v2.2d, v3.2d}, [sp], #32",
"ld1 {v4.2d, v5.2d, v6.2d, v7.2d}, [sp], #64",
"ldr x30, [sp], #16",
"eor v2.16b, v2.16b, v2.16b",
"mov v2.d[0], x0",
"mov v2.h[4], w1",
"ldr s3, [x4, #4]",
"mrs x0, nzcv",
"str w0, [x28, #1000]",
"stp x4, x5, [x28, #280]",
"stp x6, x7, [x28, #296]",
"str x8, [x28, #312]",
"stp x16, x17, [x28, #376]",
"sub sp, sp, #0x70 (112)",
"mov x0, sp",
"st1 {v2.2d, v3.2d}, [x0], #32",
"st1 {v4.2d, v5.2d, v6.2d, v7.2d}, [x0], #64",
"str x30, [x0], #16",
"fmov s0, s3",
"ldrh w0, [x28, #1296]",
"ldr x1, [x28, #1424]",
"blr x1",
"ldr w4, [x28, #1000]",
"msr nzcv, x4",
"ldp x4, x5, [x28, #280]",
"ldp x6, x7, [x28, #296]",
"ldr x8, [x28, #312]",
"ldp x16, x17, [x28, #376]",
"ld1 {v2.2d, v3.2d}, [sp], #32",
"ld1 {v4.2d, v5.2d, v6.2d, v7.2d}, [sp], #64",
"ldr x30, [sp], #16",
"eor v3.16b, v3.16b, v3.16b",
"mov v3.d[0], x0",
"mov v3.h[4], w1",
"mov w20, #0x8",
"ldr s4, [x4, #8]",
"mrs x0, nzcv",
"str w0, [x28, #1000]",
"stp x4, x5, [x28, #280]",
"stp x6, x7, [x28, #296]",
"str x8, [x28, #312]",
"stp x16, x17, [x28, #376]",
"sub sp, sp, #0x70 (112)",
"mov x0, sp",
"st1 {v2.2d, v3.2d}, [x0], #32",
"st1 {v4.2d, v5.2d, v6.2d, v7.2d}, [x0], #64",
"str x30, [x0], #16",
"fmov s0, s4",
"ldrh w0, [x28, #1296]",
"ldr x1, [x28, #1424]",
"blr x1",
"ldr w4, [x28, #1000]",
"msr nzcv, x4",
"ldp x4, x5, [x28, #280]",
"ldp x6, x7, [x28, #296]",
"ldr x8, [x28, #312]",
"ldp x16, x17, [x28, #376]",
"ld1 {v2.2d, v3.2d}, [sp], #32",
"ld1 {v4.2d, v5.2d, v6.2d, v7.2d}, [sp], #64",
"ldr x30, [sp], #16",
"eor v4.16b, v4.16b, v4.16b",
"mov v4.d[0], x0",
"mov v4.h[4], w1",
"ldr s5, [x4, #12]",
"mrs x0, nzcv",
"str w0, [x28, #1000]",
"stp x4, x5, [x28, #280]",
"stp x6, x7, [x28, #296]",
"str x8, [x28, #312]",
"stp x16, x17, [x28, #376]",
"sub sp, sp, #0x70 (112)",
"mov x0, sp",
"st1 {v2.2d, v3.2d}, [x0], #32",
"st1 {v4.2d, v5.2d, v6.2d, v7.2d}, [x0], #64",
"str x30, [x0], #16",
"fmov s0, s5",
"ldrh w0, [x28, #1296]",
"ldr x1, [x28, #1424]",
"blr x1",
"ldr w4, [x28, #1000]",
"msr nzcv, x4",
"ldp x4, x5, [x28, #280]",
"ldp x6, x7, [x28, #296]",
"ldr x8, [x28, #312]",
"ldp x16, x17, [x28, #376]",
"ld1 {v2.2d, v3.2d}, [sp], #32",
"ld1 {v4.2d, v5.2d, v6.2d, v7.2d}, [sp], #64",
"ldr x30, [sp], #16",
"eor v5.16b, v5.16b, v5.16b",
"mov v5.d[0], x0",
"mov v5.h[4], w1",
"ldrb w21, [x28, #1019]",
"sub w21, w21, #0x4 (4)",
"and w21, w21, #0x7",
"strb w21, [x28, #1019]",
"add x0, x28, x21, lsl #4",
"str q5, [x0, #1040]",
"add w22, w21, #0x1 (1)",
"and w22, w22, #0x7",
"add x0, x28, x22, lsl #4",
"str q4, [x0, #1040]",
"add w23, w21, #0x2 (2)",
"and w23, w23, #0x7",
"add x0, x28, x23, lsl #4",
"str q3, [x0, #1040]",
"add w24, w21, #0x3 (3)",
"and w24, w24, #0x7",
"add x0, x28, x24, lsl #4",
"str q2, [x0, #1040]",
"sub w25, w20, w21",
"ldrb w30, [x28, #1298]",
"mov w18, #0xf0f",
"lsr w25, w18, w25",
"orr w25, w30, w25",
"strb w25, [x28, #1298]",
"ldrb w25, [x28, #1016]",
"ldrb w30, [x28, #1017]",
"ldrb w18, [x28, #1018]",
"ldrb w20, [x28, #1022]",
"lsl x25, x25, #8",
"orr x25, x25, x30, lsl #9",
"orr x25, x25, x18, lsl #10",
"orr x20, x25, x20, lsl #14",
"ldrb w25, [x28, #1019]",
"bfi x20, x25, #11, #3",
"strh w20, [x7]",
"add x0, x28, x21, lsl #4",
"str q5, [x0, #1040]",
"add x0, x28, x22, lsl #4",
"str q4, [x0, #1040]",
"add x0, x28, x23, lsl #4",
"str q3, [x0, #1040]",
"add x0, x28, x24, lsl #4",
"str q2, [x0, #1040]",
"mov w20, #0x8",
"sub w20, w20, w21",
"ldrb w21, [x28, #1298]",
"mov w22, #0xf0f",
"lsr w20, w22, w20",
"orr w20, w21, w20",
"strb w20, [x28, #1298]"
]
},
"ffree st0": {
"ExpectedInstructionCount": 6,