mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-06 14:00:16 +02:00
instcountci: Fix quiet and signalling nan propagation
This commit is contained in:
1 parent
c480b0ba41
commit
eee0cffa57
6 files changed
+6755
-78
No files matched your search
File diff suppressed because it is too large.
Load diff
@@ -14,7 +14,7 @@
|
||||
"Instructions": {
|
||||
"Block1": {
|
||||
"x86InstructionCount": 70,
|
||||
"ExpectedInstructionCount": 412,
|
||||
"ExpectedInstructionCount": 432,
|
||||
"x86Insts": [
|
||||
"sub esp,0x2c",
|
||||
"mov ecx,dword [esp + 0x34]",
|
||||
@@ -88,7 +88,7 @@
|
||||
"fucomi st0,st1"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"subs w20, w8, #0x2c (44)",
|
||||
"sub w20, w8, #0x2c (44)",
|
||||
"mov x27, x8",
|
||||
"mov x8, x20",
|
||||
"ldr w7, [x8, #52]",
|
||||
@@ -149,6 +149,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s7, s0",
|
||||
"mov x20, v7.d[0]",
|
||||
"fcmp d7, d7",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d8, x20",
|
||||
"fcsel d7, d8, d7, vs",
|
||||
"str s7, [x8, #16]",
|
||||
"ldr s7, [x7, #8]",
|
||||
"str x30, [sp, #-16]!",
|
||||
@@ -181,6 +186,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s9, s0",
|
||||
"mov x20, v9.d[0]",
|
||||
"fcmp d9, d9",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d10, x20",
|
||||
"fcsel d9, d10, d9, vs",
|
||||
"str s9, [x8, #20]",
|
||||
"ldr s9, [x4]",
|
||||
"str x30, [sp, #-16]!",
|
||||
@@ -206,6 +216,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s2, s0",
|
||||
"mov x20, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d10, x20",
|
||||
"fcsel d2, d10, d2, vs",
|
||||
"str s2, [x8, #24]",
|
||||
"ldr s2, [x4, #4]",
|
||||
"str x30, [sp, #-16]!",
|
||||
@@ -231,6 +246,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s5, s0",
|
||||
"mov x20, v5.d[0]",
|
||||
"fcmp d5, d5",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d10, x20",
|
||||
"fcsel d5, d10, d5, vs",
|
||||
"str s5, [x8, #28]",
|
||||
"ldr s5, [x4, #8]",
|
||||
"str x30, [sp, #-16]!",
|
||||
@@ -762,7 +782,7 @@
|
||||
},
|
||||
"Block3": {
|
||||
"x86InstructionCount": 32,
|
||||
"ExpectedInstructionCount": 231,
|
||||
"ExpectedInstructionCount": 236,
|
||||
"x86Insts": [
|
||||
"fld dword [ecx]",
|
||||
"fld dword [edx + 0x4]",
|
||||
@@ -1022,6 +1042,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s4, s0",
|
||||
"mov x23, v4.d[0]",
|
||||
"fcmp d4, d4",
|
||||
"orr x23, x23, #0x8000000000000",
|
||||
"fmov d5, x23",
|
||||
"fcsel d4, d5, d4, vs",
|
||||
"str s4, [x10]",
|
||||
"add w21, w21, #0x1 (1)",
|
||||
"and w21, w21, #0x7",
|
||||
@@ -1033,7 +1058,7 @@
|
||||
},
|
||||
"Block4": {
|
||||
"x86InstructionCount": 54,
|
||||
"ExpectedInstructionCount": 75,
|
||||
"ExpectedInstructionCount": 85,
|
||||
"x86Insts": [
|
||||
"push ebp",
|
||||
"push edi",
|
||||
@@ -1093,7 +1118,7 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"stp w11, w9, [x8, #-8]!",
|
||||
"stp w6, w10, [x8, #-8]!",
|
||||
"subs w26, w8, #0x4c (76)",
|
||||
"sub w26, w8, #0x4c (76)",
|
||||
"mov x27, x8",
|
||||
"mov x8, x26",
|
||||
"ldr w4, [x8, #104]",
|
||||
@@ -1138,6 +1163,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s2, s0",
|
||||
"mov x20, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d3, x20",
|
||||
"fcsel d2, d3, d2, vs",
|
||||
"str s2, [x8, #44]",
|
||||
"ldr s2, [x8, #44]",
|
||||
"str x30, [sp, #-16]!",
|
||||
@@ -1154,6 +1184,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov d2, d0",
|
||||
"mov x20, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d3, x20",
|
||||
"fcsel d2, d3, d2, vs",
|
||||
"str d2, [x8]",
|
||||
"mov w20, #0x44",
|
||||
"movk w20, #0x1, lsl #16",
|
||||
@@ -1170,7 +1205,7 @@
|
||||
},
|
||||
"Block5": {
|
||||
"x86InstructionCount": 49,
|
||||
"ExpectedInstructionCount": 300,
|
||||
"ExpectedInstructionCount": 325,
|
||||
"x86Insts": [
|
||||
"fld dword [esp + 0x80]",
|
||||
"fsub dword [esp + 0x7c]",
|
||||
@@ -1258,6 +1293,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s3, s0",
|
||||
"mov x20, v3.d[0]",
|
||||
"fcmp d3, d3",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d4, x20",
|
||||
"fcsel d3, d4, d3, vs",
|
||||
"str s3, [x8, #52]",
|
||||
"ldr s3, [x8, #36]",
|
||||
"str x30, [sp, #-16]!",
|
||||
@@ -1299,6 +1339,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s2, s0",
|
||||
"mov x20, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d4, x20",
|
||||
"fcsel d2, d4, d2, vs",
|
||||
"str s2, [x8, #44]",
|
||||
"ldr s2, [x4]",
|
||||
"str x30, [sp, #-16]!",
|
||||
@@ -1356,6 +1401,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s2, s0",
|
||||
"mov x20, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d4, x20",
|
||||
"fcsel d2, d4, d2, vs",
|
||||
"str s2, [x8, #68]",
|
||||
"ldr s2, [x4, #4]",
|
||||
"str x30, [sp, #-16]!",
|
||||
@@ -1412,6 +1462,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s2, s0",
|
||||
"mov x20, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d4, x20",
|
||||
"fcsel d2, d4, d2, vs",
|
||||
"str s2, [x8, #72]",
|
||||
"ldr s2, [x4, #8]",
|
||||
"str x30, [sp, #-16]!",
|
||||
@@ -1474,6 +1529,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s2, s0",
|
||||
"mov x20, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d3, x20",
|
||||
"fcsel d2, d3, d2, vs",
|
||||
"str s2, [x8, #76]",
|
||||
"movi v2.2d, #0x0",
|
||||
"ldr s3, [x8, #40]",
|
||||
@@ -1868,7 +1928,7 @@
|
||||
},
|
||||
"Block7": {
|
||||
"x86InstructionCount": 25,
|
||||
"ExpectedInstructionCount": 244,
|
||||
"ExpectedInstructionCount": 249,
|
||||
"x86Insts": [
|
||||
"fld dword [ebx + 0x4]",
|
||||
"fld dword [ebx]",
|
||||
@@ -2131,6 +2191,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s3, s0",
|
||||
"mov x22, v3.d[0]",
|
||||
"fcmp d3, d3",
|
||||
"orr x22, x22, #0x8000000000000",
|
||||
"fmov d4, x22",
|
||||
"fcsel d3, d4, d3, vs",
|
||||
"str s3, [x11]",
|
||||
"strb w21, [x28, #1019]",
|
||||
"str q2, [x20, #1040]",
|
||||
@@ -2145,7 +2210,7 @@
|
||||
},
|
||||
"Block8": {
|
||||
"x86InstructionCount": 25,
|
||||
"ExpectedInstructionCount": 72,
|
||||
"ExpectedInstructionCount": 92,
|
||||
"x86Insts": [
|
||||
"fstp st0",
|
||||
"fstp st3",
|
||||
@@ -2204,6 +2269,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s5, s0",
|
||||
"mov x12, v5.d[0]",
|
||||
"fcmp d5, d5",
|
||||
"orr x12, x12, #0x8000000000000",
|
||||
"fmov d6, x12",
|
||||
"fcsel d5, d6, d5, vs",
|
||||
"str s5, [x8, #56]",
|
||||
"strb wzr, [x28, #1017]",
|
||||
"str x30, [sp, #-16]!",
|
||||
@@ -2213,6 +2283,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s5, s0",
|
||||
"mov x12, v5.d[0]",
|
||||
"fcmp d5, d5",
|
||||
"orr x12, x12, #0x8000000000000",
|
||||
"fmov d6, x12",
|
||||
"fcsel d5, d6, d5, vs",
|
||||
"str s5, [x8, #44]",
|
||||
"add w20, w20, #0x1 (1)",
|
||||
"and w20, w20, #0x7",
|
||||
@@ -2226,6 +2301,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s6, s0",
|
||||
"mov x13, v6.d[0]",
|
||||
"fcmp d6, d6",
|
||||
"orr x13, x13, #0x8000000000000",
|
||||
"fmov d7, x13",
|
||||
"fcsel d6, d7, d6, vs",
|
||||
"str s6, [x8, #40]",
|
||||
"str x30, [sp, #-16]!",
|
||||
"mov v0.16b, v2.16b",
|
||||
@@ -2234,6 +2314,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov d6, d0",
|
||||
"mov x13, v6.d[0]",
|
||||
"fcmp d6, d6",
|
||||
"orr x13, x13, #0x8000000000000",
|
||||
"fmov d7, x13",
|
||||
"fcsel d6, d7, d6, vs",
|
||||
"str d6, [x8]",
|
||||
"add w20, w20, #0x1 (1)",
|
||||
"and w20, w20, #0x7",
|
||||
@@ -2250,7 +2335,7 @@
|
||||
},
|
||||
"Block9": {
|
||||
"x86InstructionCount": 25,
|
||||
"ExpectedInstructionCount": 72,
|
||||
"ExpectedInstructionCount": 92,
|
||||
"x86Insts": [
|
||||
"fstp st0",
|
||||
"fstp st3",
|
||||
@@ -2309,6 +2394,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s5, s0",
|
||||
"mov x12, v5.d[0]",
|
||||
"fcmp d5, d5",
|
||||
"orr x12, x12, #0x8000000000000",
|
||||
"fmov d6, x12",
|
||||
"fcsel d5, d6, d5, vs",
|
||||
"str s5, [x8, #56]",
|
||||
"strb wzr, [x28, #1017]",
|
||||
"str x30, [sp, #-16]!",
|
||||
@@ -2318,6 +2408,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s5, s0",
|
||||
"mov x12, v5.d[0]",
|
||||
"fcmp d5, d5",
|
||||
"orr x12, x12, #0x8000000000000",
|
||||
"fmov d6, x12",
|
||||
"fcsel d5, d6, d5, vs",
|
||||
"str s5, [x8, #44]",
|
||||
"add w20, w20, #0x1 (1)",
|
||||
"and w20, w20, #0x7",
|
||||
@@ -2331,6 +2426,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s6, s0",
|
||||
"mov x13, v6.d[0]",
|
||||
"fcmp d6, d6",
|
||||
"orr x13, x13, #0x8000000000000",
|
||||
"fmov d7, x13",
|
||||
"fcsel d6, d7, d6, vs",
|
||||
"str s6, [x8, #40]",
|
||||
"str x30, [sp, #-16]!",
|
||||
"mov v0.16b, v2.16b",
|
||||
@@ -2339,6 +2439,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov d6, d0",
|
||||
"mov x13, v6.d[0]",
|
||||
"fcmp d6, d6",
|
||||
"orr x13, x13, #0x8000000000000",
|
||||
"fmov d7, x13",
|
||||
"fcsel d6, d7, d6, vs",
|
||||
"str d6, [x8]",
|
||||
"add w20, w20, #0x1 (1)",
|
||||
"and w20, w20, #0x7",
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -2001,7 +2001,7 @@
|
||||
]
|
||||
},
|
||||
"fst dword [rax]": {
|
||||
"ExpectedInstructionCount": 11,
|
||||
"ExpectedInstructionCount": 16,
|
||||
"Comment": [
|
||||
"0xd9 !11b /2"
|
||||
],
|
||||
@@ -2016,11 +2016,16 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s2, s0",
|
||||
"mov x20, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d3, x20",
|
||||
"fcsel d2, d3, d2, vs",
|
||||
"str s2, [x4]"
|
||||
]
|
||||
},
|
||||
"fstp dword [rax]": {
|
||||
"ExpectedInstructionCount": 19,
|
||||
"ExpectedInstructionCount": 24,
|
||||
"Comment": [
|
||||
"0xd9 !11b /3"
|
||||
],
|
||||
@@ -2035,6 +2040,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s2, s0",
|
||||
"mov x21, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x21, x21, #0x8000000000000",
|
||||
"fmov d3, x21",
|
||||
"fcsel d2, d3, d2, vs",
|
||||
"str s2, [x4]",
|
||||
"add w21, w20, #0x1 (1)",
|
||||
"and w21, w21, #0x7",
|
||||
@@ -6736,7 +6746,7 @@
|
||||
]
|
||||
},
|
||||
"fst qword [rax]": {
|
||||
"ExpectedInstructionCount": 11,
|
||||
"ExpectedInstructionCount": 16,
|
||||
"Comment": [
|
||||
"0xdd !11b /2"
|
||||
],
|
||||
@@ -6751,11 +6761,16 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov d2, d0",
|
||||
"mov x20, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d3, x20",
|
||||
"fcsel d2, d3, d2, vs",
|
||||
"str d2, [x4]"
|
||||
]
|
||||
},
|
||||
"fstp qword [rax]": {
|
||||
"ExpectedInstructionCount": 19,
|
||||
"ExpectedInstructionCount": 24,
|
||||
"Comment": [
|
||||
"0xdd !11b /3"
|
||||
],
|
||||
@@ -6770,6 +6785,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov d2, d0",
|
||||
"mov x21, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x21, x21, #0x8000000000000",
|
||||
"fmov d3, x21",
|
||||
"fcsel d2, d3, d2, vs",
|
||||
"str d2, [x4]",
|
||||
"add w21, w20, #0x1 (1)",
|
||||
"and w21, w21, #0x7",
|
||||
|
||||
@@ -2000,7 +2000,7 @@
|
||||
]
|
||||
},
|
||||
"fst dword [rax]": {
|
||||
"ExpectedInstructionCount": 11,
|
||||
"ExpectedInstructionCount": 16,
|
||||
"Comment": [
|
||||
"0xd9 !11b /2"
|
||||
],
|
||||
@@ -2015,11 +2015,16 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s2, s0",
|
||||
"mov x20, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d3, x20",
|
||||
"fcsel d2, d3, d2, vs",
|
||||
"str s2, [x4]"
|
||||
]
|
||||
},
|
||||
"fstp dword [rax]": {
|
||||
"ExpectedInstructionCount": 19,
|
||||
"ExpectedInstructionCount": 24,
|
||||
"Comment": [
|
||||
"0xd9 !11b /3"
|
||||
],
|
||||
@@ -2034,6 +2039,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov s2, s0",
|
||||
"mov x21, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x21, x21, #0x8000000000000",
|
||||
"fmov d3, x21",
|
||||
"fcsel d2, d3, d2, vs",
|
||||
"str s2, [x4]",
|
||||
"add w21, w20, #0x1 (1)",
|
||||
"and w21, w21, #0x7",
|
||||
@@ -6767,7 +6777,7 @@
|
||||
]
|
||||
},
|
||||
"fst qword [rax]": {
|
||||
"ExpectedInstructionCount": 11,
|
||||
"ExpectedInstructionCount": 16,
|
||||
"Comment": [
|
||||
"0xdd !11b /2"
|
||||
],
|
||||
@@ -6782,11 +6792,16 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov d2, d0",
|
||||
"mov x20, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x20, x20, #0x8000000000000",
|
||||
"fmov d3, x20",
|
||||
"fcsel d2, d3, d2, vs",
|
||||
"str d2, [x4]"
|
||||
]
|
||||
},
|
||||
"fstp qword [rax]": {
|
||||
"ExpectedInstructionCount": 19,
|
||||
"ExpectedInstructionCount": 24,
|
||||
"Comment": [
|
||||
"0xdd !11b /3"
|
||||
],
|
||||
@@ -6801,6 +6816,11 @@
|
||||
"blr x0",
|
||||
"ldr x30, [sp], #16",
|
||||
"fmov d2, d0",
|
||||
"mov x21, v2.d[0]",
|
||||
"fcmp d2, d2",
|
||||
"orr x21, x21, #0x8000000000000",
|
||||
"fmov d3, x21",
|
||||
"fcsel d2, d3, d2, vs",
|
||||
"str d2, [x4]",
|
||||
"add w21, w20, #0x1 (1)",
|
||||
"and w21, w21, #0x7",
|
||||
|
||||
Reference in new issue
Block a user