instcountci: f80 stack xchg optimization for fast path

This commit is contained in:
Paulo Matos committed 2025-11-05 11:20:02 +01:00
1 parent 6ee9984280
commit e3de62058b
4 files changed
+2041 -2265

No files matched your search

File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -2085,220 +2085,220 @@
"fcvt s2, d2",
"stur s2, [x9, #-68]",
"ldur s2, [x9, #-68]",
"fcvt d2, s2",
"ldur s4, [x9, #-72]",
"fcvt d4, s4",
"fadd d4, d2, d4",
"fcvt s4, d4",
"stur s4, [x9, #-72]",
"ldur s4, [x9, #-72]",
"fcvt d4, s4",
"ldur s5, [x9, #-80]",
"fcvt d4, s2",
"ldur s5, [x9, #-72]",
"fcvt d5, s5",
"fadd d4, d4, d5",
"fcvt s4, d4",
"stur s4, [x9, #-80]",
"ldur s4, [x9, #-72]",
"fcvt d4, s4",
"fadd d5, d4, d5",
"fcvt s5, d5",
"stur s5, [x9, #-72]",
"ldur s5, [x9, #-72]",
"fcvt d5, s5",
"ldur s6, [x9, #-80]",
"fcvt d6, s6",
"fadd d5, d5, d6",
"fcvt s5, d5",
"stur s5, [x9, #-80]",
"ldur s5, [x9, #-72]",
"fcvt d5, s5",
"ldur s6, [x9, #-76]",
"fcvt d6, s6",
"fadd d5, d5, d6",
"fcvt s5, d5",
"stur s5, [x9, #-72]",
"ldur s5, [x9, #-76]",
"fcvt d5, s5",
"fadd d4, d4, d5",
"fcvt s4, d4",
"stur s4, [x9, #-72]",
"ldur s4, [x9, #-76]",
"fcvt d4, s4",
"fadd d4, d2, d4",
"fcvt s4, d4",
"stur s4, [x9, #-76]",
"ldur s4, [x9, #-188]",
"fcvt d4, s4",
"ldur s5, [x9, #-192]",
"fcvt d5, s5",
"fadd d4, d4, d5",
"fcvt s4, d4",
"stur s4, [x9, #-64]",
"ldur s4, [x9, #-192]",
"fcvt d4, s4",
"fadd d5, d4, d5",
"fcvt s5, d5",
"stur s5, [x9, #-76]",
"ldur s5, [x9, #-188]",
"fcvt d5, s5",
"fsub d4, d4, d5",
"fmul d4, d4, d3",
"fcvt s4, d4",
"stur s4, [x9, #-60]",
"ldur s4, [x9, #-180]",
"fcvt d4, s4",
"ldur s5, [x9, #-184]",
"ldur s6, [x9, #-192]",
"fcvt d6, s6",
"fadd d5, d5, d6",
"fcvt s5, d5",
"stur s5, [x9, #-64]",
"ldur s5, [x9, #-192]",
"fcvt d5, s5",
"fadd d4, d4, d5",
"fcvt s4, d4",
"stur s4, [x9, #-56]",
"ldur s4, [x9, #-180]",
"fcvt d4, s4",
"ldur s5, [x9, #-184]",
"ldur s6, [x9, #-188]",
"fcvt d6, s6",
"fsub d5, d5, d6",
"fmul d5, d5, d3",
"fcvt s5, d5",
"stur s5, [x9, #-60]",
"ldur s5, [x9, #-180]",
"fcvt d5, s5",
"fsub d4, d4, d5",
"fmul d4, d4, d3",
"fcvt s4, d4",
"stur s4, [x9, #-52]",
"ldur s4, [x9, #-56]",
"fcvt d4, s4",
"ldur s5, [x9, #-52]",
"ldur s6, [x9, #-184]",
"fcvt d6, s6",
"fadd d5, d5, d6",
"fcvt s5, d5",
"stur s5, [x9, #-56]",
"ldur s5, [x9, #-180]",
"fcvt d5, s5",
"fadd d4, d4, d5",
"fcvt s4, d4",
"stur s4, [x9, #-56]",
"ldur s4, [x9, #-172]",
"fcvt d4, s4",
"ldur s5, [x9, #-176]",
"ldur s6, [x9, #-184]",
"fcvt d6, s6",
"fsub d5, d5, d6",
"fmul d5, d5, d3",
"fcvt s5, d5",
"stur s5, [x9, #-52]",
"ldur s5, [x9, #-56]",
"fcvt d5, s5",
"fadd d4, d4, d5",
"fcvt s4, d4",
"stur s4, [x9, #-48]",
"ldur s4, [x9, #-176]",
"fcvt d4, s4",
"ldur s6, [x9, #-52]",
"fcvt d6, s6",
"fadd d5, d5, d6",
"fcvt s5, d5",
"stur s5, [x9, #-56]",
"ldur s5, [x9, #-172]",
"fcvt d5, s5",
"fsub d4, d4, d5",
"fmul d4, d4, d3",
"fcvt s4, d4",
"stur s4, [x9, #-44]",
"ldur s4, [x9, #-164]",
"fcvt d4, s4",
"ldur s5, [x9, #-168]",
"ldur s6, [x9, #-176]",
"fcvt d6, s6",
"fadd d5, d5, d6",
"fcvt s5, d5",
"stur s5, [x9, #-48]",
"ldur s5, [x9, #-176]",
"fcvt d5, s5",
"fadd d4, d4, d5",
"fcvt s4, d4",
"stur s4, [x9, #-40]",
"ldur s4, [x9, #-164]",
"fcvt d4, s4",
"ldur s5, [x9, #-168]",
"ldur s6, [x9, #-172]",
"fcvt d6, s6",
"fsub d5, d5, d6",
"fmul d5, d5, d3",
"fcvt s5, d5",
"stur s5, [x9, #-44]",
"ldur s5, [x9, #-164]",
"fcvt d5, s5",
"fsub d4, d4, d5",
"fmul d4, d4, d3",
"fcvt s4, d4",
"stur s4, [x9, #-36]",
"ldur s4, [x9, #-40]",
"fcvt d4, s4",
"ldur s5, [x9, #-36]",
"ldur s6, [x9, #-168]",
"fcvt d6, s6",
"fadd d5, d5, d6",
"fcvt s5, d5",
"stur s5, [x9, #-40]",
"ldur s5, [x9, #-164]",
"fcvt d5, s5",
"fadd d4, d4, d5",
"ldur s6, [x9, #-168]",
"fcvt d6, s6",
"fsub d5, d5, d6",
"fmul d5, d5, d3",
"fcvt s5, d5",
"stur s5, [x9, #-36]",
"ldur s5, [x9, #-40]",
"fcvt d5, s5",
"ldur s6, [x9, #-36]",
"fcvt d6, s6",
"fadd d5, d5, d6",
"strb wzr, [x28, #1049]",
"fcvt s4, d4",
"stur s4, [x9, #-40]",
"ldur s4, [x9, #-48]",
"fcvt d4, s4",
"ldur s6, [x9, #-40]",
"fcvt d6, s6",
"fadd d4, d4, d6",
"fcvt s4, d4",
"stur s4, [x9, #-48]",
"ldur s4, [x9, #-44]",
"fcvt d4, s4",
"ldur s6, [x9, #-40]",
"fcvt d6, s6",
"fadd d4, d4, d6",
"fcvt s4, d4",
"stur s4, [x9, #-40]",
"ldur s4, [x9, #-44]",
"fcvt d4, s4",
"fadd d4, d4, d5",
"fcvt s4, d4",
"stur s4, [x9, #-44]",
"ldur s4, [x9, #-160]",
"fcvt d4, s4",
"ldur s6, [x9, #-156]",
"fcvt d6, s6",
"fadd d4, d4, d6",
"fcvt s4, d4",
"stur s4, [x9, #-32]",
"ldur s4, [x9, #-160]",
"fcvt d4, s4",
"ldur s6, [x9, #-156]",
"fcvt d6, s6",
"fsub d4, d4, d6",
"fmul d4, d4, d3",
"fcvt s4, d4",
"stur s4, [x9, #-28]",
"ldur s4, [x9, #-152]",
"fcvt d4, s4",
"ldur s6, [x9, #-148]",
"fcvt d6, s6",
"fadd d4, d4, d6",
"fcvt s4, d4",
"stur s4, [x9, #-24]",
"ldur s4, [x9, #-148]",
"fcvt d4, s4",
"ldur s6, [x9, #-152]",
"fcvt d6, s6",
"fsub d4, d4, d6",
"fmul d4, d4, d3",
"fcvt s4, d4",
"stur s4, [x9, #-20]",
"ldur s4, [x9, #-24]",
"fcvt d4, s4",
"ldur s6, [x9, #-20]",
"fcvt d6, s6",
"fadd d4, d4, d6",
"fcvt s4, d4",
"stur s4, [x9, #-24]",
"ldur s4, [x9, #-144]",
"fcvt d4, s4",
"ldur s6, [x9, #-140]",
"fcvt d6, s6",
"fadd d4, d4, d6",
"fcvt s4, d4",
"stur s4, [x9, #-16]",
"fcvt s5, d5",
"stur s5, [x9, #-40]",
"ldur s5, [x9, #-48]",
"fcvt d5, s5",
"ldur s7, [x9, #-40]",
"fcvt d7, s7",
"fadd d5, d5, d7",
"fcvt s5, d5",
"stur s5, [x9, #-48]",
"ldur s5, [x9, #-44]",
"fcvt d5, s5",
"ldur s7, [x9, #-40]",
"fcvt d7, s7",
"fadd d5, d5, d7",
"fcvt s5, d5",
"stur s5, [x9, #-40]",
"ldur s5, [x9, #-44]",
"fcvt d5, s5",
"fadd d5, d5, d6",
"fcvt s5, d5",
"stur s5, [x9, #-44]",
"ldur s5, [x9, #-160]",
"fcvt d5, s5",
"ldur s7, [x9, #-156]",
"fcvt d7, s7",
"fadd d5, d5, d7",
"fcvt s5, d5",
"stur s5, [x9, #-32]",
"ldur s5, [x9, #-160]",
"fcvt d5, s5",
"ldur s7, [x9, #-156]",
"fcvt d7, s7",
"fsub d5, d5, d7",
"fmul d5, d5, d3",
"fcvt s5, d5",
"stur s5, [x9, #-28]",
"ldur s5, [x9, #-152]",
"fcvt d5, s5",
"ldur s7, [x9, #-148]",
"fcvt d7, s7",
"fadd d5, d5, d7",
"fcvt s5, d5",
"stur s5, [x9, #-24]",
"ldur s5, [x9, #-148]",
"fcvt d5, s5",
"ldur s7, [x9, #-152]",
"fcvt d7, s7",
"fsub d5, d5, d7",
"fmul d5, d5, d3",
"fcvt s5, d5",
"stur s5, [x9, #-20]",
"ldur s5, [x9, #-24]",
"fcvt d5, s5",
"ldur s7, [x9, #-20]",
"fcvt d7, s7",
"fadd d5, d5, d7",
"fcvt s5, d5",
"stur s5, [x9, #-24]",
"ldur s5, [x9, #-144]",
"fcvt d5, s5",
"ldur s7, [x9, #-140]",
"fcvt d7, s7",
"fadd d5, d5, d7",
"fcvt s5, d5",
"stur s5, [x9, #-16]",
"ldr w4, [x9, #8]",
"ldur s4, [x9, #-144]",
"fcvt d4, s4",
"ldur s5, [x9, #-144]",
"fcvt d5, s5",
"ldr w7, [x9, #12]",
"ldur s6, [x9, #-140]",
"fcvt d6, s6",
"fsub d4, d4, d6",
"fmul d4, d4, d3",
"fcvt s4, d4",
"stur s4, [x9, #-12]",
"ldur s4, [x9, #-136]",
"fcvt d4, s4",
"ldur s6, [x9, #-132]",
"fcvt d6, s6",
"fadd d4, d4, d6",
"fcvt s4, d4",
"stur s4, [x9, #-8]",
"ldur s4, [x9, #-132]",
"fcvt d4, s4",
"ldur s6, [x9, #-136]",
"fcvt d6, s6",
"fsub d4, d4, d6",
"fmul d3, d3, d4",
"ldur s7, [x9, #-140]",
"fcvt d7, s7",
"fsub d5, d5, d7",
"fmul d5, d5, d3",
"fcvt s5, d5",
"stur s5, [x9, #-12]",
"ldur s5, [x9, #-136]",
"fcvt d5, s5",
"ldur s7, [x9, #-132]",
"fcvt d7, s7",
"fadd d5, d5, d7",
"fcvt s5, d5",
"stur s5, [x9, #-8]",
"ldur s5, [x9, #-132]",
"fcvt d5, s5",
"ldur s7, [x9, #-136]",
"fcvt d7, s7",
"fsub d5, d5, d7",
"fmul d3, d3, d5",
"strb wzr, [x28, #1049]",
"fcvt s3, d3",
"stur s3, [x9, #-4]",
"ldur s3, [x9, #-8]",
"fcvt d3, s3",
"ldur s4, [x9, #-4]",
"fcvt d4, s4",
"fadd d3, d3, d4",
"ldur s5, [x9, #-4]",
"fcvt d7, s5",
"fadd d3, d3, d7",
"strb wzr, [x28, #1049]",
"fcvt s3, d3",
"stur s3, [x9, #-8]",
"ldur s3, [x9, #-16]",
"fcvt d3, s3",
"ldur s6, [x9, #-8]",
"fcvt d6, s6",
"fadd d3, d3, d6",
"ldur s8, [x9, #-8]",
"fcvt d8, s8",
"fadd d3, d3, d8",
"fcvt s3, d3",
"stur s3, [x9, #-16]",
"ldur s3, [x9, #-12]",
"fcvt d3, s3",
"ldur s6, [x9, #-8]",
"fcvt d6, s6",
"fadd d3, d3, d6",
"ldur s8, [x9, #-8]",
"fcvt d8, s8",
"fadd d3, d3, d8",
"fcvt s3, d3",
"stur s3, [x9, #-8]",
"ldur s3, [x9, #-12]",
"fcvt d3, s3",
"fadd d3, d3, d4",
"fadd d3, d3, d7",
"fcvt s3, d3",
"stur s3, [x9, #-12]",
"ldur s3, [x9, #-128]",
@@ -2321,67 +2321,66 @@
"str s3, [x7, #768]",
"ldur s3, [x9, #-80]",
"fcvt d3, s3",
"ldur s6, [x9, #-96]",
"fcvt d6, s6",
"fadd d3, d3, d6",
"ldur s8, [x9, #-96]",
"fcvt d8, s8",
"fadd d3, d3, d8",
"fcvt s3, d3",
"stur s3, [x9, #-96]",
"ldur s3, [x9, #-96]",
"str s3, [x4, #896]",
"ldur s3, [x9, #-80]",
"fcvt d3, s3",
"ldur s6, [x9, #-88]",
"fcvt d6, s6",
"fadd d3, d3, d6",
"ldur s8, [x9, #-88]",
"fcvt d8, s8",
"fadd d3, d3, d8",
"fcvt s3, d3",
"stur s3, [x9, #-80]",
"ldur s3, [x9, #-80]",
"str s3, [x4, #640]",
"ldur s3, [x9, #-72]",
"fcvt d3, s3",
"ldur s6, [x9, #-88]",
"fcvt d6, s6",
"fadd d3, d3, d6",
"ldur s8, [x9, #-88]",
"fcvt d8, s8",
"fadd d3, d3, d8",
"fcvt s3, d3",
"stur s3, [x9, #-88]",
"ldur s3, [x9, #-88]",
"str s3, [x4, #384]",
"ldur s3, [x9, #-72]",
"fcvt d3, s3",
"ldur s6, [x9, #-92]",
"fcvt d6, s6",
"fadd d3, d3, d6",
"ldur s8, [x9, #-92]",
"fcvt d8, s8",
"fadd d3, d3, d8",
"fcvt s3, d3",
"stur s3, [x9, #-72]",
"ldur s3, [x9, #-72]",
"str s3, [x4, #128]",
"ldur s3, [x9, #-76]",
"fcvt d3, s3",
"ldur s6, [x9, #-92]",
"fcvt d6, s6",
"fadd d3, d3, d6",
"ldur s8, [x9, #-92]",
"fcvt d8, s8",
"fadd d3, d3, d8",
"fcvt s3, d3",
"stur s3, [x9, #-92]",
"ldur s3, [x9, #-92]",
"str s3, [x7, #128]",
"ldur s3, [x9, #-76]",
"fcvt d3, s3",
"ldur s6, [x9, #-84]",
"fcvt d6, s6",
"fadd d3, d3, d6",
"ldur s8, [x9, #-84]",
"fcvt d8, s8",
"fadd d3, d3, d8",
"fcvt s3, d3",
"stur s3, [x9, #-76]",
"ldur s3, [x9, #-76]",
"str s3, [x7, #384]",
"ldur s3, [x9, #-84]",
"fcvt d3, s3",
"fadd d3, d2, d3",
"fadd d3, d4, d3",
"fcvt s3, d3",
"stur s3, [x9, #-84]",
"ldur s3, [x9, #-84]",
"str s3, [x7, #640]",
"strb wzr, [x28, #1049]",
"fcvt s2, d2",
"str s2, [x7, #896]",
"ldur s2, [x9, #-32]",
"fcvt d2, s2",
@@ -2511,7 +2510,7 @@
"str s2, [x7, #448]",
"ldur s2, [x9, #-20]",
"fcvt d2, s2",
"fadd d2, d2, d4",
"fadd d2, d2, d7",
"fcvt s2, d2",
"stur s2, [x9, #-20]",
"ldur s2, [x9, #-52]",
@@ -2523,15 +2522,14 @@
"str s2, [x7, #576]",
"ldur s2, [x9, #-20]",
"fcvt d2, s2",
"fadd d2, d5, d2",
"fadd d2, d6, d2",
"fcvt s2, d2",
"str s2, [x7, #704]",
"fadd d2, d5, d4",
"fadd d2, d6, d7",
"strb wzr, [x28, #1049]",
"fcvt s2, d2",
"str s2, [x7, #832]",
"fcvt s2, d4",
"str s2, [x7, #960]",
"str s5, [x7, #960]",
"mov x8, x9",
"ldp w9, w20, [x8], #8",
"ldrb w21, [x28, #1051]",
@@ -2544,7 +2542,7 @@
"strb w21, [x28, #1202]"
],
"x86InstructionCount": 809,
"ExpectedInstructionCount": 1714
"ExpectedInstructionCount": 1712
}
}
}
@@ -17,7 +17,7 @@
"Instructions": {
"Block1": {
"x86InstructionCount": 911,
"ExpectedInstructionCount": 1697,
"ExpectedInstructionCount": 1695,
"x86Insts": [
"sub esp,0x118",
"fld dword [ecx + 0x1084]",
@@ -2364,213 +2364,211 @@
"fcvt s2, d2",
"str s2, [x8, #60]",
"ldr s2, [x8, #60]",
"fcvt d2, s2",
"ldr s3, [x8, #28]",
"fcvt d3, s3",
"fadd d4, d2, d3",
"strb wzr, [x28, #1049]",
"fcvt s4, d4",
"str s4, [x8, #196]",
"ldr s4, [x8, #196]",
"fcvt d3, s2",
"ldr s4, [x8, #28]",
"fcvt d4, s4",
"ldr s5, [x8, #44]",
"fcvt d5, s5",
"fadd d6, d4, d5",
"strb wzr, [x28, #1049]",
"fcvt s6, d6",
"str s6, [x8, #188]",
"ldr s6, [x8, #188]",
"fcvt d6, s6",
"ldr s7, [x8, #20]",
"fcvt d7, s7",
"fadd d6, d6, d7",
"ldr s7, [x8, #52]",
"fcvt d7, s7",
"fadd d6, d6, d7",
"strb wzr, [x28, #1049]",
"fcvt s6, d6",
"str s6, [x8, #164]",
"fadd d6, d2, d5",
"ldr s8, [x8, #12]",
"fcvt d8, s8",
"fadd d6, d6, d8",
"fcvt s6, d6",
"str s6, [x8, #180]",
"ldr s6, [x8, #180]",
"fcvt d6, s6",
"fadd d6, d6, d7",
"fcvt s6, d6",
"str s6, [x8, #172]",
"fadd d6, d2, d7",
"ldr s8, [x8, #36]",
"fcvt d8, s8",
"fadd d6, d6, d8",
"fcvt s6, d6",
"str s6, [x8, #64]",
"ldr s6, [x8, #64]",
"fcvt d6, s6",
"ldr s8, [x8, #4]",
"fcvt d8, s8",
"fadd d6, d6, d8",
"fcvt s6, d6",
"str s6, [x8, #148]",
"ldr s6, [x8, #148]",
"fcvt d6, s6",
"fneg v6.2d, v6.2d",
"fcvt s6, d6",
"str s6, [x8, #272]",
"ldr s6, [x8, #272]",
"fcvt d6, s6",
"ldr s8, [x8, #56]",
"fcvt d8, s8",
"fsub d6, d6, d8",
"strb wzr, [x28, #1049]",
"fcvt s6, d6",
"str s6, [x8, #208]",
"ldr s6, [x8, #64]",
"fcvt d6, s6",
"ldr s9, [x8, #20]",
"fcvt d9, s9",
"fadd d6, d6, d9",
"fadd d6, d6, d3",
"fcvt s6, d6",
"str s6, [x8, #156]",
"ldr s6, [x8, #156]",
"fcvt d6, s6",
"fneg v6.2d, v6.2d",
"fcvt s6, d6",
"str s6, [x8, #136]",
"ldr s6, [x8, #136]",
"fcvt d6, s6",
"ldr s9, [x8, #24]",
"fcvt d9, s9",
"fsub d6, d6, d9",
"fsub d6, d6, d8",
"fcvt s6, d6",
"str s6, [x8, #216]",
"ldr s6, [x8, #40]",
"fcvt d6, s6",
"fneg v6.2d, v6.2d",
"fsub d5, d6, d5",
"fsub d5, d5, d8",
"fsub d5, d5, d2",
"fadd d5, d3, d4",
"strb wzr, [x28, #1049]",
"fcvt s5, d5",
"str s5, [x8, #64]",
"ldr s5, [x8, #64]",
"fcvt d5, s5",
"fsub d6, d5, d7",
"ldr s7, [x8, #8]",
"str s5, [x8, #196]",
"ldr s5, [x8, #196]",
"fcvt d6, s5",
"ldr s7, [x8, #44]",
"fcvt d7, s7",
"fsub d7, d6, d7",
"ldr s9, [x8, #12]",
"fadd d8, d6, d7",
"strb wzr, [x28, #1049]",
"fcvt s8, d8",
"str s8, [x8, #188]",
"ldr s8, [x8, #188]",
"fcvt d8, s8",
"ldr s9, [x8, #20]",
"fcvt d9, s9",
"fsub d7, d7, d9",
"fadd d8, d8, d9",
"ldr s9, [x8, #52]",
"fcvt d9, s9",
"fadd d8, d8, d9",
"strb wzr, [x28, #1049]",
"fcvt s8, d8",
"str s8, [x8, #164]",
"fadd d8, d3, d7",
"ldr s10, [x8, #12]",
"fcvt d10, s10",
"fadd d8, d8, d10",
"fcvt s8, d8",
"str s8, [x8, #180]",
"ldr s8, [x8, #180]",
"fcvt d8, s8",
"fadd d8, d8, d9",
"fcvt s8, d8",
"str s8, [x8, #172]",
"fadd d8, d3, d9",
"ldr s10, [x8, #36]",
"fcvt d10, s10",
"fadd d8, d8, d10",
"fcvt s8, d8",
"str s8, [x8, #64]",
"ldr s8, [x8, #64]",
"fcvt d8, s8",
"ldr s10, [x8, #4]",
"fcvt d10, s10",
"fadd d8, d8, d10",
"fcvt s8, d8",
"str s8, [x8, #148]",
"ldr s8, [x8, #148]",
"fcvt d8, s8",
"fneg v8.2d, v8.2d",
"fcvt s8, d8",
"str s8, [x8, #272]",
"ldr s8, [x8, #272]",
"fcvt d8, s8",
"ldr s10, [x8, #56]",
"fcvt d10, s10",
"fsub d8, d8, d10",
"strb wzr, [x28, #1049]",
"fcvt s8, d8",
"str s8, [x8, #208]",
"ldr s8, [x8, #64]",
"fcvt d8, s8",
"ldr s11, [x8, #20]",
"fcvt d11, s11",
"fadd d8, d8, d11",
"fadd d8, d8, d4",
"fcvt s8, d8",
"str s8, [x8, #156]",
"ldr s8, [x8, #156]",
"fcvt d8, s8",
"fneg v8.2d, v8.2d",
"fcvt s8, d8",
"str s8, [x8, #136]",
"ldr s8, [x8, #136]",
"fcvt d8, s8",
"ldr s11, [x8, #24]",
"fcvt d11, s11",
"fsub d8, d8, d11",
"fsub d8, d8, d10",
"fcvt s8, d8",
"str s8, [x8, #216]",
"ldr s8, [x8, #40]",
"fcvt d8, s8",
"fneg v8.2d, v8.2d",
"fsub d7, d8, d7",
"fsub d7, d7, d10",
"fsub d7, d7, d3",
"strb wzr, [x28, #1049]",
"fcvt s7, d7",
"str s7, [x8, #232]",
"ldr s7, [x8, #20]",
"str s7, [x8, #64]",
"ldr s7, [x8, #64]",
"fcvt d7, s7",
"fsub d6, d6, d7",
"ldr s7, [x8, #24]",
"fcvt d7, s7",
"fsub d6, d6, d7",
"fsub d6, d6, d3",
"fsub d8, d7, d9",
"ldr s9, [x8, #8]",
"fcvt d9, s9",
"fsub d9, d8, d9",
"ldr s11, [x8, #12]",
"fcvt d11, s11",
"fsub d9, d9, d11",
"fcvt s9, d9",
"str s9, [x8, #232]",
"ldr s9, [x8, #20]",
"fcvt d9, s9",
"fsub d8, d8, d9",
"ldr s9, [x8, #24]",
"fcvt d9, s9",
"fsub d8, d8, d9",
"fsub d8, d8, d4",
"mov w20, #0x0",
"strb wzr, [x28, #1049]",
"fcvt s6, d6",
"str s6, [x8, #224]",
"ldr s6, [x8, #48]",
"fcvt d6, s6",
"fsub d5, d5, d6",
"ldr s7, [x8, #8]",
"fcvt d7, s7",
"fsub d7, d5, d7",
"ldr s9, [x8, #12]",
"fcvt s8, d8",
"str s8, [x8, #224]",
"ldr s8, [x8, #48]",
"fcvt d8, s8",
"fsub d7, d7, d8",
"ldr s9, [x8, #8]",
"fcvt d9, s9",
"fsub d7, d7, d9",
"fcvt s7, d7",
"str s7, [x8, #240]",
"ldr s7, [x8, #24]",
"fcvt d7, s7",
"ldr s9, [x8, #16]",
"fsub d9, d7, d9",
"ldr s11, [x8, #12]",
"fcvt d11, s11",
"fsub d9, d9, d11",
"fcvt s9, d9",
"str s9, [x8, #240]",
"ldr s9, [x8, #24]",
"fcvt d9, s9",
"fadd d7, d7, d9",
"fadd d3, d3, d7",
"ldr s11, [x8, #16]",
"fcvt d11, s11",
"fadd d9, d9, d11",
"fadd d4, d4, d9",
"ldr w4, [x7, #4100]",
"ldr w5, [x7, #4096]",
"strb wzr, [x28, #1049]",
"add w4, w5, w4, lsl #2",
"fcvt s3, d3",
"str s3, [x8, #64]",
"ldr s3, [x8, #64]",
"fcvt d3, s3",
"fsub d5, d5, d3",
"fcvt s4, d4",
"str s4, [x8, #64]",
"ldr s4, [x8, #64]",
"fcvt d4, s4",
"fsub d7, d7, d4",
"strb wzr, [x28, #1049]",
"fcvt s5, d5",
"str s5, [x8, #248]",
"ldr s5, [x8, #32]",
"fcvt d5, s5",
"fneg v5.2d, v5.2d",
"fsub d5, d5, d6",
"fcvt s7, d7",
"str s7, [x8, #248]",
"ldr s7, [x8, #32]",
"fcvt d7, s7",
"fneg v7.2d, v7.2d",
"fsub d7, d7, d8",
"strb wzr, [x28, #1049]",
"fsub d5, d5, d8",
"fsub d5, d5, d2",
"fcvt s5, d5",
"str s5, [x8, #64]",
"ldr s5, [x8, #64]",
"fcvt d5, s5",
"ldr s6, [x8]",
"fcvt d6, s6",
"fsub d6, d5, d6",
"fcvt s6, d6",
"str s6, [x8, #264]",
"fsub d3, d5, d3",
"fsub d7, d7, d10",
"fsub d7, d7, d3",
"fcvt s7, d7",
"str s7, [x8, #64]",
"ldr s7, [x8, #64]",
"fcvt d7, s7",
"ldr s8, [x8]",
"fcvt d8, s8",
"fsub d8, d7, d8",
"fcvt s8, d8",
"str s8, [x8, #264]",
"fsub d4, d7, d4",
"strb wzr, [x28, #1049]",
"fcvt s3, d3",
"str s3, [x8, #256]",
"ldr s3, [x8, #144]",
"str s3, [x4]",
"ldr s3, [x8, #148]",
"str s3, [x4, #64]",
"ldr s3, [x8, #152]",
"str s3, [x4, #128]",
"ldr s3, [x8, #156]",
"str s3, [x4, #192]",
"ldr s3, [x8, #160]",
"str s3, [x4, #256]",
"ldr s3, [x8, #164]",
"fcvt d5, s3",
"str s3, [x4, #320]",
"ldr s3, [x8, #168]",
"fcvt d6, s3",
"str s3, [x4, #384]",
"ldr s3, [x8, #172]",
"fcvt d7, s3",
"str s3, [x4, #448]",
"ldr s3, [x8, #176]",
"fcvt d8, s3",
"str s3, [x4, #512]",
"ldr s3, [x8, #180]",
"str s3, [x4, #576]",
"ldr s3, [x8, #184]",
"fcvt d9, s3",
"str s3, [x4, #640]",
"ldr s3, [x8, #188]",
"str s3, [x4, #704]",
"ldr s3, [x8, #192]",
"str s3, [x4, #768]",
"fcvt s4, d4",
"str s4, [x8, #256]",
"ldr s4, [x8, #144]",
"str s4, [x4]",
"ldr s4, [x8, #148]",
"str s4, [x4, #64]",
"ldr s4, [x8, #152]",
"str s4, [x4, #128]",
"ldr s4, [x8, #156]",
"str s4, [x4, #192]",
"ldr s4, [x8, #160]",
"str s4, [x4, #256]",
"ldr s4, [x8, #164]",
"fcvt d7, s4",
"str s4, [x4, #320]",
"ldr s4, [x8, #168]",
"fcvt d8, s4",
"str s4, [x4, #384]",
"ldr s4, [x8, #172]",
"fcvt d9, s4",
"str s4, [x4, #448]",
"ldr s4, [x8, #176]",
"fcvt d10, s4",
"str s4, [x4, #512]",
"ldr s4, [x8, #180]",
"str s4, [x4, #576]",
"ldr s4, [x8, #184]",
"fcvt d11, s4",
"str s4, [x4, #640]",
"ldr s4, [x8, #188]",
"str s4, [x4, #704]",
"ldr s4, [x8, #192]",
"str s4, [x4, #768]",
"strb wzr, [x28, #1049]",
"fcvt s3, d4",
"str s3, [x4, #832]",
"ldr s3, [x8, #200]",
"str s3, [x4, #896]",
"str s5, [x4, #832]",
"ldr s4, [x8, #200]",
"str s4, [x4, #896]",
"strb wzr, [x28, #1049]",
"fcvt s3, d2",
"str s3, [x4, #960]",
"fmov d3, x20",
"fcvt s3, d3",
"str s3, [x4, #1024]",
"fneg v2.2d, v2.2d",
"str s2, [x4, #960]",
"fmov d2, x20",
"fcvt s2, d2",
"str s2, [x4, #1024]",
"fneg v2.2d, v3.2d",
"fcvt s2, d2",
"str s2, [x4, #1088]",
"ldr s2, [x8, #200]",
@@ -2579,7 +2577,7 @@
"fcvt s2, d2",
"str s2, [x4, #1152]",
"strb wzr, [x28, #1049]",
"fneg v2.2d, v4.2d",
"fneg v2.2d, v6.2d",
"fcvt s2, d2",
"str s2, [x4, #1216]",
"ldr s2, [x8, #192]",
@@ -2593,7 +2591,7 @@
"fcvt s2, d2",
"str s2, [x4, #1344]",
"strb wzr, [x28, #1049]",
"fneg v2.2d, v9.2d",
"fneg v2.2d, v11.2d",
"fcvt s2, d2",
"str s2, [x4, #1408]",
"ldr s2, [x8, #180]",
@@ -2602,18 +2600,18 @@
"fcvt s2, d2",
"str s2, [x4, #1472]",
"strb wzr, [x28, #1049]",
"fneg v2.2d, v8.2d",
"fneg v2.2d, v10.2d",
"fcvt s2, d2",
"str s2, [x4, #1536]",
"strb wzr, [x28, #1049]",
"fneg v2.2d, v7.2d",
"fneg v2.2d, v9.2d",
"fcvt s2, d2",
"str s2, [x4, #1600]",
"strb wzr, [x28, #1049]",
"fneg v2.2d, v6.2d",
"fneg v2.2d, v8.2d",
"fcvt s2, d2",
"str s2, [x4, #1664]",
"fneg v2.2d, v5.2d",
"fneg v2.2d, v7.2d",
"fcvt s2, d2",
"str s2, [x4, #1728]",
"ldr s2, [x8, #140]",
@@ -4209,7 +4207,7 @@
},
"Block3": {
"x86InstructionCount": 649,
"ExpectedInstructionCount": 982,
"ExpectedInstructionCount": 958,
"x86Insts": [
"fld dword [esi + 0x64]",
"mov eax,dword [esi + 0x88]",
@@ -4939,62 +4937,59 @@
"fcvt s3, d3",
"str s3, [x8, #40]",
"ldr s3, [x8, #40]",
"fcvt d4, s3",
"str s3, [x8, #16]",
"ldr s3, [x8, #80]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #40]",
"ldr s3, [x8, #40]",
"fcvt d5, s3",
"str s3, [x8, #44]",
"ldr s3, [x8, #88]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #40]",
"ldr s3, [x8, #40]",
"fcvt d6, s3",
"str s3, [x8, #20]",
"ldr s3, [x8, #140]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #76]",
"ldr s3, [x8, #76]",
"str s3, [x8, #68]",
"ldr s3, [x8, #124]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #140]",
"ldr s3, [x8, #140]",
"str s3, [x8, #72]",
"ldr s3, [x8, #132]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #88]",
"ldr s3, [x8, #88]",
"str s3, [x8, #64]",
"ldr s3, [x8, #92]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #80]",
"ldr s3, [x8, #80]",
"str s3, [x8, #132]",
"ldr s3, [x8, #96]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #84]",
"ldr s3, [x8, #84]",
"str s3, [x8, #124]",
"ldr s3, [x8, #100]",
"fcvt d3, s3",
"fmul d2, d2, d3",
"ldr s4, [x8, #80]",
"fcvt d4, s4",
"fmul d4, d4, d2",
"fcvt s4, d4",
"str s4, [x8, #40]",
"ldr s4, [x8, #40]",
"str s4, [x8, #44]",
"ldr s5, [x8, #88]",
"fcvt d5, s5",
"fmul d5, d5, d2",
"fcvt s5, d5",
"str s5, [x8, #40]",
"ldr s5, [x8, #40]",
"str s5, [x8, #20]",
"ldr s6, [x8, #140]",
"fcvt d6, s6",
"fmul d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #76]",
"ldr s6, [x8, #76]",
"str s6, [x8, #68]",
"ldr s6, [x8, #124]",
"fcvt d6, s6",
"fmul d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #140]",
"ldr s6, [x8, #140]",
"str s6, [x8, #72]",
"ldr s6, [x8, #132]",
"fcvt d6, s6",
"fmul d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #88]",
"ldr s6, [x8, #88]",
"str s6, [x8, #64]",
"ldr s6, [x8, #92]",
"fcvt d6, s6",
"fmul d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #80]",
"ldr s6, [x8, #80]",
"str s6, [x8, #132]",
"ldr s6, [x8, #96]",
"fcvt d6, s6",
"fmul d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #84]",
"ldr s6, [x8, #84]",
"str s6, [x8, #124]",
"ldr s6, [x8, #100]",
"fcvt d6, s6",
"fmul d2, d2, d6",
"strb wzr, [x28, #1049]",
"fcvt s2, d2",
"str s2, [x8, #40]",
@@ -5002,16 +4997,16 @@
"str s2, [x8, #92]",
"ldr s2, [x8, #148]",
"fcvt d2, s2",
"ldr s3, [x8, #132]",
"fcvt d3, s3",
"fadd d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #132]",
"ldr s3, [x8, #152]",
"fcvt d3, s3",
"ldr s6, [x8, #132]",
"fcvt d6, s6",
"fadd d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #132]",
"ldr s6, [x8, #152]",
"fcvt d6, s6",
"ldr s7, [x8, #124]",
"fcvt d7, s7",
"fadd d7, d7, d3",
"fadd d7, d7, d6",
"fcvt s7, d7",
"str s7, [x8, #124]",
"ldr s7, [x8, #156]",
@@ -5076,14 +5071,11 @@
"ldr w5, [x8, #100]",
"strb wzr, [x28, #1049]",
"str w5, [x8, #252]",
"fcvt s8, d4",
"str s8, [x8, #92]",
"str s3, [x8, #92]",
"strb wzr, [x28, #1049]",
"fcvt s8, d5",
"str s8, [x8, #132]",
"str s4, [x8, #132]",
"strb wzr, [x28, #1049]",
"fcvt s8, d6",
"str s8, [x8, #124]",
"str s5, [x8, #124]",
"ldr s8, [x8, #76]",
"str s8, [x8, #64]",
"ldr s8, [x8, #140]",
@@ -5103,7 +5095,7 @@
"str s8, [x8, #20]",
"ldr s8, [x8, #44]",
"fcvt d8, s8",
"fadd d8, d8, d3",
"fadd d8, d8, d6",
"fcvt s8, d8",
"str s8, [x8, #44]",
"ldr s8, [x8, #16]",
@@ -5166,14 +5158,11 @@
"ldr w5, [x8, #28]",
"strb wzr, [x28, #1049]",
"str w5, [x8, #264]",
"fcvt s8, d4",
"str s8, [x8, #92]",
"str s3, [x8, #92]",
"strb wzr, [x28, #1049]",
"fcvt s8, d5",
"str s8, [x8, #132]",
"str s4, [x8, #132]",
"strb wzr, [x28, #1049]",
"fcvt s8, d6",
"str s8, [x8, #124]",
"str s5, [x8, #124]",
"ldr s8, [x8, #76]",
"str s8, [x8, #64]",
"ldr s8, [x8, #140]",
@@ -5193,7 +5182,7 @@
"str s8, [x8, #20]",
"ldr s8, [x8, #44]",
"fcvt d8, s8",
"fadd d8, d8, d3",
"fadd d8, d8, d6",
"fcvt s8, d8",
"str s8, [x8, #44]",
"ldr s8, [x8, #16]",
@@ -5256,35 +5245,32 @@
"ldr w5, [x8, #28]",
"strb wzr, [x28, #1049]",
"str w5, [x8, #276]",
"fcvt s4, d4",
"str s4, [x8, #92]",
"str s3, [x8, #92]",
"strb wzr, [x28, #1049]",
"fcvt s4, d5",
"str s4, [x8, #132]",
"strb wzr, [x28, #1049]",
"fcvt s4, d6",
"str s4, [x8, #124]",
"ldr s4, [x8, #76]",
"str s4, [x8, #64]",
"ldr s4, [x8, #140]",
"str s4, [x8, #72]",
"ldr s4, [x8, #88]",
"str s4, [x8, #68]",
"ldr s4, [x8, #80]",
"str s4, [x8, #20]",
"ldr s4, [x8, #84]",
"str s4, [x8, #44]",
"ldr s4, [x8, #40]",
"str s4, [x8, #16]",
"ldr s4, [x8, #20]",
"fcvt d4, s4",
"fadd d2, d2, d4",
"str s5, [x8, #124]",
"ldr s3, [x8, #76]",
"str s3, [x8, #64]",
"ldr s3, [x8, #140]",
"str s3, [x8, #72]",
"ldr s3, [x8, #88]",
"str s3, [x8, #68]",
"ldr s3, [x8, #80]",
"str s3, [x8, #20]",
"ldr s3, [x8, #84]",
"str s3, [x8, #44]",
"ldr s3, [x8, #40]",
"str s3, [x8, #16]",
"ldr s3, [x8, #20]",
"fcvt d3, s3",
"fadd d2, d2, d3",
"strb wzr, [x28, #1049]",
"fcvt s2, d2",
"str s2, [x8, #20]",
"ldr s2, [x8, #44]",
"fcvt d2, s2",
"fadd d2, d3, d2",
"fadd d2, d6, d2",
"strb wzr, [x28, #1049]",
"fcvt s2, d2",
"str s2, [x8, #44]",
@@ -5422,62 +5408,59 @@
"fcvt s3, d3",
"str s3, [x8, #20]",
"ldr s3, [x8, #20]",
"fcvt d4, s3",
"str s3, [x8, #92]",
"ldr s3, [x8, #44]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #20]",
"ldr s3, [x8, #20]",
"fcvt d5, s3",
"str s3, [x8, #132]",
"ldr s3, [x8, #16]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #20]",
"ldr s3, [x8, #20]",
"fcvt d6, s3",
"str s3, [x8, #124]",
"ldr s3, [x8, #64]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #40]",
"ldr s3, [x8, #40]",
"str s3, [x8, #64]",
"ldr s3, [x8, #72]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #84]",
"ldr s3, [x8, #84]",
"str s3, [x8, #72]",
"ldr s3, [x8, #68]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #80]",
"ldr s3, [x8, #80]",
"str s3, [x8, #68]",
"ldr s3, [x8, #112]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #88]",
"ldr s3, [x8, #88]",
"str s3, [x8, #20]",
"ldr s3, [x8, #116]",
"fcvt d3, s3",
"fmul d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #140]",
"ldr s3, [x8, #140]",
"str s3, [x8, #44]",
"ldr s3, [x8, #120]",
"fcvt d3, s3",
"fmul d2, d2, d3",
"ldr s4, [x8, #44]",
"fcvt d4, s4",
"fmul d4, d4, d2",
"fcvt s4, d4",
"str s4, [x8, #20]",
"ldr s4, [x8, #20]",
"str s4, [x8, #132]",
"ldr s5, [x8, #16]",
"fcvt d5, s5",
"fmul d5, d5, d2",
"fcvt s5, d5",
"str s5, [x8, #20]",
"ldr s5, [x8, #20]",
"str s5, [x8, #124]",
"ldr s6, [x8, #64]",
"fcvt d6, s6",
"fmul d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #40]",
"ldr s6, [x8, #40]",
"str s6, [x8, #64]",
"ldr s6, [x8, #72]",
"fcvt d6, s6",
"fmul d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #84]",
"ldr s6, [x8, #84]",
"str s6, [x8, #72]",
"ldr s6, [x8, #68]",
"fcvt d6, s6",
"fmul d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #80]",
"ldr s6, [x8, #80]",
"str s6, [x8, #68]",
"ldr s6, [x8, #112]",
"fcvt d6, s6",
"fmul d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #88]",
"ldr s6, [x8, #88]",
"str s6, [x8, #20]",
"ldr s6, [x8, #116]",
"fcvt d6, s6",
"fmul d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #140]",
"ldr s6, [x8, #140]",
"str s6, [x8, #44]",
"ldr s6, [x8, #120]",
"fcvt d6, s6",
"fmul d2, d2, d6",
"mov w20, #0x0",
"strb wzr, [x28, #1049]",
"fcvt s2, d2",
@@ -5486,16 +5469,16 @@
"str s2, [x8, #16]",
"ldr s2, [x8, #148]",
"fcvt d2, s2",
"ldr s3, [x8, #20]",
"fcvt d3, s3",
"fadd d3, d3, d2",
"fcvt s3, d3",
"str s3, [x8, #20]",
"ldr s3, [x8, #152]",
"fcvt d3, s3",
"ldr s6, [x8, #20]",
"fcvt d6, s6",
"fadd d6, d6, d2",
"fcvt s6, d6",
"str s6, [x8, #20]",
"ldr s6, [x8, #152]",
"fcvt d6, s6",
"ldr s7, [x8, #44]",
"fcvt d7, s7",
"fadd d7, d7, d3",
"fadd d7, d7, d6",
"fcvt s7, d7",
"str s7, [x8, #44]",
"ldr s7, [x8, #156]",
@@ -5560,14 +5543,11 @@
"ldr w5, [x8, #120]",
"strb wzr, [x28, #1049]",
"str w5, [x8, #192]",
"fcvt s8, d4",
"str s8, [x8, #92]",
"str s3, [x8, #92]",
"strb wzr, [x28, #1049]",
"fcvt s8, d5",
"str s8, [x8, #132]",
"str s4, [x8, #132]",
"strb wzr, [x28, #1049]",
"fcvt s8, d6",
"str s8, [x8, #124]",
"str s5, [x8, #124]",
"ldr s8, [x8, #40]",
"str s8, [x8, #64]",
"ldr s8, [x8, #84]",
@@ -5587,7 +5567,7 @@
"str s8, [x8, #20]",
"ldr s8, [x8, #44]",
"fcvt d8, s8",
"fadd d8, d8, d3",
"fadd d8, d8, d6",
"fcvt s8, d8",
"str s8, [x8, #44]",
"ldr s8, [x8, #16]",
@@ -5650,14 +5630,11 @@
"ldr w5, [x8, #120]",
"strb wzr, [x28, #1049]",
"str w5, [x8, #204]",
"fcvt s8, d4",
"str s8, [x8, #92]",
"str s3, [x8, #92]",
"strb wzr, [x28, #1049]",
"fcvt s8, d5",
"str s8, [x8, #132]",
"str s4, [x8, #132]",
"strb wzr, [x28, #1049]",
"fcvt s8, d6",
"str s8, [x8, #124]",
"str s5, [x8, #124]",
"ldr s8, [x8, #40]",
"str s8, [x8, #64]",
"ldr s8, [x8, #84]",
@@ -5677,7 +5654,7 @@
"str s8, [x8, #20]",
"ldr s8, [x8, #44]",
"fcvt d8, s8",
"fadd d8, d8, d3",
"fadd d8, d8, d6",
"fcvt s8, d8",
"str s8, [x8, #44]",
"ldr s8, [x8, #16]",
@@ -5741,35 +5718,32 @@
"str w5, [x8, #216]",
"strb wzr, [x28, #1049]",
"str w20, [x8, #-4]!",
"fcvt s4, d4",
"str s4, [x8, #96]",
"str s3, [x8, #96]",
"strb wzr, [x28, #1049]",
"fcvt s4, d5",
"str s4, [x8, #136]",
"strb wzr, [x28, #1049]",
"fcvt s4, d6",
"str s4, [x8, #128]",
"ldr s4, [x8, #44]",
"str s4, [x8, #68]",
"ldr s4, [x8, #88]",
"str s4, [x8, #76]",
"ldr s4, [x8, #84]",
"str s4, [x8, #72]",
"ldr s4, [x8, #92]",
"str s4, [x8, #24]",
"ldr s4, [x8, #144]",
"str s4, [x8, #48]",
"ldr s4, [x8, #80]",
"str s4, [x8, #20]",
"ldr s4, [x8, #24]",
"fcvt d4, s4",
"fadd d2, d2, d4",
"str s5, [x8, #128]",
"ldr s3, [x8, #44]",
"str s3, [x8, #68]",
"ldr s3, [x8, #88]",
"str s3, [x8, #76]",
"ldr s3, [x8, #84]",
"str s3, [x8, #72]",
"ldr s3, [x8, #92]",
"str s3, [x8, #24]",
"ldr s3, [x8, #144]",
"str s3, [x8, #48]",
"ldr s3, [x8, #80]",
"str s3, [x8, #20]",
"ldr s3, [x8, #24]",
"fcvt d3, s3",
"fadd d2, d2, d3",
"strb wzr, [x28, #1049]",
"fcvt s2, d2",
"str s2, [x8, #24]",
"ldr s2, [x8, #48]",
"fcvt d2, s2",
"fadd d2, d3, d2",
"fadd d2, d6, d2",
"strb wzr, [x28, #1049]",
"fcvt s2, d2",
"str s2, [x8, #48]",