mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-29 04:01:27 +01:00
Merge pull request #3955 from alyssarosenzweig/opt/pop-final
Rearrange SRA to let us coalesce cmpxchg moves
This commit is contained in:
43 files changed
+30090
-30101
No files matched your search
@@ -29,11 +29,12 @@ namespace FEXCore::CPU {
|
||||
namespace x64 {
|
||||
#ifndef _M_ARM_64EC
|
||||
// All but x19 and x29 are caller saved
|
||||
// Note that rax/rdx are rearranged here so we can coalesce cmpxchg.
|
||||
constexpr std::array<ARMEmitter::Register, 18> SRA = {
|
||||
ARMEmitter::Reg::r4,
|
||||
ARMEmitter::Reg::r7,
|
||||
ARMEmitter::Reg::r5,
|
||||
ARMEmitter::Reg::r6,
|
||||
ARMEmitter::Reg::r7,
|
||||
ARMEmitter::Reg::r8,
|
||||
ARMEmitter::Reg::r9,
|
||||
ARMEmitter::Reg::r10,
|
||||
@@ -194,12 +195,12 @@ namespace x64 {
|
||||
} // namespace x64
|
||||
|
||||
namespace x32 {
|
||||
// All but x19 and x29 are caller saved
|
||||
// All but x19 and x29 are caller saved. eax/edx rearranged for cmpxchg.
|
||||
constexpr std::array<ARMEmitter::Register, 10> SRA = {
|
||||
ARMEmitter::Reg::r4,
|
||||
ARMEmitter::Reg::r7,
|
||||
ARMEmitter::Reg::r5,
|
||||
ARMEmitter::Reg::r6,
|
||||
ARMEmitter::Reg::r7,
|
||||
ARMEmitter::Reg::r8,
|
||||
ARMEmitter::Reg::r9,
|
||||
ARMEmitter::Reg::r10,
|
||||
|
||||
@@ -621,7 +621,7 @@
|
||||
"Map 2 0b00 0xf2 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"bic w26, w5, w7",
|
||||
"bic w26, w7, w6",
|
||||
"cmp w26, #0x0 (0)",
|
||||
"mov x4, x26"
|
||||
]
|
||||
@@ -632,7 +632,7 @@
|
||||
"Map 2 0b00 0xf2 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"bic x26, x5, x7",
|
||||
"bic x26, x7, x6",
|
||||
"cmp x26, #0x0 (0)",
|
||||
"mov x4, x26"
|
||||
]
|
||||
@@ -644,10 +644,10 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0xffffffff",
|
||||
"lsl w20, w20, w5",
|
||||
"bic w20, w7, w20",
|
||||
"tst x5, #0xe0",
|
||||
"csel w4, w7, w20, ne",
|
||||
"lsl w20, w20, w7",
|
||||
"bic w20, w6, w20",
|
||||
"tst x7, #0xe0",
|
||||
"csel w4, w6, w20, ne",
|
||||
"cset w20, eq",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"rmif x20, #63, #nzCv"
|
||||
@@ -660,10 +660,10 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xffffffffffffffff",
|
||||
"lsl x20, x20, x5",
|
||||
"bic x20, x7, x20",
|
||||
"tst x5, #0xc0",
|
||||
"csel x4, x7, x20, ne",
|
||||
"lsl x20, x20, x7",
|
||||
"bic x20, x6, x20",
|
||||
"tst x7, #0xc0",
|
||||
"csel x4, x6, x20, ne",
|
||||
"cset w20, eq",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"rmif x20, #63, #nzCv"
|
||||
@@ -675,10 +675,10 @@
|
||||
"Map 2 0b11 0xf5 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x0, x6",
|
||||
"mov x1, x7",
|
||||
"mov w4, #0x0",
|
||||
"cbz w5, #+0x2c",
|
||||
"cbz w7, #+0x2c",
|
||||
"neg w2, w1",
|
||||
"and w2, w2, w1",
|
||||
"sbfx w3, w0, #0, #1",
|
||||
@@ -697,10 +697,10 @@
|
||||
"Map 2 0b11 0xf5 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x0, x6",
|
||||
"mov x1, x7",
|
||||
"mov x4, #0x0",
|
||||
"cbz x5, #+0x2c",
|
||||
"cbz x7, #+0x2c",
|
||||
"neg x2, x1",
|
||||
"and x2, x2, x1",
|
||||
"sbfx x3, x0, #0, #1",
|
||||
@@ -719,12 +719,12 @@
|
||||
"Map 2 0b00 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb w20, w5",
|
||||
"lsr w21, w7, w20",
|
||||
"uxtb w20, w7",
|
||||
"lsr w21, w6, w20",
|
||||
"mov w22, #0x0",
|
||||
"cmp w20, #0x1f (31)",
|
||||
"csel w20, w21, w22, ls",
|
||||
"ubfx w21, w5, #8, #8",
|
||||
"ubfx w21, w7, #8, #8",
|
||||
"mov x22, #0xffffffffffffffff",
|
||||
"lsl w22, w22, w21",
|
||||
"bic w22, w20, w22",
|
||||
@@ -739,12 +739,12 @@
|
||||
"Map 2 0b00 0xf7 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb x20, w5",
|
||||
"lsr x21, x7, x20",
|
||||
"uxtb x20, w7",
|
||||
"lsr x21, x6, x20",
|
||||
"mov w22, #0x0",
|
||||
"cmp x20, #0x3f (63)",
|
||||
"csel x20, x21, x22, ls",
|
||||
"ubfx x21, x5, #8, #8",
|
||||
"ubfx x21, x7, #8, #8",
|
||||
"mov x22, #0xffffffffffffffff",
|
||||
"lsl x22, x22, x21",
|
||||
"bic x22, x20, x22",
|
||||
|
||||
@@ -15,11 +15,11 @@
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "0x00",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldaddalb w5, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"ldaddalb w7, w20, [x4]",
|
||||
"eor w27, w20, w7",
|
||||
"lsl w0, w20, #24",
|
||||
"cmn w0, w5, lsl #24",
|
||||
"add w26, w20, w5",
|
||||
"cmn w0, w7, lsl #24",
|
||||
"add w26, w20, w7",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -29,11 +29,11 @@
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "0x01",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldaddalh w5, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"ldaddalh w7, w20, [x4]",
|
||||
"eor w27, w20, w7",
|
||||
"lsl w0, w20, #16",
|
||||
"cmn w0, w5, lsl #16",
|
||||
"add w26, w20, w5",
|
||||
"cmn w0, w7, lsl #16",
|
||||
"add w26, w20, w7",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -43,9 +43,9 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x01",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldaddal w5, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"adds w26, w20, w5",
|
||||
"ldaddal w7, w20, [x4]",
|
||||
"eor w27, w20, w7",
|
||||
"adds w26, w20, w7",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -55,8 +55,8 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x08",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldsetalb w5, w20, [x4]",
|
||||
"orr w26, w20, w5",
|
||||
"ldsetalb w7, w20, [x4]",
|
||||
"orr w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
@@ -67,8 +67,8 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x09",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldsetalh w5, w20, [x4]",
|
||||
"orr w26, w20, w5",
|
||||
"ldsetalh w7, w20, [x4]",
|
||||
"orr w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #16",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
@@ -79,8 +79,8 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "0x09",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldsetal w5, w20, [x4]",
|
||||
"orr w26, w20, w5",
|
||||
"ldsetal w7, w20, [x4]",
|
||||
"orr w26, w20, w7",
|
||||
"cmp w26, #0x0 (0)"
|
||||
]
|
||||
},
|
||||
@@ -88,10 +88,10 @@
|
||||
"ExpectedInstructionCount": 18,
|
||||
"Comment": "0x10",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"ldaddalb w20, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"uxtb w21, w5",
|
||||
"eor w27, w20, w7",
|
||||
"uxtb w21, w7",
|
||||
"cinc w22, w21, lo",
|
||||
"add w23, w20, w22",
|
||||
"uxtb w26, w23",
|
||||
@@ -112,10 +112,10 @@
|
||||
"ExpectedInstructionCount": 18,
|
||||
"Comment": "0x11",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"ldaddalh w20, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"uxth w21, w5",
|
||||
"eor w27, w20, w7",
|
||||
"uxth w21, w7",
|
||||
"cinc w22, w21, lo",
|
||||
"add w23, w20, w22",
|
||||
"uxth w26, w23",
|
||||
@@ -136,13 +136,13 @@
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "0x11",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"ldaddal w20, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"eor w27, w20, w7",
|
||||
"mrs x21, nzcv",
|
||||
"eor w21, w21, #0x20000000",
|
||||
"msr nzcv, x21",
|
||||
"adcs w26, w20, w5",
|
||||
"adcs w26, w20, w7",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -152,12 +152,12 @@
|
||||
"ExpectedInstructionCount": 20,
|
||||
"Comment": "0x18",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"neg w1, w20",
|
||||
"ldaddalb w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"eor w27, w20, w7",
|
||||
"uxtb w20, w20",
|
||||
"uxtb w21, w5",
|
||||
"uxtb w21, w7",
|
||||
"cinc w22, w21, lo",
|
||||
"sub w23, w20, w22",
|
||||
"uxtb w26, w23",
|
||||
@@ -178,12 +178,12 @@
|
||||
"ExpectedInstructionCount": 20,
|
||||
"Comment": "0x19",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"neg w1, w20",
|
||||
"ldaddalh w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"eor w27, w20, w7",
|
||||
"uxth w20, w20",
|
||||
"uxth w21, w5",
|
||||
"uxth w21, w7",
|
||||
"cinc w22, w21, lo",
|
||||
"sub w23, w20, w22",
|
||||
"uxth w26, w23",
|
||||
@@ -204,20 +204,20 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "0x19",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"neg w1, w20",
|
||||
"ldaddal w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"sbcs w26, w20, w5"
|
||||
"eor w27, w20, w7",
|
||||
"sbcs w26, w20, w7"
|
||||
]
|
||||
},
|
||||
"lock and byte [rax], cl": {
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0x20",
|
||||
"ExpectedArm64ASM": [
|
||||
"mvn w1, w5",
|
||||
"mvn w1, w7",
|
||||
"ldclralb w1, w20, [x4]",
|
||||
"and w26, w20, w5",
|
||||
"and w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
@@ -228,9 +228,9 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0x21",
|
||||
"ExpectedArm64ASM": [
|
||||
"mvn w1, w5",
|
||||
"mvn w1, w7",
|
||||
"ldclralh w1, w20, [x4]",
|
||||
"and w26, w20, w5",
|
||||
"and w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #16",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
@@ -241,9 +241,9 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x21",
|
||||
"ExpectedArm64ASM": [
|
||||
"mvn w1, w5",
|
||||
"mvn w1, w7",
|
||||
"ldclral w1, w20, [x4]",
|
||||
"ands w26, w20, w5",
|
||||
"ands w26, w20, w7",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -253,42 +253,42 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x28",
|
||||
"ExpectedArm64ASM": [
|
||||
"neg w1, w5",
|
||||
"neg w1, w7",
|
||||
"ldaddalb w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"eor w27, w20, w7",
|
||||
"lsl w0, w20, #24",
|
||||
"cmp w0, w5, lsl #24",
|
||||
"sub w26, w20, w5"
|
||||
"cmp w0, w7, lsl #24",
|
||||
"sub w26, w20, w7"
|
||||
]
|
||||
},
|
||||
"lock sub word [rax], cx": {
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x28",
|
||||
"ExpectedArm64ASM": [
|
||||
"neg w1, w5",
|
||||
"neg w1, w7",
|
||||
"ldaddalh w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"eor w27, w20, w7",
|
||||
"lsl w0, w20, #16",
|
||||
"cmp w0, w5, lsl #16",
|
||||
"sub w26, w20, w5"
|
||||
"cmp w0, w7, lsl #16",
|
||||
"sub w26, w20, w7"
|
||||
]
|
||||
},
|
||||
"lock sub dword [rax], ecx": {
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "0x29",
|
||||
"ExpectedArm64ASM": [
|
||||
"neg w1, w5",
|
||||
"neg w1, w7",
|
||||
"ldaddal w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"subs w26, w20, w5"
|
||||
"eor w27, w20, w7",
|
||||
"subs w26, w20, w7"
|
||||
]
|
||||
},
|
||||
"lock xor byte [rax], cl": {
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x30",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldeoralb w5, w20, [x4]",
|
||||
"eor w26, w20, w5",
|
||||
"ldeoralb w7, w20, [x4]",
|
||||
"eor w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
@@ -299,8 +299,8 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x31",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldeoralh w5, w20, [x4]",
|
||||
"eor w26, w20, w5",
|
||||
"ldeoralh w7, w20, [x4]",
|
||||
"eor w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #16",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
@@ -311,8 +311,8 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "0x31",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldeoral w5, w20, [x4]",
|
||||
"eor w26, w20, w5",
|
||||
"ldeoral w7, w20, [x4]",
|
||||
"eor w26, w20, w7",
|
||||
"cmp w26, #0x0 (0)"
|
||||
]
|
||||
},
|
||||
@@ -320,9 +320,9 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x01",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldaddal x5, x20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"adds x26, x20, x5",
|
||||
"ldaddal x7, x20, [x4]",
|
||||
"eor w27, w20, w7",
|
||||
"adds x26, x20, x7",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -332,43 +332,43 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"Comment": "0x86",
|
||||
"ExpectedArm64ASM": [
|
||||
"swpalb w5, w20, [x4]",
|
||||
"bfxil x5, x20, #0, #8"
|
||||
"swpalb w7, w20, [x4]",
|
||||
"bfxil x7, x20, #0, #8"
|
||||
]
|
||||
},
|
||||
"xchg word [rax], cx": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"Comment": "0x87",
|
||||
"ExpectedArm64ASM": [
|
||||
"swpalh w5, w20, [x4]",
|
||||
"bfxil x5, x20, #0, #16"
|
||||
"swpalh w7, w20, [x4]",
|
||||
"bfxil x7, x20, #0, #16"
|
||||
]
|
||||
},
|
||||
"xchg dword [rax], ecx": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"Comment": "0x87",
|
||||
"ExpectedArm64ASM": [
|
||||
"swpal w5, w5, [x4]"
|
||||
"swpal w7, w7, [x4]"
|
||||
]
|
||||
},
|
||||
"xchg qword [rax], rcx": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"Comment": "0x87",
|
||||
"ExpectedArm64ASM": [
|
||||
"swpal x5, x5, [x4]"
|
||||
"swpal x7, x7, [x4]"
|
||||
]
|
||||
},
|
||||
"xadd byte [rax], bl": {
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "0x0f 0xc0",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb w20, w7",
|
||||
"uxtb w20, w6",
|
||||
"ldaddalb w20, w21, [x4]",
|
||||
"eor w27, w21, w20",
|
||||
"lsl w0, w21, #24",
|
||||
"cmn w0, w20, lsl #24",
|
||||
"add w26, w21, w20",
|
||||
"bfxil x7, x21, #0, #8",
|
||||
"bfxil x6, x21, #0, #8",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -378,13 +378,13 @@
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "0x0f 0xc1",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth w20, w7",
|
||||
"uxth w20, w6",
|
||||
"ldaddalh w20, w21, [x4]",
|
||||
"eor w27, w21, w20",
|
||||
"lsl w0, w21, #16",
|
||||
"cmn w0, w20, lsl #16",
|
||||
"add w26, w21, w20",
|
||||
"bfxil x7, x21, #0, #16",
|
||||
"bfxil x6, x21, #0, #16",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -394,10 +394,10 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0x0f 0xc1",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w7",
|
||||
"ldaddal w20, w7, [x4]",
|
||||
"eor w27, w7, w20",
|
||||
"adds w26, w7, w20",
|
||||
"mov w20, w6",
|
||||
"ldaddal w20, w6, [x4]",
|
||||
"eor w27, w6, w20",
|
||||
"adds w26, w6, w20",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -407,13 +407,13 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0x0f 0xc1",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldaddal x7, x20, [x4]",
|
||||
"eor w27, w20, w7",
|
||||
"adds x26, x20, x7",
|
||||
"ldaddal x6, x20, [x4]",
|
||||
"eor w27, w20, w6",
|
||||
"adds x26, x20, x6",
|
||||
"mrs x21, nzcv",
|
||||
"eor w21, w21, #0x20000000",
|
||||
"msr nzcv, x21",
|
||||
"mov x7, x20"
|
||||
"mov x6, x20"
|
||||
]
|
||||
},
|
||||
"lock add byte [rax], 1": {
|
||||
|
||||
@@ -95,7 +95,7 @@
|
||||
"0xf2 0x0f 0x38 0xf0"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"crc32cb w4, w4, w7"
|
||||
"crc32cb w4, w4, w6"
|
||||
]
|
||||
},
|
||||
"crc32 eax, bx": {
|
||||
@@ -104,7 +104,7 @@
|
||||
"0xf2 0x0f 0x38 0xf1"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"crc32ch w4, w4, w7"
|
||||
"crc32ch w4, w4, w6"
|
||||
]
|
||||
},
|
||||
"crc32 eax, ebx": {
|
||||
@@ -113,7 +113,7 @@
|
||||
"0xf2 0x0f 0x38 0xf1"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"crc32cw w4, w4, w7"
|
||||
"crc32cw w4, w4, w6"
|
||||
]
|
||||
},
|
||||
"crc32 rax, bl": {
|
||||
@@ -122,7 +122,7 @@
|
||||
"0xf2 0x0f 0x38 0xf0"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"crc32cb w4, w4, w7"
|
||||
"crc32cb w4, w4, w6"
|
||||
]
|
||||
},
|
||||
"crc32 rax, rbx": {
|
||||
@@ -131,7 +131,7 @@
|
||||
"0xf2 0x0f 0x38 0xf1"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"crc32cx w4, w4, x7"
|
||||
"crc32cx w4, w4, x6"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -17,141 +17,141 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xfffffffffffffeff",
|
||||
"ldrb w4, [x5, x20, sxtx]"
|
||||
"ldrb w4, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"movzx eax, byte [ecx - 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldurb w4, [x5, #-256]"
|
||||
"ldurb w4, [x7, #-256]"
|
||||
]
|
||||
},
|
||||
"movzx eax, byte [ecx + 255]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldrb w4, [x5, #255]"
|
||||
"ldrb w4, [x7, #255]"
|
||||
]
|
||||
},
|
||||
"movzx eax, byte [ecx + 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldrb w4, [x5, #256]"
|
||||
"ldrb w4, [x7, #256]"
|
||||
]
|
||||
},
|
||||
"movzx eax, byte [ecx + 4095]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldrb w4, [x5, #4095]"
|
||||
"ldrb w4, [x7, #4095]"
|
||||
]
|
||||
},
|
||||
"movzx eax, byte [ecx + 4096]": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x1000",
|
||||
"ldrb w4, [x5, x20, sxtx]"
|
||||
"ldrb w4, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"movzx eax, word [ecx - 257]": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xfffffffffffffeff",
|
||||
"ldrh w4, [x5, x20, sxtx]"
|
||||
"ldrh w4, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"movzx eax, word [ecx - 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldurh w4, [x5, #-256]"
|
||||
"ldurh w4, [x7, #-256]"
|
||||
]
|
||||
},
|
||||
"movzx eax, word [ecx + 255]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldurh w4, [x5, #255]"
|
||||
"ldurh w4, [x7, #255]"
|
||||
]
|
||||
},
|
||||
"movzx eax, word [ecx + 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldrh w4, [x5, #256]"
|
||||
"ldrh w4, [x7, #256]"
|
||||
]
|
||||
},
|
||||
"movzx eax, word [ecx + 8190]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldrh w4, [x5, #8190]"
|
||||
"ldrh w4, [x7, #8190]"
|
||||
]
|
||||
},
|
||||
"movzx eax, word [ecx + 8191]": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x1fff",
|
||||
"ldrh w4, [x5, x20, sxtx]"
|
||||
"ldrh w4, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"movzx eax, word [ecx + 8192]": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x2000",
|
||||
"ldrh w4, [x5, x20, sxtx]"
|
||||
"ldrh w4, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"mov eax, dword [ecx - 257]": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xfffffffffffffeff",
|
||||
"ldr w4, [x5, x20, sxtx]"
|
||||
"ldr w4, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"mov eax, dword [ecx - 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldur w4, [x5, #-256]"
|
||||
"ldur w4, [x7, #-256]"
|
||||
]
|
||||
},
|
||||
"mov eax, dword [ecx + 255]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldur w4, [x5, #255]"
|
||||
"ldur w4, [x7, #255]"
|
||||
]
|
||||
},
|
||||
"mov eax, dword [ecx + 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w4, [x5, #256]"
|
||||
"ldr w4, [x7, #256]"
|
||||
]
|
||||
},
|
||||
"mov eax, dword [ecx + 16380]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w4, [x5, #16380]"
|
||||
"ldr w4, [x7, #16380]"
|
||||
]
|
||||
},
|
||||
"mov eax, dword [ecx + 16381]": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x3ffd",
|
||||
"ldr w4, [x5, x20, sxtx]"
|
||||
"ldr w4, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"mov eax, dword [ecx + 16382]": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x3ffe",
|
||||
"ldr w4, [x5, x20, sxtx]"
|
||||
"ldr w4, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"mov eax, dword [ecx + 16383]": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x3fff",
|
||||
"ldr w4, [x5, x20, sxtx]"
|
||||
"ldr w4, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"mov eax, dword [ecx + 16384]": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"add w20, w5, #0x4000 (16384)",
|
||||
"add w20, w7, #0x4000 (16384)",
|
||||
"ldr w4, [x20]"
|
||||
]
|
||||
},
|
||||
@@ -159,52 +159,52 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x3ffb",
|
||||
"ldr s16, [x5, x20, sxtx]"
|
||||
"ldr s16, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"movss xmm0, [ecx + 16380]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr s16, [x5, #16380]"
|
||||
"ldr s16, [x7, #16380]"
|
||||
]
|
||||
},
|
||||
"movss xmm0, [ecx + 16381]": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x3ffd",
|
||||
"ldr s16, [x5, x20, sxtx]"
|
||||
"ldr s16, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"movss xmm0, [ecx - 257]": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xfffffffffffffeff",
|
||||
"ldr s16, [x5, x20, sxtx]"
|
||||
"ldr s16, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"movss xmm0, [ecx - 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldur s16, [x5, #-256]"
|
||||
"ldur s16, [x7, #-256]"
|
||||
]
|
||||
},
|
||||
"movss xmm0, [ecx + 255]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldur s16, [x5, #255]"
|
||||
"ldur s16, [x7, #255]"
|
||||
]
|
||||
},
|
||||
"movss xmm0, [ecx + 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr s16, [x5, #256]"
|
||||
"ldr s16, [x7, #256]"
|
||||
]
|
||||
},
|
||||
"movsd xmm0, [ecx + 32759]": {
|
||||
"ExpectedInstructionCount": 3,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x7ff7",
|
||||
"add w20, w5, w20",
|
||||
"add w20, w7, w20",
|
||||
"ldr d16, [x20]"
|
||||
]
|
||||
},
|
||||
@@ -212,7 +212,7 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x7ff8",
|
||||
"add w20, w5, w20",
|
||||
"add w20, w7, w20",
|
||||
"ldr d16, [x20]"
|
||||
]
|
||||
},
|
||||
@@ -220,7 +220,7 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x7ff9",
|
||||
"add w20, w5, w20",
|
||||
"add w20, w7, w20",
|
||||
"ldr d16, [x20]"
|
||||
]
|
||||
},
|
||||
@@ -228,32 +228,32 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xfffffffffffffeff",
|
||||
"ldr d16, [x5, x20, sxtx]"
|
||||
"ldr d16, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"movsd xmm0, [ecx - 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldur d16, [x5, #-256]"
|
||||
"ldur d16, [x7, #-256]"
|
||||
]
|
||||
},
|
||||
"movsd xmm0, [ecx + 255]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldur d16, [x5, #255]"
|
||||
"ldur d16, [x7, #255]"
|
||||
]
|
||||
},
|
||||
"movsd xmm0, [ecx + 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr d16, [x5, #256]"
|
||||
"ldr d16, [x7, #256]"
|
||||
]
|
||||
},
|
||||
"movq xmm0, [ecx + 65519]": {
|
||||
"ExpectedInstructionCount": 3,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0xffef",
|
||||
"add w20, w5, w20",
|
||||
"add w20, w7, w20",
|
||||
"ldr d16, [x20]"
|
||||
]
|
||||
},
|
||||
@@ -261,7 +261,7 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0xfff0",
|
||||
"add w20, w5, w20",
|
||||
"add w20, w7, w20",
|
||||
"ldr d16, [x20]"
|
||||
]
|
||||
},
|
||||
@@ -269,7 +269,7 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0xfff1",
|
||||
"add w20, w5, w20",
|
||||
"add w20, w7, w20",
|
||||
"ldr d16, [x20]"
|
||||
]
|
||||
},
|
||||
@@ -277,39 +277,39 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xfffffffffffffeff",
|
||||
"ldr d16, [x5, x20, sxtx]"
|
||||
"ldr d16, [x7, x20, sxtx]"
|
||||
]
|
||||
},
|
||||
"movq xmm0, [ecx - 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldur d16, [x5, #-256]"
|
||||
"ldur d16, [x7, #-256]"
|
||||
]
|
||||
},
|
||||
"movq xmm0, [ecx + 255]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldur d16, [x5, #255]"
|
||||
"ldur d16, [x7, #255]"
|
||||
]
|
||||
},
|
||||
"movq xmm0, [ecx + 256]": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr d16, [x5, #256]"
|
||||
"ldr d16, [x7, #256]"
|
||||
]
|
||||
},
|
||||
"mov ebx, fs:0x14": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w20, [x28, #968]",
|
||||
"ldr w7, [x20, #20]"
|
||||
"ldr w6, [x20, #20]"
|
||||
]
|
||||
},
|
||||
"mov ebx, gs:0x14": {
|
||||
"ExpectedInstructionCount": 2,
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w20, [x28, #960]",
|
||||
"ldr w7, [x20, #20]"
|
||||
"ldr w6, [x20, #20]"
|
||||
]
|
||||
},
|
||||
"Multiple segment registers": {
|
||||
@@ -322,7 +322,7 @@
|
||||
"ldr w20, [x28, #960]",
|
||||
"ldr w4, [x20, #256]",
|
||||
"ldr w20, [x28, #960]",
|
||||
"ldr w7, [x20, #20]"
|
||||
"ldr w6, [x20, #20]"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"strh w4, [x8, #-2]!",
|
||||
"strh w7, [x8, #-2]!"
|
||||
"strh w6, [x8, #-2]!"
|
||||
]
|
||||
},
|
||||
"push rax, rbx": {
|
||||
@@ -41,7 +41,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"str x4, [x8, #-8]!",
|
||||
"str x7, [x8, #-8]!"
|
||||
"str x6, [x8, #-8]!"
|
||||
]
|
||||
},
|
||||
"adds xmm0, xmm1, xmm2": {
|
||||
@@ -225,7 +225,7 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x0",
|
||||
"mov w21, #0x1",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"mov x2, x10",
|
||||
"cbz x0, #+0x78",
|
||||
@@ -260,13 +260,13 @@
|
||||
"cbnz x0, #-0xc",
|
||||
"mov x0, x11",
|
||||
"mov x1, x10",
|
||||
"mov x2, x5",
|
||||
"mov x2, x7",
|
||||
"add x23, x0, x2",
|
||||
"add x22, x1, x2",
|
||||
"strb w21, [x28, #986]",
|
||||
"mov x11, x23",
|
||||
"mov x10, x22",
|
||||
"mov x5, x20"
|
||||
"mov x7, x20"
|
||||
]
|
||||
},
|
||||
"positive rep movsw": {
|
||||
@@ -282,7 +282,7 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x0",
|
||||
"mov w21, #0x1",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"mov x2, x10",
|
||||
"cbz x0, #+0x78",
|
||||
@@ -317,13 +317,13 @@
|
||||
"cbnz x0, #-0xc",
|
||||
"mov x0, x11",
|
||||
"mov x1, x10",
|
||||
"mov x2, x5",
|
||||
"mov x2, x7",
|
||||
"add x23, x0, x2, lsl #1",
|
||||
"add x22, x1, x2, lsl #1",
|
||||
"strb w21, [x28, #986]",
|
||||
"mov x11, x23",
|
||||
"mov x10, x22",
|
||||
"mov x5, x20"
|
||||
"mov x7, x20"
|
||||
]
|
||||
},
|
||||
"positive rep movsd": {
|
||||
@@ -339,7 +339,7 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x0",
|
||||
"mov w21, #0x1",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"mov x2, x10",
|
||||
"cbz x0, #+0x78",
|
||||
@@ -374,13 +374,13 @@
|
||||
"cbnz x0, #-0xc",
|
||||
"mov x0, x11",
|
||||
"mov x1, x10",
|
||||
"mov x2, x5",
|
||||
"mov x2, x7",
|
||||
"add x23, x0, x2, lsl #2",
|
||||
"add x22, x1, x2, lsl #2",
|
||||
"strb w21, [x28, #986]",
|
||||
"mov x11, x23",
|
||||
"mov x10, x22",
|
||||
"mov x5, x20"
|
||||
"mov x7, x20"
|
||||
]
|
||||
},
|
||||
"positive rep movsq": {
|
||||
@@ -396,7 +396,7 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x0",
|
||||
"mov w21, #0x1",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"mov x2, x10",
|
||||
"cbz x0, #+0x78",
|
||||
@@ -431,13 +431,13 @@
|
||||
"cbnz x0, #-0xc",
|
||||
"mov x0, x11",
|
||||
"mov x1, x10",
|
||||
"mov x2, x5",
|
||||
"mov x2, x7",
|
||||
"add x23, x0, x2, lsl #3",
|
||||
"add x22, x1, x2, lsl #3",
|
||||
"strb w21, [x28, #986]",
|
||||
"mov x11, x23",
|
||||
"mov x10, x22",
|
||||
"mov x5, x20"
|
||||
"mov x7, x20"
|
||||
]
|
||||
},
|
||||
"negative rep movsb": {
|
||||
@@ -452,7 +452,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xffffffffffffffff",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"mov x2, x10",
|
||||
"cbz x0, #+0x88",
|
||||
@@ -491,10 +491,10 @@
|
||||
"cbnz x0, #-0xc",
|
||||
"mov x0, x11",
|
||||
"mov x1, x10",
|
||||
"mov x2, x5",
|
||||
"mov x2, x7",
|
||||
"sub x22, x0, x2",
|
||||
"sub x21, x1, x2",
|
||||
"mov w5, #0x0",
|
||||
"mov w7, #0x0",
|
||||
"strb w20, [x28, #986]",
|
||||
"mov x11, x22",
|
||||
"mov x10, x21"
|
||||
@@ -512,7 +512,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xffffffffffffffff",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"mov x2, x10",
|
||||
"cbz x0, #+0x88",
|
||||
@@ -551,10 +551,10 @@
|
||||
"cbnz x0, #-0xc",
|
||||
"mov x0, x11",
|
||||
"mov x1, x10",
|
||||
"mov x2, x5",
|
||||
"mov x2, x7",
|
||||
"sub x22, x0, x2, lsl #1",
|
||||
"sub x21, x1, x2, lsl #1",
|
||||
"mov w5, #0x0",
|
||||
"mov w7, #0x0",
|
||||
"strb w20, [x28, #986]",
|
||||
"mov x11, x22",
|
||||
"mov x10, x21"
|
||||
@@ -572,7 +572,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xffffffffffffffff",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"mov x2, x10",
|
||||
"cbz x0, #+0x88",
|
||||
@@ -611,10 +611,10 @@
|
||||
"cbnz x0, #-0xc",
|
||||
"mov x0, x11",
|
||||
"mov x1, x10",
|
||||
"mov x2, x5",
|
||||
"mov x2, x7",
|
||||
"sub x22, x0, x2, lsl #2",
|
||||
"sub x21, x1, x2, lsl #2",
|
||||
"mov w5, #0x0",
|
||||
"mov w7, #0x0",
|
||||
"strb w20, [x28, #986]",
|
||||
"mov x11, x22",
|
||||
"mov x10, x21"
|
||||
@@ -632,7 +632,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xffffffffffffffff",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"mov x2, x10",
|
||||
"cbz x0, #+0x88",
|
||||
@@ -671,10 +671,10 @@
|
||||
"cbnz x0, #-0xc",
|
||||
"mov x0, x11",
|
||||
"mov x1, x10",
|
||||
"mov x2, x5",
|
||||
"mov x2, x7",
|
||||
"sub x22, x0, x2, lsl #3",
|
||||
"sub x21, x1, x2, lsl #3",
|
||||
"mov w5, #0x0",
|
||||
"mov w7, #0x0",
|
||||
"strb w20, [x28, #986]",
|
||||
"mov x11, x22",
|
||||
"mov x10, x21"
|
||||
@@ -694,7 +694,7 @@
|
||||
"mov w20, #0x0",
|
||||
"mov w21, #0x1",
|
||||
"uxtb w22, w4",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"cbz x0, #+0x58",
|
||||
"sub x0, x0, #0x20 (32)",
|
||||
@@ -718,9 +718,9 @@
|
||||
"strb w22, [x1], #1",
|
||||
"sub x0, x0, #0x1 (1)",
|
||||
"cbnz x0, #-0x8",
|
||||
"add x11, x11, x5",
|
||||
"add x11, x11, x7",
|
||||
"strb w21, [x28, #986]",
|
||||
"mov x5, x20"
|
||||
"mov x7, x20"
|
||||
]
|
||||
},
|
||||
"positive rep stosw": {
|
||||
@@ -737,7 +737,7 @@
|
||||
"mov w20, #0x0",
|
||||
"mov w21, #0x1",
|
||||
"uxth w22, w4",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"cbz x0, #+0x58",
|
||||
"sub x0, x0, #0x10 (16)",
|
||||
@@ -761,9 +761,9 @@
|
||||
"strh w22, [x1], #2",
|
||||
"sub x0, x0, #0x1 (1)",
|
||||
"cbnz x0, #-0x8",
|
||||
"add x11, x11, x5, lsl #1",
|
||||
"add x11, x11, x7, lsl #1",
|
||||
"strb w21, [x28, #986]",
|
||||
"mov x5, x20"
|
||||
"mov x7, x20"
|
||||
]
|
||||
},
|
||||
"positive rep stosd": {
|
||||
@@ -780,7 +780,7 @@
|
||||
"mov w20, #0x0",
|
||||
"mov w21, #0x1",
|
||||
"mov w22, w4",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"cbz x0, #+0x58",
|
||||
"sub x0, x0, #0x8 (8)",
|
||||
@@ -804,9 +804,9 @@
|
||||
"str w22, [x1], #4",
|
||||
"sub x0, x0, #0x1 (1)",
|
||||
"cbnz x0, #-0x8",
|
||||
"add x11, x11, x5, lsl #2",
|
||||
"add x11, x11, x7, lsl #2",
|
||||
"strb w21, [x28, #986]",
|
||||
"mov x5, x20"
|
||||
"mov x7, x20"
|
||||
]
|
||||
},
|
||||
"positive rep stosq": {
|
||||
@@ -822,7 +822,7 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x0",
|
||||
"mov w21, #0x1",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"cbz x0, #+0x58",
|
||||
"sub x0, x0, #0x4 (4)",
|
||||
@@ -846,9 +846,9 @@
|
||||
"str x4, [x1], #8",
|
||||
"sub x0, x0, #0x1 (1)",
|
||||
"cbnz x0, #-0x8",
|
||||
"add x11, x11, x5, lsl #3",
|
||||
"add x11, x11, x7, lsl #3",
|
||||
"strb w21, [x28, #986]",
|
||||
"mov x5, x20"
|
||||
"mov x7, x20"
|
||||
]
|
||||
},
|
||||
"negative rep stosb": {
|
||||
@@ -864,7 +864,7 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xffffffffffffffff",
|
||||
"uxtb w21, w4",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"cbz x0, #+0x60",
|
||||
"sub x1, x1, #0x1f (31)",
|
||||
@@ -890,8 +890,8 @@
|
||||
"strb w21, [x1], #-1",
|
||||
"sub x0, x0, #0x1 (1)",
|
||||
"cbnz x0, #-0x8",
|
||||
"sub x11, x11, x5",
|
||||
"mov w5, #0x0",
|
||||
"sub x11, x11, x7",
|
||||
"mov w7, #0x0",
|
||||
"strb w20, [x28, #986]"
|
||||
]
|
||||
},
|
||||
@@ -908,7 +908,7 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xffffffffffffffff",
|
||||
"uxth w21, w4",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"cbz x0, #+0x60",
|
||||
"sub x1, x1, #0x1e (30)",
|
||||
@@ -934,8 +934,8 @@
|
||||
"strh w21, [x1], #-2",
|
||||
"sub x0, x0, #0x1 (1)",
|
||||
"cbnz x0, #-0x8",
|
||||
"sub x11, x11, x5, lsl #1",
|
||||
"mov w5, #0x0",
|
||||
"sub x11, x11, x7, lsl #1",
|
||||
"mov w7, #0x0",
|
||||
"strb w20, [x28, #986]"
|
||||
]
|
||||
},
|
||||
@@ -952,7 +952,7 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xffffffffffffffff",
|
||||
"mov w21, w4",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"cbz x0, #+0x60",
|
||||
"sub x1, x1, #0x1c (28)",
|
||||
@@ -978,8 +978,8 @@
|
||||
"str w21, [x1], #-4",
|
||||
"sub x0, x0, #0x1 (1)",
|
||||
"cbnz x0, #-0x8",
|
||||
"sub x11, x11, x5, lsl #2",
|
||||
"mov w5, #0x0",
|
||||
"sub x11, x11, x7, lsl #2",
|
||||
"mov w7, #0x0",
|
||||
"strb w20, [x28, #986]"
|
||||
]
|
||||
},
|
||||
@@ -995,7 +995,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xffffffffffffffff",
|
||||
"mov x0, x5",
|
||||
"mov x0, x7",
|
||||
"mov x1, x11",
|
||||
"cbz x0, #+0x60",
|
||||
"sub x1, x1, #0x18 (24)",
|
||||
@@ -1021,8 +1021,8 @@
|
||||
"str x4, [x1], #-8",
|
||||
"sub x0, x0, #0x1 (1)",
|
||||
"cbnz x0, #-0x8",
|
||||
"sub x11, x11, x5, lsl #3",
|
||||
"mov w5, #0x0",
|
||||
"sub x11, x11, x7, lsl #3",
|
||||
"mov w7, #0x0",
|
||||
"strb w20, [x28, #986]"
|
||||
]
|
||||
},
|
||||
@@ -1154,8 +1154,8 @@
|
||||
"pop rbx"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"str x5, [x8, #8]",
|
||||
"str x7, [x8, #-8]!",
|
||||
"str x7, [x8, #8]",
|
||||
"str x6, [x8, #-8]!",
|
||||
"str x9, [x8, #-8]!",
|
||||
"str x10, [x8, #-8]!",
|
||||
"str x11, [x8, #-8]!",
|
||||
@@ -1164,19 +1164,19 @@
|
||||
"str x19, [x8, #-8]!",
|
||||
"str x29, [x8, #-8]!",
|
||||
"sub x8, x8, #0x18 (24)",
|
||||
"ldr w5, [x6, #36]",
|
||||
"ldr w10, [x6]",
|
||||
"ldr w9, [x6, #4]",
|
||||
"ldr w19, [x6, #8]",
|
||||
"ldr w29, [x6, #12]",
|
||||
"ldr w16, [x6, #16]",
|
||||
"ldr w17, [x6, #20]",
|
||||
"ldr w15, [x6, #24]",
|
||||
"ldr w7, [x6, #28]",
|
||||
"ldr w11, [x6, #32]",
|
||||
"ldr w7, [x5, #36]",
|
||||
"ldr w10, [x5]",
|
||||
"ldr w9, [x5, #4]",
|
||||
"ldr w19, [x5, #8]",
|
||||
"ldr w29, [x5, #12]",
|
||||
"ldr w16, [x5, #16]",
|
||||
"ldr w17, [x5, #20]",
|
||||
"ldr w15, [x5, #24]",
|
||||
"ldr w6, [x5, #28]",
|
||||
"ldr w11, [x5, #32]",
|
||||
"mov w20, #0x13",
|
||||
"mul w4, w5, w20",
|
||||
"str w5, [x8, #104]",
|
||||
"mul w4, w7, w20",
|
||||
"str w7, [x8, #104]",
|
||||
"mov w21, #0x1000000",
|
||||
"add w4, w4, w21",
|
||||
"lsr w4, w4, #25",
|
||||
@@ -1194,11 +1194,11 @@
|
||||
"asr w4, w4, #25",
|
||||
"add w4, w4, w15",
|
||||
"asr w4, w4, #26",
|
||||
"add w4, w4, w7",
|
||||
"add w4, w4, w6",
|
||||
"asr w4, w4, #25",
|
||||
"add w4, w4, w11",
|
||||
"asr w4, w4, #26",
|
||||
"add w4, w4, w5",
|
||||
"add w4, w4, w7",
|
||||
"asr w4, w4, #25",
|
||||
"mul w4, w4, w20",
|
||||
"add w10, w10, w4",
|
||||
@@ -1207,20 +1207,20 @@
|
||||
"add w9, w9, w4",
|
||||
"lsl w4, w4, #26",
|
||||
"sub w10, w10, w4",
|
||||
"mov w5, w9",
|
||||
"mov w7, w9",
|
||||
"ldr x4, [x8, #96]",
|
||||
"asr w5, w5, #25",
|
||||
"add w19, w19, w5",
|
||||
"lsl w5, w5, #25",
|
||||
"mov w6, w19",
|
||||
"sub w9, w9, w5",
|
||||
"asr w6, w6, #26",
|
||||
"add w29, w29, w6",
|
||||
"asr w7, w7, #25",
|
||||
"add w19, w19, w7",
|
||||
"lsl w7, w7, #25",
|
||||
"mov w5, w19",
|
||||
"sub w9, w9, w7",
|
||||
"asr w5, w5, #26",
|
||||
"add w29, w29, w5",
|
||||
"str w10, [x4]",
|
||||
"mov w12, w29",
|
||||
"lsl w6, w6, #26",
|
||||
"lsl w5, w5, #26",
|
||||
"asr w12, w12, #25",
|
||||
"sub w19, w19, w6",
|
||||
"sub w19, w19, w5",
|
||||
"add w16, w16, w12",
|
||||
"str w9, [x4, #4]",
|
||||
"mov w13, w16",
|
||||
@@ -1238,36 +1238,36 @@
|
||||
"str w15, [x8, #112]",
|
||||
"mov x10, x4",
|
||||
"asr w15, w15, #26",
|
||||
"add w7, w7, w15",
|
||||
"add w6, w6, w15",
|
||||
"str w16, [x4, #16]",
|
||||
"str w7, [x8, #120]",
|
||||
"asr w7, w7, #25",
|
||||
"add w11, w11, w7",
|
||||
"str w6, [x8, #120]",
|
||||
"asr w6, w6, #25",
|
||||
"add w11, w11, w6",
|
||||
"str w11, [x8]",
|
||||
"asr w11, w11, #26",
|
||||
"ldr w20, [x8, #104]",
|
||||
"add w20, w20, w11",
|
||||
"str w20, [x8, #104]",
|
||||
"lsl w14, w14, #25",
|
||||
"ldr w5, [x8, #104]",
|
||||
"ldr w7, [x8, #104]",
|
||||
"sub w17, w17, w14",
|
||||
"str w17, [x4, #20]",
|
||||
"ldr w4, [x8, #112]",
|
||||
"lsl w15, w15, #26",
|
||||
"sub w4, w4, w15",
|
||||
"lsl w7, w7, #25",
|
||||
"lsl w6, w6, #25",
|
||||
"str w4, [x10, #24]",
|
||||
"ldr w4, [x8, #120]",
|
||||
"sub w4, w4, w7",
|
||||
"sub w4, w4, w6",
|
||||
"lsl w11, w11, #26",
|
||||
"str w4, [x10, #28]",
|
||||
"ldr w4, [x8]",
|
||||
"sub w4, w4, w11",
|
||||
"str w4, [x10, #32]",
|
||||
"mov w4, w5",
|
||||
"mov w4, w7",
|
||||
"and w4, w4, #0xfe000000",
|
||||
"sub w5, w5, w4",
|
||||
"str w5, [x10, #36]",
|
||||
"sub w7, w7, w4",
|
||||
"str w7, [x10, #36]",
|
||||
"mvn w27, w8",
|
||||
"adds x26, x8, #0x18 (24)",
|
||||
"mov x8, x26",
|
||||
@@ -1278,7 +1278,7 @@
|
||||
"ldr x11, [x8], #8",
|
||||
"ldr x10, [x8], #8",
|
||||
"ldr x9, [x8], #8",
|
||||
"ldr x7, [x8], #8",
|
||||
"ldr x6, [x8], #8",
|
||||
"cfinv"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -16,11 +16,11 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x00",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldaddalb w5, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"ldaddalb w7, w20, [x4]",
|
||||
"eor w27, w20, w7",
|
||||
"lsl w0, w20, #24",
|
||||
"cmn w0, w5, lsl #24",
|
||||
"add w26, w20, w5",
|
||||
"cmn w0, w7, lsl #24",
|
||||
"add w26, w20, w7",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -28,11 +28,11 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x01",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldaddalh w5, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"ldaddalh w7, w20, [x4]",
|
||||
"eor w27, w20, w7",
|
||||
"lsl w0, w20, #16",
|
||||
"cmn w0, w5, lsl #16",
|
||||
"add w26, w20, w5",
|
||||
"cmn w0, w7, lsl #16",
|
||||
"add w26, w20, w7",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -40,9 +40,9 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "0x01",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldaddal w5, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"adds w26, w20, w5",
|
||||
"ldaddal w7, w20, [x4]",
|
||||
"eor w27, w20, w7",
|
||||
"adds w26, w20, w7",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -50,8 +50,8 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "0x08",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldsetalb w5, w20, [x4]",
|
||||
"orr w26, w20, w5",
|
||||
"ldsetalb w7, w20, [x4]",
|
||||
"orr w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -60,8 +60,8 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "0x09",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldsetalh w5, w20, [x4]",
|
||||
"orr w26, w20, w5",
|
||||
"ldsetalh w7, w20, [x4]",
|
||||
"orr w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #16",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -70,8 +70,8 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "0x09",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldsetal w5, w20, [x4]",
|
||||
"orr w26, w20, w5",
|
||||
"ldsetal w7, w20, [x4]",
|
||||
"orr w26, w20, w7",
|
||||
"cmp w26, #0x0 (0)"
|
||||
]
|
||||
},
|
||||
@@ -79,10 +79,10 @@
|
||||
"ExpectedInstructionCount": 15,
|
||||
"Comment": "0x10",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"ldaddalb w20, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"uxtb w21, w5",
|
||||
"eor w27, w20, w7",
|
||||
"uxtb w21, w7",
|
||||
"cinc w22, w21, lo",
|
||||
"add w23, w20, w22",
|
||||
"uxtb w26, w23",
|
||||
@@ -100,10 +100,10 @@
|
||||
"ExpectedInstructionCount": 15,
|
||||
"Comment": "0x11",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"ldaddalh w20, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"uxth w21, w5",
|
||||
"eor w27, w20, w7",
|
||||
"uxth w21, w7",
|
||||
"cinc w22, w21, lo",
|
||||
"add w23, w20, w22",
|
||||
"uxth w26, w23",
|
||||
@@ -121,11 +121,11 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x11",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"ldaddal w20, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"eor w27, w20, w7",
|
||||
"cfinv",
|
||||
"adcs w26, w20, w5",
|
||||
"adcs w26, w20, w7",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -133,12 +133,12 @@
|
||||
"ExpectedInstructionCount": 17,
|
||||
"Comment": "0x18",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"neg w1, w20",
|
||||
"ldaddalb w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"eor w27, w20, w7",
|
||||
"uxtb w20, w20",
|
||||
"uxtb w21, w5",
|
||||
"uxtb w21, w7",
|
||||
"cinc w22, w21, lo",
|
||||
"sub w23, w20, w22",
|
||||
"uxtb w26, w23",
|
||||
@@ -156,12 +156,12 @@
|
||||
"ExpectedInstructionCount": 17,
|
||||
"Comment": "0x19",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"neg w1, w20",
|
||||
"ldaddalh w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"eor w27, w20, w7",
|
||||
"uxth w20, w20",
|
||||
"uxth w21, w5",
|
||||
"uxth w21, w7",
|
||||
"cinc w22, w21, lo",
|
||||
"sub w23, w20, w22",
|
||||
"uxth w26, w23",
|
||||
@@ -179,20 +179,20 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "0x19",
|
||||
"ExpectedArm64ASM": [
|
||||
"cinc w20, w5, lo",
|
||||
"cinc w20, w7, lo",
|
||||
"neg w1, w20",
|
||||
"ldaddal w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"sbcs w26, w20, w5"
|
||||
"eor w27, w20, w7",
|
||||
"sbcs w26, w20, w7"
|
||||
]
|
||||
},
|
||||
"lock and byte [rax], cl": {
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "0x20",
|
||||
"ExpectedArm64ASM": [
|
||||
"mvn w1, w5",
|
||||
"mvn w1, w7",
|
||||
"ldclralb w1, w20, [x4]",
|
||||
"and w26, w20, w5",
|
||||
"and w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -201,9 +201,9 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "0x21",
|
||||
"ExpectedArm64ASM": [
|
||||
"mvn w1, w5",
|
||||
"mvn w1, w7",
|
||||
"ldclralh w1, w20, [x4]",
|
||||
"and w26, w20, w5",
|
||||
"and w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #16",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -212,9 +212,9 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "0x21",
|
||||
"ExpectedArm64ASM": [
|
||||
"mvn w1, w5",
|
||||
"mvn w1, w7",
|
||||
"ldclral w1, w20, [x4]",
|
||||
"ands w26, w20, w5",
|
||||
"ands w26, w20, w7",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -222,42 +222,42 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x28",
|
||||
"ExpectedArm64ASM": [
|
||||
"neg w1, w5",
|
||||
"neg w1, w7",
|
||||
"ldaddalb w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"eor w27, w20, w7",
|
||||
"lsl w0, w20, #24",
|
||||
"cmp w0, w5, lsl #24",
|
||||
"sub w26, w20, w5"
|
||||
"cmp w0, w7, lsl #24",
|
||||
"sub w26, w20, w7"
|
||||
]
|
||||
},
|
||||
"lock sub word [rax], cx": {
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "0x28",
|
||||
"ExpectedArm64ASM": [
|
||||
"neg w1, w5",
|
||||
"neg w1, w7",
|
||||
"ldaddalh w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"eor w27, w20, w7",
|
||||
"lsl w0, w20, #16",
|
||||
"cmp w0, w5, lsl #16",
|
||||
"sub w26, w20, w5"
|
||||
"cmp w0, w7, lsl #16",
|
||||
"sub w26, w20, w7"
|
||||
]
|
||||
},
|
||||
"lock sub dword [rax], ecx": {
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "0x29",
|
||||
"ExpectedArm64ASM": [
|
||||
"neg w1, w5",
|
||||
"neg w1, w7",
|
||||
"ldaddal w1, w20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"subs w26, w20, w5"
|
||||
"eor w27, w20, w7",
|
||||
"subs w26, w20, w7"
|
||||
]
|
||||
},
|
||||
"lock xor byte [rax], cl": {
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "0x30",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldeoralb w5, w20, [x4]",
|
||||
"eor w26, w20, w5",
|
||||
"ldeoralb w7, w20, [x4]",
|
||||
"eor w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -266,8 +266,8 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "0x31",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldeoralh w5, w20, [x4]",
|
||||
"eor w26, w20, w5",
|
||||
"ldeoralh w7, w20, [x4]",
|
||||
"eor w26, w20, w7",
|
||||
"cmn wzr, w26, lsl #16",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -276,8 +276,8 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "0x31",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldeoral w5, w20, [x4]",
|
||||
"eor w26, w20, w5",
|
||||
"ldeoral w7, w20, [x4]",
|
||||
"eor w26, w20, w7",
|
||||
"cmp w26, #0x0 (0)"
|
||||
]
|
||||
},
|
||||
@@ -285,9 +285,9 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "0x01",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldaddal x5, x20, [x4]",
|
||||
"eor w27, w20, w5",
|
||||
"adds x26, x20, x5",
|
||||
"ldaddal x7, x20, [x4]",
|
||||
"eor w27, w20, w7",
|
||||
"adds x26, x20, x7",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -295,13 +295,13 @@
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "0x0f 0xc0",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb w20, w7",
|
||||
"uxtb w20, w6",
|
||||
"ldaddalb w20, w21, [x4]",
|
||||
"eor w27, w21, w20",
|
||||
"lsl w0, w21, #24",
|
||||
"cmn w0, w20, lsl #24",
|
||||
"add w26, w21, w20",
|
||||
"bfxil x7, x21, #0, #8",
|
||||
"bfxil x6, x21, #0, #8",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -309,13 +309,13 @@
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "0x0f 0xc1",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth w20, w7",
|
||||
"uxth w20, w6",
|
||||
"ldaddalh w20, w21, [x4]",
|
||||
"eor w27, w21, w20",
|
||||
"lsl w0, w21, #16",
|
||||
"cmn w0, w20, lsl #16",
|
||||
"add w26, w21, w20",
|
||||
"bfxil x7, x21, #0, #16",
|
||||
"bfxil x6, x21, #0, #16",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -323,10 +323,10 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "0x0f 0xc1",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w7",
|
||||
"ldaddal w20, w7, [x4]",
|
||||
"eor w27, w7, w20",
|
||||
"adds w26, w7, w20",
|
||||
"mov w20, w6",
|
||||
"ldaddal w20, w6, [x4]",
|
||||
"eor w27, w6, w20",
|
||||
"adds w26, w6, w20",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -334,11 +334,11 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "0x0f 0xc1",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldaddal x7, x20, [x4]",
|
||||
"eor w27, w20, w7",
|
||||
"adds x26, x20, x7",
|
||||
"ldaddal x6, x20, [x4]",
|
||||
"eor w27, w20, w6",
|
||||
"adds x26, x20, x6",
|
||||
"cfinv",
|
||||
"mov x7, x20"
|
||||
"mov x6, x20"
|
||||
]
|
||||
},
|
||||
"lock add byte [rax], 1": {
|
||||
|
||||
@@ -18,11 +18,11 @@
|
||||
"adc rcx, rcx"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"adds x4, x4, x7",
|
||||
"adds x4, x4, x6",
|
||||
"mov w27, #0x0",
|
||||
"adcs x26, x5, x5",
|
||||
"adcs x26, x7, x7",
|
||||
"cfinv",
|
||||
"mov x5, x26"
|
||||
"mov x7, x26"
|
||||
]
|
||||
},
|
||||
"Chained sub": {
|
||||
@@ -32,10 +32,10 @@
|
||||
"sbb rcx, rdx"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"subs x4, x4, x7",
|
||||
"eor w27, w5, w6",
|
||||
"sbcs x26, x5, x6",
|
||||
"mov x5, x26"
|
||||
"subs x4, x4, x6",
|
||||
"eor w27, w7, w5",
|
||||
"sbcs x26, x7, x5",
|
||||
"mov x7, x26"
|
||||
]
|
||||
},
|
||||
"Inverted add": {
|
||||
@@ -46,10 +46,10 @@
|
||||
"cmc"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"adds x4, x4, x7",
|
||||
"eor w27, w5, w6",
|
||||
"adcs x26, x5, x6",
|
||||
"mov x5, x26"
|
||||
"adds x4, x4, x6",
|
||||
"eor w27, w7, w5",
|
||||
"adcs x26, x7, x5",
|
||||
"mov x7, x26"
|
||||
]
|
||||
},
|
||||
"Inverted sub": {
|
||||
@@ -60,10 +60,10 @@
|
||||
"cmc"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"subs x4, x4, x7",
|
||||
"subs x4, x4, x6",
|
||||
"mov w27, #0x0",
|
||||
"sbcs x26, x5, x5",
|
||||
"mov x5, x26",
|
||||
"sbcs x26, x7, x7",
|
||||
"mov x7, x26",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -75,9 +75,9 @@
|
||||
"test rcx, rcx"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"adds x4, x4, x7",
|
||||
"adc x5, x5, x5",
|
||||
"ands x26, x5, x5",
|
||||
"adds x4, x4, x6",
|
||||
"adc x7, x7, x7",
|
||||
"ands x26, x7, x7",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -88,7 +88,7 @@
|
||||
"inc rax"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"adds x4, x4, x7",
|
||||
"adds x4, x4, x6",
|
||||
"cset w20, lo",
|
||||
"adds x26, x4, #0x1 (1)",
|
||||
"rmif x20, #63, #nzCv",
|
||||
@@ -104,9 +104,9 @@
|
||||
"test rax, rdx"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"add x4, x4, x7",
|
||||
"add x4, x4, x6",
|
||||
"add x4, x4, #0x1 (1)",
|
||||
"ands x26, x4, x6",
|
||||
"ands x26, x4, x5",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -117,7 +117,7 @@
|
||||
"dec rax"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"subs x4, x4, x7",
|
||||
"subs x4, x4, x6",
|
||||
"cset w20, hs",
|
||||
"subs x26, x4, #0x1 (1)",
|
||||
"rmif x20, #63, #nzCv",
|
||||
@@ -133,9 +133,9 @@
|
||||
"test rax, rcx"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"sub x4, x4, x7",
|
||||
"sub x4, x4, x6",
|
||||
"sub x4, x4, #0x1 (1)",
|
||||
"ands x26, x4, x5",
|
||||
"ands x26, x4, x7",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -185,8 +185,8 @@
|
||||
"test rax, rdx"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"asr x4, x4, x5",
|
||||
"ands x26, x4, x6",
|
||||
"asr x4, x4, x7",
|
||||
"ands x26, x4, x5",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -197,14 +197,14 @@
|
||||
"test rax, rdx"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x3f",
|
||||
"and x20, x7, #0x3f",
|
||||
"cbz x20, #+0x38",
|
||||
"lsr x20, x4, x5",
|
||||
"lsr x20, x4, x7",
|
||||
"cset w21, lo",
|
||||
"neg x22, x5",
|
||||
"neg x22, x7",
|
||||
"lsl x23, x4, x22",
|
||||
"orr x20, x20, x23, lsl #1",
|
||||
"sub x23, x5, #0x1 (1)",
|
||||
"sub x23, x7, #0x1 (1)",
|
||||
"lsr x23, x4, x23",
|
||||
"eor x23, x23, #0x1",
|
||||
"rmif x23, #63, #nzCv",
|
||||
@@ -212,7 +212,7 @@
|
||||
"orr x4, x20, x21",
|
||||
"eor x20, x4, x4, lsr #1",
|
||||
"rmif x20, #62, #nzcV",
|
||||
"ands x26, x4, x6",
|
||||
"ands x26, x4, x5",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -224,10 +224,10 @@
|
||||
"test cl, cl"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"cmp x4, x7",
|
||||
"cmp x4, x6",
|
||||
"cset x20, eq",
|
||||
"bfxil x5, x20, #0, #8",
|
||||
"mov x26, x5",
|
||||
"bfxil x7, x20, #0, #8",
|
||||
"mov x26, x7",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -240,10 +240,10 @@
|
||||
"test cl, cl"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"adds x4, x4, x7",
|
||||
"adds x4, x4, x6",
|
||||
"cset x20, eq",
|
||||
"bfxil x5, x20, #0, #8",
|
||||
"mov x26, x5",
|
||||
"bfxil x7, x20, #0, #8",
|
||||
"mov x26, x7",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -256,10 +256,10 @@
|
||||
"test cl, cl"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ands w4, w4, w7",
|
||||
"ands w4, w4, w6",
|
||||
"cset x20, eq",
|
||||
"bfxil x5, x20, #0, #8",
|
||||
"mov x26, x5",
|
||||
"bfxil x7, x20, #0, #8",
|
||||
"mov x26, x7",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -272,36 +272,34 @@
|
||||
"test cl, cl"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"and w26, w4, w7",
|
||||
"and w26, w4, w6",
|
||||
"mov x4, x26",
|
||||
"eor w20, w26, w26, lsr #4",
|
||||
"eor w20, w20, w20, lsr #2",
|
||||
"eon w20, w20, w20, lsr #1",
|
||||
"and x20, x20, #0x1",
|
||||
"bfxil x5, x20, #0, #8",
|
||||
"mov x26, x5",
|
||||
"bfxil x7, x20, #0, #8",
|
||||
"mov x26, x7",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
"Dead cmpxchg flags": {
|
||||
"ExpectedInstructionCount": 13,
|
||||
"ExpectedInstructionCount": 11,
|
||||
"x86Insts": [
|
||||
"cmpxchg8b [rbp]",
|
||||
"test rax, rax"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x20, x4",
|
||||
"mov x21, x6",
|
||||
"caspal w20, w21, w0, w1, [x9]",
|
||||
"mov x21, x5",
|
||||
"caspal w20, w21, w6, w7, [x9]",
|
||||
"mrs x0, nzcv",
|
||||
"cmp w20, w4",
|
||||
"ccmp w21, w6, #nzcv, eq",
|
||||
"ccmp w21, w5, #nzcv, eq",
|
||||
"rmif x0, #0, #NzCV",
|
||||
"csel x4, x20, x4, ne",
|
||||
"csel x6, x21, x6, ne",
|
||||
"csel x5, x21, x5, ne",
|
||||
"ands x26, x4, x4",
|
||||
"cfinv"
|
||||
]
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"cset w20, lo",
|
||||
"mov w21, w7",
|
||||
"mov w21, w6",
|
||||
"mov w22, w4",
|
||||
"add w23, w21, w20",
|
||||
"add w4, w22, w23",
|
||||
@@ -62,12 +62,12 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"cset w20, lo",
|
||||
"add x21, x7, x20",
|
||||
"add x21, x6, x20",
|
||||
"add x4, x4, x21",
|
||||
"mrs x21, nzcv",
|
||||
"cmp x4, x7",
|
||||
"cmp x4, x6",
|
||||
"cset x22, lo",
|
||||
"cmp x4, x7",
|
||||
"cmp x4, x6",
|
||||
"cset x23, ls",
|
||||
"cmp x20, #0x1 (1)",
|
||||
"csel x20, x23, x22, eq",
|
||||
@@ -83,7 +83,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"cset w20, vs",
|
||||
"mov w21, w7",
|
||||
"mov w21, w6",
|
||||
"mov w22, w4",
|
||||
"add w23, w21, w20",
|
||||
"add w4, w22, w23",
|
||||
@@ -105,12 +105,12 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"cset w20, vs",
|
||||
"add x21, x7, x20",
|
||||
"add x21, x6, x20",
|
||||
"add x4, x4, x21",
|
||||
"mrs x21, nzcv",
|
||||
"cmp x4, x7",
|
||||
"cmp x4, x6",
|
||||
"cset x22, lo",
|
||||
"cmp x4, x7",
|
||||
"cmp x4, x6",
|
||||
"cset x23, ls",
|
||||
"cmp x20, #0x1 (1)",
|
||||
"csel x20, x23, x22, eq",
|
||||
|
||||
@@ -25,15 +25,15 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w4, #0x1",
|
||||
"ldaddal x4, x4, [x5]",
|
||||
"mov x6, x4",
|
||||
"and w6, w6, #0x1f",
|
||||
"add x6, x6, #0x1 (1)",
|
||||
"lsl x6, x6, #6",
|
||||
"eor w27, w6, w5",
|
||||
"adds x26, x6, x5",
|
||||
"ldaddal x4, x4, [x7]",
|
||||
"mov x5, x4",
|
||||
"and w5, w5, #0x1f",
|
||||
"add x5, x5, #0x1 (1)",
|
||||
"lsl x5, x5, #6",
|
||||
"eor w27, w5, w7",
|
||||
"adds x26, x5, x7",
|
||||
"cfinv",
|
||||
"mov x6, x26"
|
||||
"mov x5, x26"
|
||||
]
|
||||
},
|
||||
"FMOD scalar loop": {
|
||||
@@ -79,61 +79,61 @@
|
||||
"sub esi, 0x1"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w10, w5",
|
||||
"mov x6, x9",
|
||||
"mov x4, x7",
|
||||
"ldr s18, [x6]",
|
||||
"mov w10, w7",
|
||||
"mov x5, x9",
|
||||
"mov x4, x6",
|
||||
"ldr s18, [x5]",
|
||||
"add x4, x4, #0x20 (32)",
|
||||
"fmul s0, s18, s16",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"add x6, x6, #0x20 (32)",
|
||||
"add x5, x5, #0x20 (32)",
|
||||
"ldur s2, [x4, #-32]",
|
||||
"fadd s0, s18, s2",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"stur s18, [x4, #-32]",
|
||||
"ldur s18, [x6, #-28]",
|
||||
"ldur s18, [x5, #-28]",
|
||||
"fmul s0, s18, s17",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"ldur s2, [x4, #-28]",
|
||||
"fadd s0, s18, s2",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"stur s18, [x4, #-28]",
|
||||
"ldur s18, [x6, #-24]",
|
||||
"ldur s18, [x5, #-24]",
|
||||
"fmul s0, s18, s16",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"ldur s2, [x4, #-24]",
|
||||
"fadd s0, s18, s2",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"stur s18, [x4, #-24]",
|
||||
"ldur s18, [x6, #-20]",
|
||||
"ldur s18, [x5, #-20]",
|
||||
"fmul s0, s18, s17",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"ldur s2, [x4, #-20]",
|
||||
"fadd s0, s18, s2",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"stur s18, [x4, #-20]",
|
||||
"ldur s18, [x6, #-16]",
|
||||
"ldur s18, [x5, #-16]",
|
||||
"fmul s0, s18, s16",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"ldur s2, [x4, #-16]",
|
||||
"fadd s0, s18, s2",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"stur s18, [x4, #-16]",
|
||||
"ldur s18, [x6, #-12]",
|
||||
"ldur s18, [x5, #-12]",
|
||||
"fmul s0, s18, s17",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"ldur s2, [x4, #-12]",
|
||||
"fadd s0, s18, s2",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"stur s18, [x4, #-12]",
|
||||
"ldur s18, [x6, #-8]",
|
||||
"ldur s18, [x5, #-8]",
|
||||
"fmul s0, s18, s16",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"ldur s2, [x4, #-8]",
|
||||
"fadd s0, s18, s2",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"stur s18, [x4, #-8]",
|
||||
"ldur s18, [x6, #-4]",
|
||||
"ldur s18, [x5, #-4]",
|
||||
"fmul s0, s18, s17",
|
||||
"mov v18.s[0], v0.s[0]",
|
||||
"ldur s2, [x4, #-4]",
|
||||
@@ -183,16 +183,16 @@
|
||||
"cmp rdi, rax"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x6, x4",
|
||||
"mov x5, x4",
|
||||
"mov x7, x4",
|
||||
"mov x19, x10",
|
||||
"add x4, x4, #0x1 (1)",
|
||||
"lsr x6, x6, #6",
|
||||
"and w5, w5, #0x3f",
|
||||
"lsl x19, x19, x5",
|
||||
"ldr x20, [x7, x6, sxtx #3]",
|
||||
"lsr x5, x5, #6",
|
||||
"and w7, w7, #0x3f",
|
||||
"lsl x19, x19, x7",
|
||||
"ldr x20, [x6, x5, sxtx #3]",
|
||||
"eor x20, x20, x19",
|
||||
"str x20, [x7, x6, sxtx #3]",
|
||||
"str x20, [x6, x5, sxtx #3]",
|
||||
"eor w27, w11, w4",
|
||||
"subs x26, x11, x4"
|
||||
]
|
||||
@@ -233,11 +233,11 @@
|
||||
"cmp qword [r13+r8*4+0x4],0x0"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldrh w14, [x6, #4]",
|
||||
"ldrh w11, [x6, #6]",
|
||||
"ldrh w14, [x5, #4]",
|
||||
"ldrh w11, [x5, #6]",
|
||||
"str w11, [x8, #12]",
|
||||
"ldrh w7, [x6, #8]",
|
||||
"ldrh w11, [x6, #10]",
|
||||
"ldrh w6, [x5, #8]",
|
||||
"ldrh w11, [x5, #10]",
|
||||
"str w11, [x8, #16]",
|
||||
"add x12, x15, x15, lsl #1",
|
||||
"add x20, x17, x12, lsl #2",
|
||||
@@ -271,14 +271,14 @@
|
||||
"str x19, [x8, #-8]!",
|
||||
"str x17, [x8, #-8]!",
|
||||
"str x16, [x8, #-8]!",
|
||||
"str x7, [x8, #-8]!",
|
||||
"str x6, [x8, #-8]!",
|
||||
"sub x8, x8, #0x18 (24)",
|
||||
"str x6, [x8]",
|
||||
"str x5, [x8]",
|
||||
"ldrb w14, [x11]",
|
||||
"add x20, x14, x14, lsl #2",
|
||||
"mov w5, w20",
|
||||
"mov w7, w20",
|
||||
"ldrb w4, [x10]",
|
||||
"add w4, w4, w5",
|
||||
"add w4, w4, w7",
|
||||
"mvn w27, w4",
|
||||
"subs w26, w4, #0x18 (24)"
|
||||
]
|
||||
@@ -306,8 +306,8 @@
|
||||
"cmp dword [rbx+r10*4+0xc],0xffffffff"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x13, x6",
|
||||
"mov x12, x5",
|
||||
"mov x13, x5",
|
||||
"mov x12, x7",
|
||||
"mov w14, w10",
|
||||
"lsr w14, w14, #3",
|
||||
"ldrb w14, [x9, x14, sxtx]",
|
||||
@@ -317,16 +317,16 @@
|
||||
"eor x20, x20, #0x1",
|
||||
"rmif x20, #63, #nzCv",
|
||||
"add x12, x12, x12, lsl #2",
|
||||
"add x20, x7, #0x10 (16)",
|
||||
"add x20, x6, #0x10 (16)",
|
||||
"add x12, x20, x12, lsl #2",
|
||||
"csel x12, x13, x12, hs",
|
||||
"ldr w20, [x12]",
|
||||
"sxtw x12, w20",
|
||||
"add x10, x10, #0x1 (1)",
|
||||
"add x14, x12, x12, lsl #2",
|
||||
"add x13, x7, x14, lsl #2",
|
||||
"add x13, x6, x14, lsl #2",
|
||||
"add x13, x13, #0xc (12)",
|
||||
"add x20, x7, x14, lsl #2",
|
||||
"add x20, x6, x14, lsl #2",
|
||||
"ldr w20, [x20, #12]",
|
||||
"mvn w27, w20",
|
||||
"adds w26, w20, #0x1 (1)"
|
||||
@@ -349,18 +349,18 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"sxtw x13, w12",
|
||||
"add x13, x13, x13, lsl #2",
|
||||
"add x20, x7, x13, lsl #2",
|
||||
"add x20, x6, x13, lsl #2",
|
||||
"ldr w20, [x20, #12]",
|
||||
"cmp w20, w5",
|
||||
"cmp w20, w7",
|
||||
"cset x20, eq",
|
||||
"bfxil x5, x20, #0, #8",
|
||||
"bfxil x7, x20, #0, #8",
|
||||
"mov w20, #0x31",
|
||||
"eor x5, x5, x20",
|
||||
"eor x7, x7, x20",
|
||||
"add x20, x8, x11",
|
||||
"strb w5, [x20, #80]",
|
||||
"strb w7, [x20, #80]",
|
||||
"add x11, x11, #0x1 (1)",
|
||||
"mov w5, w12",
|
||||
"add x20, x7, x13, lsl #2",
|
||||
"mov w7, w12",
|
||||
"add x20, x6, x13, lsl #2",
|
||||
"ldr w12, [x20, #8]",
|
||||
"mvn w27, w12",
|
||||
"adds w26, w12, #0x2 (2)"
|
||||
@@ -390,19 +390,19 @@
|
||||
"add rdi,0xffffffffffffffff"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w5, w4",
|
||||
"and x5, x5, #0xffffffffffffff07",
|
||||
"mov w7, w4",
|
||||
"and x7, x7, #0xffffffffffffff07",
|
||||
"mov w20, #0x1",
|
||||
"bfxil x12, x20, #0, #8",
|
||||
"lsl w20, w12, w5",
|
||||
"lsl w20, w12, w7",
|
||||
"bfxil x12, x20, #0, #8",
|
||||
"mov w13, w4",
|
||||
"lsr w13, w13, #3",
|
||||
"ldrb w14, [x9, x13, sxtx]",
|
||||
"mov w20, #0xfe",
|
||||
"bfxil x15, x20, #0, #8",
|
||||
"mov w5, w4",
|
||||
"and x20, x5, #0x7",
|
||||
"mov w7, w4",
|
||||
"and x20, x7, #0x7",
|
||||
"mov w21, w15",
|
||||
"bfi w21, w15, #24, #8",
|
||||
"neg w20, w20",
|
||||
@@ -417,9 +417,9 @@
|
||||
"ldrb w21, [x21, #79]",
|
||||
"lsl w0, w21, #24",
|
||||
"cmp w0, w20, lsl #24",
|
||||
"uxtb w5, w12",
|
||||
"uxtb w7, w12",
|
||||
"uxtb w12, w15",
|
||||
"csel w12, w5, w12, eq",
|
||||
"csel w12, w7, w12, eq",
|
||||
"add x4, x4, #0x1 (1)",
|
||||
"strb w12, [x9, x13, sxtx]",
|
||||
"mvn w27, w11",
|
||||
@@ -456,25 +456,25 @@
|
||||
"ldp q21, q2, [x10, #32]",
|
||||
"ldp q22, q3, [x10, #64]",
|
||||
"sub x20, x11, #0x81 (129)",
|
||||
"add x5, x20, x6",
|
||||
"add x7, x20, x5",
|
||||
"ldp q23, q4, [x10, #96]",
|
||||
"add x20, x10, x6",
|
||||
"add x20, x10, x5",
|
||||
"ldp q24, q5, [x20, #-32]",
|
||||
"sub x10, x10, x11",
|
||||
"and x5, x5, #0xffffffffffffffe0",
|
||||
"add x10, x10, x5",
|
||||
"and x7, x7, #0xffffffffffffffe0",
|
||||
"add x10, x10, x7",
|
||||
"ldp q17, q6, [x10, #96]",
|
||||
"ldp q18, q7, [x10, #64]",
|
||||
"ldp q19, q8, [x10, #32]",
|
||||
"ldp q20, q9, [x10]",
|
||||
"sub x10, x10, #0x80 (128)",
|
||||
"stp q17, q6, [x5, #96]",
|
||||
"stp q18, q7, [x5, #64]",
|
||||
"stp q19, q8, [x5, #32]",
|
||||
"stp q20, q9, [x5]",
|
||||
"sub x5, x5, #0x80 (128)",
|
||||
"eor w27, w11, w5",
|
||||
"subs x26, x11, x5",
|
||||
"stp q17, q6, [x7, #96]",
|
||||
"stp q18, q7, [x7, #64]",
|
||||
"stp q19, q8, [x7, #32]",
|
||||
"stp q20, q9, [x7]",
|
||||
"sub x7, x7, #0x80 (128)",
|
||||
"eor w27, w11, w7",
|
||||
"subs x26, x11, x7",
|
||||
"stp q4, q5, [x28, #128]",
|
||||
"stp q2, q3, [x28, #96]",
|
||||
"stp q8, q9, [x28, #64]",
|
||||
@@ -508,21 +508,21 @@
|
||||
"cmp rdx,rdi"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"add x20, x10, x6",
|
||||
"add x20, x10, x5",
|
||||
"ldp q21, q2, [x20, #-32]",
|
||||
"add x20, x10, x6",
|
||||
"add x20, x10, x5",
|
||||
"ldp q22, q3, [x20, #-64]",
|
||||
"mov x5, x11",
|
||||
"mov x7, x11",
|
||||
"orr x11, x11, #0x1f",
|
||||
"add x20, x10, x6",
|
||||
"add x20, x10, x5",
|
||||
"ldp q23, q4, [x20, #-96]",
|
||||
"add x20, x10, x6",
|
||||
"add x20, x10, x5",
|
||||
"ldp q24, q5, [x20, #-128]",
|
||||
"sub x10, x10, x5",
|
||||
"sub x10, x10, x7",
|
||||
"add x11, x11, #0x1 (1)",
|
||||
"add x10, x10, x11",
|
||||
"sub x20, x5, #0x80 (128)",
|
||||
"add x6, x20, x6",
|
||||
"sub x20, x7, #0x80 (128)",
|
||||
"add x5, x20, x5",
|
||||
"ldp q17, q6, [x10]",
|
||||
"ldp q18, q7, [x10, #32]",
|
||||
"ldp q19, q8, [x10, #64]",
|
||||
@@ -533,8 +533,8 @@
|
||||
"stp q19, q8, [x11, #64]",
|
||||
"stp q20, q9, [x11, #96]",
|
||||
"add x11, x11, #0x80 (128)",
|
||||
"eor w27, w6, w11",
|
||||
"subs x26, x6, x11",
|
||||
"eor w27, w5, w11",
|
||||
"subs x26, x5, x11",
|
||||
"stp q4, q5, [x28, #128]",
|
||||
"stp q2, q3, [x28, #96]",
|
||||
"stp q8, q9, [x28, #64]",
|
||||
@@ -561,9 +561,9 @@
|
||||
"cmp rsi,r8"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x10, x6",
|
||||
"mov x10, x5",
|
||||
"and x10, x10, #0xfffffffffffffffc",
|
||||
"fmov d16, x5",
|
||||
"fmov d16, x7",
|
||||
"dup v16.2d, v16.d[0]",
|
||||
"ldr x11, [x8, #32]",
|
||||
"add x11, x11, x17, lsl #3",
|
||||
@@ -592,8 +592,8 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -610,8 +610,8 @@
|
||||
"blr x5",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -627,7 +627,7 @@
|
||||
"clz w23, w0",
|
||||
"csinv w23, w23, wzr, ne",
|
||||
"cmp x21, #0x0 (0)",
|
||||
"csel x5, x22, x23, eq",
|
||||
"csel x7, x22, x23, eq",
|
||||
"mov w26, #0x1",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
|
||||
@@ -28,21 +28,21 @@
|
||||
"cmp esi, ebx"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"add w20, w10, w5",
|
||||
"ldrb w6, [x20]",
|
||||
"add w20, w10, w11",
|
||||
"add w20, w10, w7",
|
||||
"ldrb w5, [x20]",
|
||||
"orr w6, w6, #0xffff0000",
|
||||
"lsl w6, w6, #8",
|
||||
"add w20, w10, w11",
|
||||
"ldrb w7, [x20]",
|
||||
"orr w5, w5, #0xffff0000",
|
||||
"lsl w5, w5, #8",
|
||||
"add w10, w10, #0x1 (1)",
|
||||
"orr w6, w6, w5",
|
||||
"ldr w5, [x9, #12]",
|
||||
"orr w5, w5, w7",
|
||||
"ldr w7, [x9, #12]",
|
||||
"ldr w20, [x4]",
|
||||
"orr w20, w20, w6",
|
||||
"orr w20, w20, w5",
|
||||
"str w20, [x4]",
|
||||
"add w4, w4, #0x4 (4)",
|
||||
"eor w27, w10, w7",
|
||||
"subs w26, w10, w7"
|
||||
"eor w27, w10, w6",
|
||||
"subs w26, w10, w6"
|
||||
]
|
||||
},
|
||||
"wine mscrt.dll memmove": {
|
||||
@@ -73,13 +73,13 @@
|
||||
"str q19, [x11, #48]",
|
||||
"add w10, w10, #0x40 (64)",
|
||||
"add w11, w11, #0x40 (64)",
|
||||
"sub w5, w5, #0x40 (64)",
|
||||
"subs w26, w5, #0x40 (64)",
|
||||
"mov x27, x5"
|
||||
"sub w7, w7, #0x40 (64)",
|
||||
"subs w26, w7, #0x40 (64)",
|
||||
"mov x27, x7"
|
||||
]
|
||||
},
|
||||
"dxvk hotblock from MGRR": {
|
||||
"ExpectedInstructionCount": 29,
|
||||
"ExpectedInstructionCount": 27,
|
||||
"Comment": [
|
||||
"Hottest block in Metal Gear Rising: Revengeance render thread"
|
||||
],
|
||||
@@ -100,34 +100,32 @@
|
||||
"lock cmpxchg8b qword [esi+0x8]"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w6, [x4, #12]",
|
||||
"ldr w5, [x4, #12]",
|
||||
"ldr w4, [x4, #8]",
|
||||
"stur w10, [x9, #-52]",
|
||||
"mov x5, x4",
|
||||
"mov x7, x6",
|
||||
"mov x7, x4",
|
||||
"mov x6, x5",
|
||||
"ldur w10, [x9, #-36]",
|
||||
"mov w20, #0xffffffff",
|
||||
"subs w5, w5, #0x1 (1)",
|
||||
"mvn w27, w7",
|
||||
"adcs w26, w7, w20",
|
||||
"mov x7, x26",
|
||||
"stur w5, [x9, #-40]",
|
||||
"stur w7, [x9, #-44]",
|
||||
"mov x7, x5",
|
||||
"stur w5, [x9, #-48]",
|
||||
"ldur w5, [x9, #-44]",
|
||||
"subs w7, w7, #0x1 (1)",
|
||||
"mvn w27, w6",
|
||||
"adcs w26, w6, w20",
|
||||
"mov x6, x26",
|
||||
"stur w7, [x9, #-40]",
|
||||
"stur w6, [x9, #-44]",
|
||||
"mov x6, x7",
|
||||
"stur w7, [x9, #-48]",
|
||||
"ldur w7, [x9, #-44]",
|
||||
"add w20, w10, #0x8 (8)",
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x22, x4",
|
||||
"mov x23, x6",
|
||||
"caspal w22, w23, w0, w1, [x20]",
|
||||
"mov x23, x5",
|
||||
"caspal w22, w23, w6, w7, [x20]",
|
||||
"mrs x0, nzcv",
|
||||
"cmp w22, w4",
|
||||
"ccmp w23, w6, #nzcv, eq",
|
||||
"ccmp w23, w5, #nzcv, eq",
|
||||
"rmif x0, #0, #NzCV",
|
||||
"csel x4, x22, x4, ne",
|
||||
"csel x6, x23, x6, ne",
|
||||
"csel x5, x23, x5, ne",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -249,133 +247,133 @@
|
||||
"subs w26, w8, #0x44 (68)",
|
||||
"mov x27, x8",
|
||||
"mov x8, x26",
|
||||
"stur w5, [x9, #-68]",
|
||||
"stur w7, [x9, #-68]",
|
||||
"ldur w4, [x9, #-68]",
|
||||
"ldr s2, [x4]",
|
||||
"sub w20, w9, #0x40 (64)",
|
||||
"str s2, [x20]",
|
||||
"ldur w5, [x9, #-68]",
|
||||
"ldr s2, [x5, #16]",
|
||||
"ldur w7, [x9, #-68]",
|
||||
"ldr s2, [x7, #16]",
|
||||
"sub w20, w9, #0x3c (60)",
|
||||
"str s2, [x20]",
|
||||
"ldur w6, [x9, #-68]",
|
||||
"ldr s2, [x6, #32]",
|
||||
"ldur w5, [x9, #-68]",
|
||||
"ldr s2, [x5, #32]",
|
||||
"sub w20, w9, #0x38 (56)",
|
||||
"str s2, [x20]",
|
||||
"ldur w4, [x9, #-68]",
|
||||
"ldr s2, [x4, #48]",
|
||||
"sub w20, w9, #0x34 (52)",
|
||||
"str s2, [x20]",
|
||||
"ldur w5, [x9, #-68]",
|
||||
"ldr s2, [x5, #4]",
|
||||
"ldur w7, [x9, #-68]",
|
||||
"ldr s2, [x7, #4]",
|
||||
"sub w20, w9, #0x30 (48)",
|
||||
"str s2, [x20]",
|
||||
"ldur w6, [x9, #-68]",
|
||||
"ldr s2, [x6, #20]",
|
||||
"ldur w5, [x9, #-68]",
|
||||
"ldr s2, [x5, #20]",
|
||||
"sub w20, w9, #0x2c (44)",
|
||||
"str s2, [x20]",
|
||||
"ldur w4, [x9, #-68]",
|
||||
"ldr s2, [x4, #36]",
|
||||
"sub w20, w9, #0x28 (40)",
|
||||
"str s2, [x20]",
|
||||
"ldur w5, [x9, #-68]",
|
||||
"ldr s2, [x5, #52]",
|
||||
"ldur w7, [x9, #-68]",
|
||||
"ldr s2, [x7, #52]",
|
||||
"sub w20, w9, #0x24 (36)",
|
||||
"str s2, [x20]",
|
||||
"ldur w6, [x9, #-68]",
|
||||
"ldr s2, [x6, #8]",
|
||||
"ldur w5, [x9, #-68]",
|
||||
"ldr s2, [x5, #8]",
|
||||
"sub w20, w9, #0x20 (32)",
|
||||
"str s2, [x20]",
|
||||
"ldur w4, [x9, #-68]",
|
||||
"ldr s2, [x4, #24]",
|
||||
"sub w20, w9, #0x1c (28)",
|
||||
"str s2, [x20]",
|
||||
"ldur w5, [x9, #-68]",
|
||||
"ldr s2, [x5, #40]",
|
||||
"ldur w7, [x9, #-68]",
|
||||
"ldr s2, [x7, #40]",
|
||||
"sub w20, w9, #0x18 (24)",
|
||||
"str s2, [x20]",
|
||||
"ldur w6, [x9, #-68]",
|
||||
"ldr s2, [x6, #56]",
|
||||
"ldur w5, [x9, #-68]",
|
||||
"ldr s2, [x5, #56]",
|
||||
"sub w20, w9, #0x14 (20)",
|
||||
"str s2, [x20]",
|
||||
"ldur w4, [x9, #-68]",
|
||||
"ldr s2, [x4, #12]",
|
||||
"sub w20, w9, #0x10 (16)",
|
||||
"str s2, [x20]",
|
||||
"ldur w5, [x9, #-68]",
|
||||
"ldr s2, [x5, #28]",
|
||||
"ldur w7, [x9, #-68]",
|
||||
"ldr s2, [x7, #28]",
|
||||
"sub w20, w9, #0xc (12)",
|
||||
"str s2, [x20]",
|
||||
"ldur w6, [x9, #-68]",
|
||||
"ldr s2, [x6, #44]",
|
||||
"ldur w5, [x9, #-68]",
|
||||
"ldr s2, [x5, #44]",
|
||||
"sub w20, w9, #0x8 (8)",
|
||||
"str s2, [x20]",
|
||||
"ldur w4, [x9, #-68]",
|
||||
"ldr s2, [x4, #60]",
|
||||
"sub w20, w9, #0x4 (4)",
|
||||
"str s2, [x20]",
|
||||
"ldr w5, [x9, #8]",
|
||||
"ldr w7, [x9, #8]",
|
||||
"ldur s2, [x9, #-64]",
|
||||
"str s2, [x5]",
|
||||
"ldr w6, [x9, #8]",
|
||||
"str s2, [x7]",
|
||||
"ldr w5, [x9, #8]",
|
||||
"ldur s2, [x9, #-60]",
|
||||
"add w20, w6, #0x4 (4)",
|
||||
"add w20, w5, #0x4 (4)",
|
||||
"str s2, [x20]",
|
||||
"ldr w4, [x9, #8]",
|
||||
"ldur s2, [x9, #-56]",
|
||||
"add w20, w4, #0x8 (8)",
|
||||
"str s2, [x20]",
|
||||
"ldr w5, [x9, #8]",
|
||||
"ldr w7, [x9, #8]",
|
||||
"ldur s2, [x9, #-52]",
|
||||
"add w20, w5, #0xc (12)",
|
||||
"add w20, w7, #0xc (12)",
|
||||
"str s2, [x20]",
|
||||
"ldr w6, [x9, #8]",
|
||||
"ldr w5, [x9, #8]",
|
||||
"ldur s2, [x9, #-48]",
|
||||
"add w20, w6, #0x10 (16)",
|
||||
"add w20, w5, #0x10 (16)",
|
||||
"str s2, [x20]",
|
||||
"ldr w4, [x9, #8]",
|
||||
"ldur s2, [x9, #-44]",
|
||||
"add w20, w4, #0x14 (20)",
|
||||
"str s2, [x20]",
|
||||
"ldr w5, [x9, #8]",
|
||||
"ldr w7, [x9, #8]",
|
||||
"ldur s2, [x9, #-40]",
|
||||
"add w20, w5, #0x18 (24)",
|
||||
"add w20, w7, #0x18 (24)",
|
||||
"str s2, [x20]",
|
||||
"ldr w6, [x9, #8]",
|
||||
"ldr w5, [x9, #8]",
|
||||
"ldur s2, [x9, #-36]",
|
||||
"add w20, w6, #0x1c (28)",
|
||||
"add w20, w5, #0x1c (28)",
|
||||
"str s2, [x20]",
|
||||
"ldr w4, [x9, #8]",
|
||||
"ldur s2, [x9, #-32]",
|
||||
"add w20, w4, #0x20 (32)",
|
||||
"str s2, [x20]",
|
||||
"ldr w5, [x9, #8]",
|
||||
"ldr w7, [x9, #8]",
|
||||
"ldur s2, [x9, #-28]",
|
||||
"add w20, w5, #0x24 (36)",
|
||||
"add w20, w7, #0x24 (36)",
|
||||
"str s2, [x20]",
|
||||
"ldr w6, [x9, #8]",
|
||||
"ldr w5, [x9, #8]",
|
||||
"ldur s2, [x9, #-24]",
|
||||
"add w20, w6, #0x28 (40)",
|
||||
"add w20, w5, #0x28 (40)",
|
||||
"str s2, [x20]",
|
||||
"ldr w4, [x9, #8]",
|
||||
"ldur s2, [x9, #-20]",
|
||||
"add w20, w4, #0x2c (44)",
|
||||
"str s2, [x20]",
|
||||
"ldr w5, [x9, #8]",
|
||||
"ldr w7, [x9, #8]",
|
||||
"ldur s2, [x9, #-16]",
|
||||
"add w20, w5, #0x30 (48)",
|
||||
"add w20, w7, #0x30 (48)",
|
||||
"str s2, [x20]",
|
||||
"ldr w6, [x9, #8]",
|
||||
"ldr w5, [x9, #8]",
|
||||
"ldur s2, [x9, #-12]",
|
||||
"add w20, w6, #0x34 (52)",
|
||||
"add w20, w5, #0x34 (52)",
|
||||
"str s2, [x20]",
|
||||
"ldr w4, [x9, #8]",
|
||||
"ldur s2, [x9, #-8]",
|
||||
"add w20, w4, #0x38 (56)",
|
||||
"str s2, [x20]",
|
||||
"ldr w5, [x9, #8]",
|
||||
"ldr w7, [x9, #8]",
|
||||
"ldur s2, [x9, #-4]",
|
||||
"add w20, w5, #0x3c (60)",
|
||||
"add w20, w7, #0x3c (60)",
|
||||
"str s2, [x20]",
|
||||
"ldr w4, [x9, #8]",
|
||||
"mov x8, x9",
|
||||
|
||||
@@ -55,47 +55,47 @@
|
||||
"sub esi, 0x1"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w10, w5",
|
||||
"mov x6, x9",
|
||||
"mov x4, x7",
|
||||
"ldr s18, [x6]",
|
||||
"mov w10, w7",
|
||||
"mov x5, x9",
|
||||
"mov x4, x6",
|
||||
"ldr s18, [x5]",
|
||||
"add x4, x4, #0x20 (32)",
|
||||
"fmul s18, s18, s16",
|
||||
"add x6, x6, #0x20 (32)",
|
||||
"add x5, x5, #0x20 (32)",
|
||||
"ldur s2, [x4, #-32]",
|
||||
"fadd s18, s18, s2",
|
||||
"stur s18, [x4, #-32]",
|
||||
"ldur s18, [x6, #-28]",
|
||||
"ldur s18, [x5, #-28]",
|
||||
"fmul s18, s18, s17",
|
||||
"ldur s2, [x4, #-28]",
|
||||
"fadd s18, s18, s2",
|
||||
"stur s18, [x4, #-28]",
|
||||
"ldur s18, [x6, #-24]",
|
||||
"ldur s18, [x5, #-24]",
|
||||
"fmul s18, s18, s16",
|
||||
"ldur s2, [x4, #-24]",
|
||||
"fadd s18, s18, s2",
|
||||
"stur s18, [x4, #-24]",
|
||||
"ldur s18, [x6, #-20]",
|
||||
"ldur s18, [x5, #-20]",
|
||||
"fmul s18, s18, s17",
|
||||
"ldur s2, [x4, #-20]",
|
||||
"fadd s18, s18, s2",
|
||||
"stur s18, [x4, #-20]",
|
||||
"ldur s18, [x6, #-16]",
|
||||
"ldur s18, [x5, #-16]",
|
||||
"fmul s18, s18, s16",
|
||||
"ldur s2, [x4, #-16]",
|
||||
"fadd s18, s18, s2",
|
||||
"stur s18, [x4, #-16]",
|
||||
"ldur s18, [x6, #-12]",
|
||||
"ldur s18, [x5, #-12]",
|
||||
"fmul s18, s18, s17",
|
||||
"ldur s2, [x4, #-12]",
|
||||
"fadd s18, s18, s2",
|
||||
"stur s18, [x4, #-12]",
|
||||
"ldur s18, [x6, #-8]",
|
||||
"ldur s18, [x5, #-8]",
|
||||
"fmul s18, s18, s16",
|
||||
"ldur s2, [x4, #-8]",
|
||||
"fadd s18, s18, s2",
|
||||
"stur s18, [x4, #-8]",
|
||||
"ldur s18, [x6, #-4]",
|
||||
"ldur s18, [x5, #-4]",
|
||||
"fmul s18, s18, s17",
|
||||
"ldur s2, [x4, #-4]",
|
||||
"fadd s18, s18, s2",
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -1609,13 +1609,13 @@
|
||||
"ExpectedInstructionCount": 12,
|
||||
"Comment": "GROUP2 0xd2 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x7",
|
||||
"and x20, x7, #0x7",
|
||||
"mov w21, w4",
|
||||
"bfi w21, w4, #24, #8",
|
||||
"neg w20, w20",
|
||||
"ror w20, w21, w20",
|
||||
"bfxil x4, x20, #0, #8",
|
||||
"and x21, x5, #0x1f",
|
||||
"and x21, x7, #0x1f",
|
||||
"cbz w21, #+0x14",
|
||||
"eor x0, x20, x20, lsr #7",
|
||||
"mvn x1, x20",
|
||||
@@ -1627,12 +1627,12 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xd2 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x7",
|
||||
"and x20, x7, #0x7",
|
||||
"mov w21, w4",
|
||||
"bfi w21, w4, #8, #8",
|
||||
"ror w20, w21, w20",
|
||||
"bfxil x4, x20, #0, #8",
|
||||
"and x21, x5, #0x1f",
|
||||
"and x21, x7, #0x1f",
|
||||
"cbz w21, #+0x14",
|
||||
"eor x0, x20, x20, lsr #1",
|
||||
"mvn x1, x20",
|
||||
@@ -1644,9 +1644,9 @@
|
||||
"ExpectedInstructionCount": 27,
|
||||
"Comment": "GROUP2 0xd2 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x68",
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"uxtb w21, w4",
|
||||
"mov w22, #0x0",
|
||||
"cset w23, lo",
|
||||
@@ -1677,9 +1677,9 @@
|
||||
"ExpectedInstructionCount": 17,
|
||||
"Comment": "GROUP2 0xd2 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x40",
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cset w21, lo",
|
||||
"uxtb w22, w4",
|
||||
"bfi x22, x21, #8, #1",
|
||||
@@ -1700,8 +1700,8 @@
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "GROUP2 0xd2 /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl w20, w4, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsl w20, w4, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x1c",
|
||||
"cmn wzr, w20, lsl #24",
|
||||
"mov x26, x20",
|
||||
@@ -1717,12 +1717,12 @@
|
||||
"Comment": "GROUP2 0xd2 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb w20, w4",
|
||||
"lsr w21, w20, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsr w21, w20, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x24",
|
||||
"cmn wzr, w21, lsl #24",
|
||||
"mov x26, x21",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w20, w0",
|
||||
"mvn x0, x0",
|
||||
"eor w2, w20, w21",
|
||||
@@ -1736,12 +1736,12 @@
|
||||
"Comment": "GROUP2 0xd2 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"sxtb x20, w4",
|
||||
"asr w21, w20, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"asr w21, w20, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x1c",
|
||||
"cmn wzr, w21, lsl #24",
|
||||
"mov x26, x21",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w20, w0",
|
||||
"mvn x0, x0",
|
||||
"rmif x0, #63, #nzCv",
|
||||
@@ -1752,7 +1752,7 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xd3 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x1f",
|
||||
"and x20, x7, #0x1f",
|
||||
"mov w21, w4",
|
||||
"bfi w21, w4, #16, #16",
|
||||
"neg w22, w20",
|
||||
@@ -1769,7 +1769,7 @@
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "GROUP2 0xd3 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x1f",
|
||||
"and x20, x7, #0x1f",
|
||||
"neg w21, w20",
|
||||
"ror w4, w4, w21",
|
||||
"cbz w20, #+0x14",
|
||||
@@ -1783,7 +1783,7 @@
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "GROUP2 0xd3 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x3f",
|
||||
"and x20, x7, #0x3f",
|
||||
"neg x21, x20",
|
||||
"ror x4, x4, x21",
|
||||
"cbz x20, #+0x14",
|
||||
@@ -1797,7 +1797,7 @@
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "GROUP2 0xd3 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x1f",
|
||||
"and x20, x7, #0x1f",
|
||||
"mov w21, w4",
|
||||
"bfi w21, w4, #16, #16",
|
||||
"ror w21, w21, w20",
|
||||
@@ -1813,7 +1813,7 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "GROUP2 0xd3 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x1f",
|
||||
"and x20, x7, #0x1f",
|
||||
"ror w4, w4, w20",
|
||||
"cbz w20, #+0x14",
|
||||
"eor x0, x4, x4, lsr #1",
|
||||
@@ -1826,7 +1826,7 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "GROUP2 0xd3 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x3f",
|
||||
"and x20, x7, #0x3f",
|
||||
"ror x4, x4, x20",
|
||||
"cbz x20, #+0x14",
|
||||
"eor x0, x4, x4, lsr #1",
|
||||
@@ -1839,9 +1839,9 @@
|
||||
"ExpectedInstructionCount": 23,
|
||||
"Comment": "GROUP2 0xd3 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x58",
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"uxth w21, w4",
|
||||
"mov w22, #0x0",
|
||||
"cset w23, lo",
|
||||
@@ -1868,17 +1868,17 @@
|
||||
"ExpectedInstructionCount": 17,
|
||||
"Comment": "GROUP2 0xd3 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x3c",
|
||||
"lsl w20, w4, w5",
|
||||
"lsl w20, w4, w7",
|
||||
"cset w21, lo",
|
||||
"neg w22, w5",
|
||||
"neg w22, w7",
|
||||
"lsr w23, w4, w22",
|
||||
"orr w20, w20, w23, lsr #1",
|
||||
"lsr w22, w4, w22",
|
||||
"eor x23, x22, #0x1",
|
||||
"rmif x23, #63, #nzCv",
|
||||
"sub w23, w5, #0x1 (1)",
|
||||
"sub w23, w7, #0x1 (1)",
|
||||
"lsl w21, w21, w23",
|
||||
"orr w4, w20, w21",
|
||||
"eor w20, w4, w22, lsl #31",
|
||||
@@ -1891,17 +1891,17 @@
|
||||
"ExpectedInstructionCount": 15,
|
||||
"Comment": "GROUP2 0xd3 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x3f",
|
||||
"and x20, x7, #0x3f",
|
||||
"cbz x20, #+0x38",
|
||||
"lsl x20, x4, x5",
|
||||
"lsl x20, x4, x7",
|
||||
"cset w21, lo",
|
||||
"neg x22, x5",
|
||||
"neg x22, x7",
|
||||
"lsr x23, x4, x22",
|
||||
"orr x20, x20, x23, lsr #1",
|
||||
"lsr x22, x4, x22",
|
||||
"eor x23, x22, #0x1",
|
||||
"rmif x23, #63, #nzCv",
|
||||
"sub x23, x5, #0x1 (1)",
|
||||
"sub x23, x7, #0x1 (1)",
|
||||
"lsl x21, x21, x23",
|
||||
"orr x4, x20, x21",
|
||||
"eor x20, x4, x22, lsl #63",
|
||||
@@ -1912,9 +1912,9 @@
|
||||
"ExpectedInstructionCount": 16,
|
||||
"Comment": "GROUP2 0xd3 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x3c",
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cset w21, lo",
|
||||
"uxth w22, w4",
|
||||
"bfi x22, x21, #16, #1",
|
||||
@@ -1934,14 +1934,14 @@
|
||||
"ExpectedInstructionCount": 17,
|
||||
"Comment": "GROUP2 0xd3 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x3c",
|
||||
"lsr w20, w4, w5",
|
||||
"lsr w20, w4, w7",
|
||||
"cset w21, lo",
|
||||
"neg w22, w5",
|
||||
"neg w22, w7",
|
||||
"lsl w23, w4, w22",
|
||||
"orr w20, w20, w23, lsl #1",
|
||||
"sub w23, w5, #0x1 (1)",
|
||||
"sub w23, w7, #0x1 (1)",
|
||||
"lsr w23, w4, w23",
|
||||
"eor x23, x23, #0x1",
|
||||
"rmif x23, #63, #nzCv",
|
||||
@@ -1957,14 +1957,14 @@
|
||||
"ExpectedInstructionCount": 15,
|
||||
"Comment": "GROUP2 0xd3 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x3f",
|
||||
"and x20, x7, #0x3f",
|
||||
"cbz x20, #+0x38",
|
||||
"lsr x20, x4, x5",
|
||||
"lsr x20, x4, x7",
|
||||
"cset w21, lo",
|
||||
"neg x22, x5",
|
||||
"neg x22, x7",
|
||||
"lsl x23, x4, x22",
|
||||
"orr x20, x20, x23, lsl #1",
|
||||
"sub x23, x5, #0x1 (1)",
|
||||
"sub x23, x7, #0x1 (1)",
|
||||
"lsr x23, x4, x23",
|
||||
"eor x23, x23, #0x1",
|
||||
"rmif x23, #63, #nzCv",
|
||||
@@ -1978,8 +1978,8 @@
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "GROUP2 0xd3 /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl w20, w4, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsl w20, w4, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x1c",
|
||||
"cmn wzr, w20, lsl #16",
|
||||
"mov x26, x20",
|
||||
@@ -1994,11 +1994,11 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xd3 /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl w20, w4, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsl w20, w4, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x20",
|
||||
"ands w26, w20, w20",
|
||||
"neg w0, w5",
|
||||
"neg w0, w7",
|
||||
"lsr w0, w4, w0",
|
||||
"mvn x0, x0",
|
||||
"eor w2, w4, w20",
|
||||
@@ -2011,11 +2011,11 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xd3 /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl x20, x4, x5",
|
||||
"and w0, w5, #0x3f",
|
||||
"lsl x20, x4, x7",
|
||||
"and w0, w7, #0x3f",
|
||||
"cbz x0, #+0x20",
|
||||
"ands x26, x20, x20",
|
||||
"neg x0, x5",
|
||||
"neg x0, x7",
|
||||
"lsr x0, x4, x0",
|
||||
"mvn x0, x0",
|
||||
"eor x2, x4, x20",
|
||||
@@ -2029,12 +2029,12 @@
|
||||
"Comment": "GROUP2 0xd3 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth w20, w4",
|
||||
"lsr w21, w20, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsr w21, w20, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x24",
|
||||
"cmn wzr, w21, lsl #16",
|
||||
"mov x26, x21",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w20, w0",
|
||||
"mvn x0, x0",
|
||||
"eor w2, w20, w21",
|
||||
@@ -2047,11 +2047,11 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xd3 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsr w20, w4, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsr w20, w4, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x20",
|
||||
"ands w26, w20, w20",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w4, w0",
|
||||
"mvn x0, x0",
|
||||
"eor w2, w4, w20",
|
||||
@@ -2064,11 +2064,11 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xd3 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsr x20, x4, x5",
|
||||
"and w0, w5, #0x3f",
|
||||
"lsr x20, x4, x7",
|
||||
"and w0, w7, #0x3f",
|
||||
"cbz x0, #+0x20",
|
||||
"ands x26, x20, x20",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr x0, x4, x0",
|
||||
"mvn x0, x0",
|
||||
"eor x2, x4, x20",
|
||||
@@ -2082,12 +2082,12 @@
|
||||
"Comment": "GROUP2 0xd3 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"sxth x20, w4",
|
||||
"asr w21, w20, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"asr w21, w20, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x1c",
|
||||
"cmn wzr, w21, lsl #16",
|
||||
"mov x26, x21",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w20, w0",
|
||||
"mvn x0, x0",
|
||||
"rmif x0, #63, #nzCv",
|
||||
@@ -2098,11 +2098,11 @@
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Comment": "GROUP2 0xd3 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"asr w20, w4, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"asr w20, w4, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x18",
|
||||
"ands w26, w20, w20",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w4, w0",
|
||||
"mvn x0, x0",
|
||||
"rmif x0, #63, #nzCv",
|
||||
@@ -2113,11 +2113,11 @@
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Comment": "GROUP2 0xd3 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"asr x20, x4, x5",
|
||||
"and w0, w5, #0x3f",
|
||||
"asr x20, x4, x7",
|
||||
"and w0, w7, #0x3f",
|
||||
"cbz x0, #+0x18",
|
||||
"ands x26, x20, x20",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr x0, x4, x0",
|
||||
"mvn x0, x0",
|
||||
"rmif x0, #63, #nzCv",
|
||||
@@ -2128,7 +2128,7 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "GROUP2 0xf6 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w26, w7, #0x1",
|
||||
"and w26, w6, #0x1",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -2137,26 +2137,26 @@
|
||||
"ExpectedInstructionCount": 1,
|
||||
"Comment": "GROUP2 0xf6 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"eor x7, x7, #0xff"
|
||||
"eor x6, x6, #0xff"
|
||||
]
|
||||
},
|
||||
"neg bl": {
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "GROUP2 0xf6 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"cmp wzr, w7, lsl #24",
|
||||
"neg w26, w7",
|
||||
"mov x20, x7",
|
||||
"cmp wzr, w6, lsl #24",
|
||||
"neg w26, w6",
|
||||
"mov x20, x6",
|
||||
"bfxil x20, x26, #0, #8",
|
||||
"mov x27, x7",
|
||||
"mov x7, x20"
|
||||
"mov x27, x6",
|
||||
"mov x6, x20"
|
||||
]
|
||||
},
|
||||
"mul bl": {
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "GROUP2 0xf6 /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb x20, w7",
|
||||
"uxtb x20, w6",
|
||||
"uxtb x21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
@@ -2169,7 +2169,7 @@
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "GROUP2 0xf6 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"sxtb x20, w7",
|
||||
"sxtb x20, w6",
|
||||
"sxtb x21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
@@ -2183,7 +2183,7 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xf6 /6",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb w20, w7",
|
||||
"uxtb w20, w6",
|
||||
"uxth w21, w4",
|
||||
"uxth w0, w21",
|
||||
"uxth w1, w20",
|
||||
@@ -2200,7 +2200,7 @@
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Comment": "GROUP2 0xf6 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb w20, w7",
|
||||
"uxtb w20, w6",
|
||||
"uxth w21, w4",
|
||||
"sxth x21, w21",
|
||||
"sxtb x20, w20",
|
||||
@@ -2215,7 +2215,7 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w26, w7, #0x1",
|
||||
"and w26, w6, #0x1",
|
||||
"cmn wzr, w26, lsl #16",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -2224,7 +2224,7 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"ands w26, w7, #0x1",
|
||||
"ands w26, w6, #0x1",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -2232,7 +2232,7 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"ands x26, x7, #0x1",
|
||||
"ands x26, x6, #0x1",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -2240,7 +2240,7 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x26, x7",
|
||||
"mov x26, x6",
|
||||
"cmn wzr, w26, lsl #16",
|
||||
"cfinv"
|
||||
]
|
||||
@@ -2249,7 +2249,7 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"ands w26, w7, w7",
|
||||
"ands w26, w6, w6",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -2257,7 +2257,7 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"ands x26, x7, x7",
|
||||
"ands x26, x6, x6",
|
||||
"cfinv"
|
||||
]
|
||||
},
|
||||
@@ -2265,42 +2265,42 @@
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "GROUP2 0xf7 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"cmp wzr, w7, lsl #16",
|
||||
"neg w26, w7",
|
||||
"mov x20, x7",
|
||||
"cmp wzr, w6, lsl #16",
|
||||
"neg w26, w6",
|
||||
"mov x20, x6",
|
||||
"bfxil x20, x26, #0, #16",
|
||||
"mov x27, x7",
|
||||
"mov x7, x20"
|
||||
"mov x27, x6",
|
||||
"mov x6, x20"
|
||||
]
|
||||
},
|
||||
"neg ebx": {
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "GROUP2 0xf7 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"negs w26, w7",
|
||||
"mov x27, x7",
|
||||
"mov x7, x26"
|
||||
"negs w26, w6",
|
||||
"mov x27, x6",
|
||||
"mov x6, x26"
|
||||
]
|
||||
},
|
||||
"neg rbx": {
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "GROUP2 0xf7 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"negs x26, x7",
|
||||
"mov x27, x7",
|
||||
"mov x7, x26"
|
||||
"negs x26, x6",
|
||||
"mov x27, x6",
|
||||
"mov x6, x26"
|
||||
]
|
||||
},
|
||||
"mul bx": {
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "GROUP2 0xf7 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w7",
|
||||
"uxth x20, w6",
|
||||
"uxth x21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
"ubfx x20, x20, #16, #16",
|
||||
"bfxil x6, x20, #0, #16",
|
||||
"bfxil x5, x20, #0, #16",
|
||||
"cmp x20, #0x0 (0)",
|
||||
"ccmp xzr, #0, #nzcV, eq"
|
||||
]
|
||||
@@ -2309,12 +2309,12 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "GROUP2 0xf7 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w7",
|
||||
"mov w20, w6",
|
||||
"mov w21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"mov w4, w20",
|
||||
"lsr x6, x20, #32",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"lsr x5, x20, #32",
|
||||
"cmp x5, #0x0 (0)",
|
||||
"ccmp xzr, #0, #nzcV, eq"
|
||||
]
|
||||
},
|
||||
@@ -2322,9 +2322,9 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "GROUP2 0xf7 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"mul x20, x7, x4",
|
||||
"umulh x6, x7, x4",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"mul x20, x6, x4",
|
||||
"umulh x5, x6, x4",
|
||||
"cmp x5, #0x0 (0)",
|
||||
"ccmp xzr, #0, #nzcV, eq",
|
||||
"mov x4, x20"
|
||||
]
|
||||
@@ -2333,12 +2333,12 @@
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Comment": "GROUP2 0xf7 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"sxth x20, w7",
|
||||
"sxth x20, w6",
|
||||
"sxth x21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
"sbfx x21, x20, #16, #16",
|
||||
"bfxil x6, x21, #0, #16",
|
||||
"bfxil x5, x21, #0, #16",
|
||||
"sbfx x20, x20, #15, #1",
|
||||
"cmp x21, x20",
|
||||
"ccmp xzr, #0, #nzcV, eq"
|
||||
@@ -2348,11 +2348,11 @@
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "GROUP2 0xf7 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"sxtw x20, w7",
|
||||
"sxtw x20, w6",
|
||||
"sxtw x21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"mov w4, w20",
|
||||
"lsr x6, x20, #32",
|
||||
"lsr x5, x20, #32",
|
||||
"asr x21, x20, #32",
|
||||
"sxtw x20, w20",
|
||||
"sbfx x20, x20, #31, #1",
|
||||
@@ -2364,10 +2364,10 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "GROUP2 0xf7 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"smulh x6, x7, x4",
|
||||
"mul x4, x7, x4",
|
||||
"smulh x5, x6, x4",
|
||||
"mul x4, x6, x4",
|
||||
"asr x20, x4, #63",
|
||||
"cmp x6, x20",
|
||||
"cmp x5, x20",
|
||||
"ccmp xzr, #0, #nzcV, eq"
|
||||
]
|
||||
},
|
||||
@@ -2375,9 +2375,9 @@
|
||||
"ExpectedInstructionCount": 12,
|
||||
"Comment": "GROUP2 0xf7 /6",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth w20, w7",
|
||||
"uxth w20, w6",
|
||||
"uxth w21, w4",
|
||||
"uxth w22, w6",
|
||||
"uxth w22, w5",
|
||||
"uxth w0, w21",
|
||||
"bfi w0, w22, #16, #16",
|
||||
"udiv w23, w0, w20",
|
||||
@@ -2386,7 +2386,7 @@
|
||||
"udiv w1, w0, w20",
|
||||
"msub w20, w1, w20, w0",
|
||||
"bfxil x4, x23, #0, #16",
|
||||
"bfxil x6, x20, #0, #16"
|
||||
"bfxil x5, x20, #0, #16"
|
||||
]
|
||||
},
|
||||
"inc al": {
|
||||
|
||||
@@ -246,9 +246,9 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"str w4, [x20, #-4]!",
|
||||
"str w7, [x20, #-4]!",
|
||||
"str w5, [x20, #-4]!",
|
||||
"str w6, [x20, #-4]!",
|
||||
"str w7, [x20, #-4]!",
|
||||
"str w8, [x20, #-4]!",
|
||||
"str w9, [x20, #-4]!",
|
||||
"str w10, [x20, #-4]!",
|
||||
@@ -262,9 +262,9 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"str w4, [x20, #-4]!",
|
||||
"str w7, [x20, #-4]!",
|
||||
"str w5, [x20, #-4]!",
|
||||
"str w6, [x20, #-4]!",
|
||||
"str w7, [x20, #-4]!",
|
||||
"str w8, [x20, #-4]!",
|
||||
"str w9, [x20, #-4]!",
|
||||
"str w10, [x20, #-4]!",
|
||||
@@ -282,9 +282,9 @@
|
||||
"ldr w9, [x20], #4",
|
||||
"add x20, x20, #0x4 (4)",
|
||||
"mov x8, x20",
|
||||
"ldr w7, [x8], #4",
|
||||
"ldr w6, [x8], #4",
|
||||
"ldr w5, [x8], #4",
|
||||
"ldr w7, [x8], #4",
|
||||
"ldr w4, [x8], #4"
|
||||
]
|
||||
},
|
||||
@@ -298,9 +298,9 @@
|
||||
"ldr w9, [x20], #4",
|
||||
"add x20, x20, #0x4 (4)",
|
||||
"mov x8, x20",
|
||||
"ldr w7, [x8], #4",
|
||||
"ldr w6, [x8], #4",
|
||||
"ldr w5, [x8], #4",
|
||||
"ldr w7, [x8], #4",
|
||||
"ldr w4, [x8], #4"
|
||||
]
|
||||
},
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -705,37 +705,33 @@
|
||||
]
|
||||
},
|
||||
"cmpxchg8b [rbp]": {
|
||||
"ExpectedInstructionCount": 11,
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Comment": "GROUP9 0x0F 0xC7 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x20, x4",
|
||||
"mov x21, x6",
|
||||
"caspal w20, w21, w0, w1, [x9]",
|
||||
"mov x21, x5",
|
||||
"caspal w20, w21, w6, w7, [x9]",
|
||||
"mrs x0, nzcv",
|
||||
"cmp w20, w4",
|
||||
"ccmp w21, w6, #nzcv, eq",
|
||||
"ccmp w21, w5, #nzcv, eq",
|
||||
"rmif x0, #0, #NzCV",
|
||||
"csel x4, x20, x4, ne",
|
||||
"csel x6, x21, x6, ne"
|
||||
"csel x5, x21, x5, ne"
|
||||
]
|
||||
},
|
||||
"cmpxchg16b [rbp]": {
|
||||
"ExpectedInstructionCount": 11,
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Comment": "GROUP9 0x0F 0xC7 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x20, x4",
|
||||
"mov x21, x6",
|
||||
"caspal x20, x21, x0, x1, [x9]",
|
||||
"mov x21, x5",
|
||||
"caspal x20, x21, x6, x7, [x9]",
|
||||
"mrs x0, nzcv",
|
||||
"cmp x20, x4",
|
||||
"ccmp x21, x6, #nzcv, eq",
|
||||
"ccmp x21, x5, #nzcv, eq",
|
||||
"rmif x0, #0, #NzCV",
|
||||
"csel x4, x20, x4, ne",
|
||||
"csel x6, x21, x6, ne"
|
||||
"csel x5, x21, x5, ne"
|
||||
]
|
||||
},
|
||||
"rdrand ax": {
|
||||
|
||||
@@ -26,8 +26,8 @@
|
||||
"str x30, [x3]",
|
||||
"mrs x3, nzcv",
|
||||
"str w3, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -41,7 +41,7 @@
|
||||
"st1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x3], #64",
|
||||
"st1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x3], #64",
|
||||
"st1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x3], #64",
|
||||
"mov w1, w5",
|
||||
"mov w1, w7",
|
||||
"ldr x0, [x28, #1368]",
|
||||
"ldr x2, [x28, #1384]",
|
||||
"blr x2",
|
||||
@@ -52,8 +52,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -68,7 +68,7 @@
|
||||
"ld1 {v12.2d, v13.2d, v14.2d, v15.2d}, [sp], #64",
|
||||
"ldr x30, [sp], #16",
|
||||
"mov w4, w0",
|
||||
"lsr x6, x0, #32"
|
||||
"lsr x5, x0, #32"
|
||||
]
|
||||
},
|
||||
"rdtscp": {
|
||||
@@ -78,7 +78,7 @@
|
||||
"dmb ld",
|
||||
"mrs x20, S3_3_c14_c0_2",
|
||||
"lsl w4, w20, #7",
|
||||
"lsr x6, x20, #25",
|
||||
"lsr x5, x20, #25",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"str x8, [x28, #312]",
|
||||
@@ -95,7 +95,7 @@
|
||||
"msr nzcv, x8",
|
||||
"ldr x8, [x28, #312]",
|
||||
"str xzr, [x28, #1312]",
|
||||
"orr x5, x0, x1, lsl #12"
|
||||
"orr x7, x0, x1, lsl #12"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Comment": "0xf3 0x0f 0xb8",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth w20, w7",
|
||||
"uxth w20, w6",
|
||||
"fmov s0, w20",
|
||||
"cnt v0.8b, v0.8b",
|
||||
"addp v0.8b, v0.8b, v0.8b",
|
||||
@@ -32,7 +32,7 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0xf3 0x0f 0xb8",
|
||||
"ExpectedArm64ASM": [
|
||||
"fmov s0, w7",
|
||||
"fmov s0, w6",
|
||||
"cnt v0.8b, v0.8b",
|
||||
"addv b0, v0.8b",
|
||||
"umov w4, v0.b[0]",
|
||||
@@ -45,7 +45,7 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0xf3 0x0f 0xb8",
|
||||
"ExpectedArm64ASM": [
|
||||
"fmov d0, x7",
|
||||
"fmov d0, x6",
|
||||
"cnt v0.8b, v0.8b",
|
||||
"addv b0, v0.8b",
|
||||
"umov w4, v0.b[0]",
|
||||
@@ -58,7 +58,7 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0xf3 0x0f 0xbc",
|
||||
"ExpectedArm64ASM": [
|
||||
"rbit w20, w7",
|
||||
"rbit w20, w6",
|
||||
"orr w20, w20, #0x8000",
|
||||
"clz w20, w20",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
@@ -71,7 +71,7 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "0xf3 0x0f 0xbc",
|
||||
"ExpectedArm64ASM": [
|
||||
"rbit w4, w7",
|
||||
"rbit w4, w6",
|
||||
"clz w4, w4",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"eor x20, x4, #0x20",
|
||||
@@ -82,7 +82,7 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "0xf3 0x0f 0xbc",
|
||||
"ExpectedArm64ASM": [
|
||||
"rbit x4, x7",
|
||||
"rbit x4, x6",
|
||||
"clz x4, x4",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"eor x20, x4, #0x40",
|
||||
@@ -93,7 +93,7 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0xf3 0x0f 0xbd",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl w20, w7, #16",
|
||||
"lsl w20, w6, #16",
|
||||
"orr w20, w20, #0x8000",
|
||||
"clz w20, w20",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
@@ -106,7 +106,7 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "0xf3 0x0f 0xbd",
|
||||
"ExpectedArm64ASM": [
|
||||
"clz w4, w7",
|
||||
"clz w4, w6",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"eor x20, x4, #0x20",
|
||||
"rmif x20, #4, #nzCv"
|
||||
@@ -116,7 +116,7 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "0xf3 0x0f 0xbd",
|
||||
"ExpectedArm64ASM": [
|
||||
"clz x4, x7",
|
||||
"clz x4, x6",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"eor x20, x4, #0x40",
|
||||
"rmif x20, #5, #nzCv"
|
||||
|
||||
@@ -350,7 +350,7 @@
|
||||
"Map 2 0b00 0xf2 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"bic w26, w5, w7",
|
||||
"bic w26, w7, w6",
|
||||
"cmp w26, #0x0 (0)",
|
||||
"mov x4, x26"
|
||||
]
|
||||
@@ -361,7 +361,7 @@
|
||||
"Map 2 0b00 0xf2 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"bic x26, x5, x7",
|
||||
"bic x26, x7, x6",
|
||||
"cmp x26, #0x0 (0)",
|
||||
"mov x4, x26"
|
||||
]
|
||||
@@ -373,10 +373,10 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0xffffffff",
|
||||
"lsl w20, w20, w5",
|
||||
"bic w20, w7, w20",
|
||||
"tst x5, #0xe0",
|
||||
"csel w4, w7, w20, ne",
|
||||
"lsl w20, w20, w7",
|
||||
"bic w20, w6, w20",
|
||||
"tst x7, #0xe0",
|
||||
"csel w4, w6, w20, ne",
|
||||
"cset w20, eq",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"rmif x20, #63, #nzCv"
|
||||
@@ -389,10 +389,10 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xffffffffffffffff",
|
||||
"lsl x20, x20, x5",
|
||||
"bic x20, x7, x20",
|
||||
"tst x5, #0xc0",
|
||||
"csel x4, x7, x20, ne",
|
||||
"lsl x20, x20, x7",
|
||||
"bic x20, x6, x20",
|
||||
"tst x7, #0xc0",
|
||||
"csel x4, x6, x20, ne",
|
||||
"cset w20, eq",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"rmif x20, #63, #nzCv"
|
||||
@@ -404,10 +404,10 @@
|
||||
"Map 2 0b11 0xf5 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x0, x6",
|
||||
"mov x1, x7",
|
||||
"mov w4, #0x0",
|
||||
"cbz w5, #+0x2c",
|
||||
"cbz w7, #+0x2c",
|
||||
"neg w2, w1",
|
||||
"and w2, w2, w1",
|
||||
"sbfx w3, w0, #0, #1",
|
||||
@@ -426,10 +426,10 @@
|
||||
"Map 2 0b11 0xf5 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x0, x6",
|
||||
"mov x1, x7",
|
||||
"mov x4, #0x0",
|
||||
"cbz x5, #+0x2c",
|
||||
"cbz x7, #+0x2c",
|
||||
"neg x2, x1",
|
||||
"and x2, x2, x1",
|
||||
"sbfx x3, x0, #0, #1",
|
||||
@@ -448,12 +448,12 @@
|
||||
"Map 2 0b00 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb w20, w5",
|
||||
"lsr w21, w7, w20",
|
||||
"uxtb w20, w7",
|
||||
"lsr w21, w6, w20",
|
||||
"mov w22, #0x0",
|
||||
"cmp w20, #0x1f (31)",
|
||||
"csel w20, w21, w22, ls",
|
||||
"ubfx w21, w5, #8, #8",
|
||||
"ubfx w21, w7, #8, #8",
|
||||
"mov x22, #0xffffffffffffffff",
|
||||
"lsl w22, w22, w21",
|
||||
"bic w22, w20, w22",
|
||||
@@ -468,12 +468,12 @@
|
||||
"Map 2 0b00 0xf7 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb x20, w5",
|
||||
"lsr x21, x7, x20",
|
||||
"uxtb x20, w7",
|
||||
"lsr x21, x6, x20",
|
||||
"mov w22, #0x0",
|
||||
"cmp x20, #0x3f (63)",
|
||||
"csel x20, x21, x22, ls",
|
||||
"ubfx x21, x5, #8, #8",
|
||||
"ubfx x21, x7, #8, #8",
|
||||
"mov x22, #0xffffffffffffffff",
|
||||
"lsl x22, x22, x21",
|
||||
"bic x22, x20, x22",
|
||||
|
||||
@@ -17,9 +17,9 @@
|
||||
"Map group 17 0b001 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"sub w20, w7, #0x1 (1)",
|
||||
"and w4, w20, w7",
|
||||
"cmp x7, #0x0 (0)",
|
||||
"sub w20, w6, #0x1 (1)",
|
||||
"and w4, w20, w6",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"cset x20, ne",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"rmif x20, #63, #nzCv"
|
||||
@@ -31,9 +31,9 @@
|
||||
"Map group 17 0b001 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"sub x20, x7, #0x1 (1)",
|
||||
"and x4, x20, x7",
|
||||
"cmp x7, #0x0 (0)",
|
||||
"sub x20, x6, #0x1 (1)",
|
||||
"and x4, x20, x6",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"cset x20, ne",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"rmif x20, #63, #nzCv"
|
||||
@@ -45,9 +45,9 @@
|
||||
"Map group 17 0b010 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"sub w20, w7, #0x1 (1)",
|
||||
"eor w4, w20, w7",
|
||||
"cmp x7, #0x0 (0)",
|
||||
"sub w20, w6, #0x1 (1)",
|
||||
"eor w4, w20, w6",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"cset x20, ne",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"rmif x20, #63, #nzCv"
|
||||
@@ -59,9 +59,9 @@
|
||||
"Map group 17 0b010 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"sub x20, x7, #0x1 (1)",
|
||||
"eor x4, x20, x7",
|
||||
"cmp x7, #0x0 (0)",
|
||||
"sub x20, x6, #0x1 (1)",
|
||||
"eor x4, x20, x6",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"cset x20, ne",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"rmif x20, #63, #nzCv"
|
||||
@@ -73,8 +73,8 @@
|
||||
"Map group 17 0b011 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"neg w20, w7",
|
||||
"and w4, w7, w20",
|
||||
"neg w20, w6",
|
||||
"and w4, w6, w20",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"cset w20, eq",
|
||||
"rmif x20, #63, #nzCv"
|
||||
@@ -86,8 +86,8 @@
|
||||
"Map group 17 0b011 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"neg x20, x7",
|
||||
"and x4, x7, x20",
|
||||
"neg x20, x6",
|
||||
"and x4, x6, x20",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"cset w20, eq",
|
||||
"rmif x20, #63, #nzCv"
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
+1253
-1253
File diff suppressed because it is too large.
Load diff
@@ -2261,8 +2261,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2299,8 +2299,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2331,8 +2331,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2368,8 +2368,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2397,8 +2397,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2435,8 +2435,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2480,8 +2480,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2517,8 +2517,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2583,8 +2583,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2620,8 +2620,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2677,8 +2677,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2714,8 +2714,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2754,8 +2754,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2791,8 +2791,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2834,8 +2834,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2872,8 +2872,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2885,8 +2885,8 @@
|
||||
"mov v3.8b, v0.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2923,8 +2923,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2980,8 +2980,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -3017,8 +3017,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -3043,8 +3043,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -3081,8 +3081,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -3108,8 +3108,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -3146,8 +3146,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -4116,8 +4116,8 @@
|
||||
"ldr q2, [x4]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -4132,8 +4132,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -4164,8 +4164,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -4179,8 +4179,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6344,8 +6344,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6360,8 +6360,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6376,8 +6376,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6392,8 +6392,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6408,8 +6408,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6424,8 +6424,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6440,8 +6440,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6456,8 +6456,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6472,8 +6472,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6488,8 +6488,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6504,8 +6504,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6520,8 +6520,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6536,8 +6536,8 @@
|
||||
"and v2.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6552,8 +6552,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6569,8 +6569,8 @@
|
||||
"mov v2.h[4], v3.h[0]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6585,8 +6585,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6671,8 +6671,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6686,8 +6686,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6703,8 +6703,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6718,8 +6718,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6735,8 +6735,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6750,8 +6750,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6767,8 +6767,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6782,8 +6782,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6799,8 +6799,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6814,8 +6814,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6831,8 +6831,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6846,8 +6846,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6863,8 +6863,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6878,8 +6878,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6895,8 +6895,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6910,8 +6910,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -9412,8 +9412,8 @@
|
||||
"ldr q2, [x4]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -9428,8 +9428,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -9440,8 +9440,8 @@
|
||||
"mov v2.h[4], w1",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -9456,8 +9456,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -9488,8 +9488,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -9503,8 +9503,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -9515,8 +9515,8 @@
|
||||
"mov v2.h[4], w1",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -9531,8 +9531,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -10095,15 +10095,15 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr s2, [x4]",
|
||||
"str s2, [x6]",
|
||||
"str s2, [x5]",
|
||||
"ldr s2, [x4, #4]",
|
||||
"add x20, x6, #0x4 (4)",
|
||||
"add x20, x5, #0x4 (4)",
|
||||
"str s2, [x20]",
|
||||
"ldr s2, [x4, #8]",
|
||||
"add x20, x6, #0x8 (8)",
|
||||
"add x20, x5, #0x8 (8)",
|
||||
"str s2, [x20]",
|
||||
"ldr s2, [x4, #12]",
|
||||
"add x20, x6, #0xc (12)",
|
||||
"add x20, x5, #0xc (12)",
|
||||
"str s2, [x20]",
|
||||
"ldrb w20, [x28, #1019]",
|
||||
"add w20, w20, #0x7 (7)",
|
||||
@@ -10129,15 +10129,15 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr d2, [x4]",
|
||||
"str d2, [x6]",
|
||||
"str d2, [x5]",
|
||||
"ldr d2, [x4, #8]",
|
||||
"add x20, x6, #0x8 (8)",
|
||||
"add x20, x5, #0x8 (8)",
|
||||
"str d2, [x20]",
|
||||
"ldr d2, [x4, #16]",
|
||||
"add x20, x6, #0x10 (16)",
|
||||
"add x20, x5, #0x10 (16)",
|
||||
"str d2, [x20]",
|
||||
"ldr d2, [x4, #32]",
|
||||
"add x20, x6, #0x20 (32)",
|
||||
"add x20, x5, #0x20 (32)",
|
||||
"str d2, [x20]",
|
||||
"ldrb w20, [x28, #1019]",
|
||||
"add w20, w20, #0x7 (7)",
|
||||
|
||||
@@ -832,7 +832,7 @@
|
||||
"0x66 0x0f 0x38 0xf0"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldrh w20, [x7]",
|
||||
"ldrh w20, [x6]",
|
||||
"rev w20, w20",
|
||||
"bfxil x4, x20, #16, #16"
|
||||
]
|
||||
@@ -843,7 +843,7 @@
|
||||
"0x66 0x0f 0x38 0xf0"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w20, [x7]",
|
||||
"ldr w20, [x6]",
|
||||
"rev w4, w20"
|
||||
]
|
||||
},
|
||||
@@ -853,7 +853,7 @@
|
||||
"REX.W 0x66 0x0f 0x38 0xf0"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr x20, [x7]",
|
||||
"ldr x20, [x6]",
|
||||
"rev x4, x20"
|
||||
]
|
||||
},
|
||||
@@ -864,7 +864,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"cset w20, lo",
|
||||
"mov w21, w7",
|
||||
"mov w21, w6",
|
||||
"mov w22, w4",
|
||||
"add w23, w21, w20",
|
||||
"add w4, w22, w23",
|
||||
@@ -887,12 +887,12 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"cset w20, lo",
|
||||
"add x21, x7, x20",
|
||||
"add x21, x6, x20",
|
||||
"add x4, x4, x21",
|
||||
"mrs x21, nzcv",
|
||||
"cmp x4, x7",
|
||||
"cmp x4, x6",
|
||||
"cset x22, lo",
|
||||
"cmp x4, x7",
|
||||
"cmp x4, x6",
|
||||
"cset x23, ls",
|
||||
"cmp x20, #0x1 (1)",
|
||||
"csel x20, x23, x22, eq",
|
||||
@@ -908,7 +908,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"cset w20, vs",
|
||||
"mov w21, w7",
|
||||
"mov w21, w6",
|
||||
"mov w22, w4",
|
||||
"add w23, w21, w20",
|
||||
"add w4, w22, w23",
|
||||
@@ -930,12 +930,12 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"cset w20, vs",
|
||||
"add x21, x7, x20",
|
||||
"add x21, x6, x20",
|
||||
"add x4, x4, x21",
|
||||
"mrs x21, nzcv",
|
||||
"cmp x4, x7",
|
||||
"cmp x4, x6",
|
||||
"cset x22, lo",
|
||||
"cmp x4, x7",
|
||||
"cmp x4, x6",
|
||||
"cset x23, ls",
|
||||
"cmp x20, #0x1 (1)",
|
||||
"csel x20, x23, x22, eq",
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -1900,13 +1900,13 @@
|
||||
"ExpectedInstructionCount": 14,
|
||||
"Comment": "GROUP2 0xd2 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x7",
|
||||
"and x20, x7, #0x7",
|
||||
"mov w21, w4",
|
||||
"bfi w21, w4, #24, #8",
|
||||
"neg w20, w20",
|
||||
"ror w20, w21, w20",
|
||||
"bfxil x4, x20, #0, #8",
|
||||
"and x21, x5, #0x1f",
|
||||
"and x21, x7, #0x1f",
|
||||
"cbz w21, #+0x1c",
|
||||
"eor x0, x20, x20, lsr #7",
|
||||
"mvn x1, x20",
|
||||
@@ -1920,12 +1920,12 @@
|
||||
"ExpectedInstructionCount": 15,
|
||||
"Comment": "GROUP2 0xd2 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x7",
|
||||
"and x20, x7, #0x7",
|
||||
"mov w21, w4",
|
||||
"bfi w21, w4, #8, #8",
|
||||
"ror w20, w21, w20",
|
||||
"bfxil x4, x20, #0, #8",
|
||||
"and x21, x5, #0x1f",
|
||||
"and x21, x7, #0x1f",
|
||||
"cbz w21, #+0x24",
|
||||
"eor x0, x20, x20, lsr #1",
|
||||
"mvn x1, x20",
|
||||
@@ -1941,9 +1941,9 @@
|
||||
"ExpectedInstructionCount": 31,
|
||||
"Comment": "GROUP2 0xd2 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x78",
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"uxtb w21, w4",
|
||||
"mov w22, #0x0",
|
||||
"cset w23, lo",
|
||||
@@ -1978,9 +1978,9 @@
|
||||
"ExpectedInstructionCount": 21,
|
||||
"Comment": "GROUP2 0xd2 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x50",
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cset w21, lo",
|
||||
"uxtb w22, w4",
|
||||
"bfi x22, x21, #8, #1",
|
||||
@@ -2005,8 +2005,8 @@
|
||||
"ExpectedInstructionCount": 14,
|
||||
"Comment": "GROUP2 0xd2 /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl w20, w4, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsl w20, w4, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x2c",
|
||||
"cmn wzr, w20, lsl #24",
|
||||
"mov x26, x20",
|
||||
@@ -2026,12 +2026,12 @@
|
||||
"Comment": "GROUP2 0xd2 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb w20, w4",
|
||||
"lsr w21, w20, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsr w21, w20, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x30",
|
||||
"cmn wzr, w21, lsl #24",
|
||||
"mov x26, x21",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w20, w0",
|
||||
"mvn x0, x0",
|
||||
"eor w2, w20, w21",
|
||||
@@ -2048,12 +2048,12 @@
|
||||
"Comment": "GROUP2 0xd2 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"sxtb x20, w4",
|
||||
"asr w21, w20, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"asr w21, w20, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x24",
|
||||
"cmn wzr, w21, lsl #24",
|
||||
"mov x26, x21",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w20, w0",
|
||||
"mvn x0, x0",
|
||||
"mrs x1, nzcv",
|
||||
@@ -2066,7 +2066,7 @@
|
||||
"ExpectedInstructionCount": 13,
|
||||
"Comment": "GROUP2 0xd3 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x1f",
|
||||
"and x20, x7, #0x1f",
|
||||
"mov w21, w4",
|
||||
"bfi w21, w4, #16, #16",
|
||||
"neg w22, w20",
|
||||
@@ -2085,7 +2085,7 @@
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "GROUP2 0xd3 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x1f",
|
||||
"and x20, x7, #0x1f",
|
||||
"neg w21, w20",
|
||||
"ror w4, w4, w21",
|
||||
"cbz w20, #+0x1c",
|
||||
@@ -2101,7 +2101,7 @@
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "GROUP2 0xd3 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x3f",
|
||||
"and x20, x7, #0x3f",
|
||||
"neg x21, x20",
|
||||
"ror x4, x4, x21",
|
||||
"cbz x20, #+0x1c",
|
||||
@@ -2117,7 +2117,7 @@
|
||||
"ExpectedInstructionCount": 14,
|
||||
"Comment": "GROUP2 0xd3 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x1f",
|
||||
"and x20, x7, #0x1f",
|
||||
"mov w21, w4",
|
||||
"bfi w21, w4, #16, #16",
|
||||
"ror w21, w21, w20",
|
||||
@@ -2137,7 +2137,7 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xd3 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x1f",
|
||||
"and x20, x7, #0x1f",
|
||||
"ror w4, w4, w20",
|
||||
"cbz w20, #+0x24",
|
||||
"eor x0, x4, x4, lsr #1",
|
||||
@@ -2154,7 +2154,7 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xd3 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x3f",
|
||||
"and x20, x7, #0x3f",
|
||||
"ror x4, x4, x20",
|
||||
"cbz x20, #+0x24",
|
||||
"eor x0, x4, x4, lsr #1",
|
||||
@@ -2171,9 +2171,9 @@
|
||||
"ExpectedInstructionCount": 27,
|
||||
"Comment": "GROUP2 0xd3 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x68",
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"uxth w21, w4",
|
||||
"mov w22, #0x0",
|
||||
"cset w23, lo",
|
||||
@@ -2204,11 +2204,11 @@
|
||||
"ExpectedInstructionCount": 21,
|
||||
"Comment": "GROUP2 0xd3 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x4c",
|
||||
"lsl w20, w4, w5",
|
||||
"lsl w20, w4, w7",
|
||||
"cset w21, lo",
|
||||
"neg w22, w5",
|
||||
"neg w22, w7",
|
||||
"lsr w23, w4, w22",
|
||||
"orr w20, w20, w23, lsr #1",
|
||||
"lsr w22, w4, w22",
|
||||
@@ -2216,7 +2216,7 @@
|
||||
"ubfx x23, x23, #0, #1",
|
||||
"mrs x24, nzcv",
|
||||
"bfi w24, w23, #29, #1",
|
||||
"sub w23, w5, #0x1 (1)",
|
||||
"sub w23, w7, #0x1 (1)",
|
||||
"lsl w21, w21, w23",
|
||||
"orr w4, w20, w21",
|
||||
"eor w20, w4, w22, lsl #31",
|
||||
@@ -2231,11 +2231,11 @@
|
||||
"ExpectedInstructionCount": 19,
|
||||
"Comment": "GROUP2 0xd3 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x3f",
|
||||
"and x20, x7, #0x3f",
|
||||
"cbz x20, #+0x48",
|
||||
"lsl x20, x4, x5",
|
||||
"lsl x20, x4, x7",
|
||||
"cset w21, lo",
|
||||
"neg x22, x5",
|
||||
"neg x22, x7",
|
||||
"lsr x23, x4, x22",
|
||||
"orr x20, x20, x23, lsr #1",
|
||||
"lsr x22, x4, x22",
|
||||
@@ -2243,7 +2243,7 @@
|
||||
"ubfx x23, x23, #0, #1",
|
||||
"mrs x24, nzcv",
|
||||
"bfi w24, w23, #29, #1",
|
||||
"sub x23, x5, #0x1 (1)",
|
||||
"sub x23, x7, #0x1 (1)",
|
||||
"lsl x21, x21, x23",
|
||||
"orr x4, x20, x21",
|
||||
"eor x20, x4, x22, lsl #63",
|
||||
@@ -2256,9 +2256,9 @@
|
||||
"ExpectedInstructionCount": 20,
|
||||
"Comment": "GROUP2 0xd3 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x4c",
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cset w21, lo",
|
||||
"uxth w22, w4",
|
||||
"bfi x22, x21, #16, #1",
|
||||
@@ -2282,14 +2282,14 @@
|
||||
"ExpectedInstructionCount": 21,
|
||||
"Comment": "GROUP2 0xd3 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w20, w5, #0x1f",
|
||||
"and w20, w7, #0x1f",
|
||||
"cbz x20, #+0x4c",
|
||||
"lsr w20, w4, w5",
|
||||
"lsr w20, w4, w7",
|
||||
"cset w21, lo",
|
||||
"neg w22, w5",
|
||||
"neg w22, w7",
|
||||
"lsl w23, w4, w22",
|
||||
"orr w20, w20, w23, lsl #1",
|
||||
"sub w23, w5, #0x1 (1)",
|
||||
"sub w23, w7, #0x1 (1)",
|
||||
"lsr w23, w4, w23",
|
||||
"eor x23, x23, #0x1",
|
||||
"ubfx x23, x23, #0, #1",
|
||||
@@ -2309,14 +2309,14 @@
|
||||
"ExpectedInstructionCount": 19,
|
||||
"Comment": "GROUP2 0xd3 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"and x20, x5, #0x3f",
|
||||
"and x20, x7, #0x3f",
|
||||
"cbz x20, #+0x48",
|
||||
"lsr x20, x4, x5",
|
||||
"lsr x20, x4, x7",
|
||||
"cset w21, lo",
|
||||
"neg x22, x5",
|
||||
"neg x22, x7",
|
||||
"lsl x23, x4, x22",
|
||||
"orr x20, x20, x23, lsl #1",
|
||||
"sub x23, x5, #0x1 (1)",
|
||||
"sub x23, x7, #0x1 (1)",
|
||||
"lsr x23, x4, x23",
|
||||
"eor x23, x23, #0x1",
|
||||
"ubfx x23, x23, #0, #1",
|
||||
@@ -2334,8 +2334,8 @@
|
||||
"ExpectedInstructionCount": 14,
|
||||
"Comment": "GROUP2 0xd3 /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl w20, w4, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsl w20, w4, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x2c",
|
||||
"cmn wzr, w20, lsl #16",
|
||||
"mov x26, x20",
|
||||
@@ -2354,11 +2354,11 @@
|
||||
"ExpectedInstructionCount": 14,
|
||||
"Comment": "GROUP2 0xd3 /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl w20, w4, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsl w20, w4, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x2c",
|
||||
"ands w26, w20, w20",
|
||||
"neg w0, w5",
|
||||
"neg w0, w7",
|
||||
"lsr w0, w4, w0",
|
||||
"mvn x0, x0",
|
||||
"eor w2, w4, w20",
|
||||
@@ -2374,11 +2374,11 @@
|
||||
"ExpectedInstructionCount": 14,
|
||||
"Comment": "GROUP2 0xd3 /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl x20, x4, x5",
|
||||
"and w0, w5, #0x3f",
|
||||
"lsl x20, x4, x7",
|
||||
"and w0, w7, #0x3f",
|
||||
"cbz x0, #+0x2c",
|
||||
"ands x26, x20, x20",
|
||||
"neg x0, x5",
|
||||
"neg x0, x7",
|
||||
"lsr x0, x4, x0",
|
||||
"mvn x0, x0",
|
||||
"eor x2, x4, x20",
|
||||
@@ -2395,12 +2395,12 @@
|
||||
"Comment": "GROUP2 0xd3 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth w20, w4",
|
||||
"lsr w21, w20, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsr w21, w20, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x30",
|
||||
"cmn wzr, w21, lsl #16",
|
||||
"mov x26, x21",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w20, w0",
|
||||
"mvn x0, x0",
|
||||
"eor w2, w20, w21",
|
||||
@@ -2416,11 +2416,11 @@
|
||||
"ExpectedInstructionCount": 14,
|
||||
"Comment": "GROUP2 0xd3 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsr w20, w4, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"lsr w20, w4, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x2c",
|
||||
"ands w26, w20, w20",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w4, w0",
|
||||
"mvn x0, x0",
|
||||
"eor w2, w4, w20",
|
||||
@@ -2436,11 +2436,11 @@
|
||||
"ExpectedInstructionCount": 14,
|
||||
"Comment": "GROUP2 0xd3 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsr x20, x4, x5",
|
||||
"and w0, w5, #0x3f",
|
||||
"lsr x20, x4, x7",
|
||||
"and w0, w7, #0x3f",
|
||||
"cbz x0, #+0x2c",
|
||||
"ands x26, x20, x20",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr x0, x4, x0",
|
||||
"mvn x0, x0",
|
||||
"eor x2, x4, x20",
|
||||
@@ -2457,12 +2457,12 @@
|
||||
"Comment": "GROUP2 0xd3 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"sxth x20, w4",
|
||||
"asr w21, w20, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"asr w21, w20, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x24",
|
||||
"cmn wzr, w21, lsl #16",
|
||||
"mov x26, x21",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w20, w0",
|
||||
"mvn x0, x0",
|
||||
"mrs x1, nzcv",
|
||||
@@ -2475,11 +2475,11 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xd3 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"asr w20, w4, w5",
|
||||
"and w0, w5, #0x1f",
|
||||
"asr w20, w4, w7",
|
||||
"and w0, w7, #0x1f",
|
||||
"cbz w0, #+0x20",
|
||||
"ands w26, w20, w20",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr w0, w4, w0",
|
||||
"mvn x0, x0",
|
||||
"mrs x1, nzcv",
|
||||
@@ -2492,11 +2492,11 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xd3 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"asr x20, x4, x5",
|
||||
"and w0, w5, #0x3f",
|
||||
"asr x20, x4, x7",
|
||||
"and w0, w7, #0x3f",
|
||||
"cbz x0, #+0x20",
|
||||
"ands x26, x20, x20",
|
||||
"sub x0, x5, #0x1 (1)",
|
||||
"sub x0, x7, #0x1 (1)",
|
||||
"lsr x0, x4, x0",
|
||||
"mvn x0, x0",
|
||||
"mrs x1, nzcv",
|
||||
@@ -2509,7 +2509,7 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "GROUP2 0xf6 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w26, w7, #0x1",
|
||||
"and w26, w6, #0x1",
|
||||
"cmn wzr, w26, lsl #24",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
@@ -2520,33 +2520,33 @@
|
||||
"ExpectedInstructionCount": 1,
|
||||
"Comment": "GROUP2 0xf6 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"eor x7, x7, #0xff"
|
||||
"eor x6, x6, #0xff"
|
||||
]
|
||||
},
|
||||
"not bh": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"Comment": "GROUP2 0xf6 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"eor x7, x7, #0xff00"
|
||||
"eor x6, x6, #0xff00"
|
||||
]
|
||||
},
|
||||
"neg bl": {
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "GROUP2 0xf6 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"cmp wzr, w7, lsl #24",
|
||||
"neg w26, w7",
|
||||
"mov x20, x7",
|
||||
"cmp wzr, w6, lsl #24",
|
||||
"neg w26, w6",
|
||||
"mov x20, x6",
|
||||
"bfxil x20, x26, #0, #8",
|
||||
"mov x27, x7",
|
||||
"mov x7, x20"
|
||||
"mov x27, x6",
|
||||
"mov x6, x20"
|
||||
]
|
||||
},
|
||||
"mul bl": {
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "GROUP2 0xf6 /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb x20, w7",
|
||||
"uxtb x20, w6",
|
||||
"uxtb x21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
@@ -2559,7 +2559,7 @@
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "GROUP2 0xf6 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"sxtb x20, w7",
|
||||
"sxtb x20, w6",
|
||||
"sxtb x21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
@@ -2573,7 +2573,7 @@
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP2 0xf6 /6",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb w20, w7",
|
||||
"uxtb w20, w6",
|
||||
"uxth w21, w4",
|
||||
"uxth w0, w21",
|
||||
"uxth w1, w20",
|
||||
@@ -2590,7 +2590,7 @@
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Comment": "GROUP2 0xf6 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb w20, w7",
|
||||
"uxtb w20, w6",
|
||||
"uxth w21, w4",
|
||||
"sxth x21, w21",
|
||||
"sxtb x20, w20",
|
||||
@@ -2605,7 +2605,7 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"and w26, w7, #0x1",
|
||||
"and w26, w6, #0x1",
|
||||
"cmn wzr, w26, lsl #16",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
@@ -2616,7 +2616,7 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"ands w26, w7, #0x1",
|
||||
"ands w26, w6, #0x1",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -2626,7 +2626,7 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"ands x26, x7, #0x1",
|
||||
"ands x26, x6, #0x1",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -2636,7 +2636,7 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x26, x7",
|
||||
"mov x26, x6",
|
||||
"cmn wzr, w26, lsl #16",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
@@ -2647,7 +2647,7 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"ands w26, w7, w7",
|
||||
"ands w26, w6, w6",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -2657,7 +2657,7 @@
|
||||
"ExpectedInstructionCount": 4,
|
||||
"Comment": "GROUP2 0xf7 /0",
|
||||
"ExpectedArm64ASM": [
|
||||
"ands x26, x7, x7",
|
||||
"ands x26, x6, x6",
|
||||
"mrs x20, nzcv",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -2667,63 +2667,63 @@
|
||||
"ExpectedInstructionCount": 1,
|
||||
"Comment": "GROUP2 0xf7 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"eor x7, x7, #0xffff"
|
||||
"eor x6, x6, #0xffff"
|
||||
]
|
||||
},
|
||||
"not ebx": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"Comment": "GROUP2 0xf7 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"mvn w7, w7"
|
||||
"mvn w6, w6"
|
||||
]
|
||||
},
|
||||
"not rbx": {
|
||||
"ExpectedInstructionCount": 1,
|
||||
"Comment": "GROUP2 0xf7 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"mvn x7, x7"
|
||||
"mvn x6, x6"
|
||||
]
|
||||
},
|
||||
"neg bx": {
|
||||
"ExpectedInstructionCount": 6,
|
||||
"Comment": "GROUP2 0xf7 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"cmp wzr, w7, lsl #16",
|
||||
"neg w26, w7",
|
||||
"mov x20, x7",
|
||||
"cmp wzr, w6, lsl #16",
|
||||
"neg w26, w6",
|
||||
"mov x20, x6",
|
||||
"bfxil x20, x26, #0, #16",
|
||||
"mov x27, x7",
|
||||
"mov x7, x20"
|
||||
"mov x27, x6",
|
||||
"mov x6, x20"
|
||||
]
|
||||
},
|
||||
"neg ebx": {
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "GROUP2 0xf7 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"negs w26, w7",
|
||||
"mov x27, x7",
|
||||
"mov x7, x26"
|
||||
"negs w26, w6",
|
||||
"mov x27, x6",
|
||||
"mov x6, x26"
|
||||
]
|
||||
},
|
||||
"neg rbx": {
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "GROUP2 0xf7 /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"negs x26, x7",
|
||||
"mov x27, x7",
|
||||
"mov x7, x26"
|
||||
"negs x26, x6",
|
||||
"mov x27, x6",
|
||||
"mov x6, x26"
|
||||
]
|
||||
},
|
||||
"mul bx": {
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "GROUP2 0xf7 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w7",
|
||||
"uxth x20, w6",
|
||||
"uxth x21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
"ubfx x20, x20, #16, #16",
|
||||
"bfxil x6, x20, #0, #16",
|
||||
"bfxil x5, x20, #0, #16",
|
||||
"cmp x20, #0x0 (0)",
|
||||
"ccmp xzr, #0, #nzcV, eq"
|
||||
]
|
||||
@@ -2732,12 +2732,12 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "GROUP2 0xf7 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w7",
|
||||
"mov w20, w6",
|
||||
"mov w21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"mov w4, w20",
|
||||
"lsr x6, x20, #32",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"lsr x5, x20, #32",
|
||||
"cmp x5, #0x0 (0)",
|
||||
"ccmp xzr, #0, #nzcV, eq"
|
||||
]
|
||||
},
|
||||
@@ -2745,9 +2745,9 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "GROUP2 0xf7 /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"mul x20, x7, x4",
|
||||
"umulh x6, x7, x4",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"mul x20, x6, x4",
|
||||
"umulh x5, x6, x4",
|
||||
"cmp x5, #0x0 (0)",
|
||||
"ccmp xzr, #0, #nzcV, eq",
|
||||
"mov x4, x20"
|
||||
]
|
||||
@@ -2756,12 +2756,12 @@
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Comment": "GROUP2 0xf7 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"sxth x20, w7",
|
||||
"sxth x20, w6",
|
||||
"sxth x21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
"sbfx x21, x20, #16, #16",
|
||||
"bfxil x6, x21, #0, #16",
|
||||
"bfxil x5, x21, #0, #16",
|
||||
"sbfx x20, x20, #15, #1",
|
||||
"cmp x21, x20",
|
||||
"ccmp xzr, #0, #nzcV, eq"
|
||||
@@ -2771,11 +2771,11 @@
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "GROUP2 0xf7 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"sxtw x20, w7",
|
||||
"sxtw x20, w6",
|
||||
"sxtw x21, w4",
|
||||
"mul x20, x20, x21",
|
||||
"mov w4, w20",
|
||||
"lsr x6, x20, #32",
|
||||
"lsr x5, x20, #32",
|
||||
"asr x21, x20, #32",
|
||||
"sxtw x20, w20",
|
||||
"sbfx x20, x20, #31, #1",
|
||||
@@ -2787,10 +2787,10 @@
|
||||
"ExpectedInstructionCount": 5,
|
||||
"Comment": "GROUP2 0xf7 /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"smulh x6, x7, x4",
|
||||
"mul x4, x7, x4",
|
||||
"smulh x5, x6, x4",
|
||||
"mul x4, x6, x4",
|
||||
"asr x20, x4, #63",
|
||||
"cmp x6, x20",
|
||||
"cmp x5, x20",
|
||||
"ccmp xzr, #0, #nzcV, eq"
|
||||
]
|
||||
},
|
||||
@@ -2798,9 +2798,9 @@
|
||||
"ExpectedInstructionCount": 12,
|
||||
"Comment": "GROUP2 0xf7 /6",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth w20, w7",
|
||||
"uxth w20, w6",
|
||||
"uxth w21, w4",
|
||||
"uxth w22, w6",
|
||||
"uxth w22, w5",
|
||||
"uxth w0, w21",
|
||||
"bfi w0, w22, #16, #16",
|
||||
"udiv w23, w0, w20",
|
||||
@@ -2809,16 +2809,16 @@
|
||||
"udiv w1, w0, w20",
|
||||
"msub w20, w1, w20, w0",
|
||||
"bfxil x4, x23, #0, #16",
|
||||
"bfxil x6, x20, #0, #16"
|
||||
"bfxil x5, x20, #0, #16"
|
||||
]
|
||||
},
|
||||
"div ebx": {
|
||||
"ExpectedInstructionCount": 12,
|
||||
"Comment": "GROUP2 0xf7 /6",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w7",
|
||||
"mov w20, w6",
|
||||
"mov w21, w4",
|
||||
"mov w22, w6",
|
||||
"mov w22, w5",
|
||||
"mov x0, x21",
|
||||
"bfi x0, x22, #32, #32",
|
||||
"udiv x23, x0, x20",
|
||||
@@ -2827,36 +2827,36 @@
|
||||
"bfi x0, x22, #32, #32",
|
||||
"udiv x1, x0, x20",
|
||||
"msub x20, x1, x20, x0",
|
||||
"mov w6, w20"
|
||||
"mov w5, w20"
|
||||
]
|
||||
},
|
||||
"div rbx": {
|
||||
"ExpectedInstructionCount": 24,
|
||||
"Comment": "GROUP2 0xf7 /6",
|
||||
"ExpectedArm64ASM": [
|
||||
"cbz x6, #+0x28",
|
||||
"mov x0, x6",
|
||||
"cbz x5, #+0x28",
|
||||
"mov x0, x5",
|
||||
"mov x1, x4",
|
||||
"mov x2, x7",
|
||||
"mov x2, x6",
|
||||
"ldr x3, [x28, #2736]",
|
||||
"str x30, [sp, #-16]!",
|
||||
"blr x3",
|
||||
"ldr x30, [sp], #16",
|
||||
"mov x20, x0",
|
||||
"b #+0x8",
|
||||
"udiv x20, x4, x7",
|
||||
"cbz x6, #+0x28",
|
||||
"mov x0, x6",
|
||||
"udiv x20, x4, x6",
|
||||
"cbz x5, #+0x28",
|
||||
"mov x0, x5",
|
||||
"mov x1, x4",
|
||||
"mov x2, x7",
|
||||
"mov x2, x6",
|
||||
"ldr x3, [x28, #2752]",
|
||||
"str x30, [sp, #-16]!",
|
||||
"blr x3",
|
||||
"ldr x30, [sp], #16",
|
||||
"mov x6, x0",
|
||||
"mov x5, x0",
|
||||
"b #+0xc",
|
||||
"udiv x0, x4, x7",
|
||||
"msub x6, x0, x7, x4",
|
||||
"udiv x0, x4, x6",
|
||||
"msub x5, x0, x6, x4",
|
||||
"mov x4, x20"
|
||||
]
|
||||
},
|
||||
@@ -2864,9 +2864,9 @@
|
||||
"ExpectedInstructionCount": 14,
|
||||
"Comment": "GROUP2 0xf7 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth w20, w7",
|
||||
"uxth w20, w6",
|
||||
"uxth w21, w4",
|
||||
"uxth w22, w6",
|
||||
"uxth w22, w5",
|
||||
"uxth w0, w21",
|
||||
"bfi w0, w22, #16, #16",
|
||||
"sxth w1, w20",
|
||||
@@ -2877,16 +2877,16 @@
|
||||
"sdiv w2, w0, w1",
|
||||
"msub w20, w2, w1, w0",
|
||||
"bfxil x4, x23, #0, #16",
|
||||
"bfxil x6, x20, #0, #16"
|
||||
"bfxil x5, x20, #0, #16"
|
||||
]
|
||||
},
|
||||
"idiv ebx": {
|
||||
"ExpectedInstructionCount": 14,
|
||||
"Comment": "GROUP2 0xf7 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w7",
|
||||
"mov w20, w6",
|
||||
"mov w21, w4",
|
||||
"mov w22, w6",
|
||||
"mov w22, w5",
|
||||
"mov x0, x21",
|
||||
"bfi x0, x22, #32, #32",
|
||||
"sxtw x1, w20",
|
||||
@@ -2897,7 +2897,7 @@
|
||||
"sxtw x2, w20",
|
||||
"sdiv x1, x0, x2",
|
||||
"msub x20, x1, x2, x0",
|
||||
"mov w6, w20"
|
||||
"mov w5, w20"
|
||||
]
|
||||
},
|
||||
"idiv rbx": {
|
||||
@@ -2905,32 +2905,32 @@
|
||||
"Comment": "GROUP2 0xf7 /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"asr x0, x4, #63",
|
||||
"eor x0, x0, x6",
|
||||
"eor x0, x0, x5",
|
||||
"cbz x0, #+0x28",
|
||||
"mov x0, x6",
|
||||
"mov x0, x5",
|
||||
"mov x1, x4",
|
||||
"mov x2, x7",
|
||||
"mov x2, x6",
|
||||
"ldr x3, [x28, #2744]",
|
||||
"str x30, [sp, #-16]!",
|
||||
"blr x3",
|
||||
"ldr x30, [sp], #16",
|
||||
"mov x20, x0",
|
||||
"b #+0x8",
|
||||
"sdiv x20, x4, x7",
|
||||
"sdiv x20, x4, x6",
|
||||
"asr x0, x4, #63",
|
||||
"eor x0, x0, x6",
|
||||
"eor x0, x0, x5",
|
||||
"cbz x0, #+0x28",
|
||||
"mov x0, x6",
|
||||
"mov x0, x5",
|
||||
"mov x1, x4",
|
||||
"mov x2, x7",
|
||||
"mov x2, x6",
|
||||
"ldr x3, [x28, #2760]",
|
||||
"str x30, [sp, #-16]!",
|
||||
"blr x3",
|
||||
"ldr x30, [sp], #16",
|
||||
"mov x6, x0",
|
||||
"mov x5, x0",
|
||||
"b #+0xc",
|
||||
"sdiv x0, x4, x7",
|
||||
"msub x6, x0, x7, x4",
|
||||
"sdiv x0, x4, x6",
|
||||
"msub x5, x0, x6, x4",
|
||||
"mov x4, x20"
|
||||
]
|
||||
},
|
||||
|
||||
@@ -261,9 +261,9 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"str w4, [x20, #-4]!",
|
||||
"str w7, [x20, #-4]!",
|
||||
"str w5, [x20, #-4]!",
|
||||
"str w6, [x20, #-4]!",
|
||||
"str w7, [x20, #-4]!",
|
||||
"str w8, [x20, #-4]!",
|
||||
"str w9, [x20, #-4]!",
|
||||
"str w10, [x20, #-4]!",
|
||||
@@ -277,9 +277,9 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"str w4, [x20, #-4]!",
|
||||
"str w7, [x20, #-4]!",
|
||||
"str w5, [x20, #-4]!",
|
||||
"str w6, [x20, #-4]!",
|
||||
"str w7, [x20, #-4]!",
|
||||
"str w8, [x20, #-4]!",
|
||||
"str w9, [x20, #-4]!",
|
||||
"str w10, [x20, #-4]!",
|
||||
@@ -297,9 +297,9 @@
|
||||
"ldr w9, [x20], #4",
|
||||
"add x20, x20, #0x4 (4)",
|
||||
"mov x8, x20",
|
||||
"ldr w7, [x8], #4",
|
||||
"ldr w6, [x8], #4",
|
||||
"ldr w5, [x8], #4",
|
||||
"ldr w7, [x8], #4",
|
||||
"ldr w4, [x8], #4"
|
||||
]
|
||||
},
|
||||
@@ -313,9 +313,9 @@
|
||||
"ldr w9, [x20], #4",
|
||||
"add x20, x20, #0x4 (4)",
|
||||
"mov x8, x20",
|
||||
"ldr w7, [x8], #4",
|
||||
"ldr w6, [x8], #4",
|
||||
"ldr w5, [x8], #4",
|
||||
"ldr w7, [x8], #4",
|
||||
"ldr w4, [x8], #4"
|
||||
]
|
||||
},
|
||||
|
||||
@@ -42,11 +42,11 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x4",
|
||||
"mov x1, x6",
|
||||
"mov x1, x5",
|
||||
"mrs x2, nzcv",
|
||||
"str w2, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -63,8 +63,8 @@
|
||||
"blr x7",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -86,11 +86,11 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x4",
|
||||
"mov x1, x6",
|
||||
"mov x1, x5",
|
||||
"mrs x2, nzcv",
|
||||
"str w2, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -107,8 +107,8 @@
|
||||
"blr x7",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -124,7 +124,7 @@
|
||||
"clz w23, w0",
|
||||
"csinv w23, w23, wzr, ne",
|
||||
"cmp x21, #0x0 (0)",
|
||||
"csel x5, x22, x23, eq",
|
||||
"csel x7, x22, x23, eq",
|
||||
"mov w26, #0x1",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
@@ -138,8 +138,8 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -156,8 +156,8 @@
|
||||
"blr x5",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -180,8 +180,8 @@
|
||||
"ExpectedArm64ASM": [
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -198,8 +198,8 @@
|
||||
"blr x5",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -215,7 +215,7 @@
|
||||
"clz w23, w0",
|
||||
"csinv w23, w23, wzr, ne",
|
||||
"cmp x21, #0x0 (0)",
|
||||
"csel x5, x22, x23, eq",
|
||||
"csel x7, x22, x23, eq",
|
||||
"mov w26, #0x1",
|
||||
"eor w20, w20, #0x20000000",
|
||||
"msr nzcv, x20"
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -837,41 +837,37 @@
|
||||
]
|
||||
},
|
||||
"cmpxchg8b [rbp]": {
|
||||
"ExpectedInstructionCount": 13,
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP9 0x0F 0xC7 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x20, x4",
|
||||
"mov x21, x6",
|
||||
"caspal w20, w21, w0, w1, [x9]",
|
||||
"mov x21, x5",
|
||||
"caspal w20, w21, w6, w7, [x9]",
|
||||
"mrs x0, nzcv",
|
||||
"cmp w20, w4",
|
||||
"ccmp w21, w6, #nzcv, eq",
|
||||
"ccmp w21, w5, #nzcv, eq",
|
||||
"cset w1, eq",
|
||||
"bfi w0, w1, #30, #1",
|
||||
"msr nzcv, x0",
|
||||
"csel x4, x20, x4, ne",
|
||||
"csel x6, x21, x6, ne"
|
||||
"csel x5, x21, x5, ne"
|
||||
]
|
||||
},
|
||||
"cmpxchg16b [rbp]": {
|
||||
"ExpectedInstructionCount": 13,
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Comment": "GROUP9 0x0F 0xC7 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x20, x4",
|
||||
"mov x21, x6",
|
||||
"caspal x20, x21, x0, x1, [x9]",
|
||||
"mov x21, x5",
|
||||
"caspal x20, x21, x6, x7, [x9]",
|
||||
"mrs x0, nzcv",
|
||||
"cmp x20, x4",
|
||||
"ccmp x21, x6, #nzcv, eq",
|
||||
"ccmp x21, x5, #nzcv, eq",
|
||||
"cset w1, eq",
|
||||
"bfi w0, w1, #30, #1",
|
||||
"msr nzcv, x0",
|
||||
"csel x4, x20, x4, ne",
|
||||
"csel x6, x21, x6, ne"
|
||||
"csel x5, x21, x5, ne"
|
||||
]
|
||||
},
|
||||
"rdrand ax": {
|
||||
|
||||
@@ -26,8 +26,8 @@
|
||||
"str x30, [x3]",
|
||||
"mrs x3, nzcv",
|
||||
"str w3, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -41,7 +41,7 @@
|
||||
"st1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x3], #64",
|
||||
"st1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x3], #64",
|
||||
"st1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x3], #64",
|
||||
"mov w1, w5",
|
||||
"mov w1, w7",
|
||||
"ldr x0, [x28, #1368]",
|
||||
"ldr x2, [x28, #1384]",
|
||||
"blr x2",
|
||||
@@ -52,8 +52,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -68,7 +68,7 @@
|
||||
"ld1 {v12.2d, v13.2d, v14.2d, v15.2d}, [sp], #64",
|
||||
"ldr x30, [sp], #16",
|
||||
"mov w4, w0",
|
||||
"lsr x6, x0, #32"
|
||||
"lsr x5, x0, #32"
|
||||
]
|
||||
},
|
||||
"rdtscp": {
|
||||
@@ -78,7 +78,7 @@
|
||||
"dmb ld",
|
||||
"mrs x20, S3_3_c14_c0_2",
|
||||
"lsl w4, w20, #7",
|
||||
"lsr x6, x20, #25",
|
||||
"lsr x5, x20, #25",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"str x8, [x28, #312]",
|
||||
@@ -95,7 +95,7 @@
|
||||
"msr nzcv, x8",
|
||||
"ldr x8, [x28, #312]",
|
||||
"str xzr, [x28, #1312]",
|
||||
"orr x5, x0, x1, lsl #12"
|
||||
"orr x7, x0, x1, lsl #12"
|
||||
]
|
||||
},
|
||||
"clzero rax": {
|
||||
|
||||
@@ -121,7 +121,7 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"Comment": "0xf3 0x0f 0x2c",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr s2, [x7]",
|
||||
"ldr s2, [x6]",
|
||||
"fcvtzs w4, s2"
|
||||
]
|
||||
},
|
||||
@@ -136,7 +136,7 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"Comment": "0xf3 0x0f 0x2c",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr d2, [x7]",
|
||||
"ldr d2, [x6]",
|
||||
"fcvtzs x4, s2"
|
||||
]
|
||||
},
|
||||
@@ -152,7 +152,7 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "0xf3 0x0f 0x2d",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr s2, [x7]",
|
||||
"ldr s2, [x6]",
|
||||
"frinti s0, s2",
|
||||
"fcvtzs w4, s0"
|
||||
]
|
||||
@@ -169,7 +169,7 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "0xf3 0x0f 0x2d",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr d2, [x7]",
|
||||
"ldr d2, [x6]",
|
||||
"frinti s0, s2",
|
||||
"fcvtzs x4, s0"
|
||||
]
|
||||
@@ -403,7 +403,7 @@
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Comment": "0xf3 0x0f 0xb8",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth w20, w7",
|
||||
"uxth w20, w6",
|
||||
"fmov s0, w20",
|
||||
"cnt v0.8b, v0.8b",
|
||||
"addp v0.8b, v0.8b, v0.8b",
|
||||
@@ -418,7 +418,7 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0xf3 0x0f 0xb8",
|
||||
"ExpectedArm64ASM": [
|
||||
"fmov s0, w7",
|
||||
"fmov s0, w6",
|
||||
"cnt v0.8b, v0.8b",
|
||||
"addv b0, v0.8b",
|
||||
"umov w4, v0.b[0]",
|
||||
@@ -431,7 +431,7 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0xf3 0x0f 0xb8",
|
||||
"ExpectedArm64ASM": [
|
||||
"fmov d0, x7",
|
||||
"fmov d0, x6",
|
||||
"cnt v0.8b, v0.8b",
|
||||
"addv b0, v0.8b",
|
||||
"umov w4, v0.b[0]",
|
||||
@@ -444,7 +444,7 @@
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "0xf3 0x0f 0xbc",
|
||||
"ExpectedArm64ASM": [
|
||||
"rbit w20, w7",
|
||||
"rbit w20, w6",
|
||||
"orr w20, w20, #0x8000",
|
||||
"clz w20, w20",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
@@ -460,7 +460,7 @@
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "0xf3 0x0f 0xbc",
|
||||
"ExpectedArm64ASM": [
|
||||
"rbit w4, w7",
|
||||
"rbit w4, w6",
|
||||
"clz w4, w4",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"eor x20, x4, #0x20",
|
||||
@@ -474,7 +474,7 @@
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Comment": "0xf3 0x0f 0xbc",
|
||||
"ExpectedArm64ASM": [
|
||||
"rbit x4, x7",
|
||||
"rbit x4, x6",
|
||||
"clz x4, x4",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"eor x20, x4, #0x40",
|
||||
@@ -488,7 +488,7 @@
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Comment": "0xf3 0x0f 0xbd",
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl w20, w7, #16",
|
||||
"lsl w20, w6, #16",
|
||||
"orr w20, w20, #0x8000",
|
||||
"clz w20, w20",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
@@ -504,7 +504,7 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0xf3 0x0f 0xbd",
|
||||
"ExpectedArm64ASM": [
|
||||
"clz w4, w7",
|
||||
"clz w4, w6",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"eor x20, x4, #0x20",
|
||||
"ubfx x20, x20, #5, #1",
|
||||
@@ -517,7 +517,7 @@
|
||||
"ExpectedInstructionCount": 7,
|
||||
"Comment": "0xf3 0x0f 0xbd",
|
||||
"ExpectedArm64ASM": [
|
||||
"clz x4, x7",
|
||||
"clz x4, x6",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"eor x20, x4, #0x40",
|
||||
"ubfx x20, x20, #6, #1",
|
||||
|
||||
@@ -106,7 +106,7 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"Comment": "0xf2 0x0f 0x2c",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr d2, [x7]",
|
||||
"ldr d2, [x6]",
|
||||
"fcvtzs w4, d2"
|
||||
]
|
||||
},
|
||||
@@ -121,7 +121,7 @@
|
||||
"ExpectedInstructionCount": 2,
|
||||
"Comment": "0xf2 0x0f 0x2c",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr d2, [x7]",
|
||||
"ldr d2, [x6]",
|
||||
"fcvtzs x4, d2"
|
||||
]
|
||||
},
|
||||
@@ -137,7 +137,7 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "0xf2 0x0f 0x2d",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr d2, [x7]",
|
||||
"ldr d2, [x6]",
|
||||
"frinti d0, d2",
|
||||
"fcvtzs x4, d0"
|
||||
]
|
||||
@@ -154,7 +154,7 @@
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Comment": "0xf2 0x0f 0x2d",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr d2, [x7]",
|
||||
"ldr d2, [x6]",
|
||||
"frinti d0, d2",
|
||||
"fcvtzs x4, d0"
|
||||
]
|
||||
|
||||
@@ -4900,7 +4900,7 @@
|
||||
"Map 2 0b00 0xf2 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"bic w26, w5, w7",
|
||||
"bic w26, w7, w6",
|
||||
"cmp w26, #0x0 (0)",
|
||||
"mov x4, x26"
|
||||
]
|
||||
@@ -4911,7 +4911,7 @@
|
||||
"Map 2 0b00 0xf2 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"bic x26, x5, x7",
|
||||
"bic x26, x7, x6",
|
||||
"cmp x26, #0x0 (0)",
|
||||
"mov x4, x26"
|
||||
]
|
||||
@@ -4923,10 +4923,10 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0xffffffff",
|
||||
"lsl w20, w20, w5",
|
||||
"bic w20, w7, w20",
|
||||
"tst x5, #0xe0",
|
||||
"csel w4, w7, w20, ne",
|
||||
"lsl w20, w20, w7",
|
||||
"bic w20, w6, w20",
|
||||
"tst x7, #0xe0",
|
||||
"csel w4, w6, w20, ne",
|
||||
"cset w20, eq",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"mrs x21, nzcv",
|
||||
@@ -4941,10 +4941,10 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x20, #0xffffffffffffffff",
|
||||
"lsl x20, x20, x5",
|
||||
"bic x20, x7, x20",
|
||||
"tst x5, #0xc0",
|
||||
"csel x4, x7, x20, ne",
|
||||
"lsl x20, x20, x7",
|
||||
"bic x20, x6, x20",
|
||||
"tst x7, #0xc0",
|
||||
"csel x4, x6, x20, ne",
|
||||
"cset w20, eq",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"mrs x21, nzcv",
|
||||
@@ -4958,9 +4958,9 @@
|
||||
"Map 2 0b10 0xf5 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"cbz w5, #+0x2c",
|
||||
"mov w0, w5",
|
||||
"mov w2, w7",
|
||||
"cbz w7, #+0x2c",
|
||||
"mov w0, w7",
|
||||
"mov w2, w6",
|
||||
"mov w4, wzr",
|
||||
"cbz w0, #+0x20",
|
||||
"clz w1, w0",
|
||||
@@ -4978,9 +4978,9 @@
|
||||
"Map 2 0b10 0xf5 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"cbz x5, #+0x2c",
|
||||
"mov x0, x5",
|
||||
"mov x2, x7",
|
||||
"cbz x7, #+0x2c",
|
||||
"mov x0, x7",
|
||||
"mov x2, x6",
|
||||
"mov x4, xzr",
|
||||
"cbz x0, #+0x20",
|
||||
"clz x1, x0",
|
||||
@@ -4998,10 +4998,10 @@
|
||||
"Map 2 0b11 0xf5 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x0, x6",
|
||||
"mov x1, x7",
|
||||
"mov w4, #0x0",
|
||||
"cbz w5, #+0x2c",
|
||||
"cbz w7, #+0x2c",
|
||||
"neg w2, w1",
|
||||
"and w2, w2, w1",
|
||||
"sbfx w3, w0, #0, #1",
|
||||
@@ -5020,10 +5020,10 @@
|
||||
"Map 2 0b11 0xf5 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x0, x7",
|
||||
"mov x1, x5",
|
||||
"mov x0, x6",
|
||||
"mov x1, x7",
|
||||
"mov x4, #0x0",
|
||||
"cbz x5, #+0x2c",
|
||||
"cbz x7, #+0x2c",
|
||||
"neg x2, x1",
|
||||
"and x2, x2, x1",
|
||||
"sbfx x3, x0, #0, #1",
|
||||
@@ -5042,9 +5042,9 @@
|
||||
"Map 2 0b11 0xf6 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mul w7, w5, w6",
|
||||
"ubfx x0, x5, #0, #32",
|
||||
"ubfx x1, x6, #0, #32",
|
||||
"mul w6, w7, w5",
|
||||
"ubfx x0, x7, #0, #32",
|
||||
"ubfx x1, x5, #0, #32",
|
||||
"mul x4, x0, x1",
|
||||
"lsr x4, x4, #32"
|
||||
]
|
||||
@@ -5056,8 +5056,8 @@
|
||||
"Map 2 0b11 0xf6 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x0, x7, #0, #32",
|
||||
"ubfx x1, x6, #0, #32",
|
||||
"ubfx x0, x6, #0, #32",
|
||||
"ubfx x1, x5, #0, #32",
|
||||
"mul x4, x0, x1",
|
||||
"lsr x4, x4, #32"
|
||||
]
|
||||
@@ -5068,11 +5068,11 @@
|
||||
"Map 2 0b11 0xf6 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w5",
|
||||
"mov w20, w7",
|
||||
"ldr w20, [x20]",
|
||||
"mul w7, w20, w6",
|
||||
"mul w6, w20, w5",
|
||||
"ubfx x0, x20, #0, #32",
|
||||
"ubfx x1, x6, #0, #32",
|
||||
"ubfx x1, x5, #0, #32",
|
||||
"mul x4, x0, x1",
|
||||
"lsr x4, x4, #32"
|
||||
]
|
||||
@@ -5083,8 +5083,8 @@
|
||||
"Map 2 0b11 0xf6 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mul x7, x5, x6",
|
||||
"umulh x4, x5, x6"
|
||||
"mul x6, x7, x5",
|
||||
"umulh x4, x7, x5"
|
||||
]
|
||||
},
|
||||
"mulx rax, rax, rbx": {
|
||||
@@ -5094,7 +5094,7 @@
|
||||
"Map 2 0b11 0xf6 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"umulh x4, x7, x6"
|
||||
"umulh x4, x6, x5"
|
||||
]
|
||||
},
|
||||
"mulx rax, rbx, [rcx]": {
|
||||
@@ -5103,9 +5103,9 @@
|
||||
"Map 2 0b11 0xf6 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr x20, [x5]",
|
||||
"mul x7, x20, x6",
|
||||
"umulh x4, x20, x6"
|
||||
"ldr x20, [x7]",
|
||||
"mul x6, x20, x5",
|
||||
"umulh x4, x20, x5"
|
||||
]
|
||||
},
|
||||
"bextr eax, ebx, ecx": {
|
||||
@@ -5114,12 +5114,12 @@
|
||||
"Map 2 0b00 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb w20, w5",
|
||||
"lsr w21, w7, w20",
|
||||
"uxtb w20, w7",
|
||||
"lsr w21, w6, w20",
|
||||
"mov w22, #0x0",
|
||||
"cmp w20, #0x1f (31)",
|
||||
"csel w20, w21, w22, ls",
|
||||
"ubfx w21, w5, #8, #8",
|
||||
"ubfx w21, w7, #8, #8",
|
||||
"mov x22, #0xffffffffffffffff",
|
||||
"lsl w22, w22, w21",
|
||||
"bic w22, w20, w22",
|
||||
@@ -5134,12 +5134,12 @@
|
||||
"Map 2 0b00 0xf7 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb x20, w5",
|
||||
"lsr x21, x7, x20",
|
||||
"uxtb x20, w7",
|
||||
"lsr x21, x6, x20",
|
||||
"mov w22, #0x0",
|
||||
"cmp x20, #0x3f (63)",
|
||||
"csel x20, x21, x22, ls",
|
||||
"ubfx x21, x5, #8, #8",
|
||||
"ubfx x21, x7, #8, #8",
|
||||
"mov x22, #0xffffffffffffffff",
|
||||
"lsl x22, x22, x21",
|
||||
"bic x22, x20, x22",
|
||||
@@ -5154,7 +5154,7 @@
|
||||
"Map 2 0b01 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl w4, w7, w5"
|
||||
"lsl w4, w6, w7"
|
||||
]
|
||||
},
|
||||
"shlx eax, [ebx], ecx": {
|
||||
@@ -5163,9 +5163,9 @@
|
||||
"Map 2 0b01 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w7",
|
||||
"mov w20, w6",
|
||||
"ldr w20, [x20]",
|
||||
"lsl w4, w20, w5"
|
||||
"lsl w4, w20, w7"
|
||||
]
|
||||
},
|
||||
"shlx rax, rbx, rcx": {
|
||||
@@ -5174,7 +5174,7 @@
|
||||
"Map 2 0b01 0xf7 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"lsl x4, x7, x5"
|
||||
"lsl x4, x6, x7"
|
||||
]
|
||||
},
|
||||
"shlx rax, [rbx], rcx": {
|
||||
@@ -5183,8 +5183,8 @@
|
||||
"Map 2 0b01 0xf7 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr x20, [x7]",
|
||||
"lsl x4, x20, x5"
|
||||
"ldr x20, [x6]",
|
||||
"lsl x4, x20, x7"
|
||||
]
|
||||
},
|
||||
"sarx eax, ebx, ecx": {
|
||||
@@ -5193,7 +5193,7 @@
|
||||
"Map 2 0b10 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"asr w4, w7, w5"
|
||||
"asr w4, w6, w7"
|
||||
]
|
||||
},
|
||||
"sarx eax, [ebx], ecx": {
|
||||
@@ -5202,9 +5202,9 @@
|
||||
"Map 2 0b10 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w7",
|
||||
"mov w20, w6",
|
||||
"ldr w20, [x20]",
|
||||
"asr w4, w20, w5"
|
||||
"asr w4, w20, w7"
|
||||
]
|
||||
},
|
||||
"sarx rax, rbx, rcx": {
|
||||
@@ -5213,7 +5213,7 @@
|
||||
"Map 2 0b10 0xf7 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"asr x4, x7, x5"
|
||||
"asr x4, x6, x7"
|
||||
]
|
||||
},
|
||||
"sarx rax, [rbx], rcx": {
|
||||
@@ -5222,8 +5222,8 @@
|
||||
"Map 2 0b10 0xf7 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr x20, [x7]",
|
||||
"asr x4, x20, x5"
|
||||
"ldr x20, [x6]",
|
||||
"asr x4, x20, x7"
|
||||
]
|
||||
},
|
||||
"shrx eax, ebx, ecx": {
|
||||
@@ -5232,7 +5232,7 @@
|
||||
"Map 2 0b11 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"lsr w4, w7, w5"
|
||||
"lsr w4, w6, w7"
|
||||
]
|
||||
},
|
||||
"shrx eax, [ebx], ecx": {
|
||||
@@ -5241,9 +5241,9 @@
|
||||
"Map 2 0b11 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w7",
|
||||
"mov w20, w6",
|
||||
"ldr w20, [x20]",
|
||||
"lsr w4, w20, w5"
|
||||
"lsr w4, w20, w7"
|
||||
]
|
||||
},
|
||||
"shrx rax, rbx, rcx": {
|
||||
@@ -5252,7 +5252,7 @@
|
||||
"Map 2 0b11 0xf7 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"lsr x4, x7, x5"
|
||||
"lsr x4, x6, x7"
|
||||
]
|
||||
},
|
||||
"shrx rax, [rbx], rcx": {
|
||||
@@ -5261,8 +5261,8 @@
|
||||
"Map 2 0b11 0xf7 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr x20, [x7]",
|
||||
"lsr x4, x20, x5"
|
||||
"ldr x20, [x6]",
|
||||
"lsr x4, x20, x7"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,8 +19,8 @@
|
||||
"Map 2 0b10 0xf5 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"fmov s0, w7",
|
||||
"fmov s1, w5",
|
||||
"fmov s0, w6",
|
||||
"fmov s1, w7",
|
||||
"bext z0.s, z0.s, z1.s",
|
||||
"mov w4, v0.s[0]"
|
||||
]
|
||||
@@ -31,8 +31,8 @@
|
||||
"Map 2 0b10 0xf5 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"fmov d0, x7",
|
||||
"fmov d1, x5",
|
||||
"fmov d0, x6",
|
||||
"fmov d1, x7",
|
||||
"bext z0.d, z0.d, z1.d",
|
||||
"mov x4, v0.d[0]"
|
||||
]
|
||||
@@ -43,8 +43,8 @@
|
||||
"Map 2 0b11 0xf5 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"fmov s0, w7",
|
||||
"fmov s1, w5",
|
||||
"fmov s0, w6",
|
||||
"fmov s1, w7",
|
||||
"bdep z0.s, z0.s, z1.s",
|
||||
"mov w4, v0.s[0]"
|
||||
]
|
||||
@@ -55,8 +55,8 @@
|
||||
"Map 2 0b11 0xf5 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"fmov d0, x7",
|
||||
"fmov d1, x5",
|
||||
"fmov d0, x6",
|
||||
"fmov d1, x7",
|
||||
"bdep z0.d, z0.d, z1.d",
|
||||
"mov x4, v0.d[0]"
|
||||
]
|
||||
|
||||
@@ -5401,7 +5401,7 @@
|
||||
"Map 3 0b11 0xf0 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w4, w7"
|
||||
"mov w4, w6"
|
||||
]
|
||||
},
|
||||
"rorx eax, eax, 0": {
|
||||
@@ -5419,7 +5419,7 @@
|
||||
"Map 3 0b11 0xf0 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ror w4, w7, #31"
|
||||
"ror w4, w6, #31"
|
||||
]
|
||||
},
|
||||
"rorx eax, ebx, 32": {
|
||||
@@ -5428,7 +5428,7 @@
|
||||
"Map 3 0b11 0xf0 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w4, w7"
|
||||
"mov w4, w6"
|
||||
]
|
||||
},
|
||||
"rorx eax, eax, 32": {
|
||||
@@ -5446,7 +5446,7 @@
|
||||
"Map 3 0b11 0xf0 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x4, x7"
|
||||
"mov x4, x6"
|
||||
]
|
||||
},
|
||||
"rorx rax, rax, 0": {
|
||||
@@ -5462,7 +5462,7 @@
|
||||
"Map 3 0b11 0xf0 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ror x4, x7, #63"
|
||||
"ror x4, x6, #63"
|
||||
]
|
||||
},
|
||||
"rorx rax, rbx, 64": {
|
||||
@@ -5471,7 +5471,7 @@
|
||||
"Map 3 0b11 0xf0 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov x4, x7"
|
||||
"mov x4, x6"
|
||||
]
|
||||
},
|
||||
"rorx rax, rax, 64": {
|
||||
|
||||
@@ -613,9 +613,9 @@
|
||||
"Map group 17 0b001 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"sub w20, w7, #0x1 (1)",
|
||||
"and w4, w20, w7",
|
||||
"cmp x7, #0x0 (0)",
|
||||
"sub w20, w6, #0x1 (1)",
|
||||
"and w4, w20, w6",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"cset x20, ne",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"mrs x21, nzcv",
|
||||
@@ -629,9 +629,9 @@
|
||||
"Map group 17 0b001 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"sub x20, x7, #0x1 (1)",
|
||||
"and x4, x20, x7",
|
||||
"cmp x7, #0x0 (0)",
|
||||
"sub x20, x6, #0x1 (1)",
|
||||
"and x4, x20, x6",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"cset x20, ne",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"mrs x21, nzcv",
|
||||
@@ -645,9 +645,9 @@
|
||||
"Map group 17 0b010 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"sub w20, w7, #0x1 (1)",
|
||||
"eor w4, w20, w7",
|
||||
"cmp x7, #0x0 (0)",
|
||||
"sub w20, w6, #0x1 (1)",
|
||||
"eor w4, w20, w6",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"cset x20, ne",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"mrs x21, nzcv",
|
||||
@@ -661,9 +661,9 @@
|
||||
"Map group 17 0b010 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"sub x20, x7, #0x1 (1)",
|
||||
"eor x4, x20, x7",
|
||||
"cmp x7, #0x0 (0)",
|
||||
"sub x20, x6, #0x1 (1)",
|
||||
"eor x4, x20, x6",
|
||||
"cmp x6, #0x0 (0)",
|
||||
"cset x20, ne",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"mrs x21, nzcv",
|
||||
@@ -677,8 +677,8 @@
|
||||
"Map group 17 0b011 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"neg w20, w7",
|
||||
"and w4, w7, w20",
|
||||
"neg w20, w6",
|
||||
"and w4, w6, w20",
|
||||
"cmp w4, #0x0 (0)",
|
||||
"cset w20, eq",
|
||||
"mrs x21, nzcv",
|
||||
@@ -692,8 +692,8 @@
|
||||
"Map group 17 0b011 64-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"neg x20, x7",
|
||||
"and x4, x7, x20",
|
||||
"neg x20, x6",
|
||||
"and x4, x6, x20",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"cset w20, eq",
|
||||
"mrs x21, nzcv",
|
||||
|
||||
+1236
-1236
File diff suppressed because it is too large.
Load diff
@@ -2279,8 +2279,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2317,8 +2317,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2349,8 +2349,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2386,8 +2386,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2415,8 +2415,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2453,8 +2453,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2498,8 +2498,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2535,8 +2535,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2601,8 +2601,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2638,8 +2638,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2695,8 +2695,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2732,8 +2732,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2772,8 +2772,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2809,8 +2809,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2852,8 +2852,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2890,8 +2890,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2903,8 +2903,8 @@
|
||||
"mov v3.8b, v0.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -2941,8 +2941,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -2998,8 +2998,8 @@
|
||||
"mov v1.8b, v2.8b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -3035,8 +3035,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -3061,8 +3061,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -3099,8 +3099,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -3126,8 +3126,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"stp x8, x9, [x28, #312]",
|
||||
"stp x10, x11, [x28, #328]",
|
||||
"stp x12, x13, [x28, #344]",
|
||||
@@ -3164,8 +3164,8 @@
|
||||
"ld1 {v20.2d, v21.2d, v22.2d, v23.2d}, [x4], #64",
|
||||
"ld1 {v24.2d, v25.2d, v26.2d, v27.2d}, [x4], #64",
|
||||
"ld1 {v28.2d, v29.2d, v30.2d, v31.2d}, [x4], #64",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldp x8, x9, [x28, #312]",
|
||||
"ldp x10, x11, [x28, #328]",
|
||||
"ldp x12, x13, [x28, #344]",
|
||||
@@ -4137,8 +4137,8 @@
|
||||
"ldr q2, [x4]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -4153,8 +4153,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -4185,8 +4185,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -4200,8 +4200,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6479,8 +6479,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6495,8 +6495,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6511,8 +6511,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6527,8 +6527,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6543,8 +6543,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6559,8 +6559,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6575,8 +6575,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6591,8 +6591,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6607,8 +6607,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6623,8 +6623,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6639,8 +6639,8 @@
|
||||
"and v3.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6655,8 +6655,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6671,8 +6671,8 @@
|
||||
"and v2.16b, v3.16b, v2.16b",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6687,8 +6687,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6704,8 +6704,8 @@
|
||||
"mov v2.h[4], v3.h[0]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6720,8 +6720,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6806,8 +6806,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6821,8 +6821,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6838,8 +6838,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6853,8 +6853,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6870,8 +6870,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6885,8 +6885,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6902,8 +6902,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6917,8 +6917,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6934,8 +6934,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6949,8 +6949,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6966,8 +6966,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -6981,8 +6981,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -6998,8 +6998,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -7013,8 +7013,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -7030,8 +7030,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -7045,8 +7045,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -9566,8 +9566,8 @@
|
||||
"ldr q2, [x4]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -9582,8 +9582,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -9594,8 +9594,8 @@
|
||||
"mov v2.h[4], w1",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -9610,8 +9610,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -9642,8 +9642,8 @@
|
||||
"ldr d2, [x0, #1040]",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -9657,8 +9657,8 @@
|
||||
"blr x1",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -9669,8 +9669,8 @@
|
||||
"mov v2.h[4], w1",
|
||||
"mrs x0, nzcv",
|
||||
"str w0, [x28, #1000]",
|
||||
"stp x4, x5, [x28, #280]",
|
||||
"stp x6, x7, [x28, #296]",
|
||||
"stp x4, x7, [x28, #280]",
|
||||
"stp x5, x6, [x28, #296]",
|
||||
"str x8, [x28, #312]",
|
||||
"stp x16, x17, [x28, #376]",
|
||||
"sub sp, sp, #0x70 (112)",
|
||||
@@ -9685,8 +9685,8 @@
|
||||
"blr x3",
|
||||
"ldr w4, [x28, #1000]",
|
||||
"msr nzcv, x4",
|
||||
"ldp x4, x5, [x28, #280]",
|
||||
"ldp x6, x7, [x28, #296]",
|
||||
"ldp x4, x7, [x28, #280]",
|
||||
"ldp x5, x6, [x28, #296]",
|
||||
"ldr x8, [x28, #312]",
|
||||
"ldp x16, x17, [x28, #376]",
|
||||
"ld1 {v2.2d, v3.2d}, [sp], #32",
|
||||
@@ -10361,15 +10361,15 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr s2, [x4]",
|
||||
"str s2, [x6]",
|
||||
"str s2, [x5]",
|
||||
"ldr s2, [x4, #4]",
|
||||
"add x20, x6, #0x4 (4)",
|
||||
"add x20, x5, #0x4 (4)",
|
||||
"str s2, [x20]",
|
||||
"ldr s2, [x4, #8]",
|
||||
"add x20, x6, #0x8 (8)",
|
||||
"add x20, x5, #0x8 (8)",
|
||||
"str s2, [x20]",
|
||||
"ldr s2, [x4, #12]",
|
||||
"add x20, x6, #0xc (12)",
|
||||
"add x20, x5, #0xc (12)",
|
||||
"str s2, [x20]",
|
||||
"ldrb w20, [x28, #1019]",
|
||||
"add w20, w20, #0x7 (7)",
|
||||
@@ -10395,15 +10395,15 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr d2, [x4]",
|
||||
"str d2, [x6]",
|
||||
"str d2, [x5]",
|
||||
"ldr d2, [x4, #8]",
|
||||
"add x20, x6, #0x8 (8)",
|
||||
"add x20, x5, #0x8 (8)",
|
||||
"str d2, [x20]",
|
||||
"ldr d2, [x4, #16]",
|
||||
"add x20, x6, #0x10 (16)",
|
||||
"add x20, x5, #0x10 (16)",
|
||||
"str d2, [x20]",
|
||||
"ldr d2, [x4, #32]",
|
||||
"add x20, x6, #0x20 (32)",
|
||||
"add x20, x5, #0x20 (32)",
|
||||
"str d2, [x20]",
|
||||
"ldrb w20, [x28, #1019]",
|
||||
"add w20, w20, #0x7 (7)",
|
||||
|
||||
Reference in new issue
Block a user