mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-06 14:00:16 +02:00
InstCountCI: Update for previous changes
Missed thsi in the SRA PR
This commit is contained in:
1 parent
6f2b3e76ac
commit
f02d291da1
15 files changed
+1540
-1630
No files matched your search
@@ -1032,8 +1032,8 @@
|
||||
"0xf2 0x0f 0x38 0xf0"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"uxtb x21, w7",
|
||||
"lsr w20, w4, #0",
|
||||
"uxtb w21, w7",
|
||||
"crc32cb w4, w20, w21"
|
||||
]
|
||||
},
|
||||
@@ -1044,8 +1044,8 @@
|
||||
"0xf2 0x0f 0x38 0xf1"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"uxth x21, w7",
|
||||
"lsr w20, w4, #0",
|
||||
"uxth w21, w7",
|
||||
"crc32ch w4, w20, w21"
|
||||
]
|
||||
},
|
||||
@@ -1056,8 +1056,8 @@
|
||||
"0xf2 0x0f 0x38 0xf1"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"ubfx x21, x7, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"lsr w21, w7, #0",
|
||||
"crc32cw w4, w20, w21"
|
||||
]
|
||||
},
|
||||
@@ -1068,7 +1068,7 @@
|
||||
"0xf2 0x0f 0x38 0xf0"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxtb x20, w7",
|
||||
"uxtb w20, w7",
|
||||
"crc32cb w4, w4, w20"
|
||||
]
|
||||
},
|
||||
@@ -1090,9 +1090,9 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w20, [x28, #728]",
|
||||
"ubfx x21, x20, #29, #1",
|
||||
"ubfx x22, x7, #0, #32",
|
||||
"ubfx x23, x4, #0, #32",
|
||||
"ubfx w21, w20, #29, #1",
|
||||
"lsr w22, w7, #0",
|
||||
"lsr w23, w4, #0",
|
||||
"add w24, w22, w21",
|
||||
"add w4, w23, w24",
|
||||
"cmp w4, w22",
|
||||
@@ -1134,9 +1134,9 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w20, [x28, #728]",
|
||||
"ubfx x21, x20, #28, #1",
|
||||
"ubfx x22, x7, #0, #32",
|
||||
"ubfx x23, x4, #0, #32",
|
||||
"ubfx w21, w20, #28, #1",
|
||||
"lsr w22, w7, #0",
|
||||
"lsr w23, w4, #0",
|
||||
"add w24, w22, w21",
|
||||
"add w4, w23, w24",
|
||||
"cmp w4, w22",
|
||||
|
||||
@@ -730,7 +730,7 @@
|
||||
"0x66 0x0f 0x3a 0x20"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"mov v16.b[0], w20"
|
||||
]
|
||||
},
|
||||
@@ -741,7 +741,7 @@
|
||||
"0x66 0x0f 0x3a 0x20"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"mov v16.b[1], w20"
|
||||
]
|
||||
},
|
||||
@@ -752,7 +752,7 @@
|
||||
"0x66 0x0f 0x3a 0x20"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"mov v16.b[15], w20"
|
||||
]
|
||||
},
|
||||
@@ -793,7 +793,7 @@
|
||||
"0x66 0x0f 0x3a 0x22"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"mov v16.s[0], w20"
|
||||
]
|
||||
},
|
||||
@@ -804,7 +804,7 @@
|
||||
"0x66 0x0f 0x3a 0x22"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"mov v16.s[1], w20"
|
||||
]
|
||||
},
|
||||
@@ -815,7 +815,7 @@
|
||||
"0x66 0x0f 0x3a 0x22"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"mov v16.s[3], w20"
|
||||
]
|
||||
},
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -9,107 +9,99 @@
|
||||
},
|
||||
"Instructions": {
|
||||
"push es": {
|
||||
"ExpectedInstructionCount": 4,
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x06",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldrh w21, [x28, #136]",
|
||||
"str w21, [x20, #-4]!",
|
||||
"bfxil x8, x20, #0, #32"
|
||||
"ldrh w20, [x28, #136]",
|
||||
"str w20, [x8, #-4]!",
|
||||
"bfxil x8, x8, #0, #32"
|
||||
]
|
||||
},
|
||||
"pop es": {
|
||||
"ExpectedInstructionCount": 9,
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x07",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldr w21, [x20]",
|
||||
"add x20, x20, #0x4 (4)",
|
||||
"bfxil x8, x20, #0, #32",
|
||||
"strh w21, [x28, #136]",
|
||||
"ubfx x20, x21, #3, #13",
|
||||
"ldr w20, [x8]",
|
||||
"add x8, x8, #0x4 (4)",
|
||||
"bfxil x8, x8, #0, #32",
|
||||
"strh w20, [x28, #136]",
|
||||
"ubfx w20, w20, #3, #13",
|
||||
"add x0, x28, x20, lsl #2",
|
||||
"ldr w20, [x0, #880]",
|
||||
"str w20, [x28, #152]"
|
||||
]
|
||||
},
|
||||
"push cs": {
|
||||
"ExpectedInstructionCount": 4,
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x0e",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldrh w21, [x28, #138]",
|
||||
"str w21, [x20, #-4]!",
|
||||
"bfxil x8, x20, #0, #32"
|
||||
"ldrh w20, [x28, #138]",
|
||||
"str w20, [x8, #-4]!",
|
||||
"bfxil x8, x8, #0, #32"
|
||||
]
|
||||
},
|
||||
"push ss": {
|
||||
"ExpectedInstructionCount": 4,
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x16",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldrh w21, [x28, #140]",
|
||||
"str w21, [x20, #-4]!",
|
||||
"bfxil x8, x20, #0, #32"
|
||||
"ldrh w20, [x28, #140]",
|
||||
"str w20, [x8, #-4]!",
|
||||
"bfxil x8, x8, #0, #32"
|
||||
]
|
||||
},
|
||||
"pop ss": {
|
||||
"ExpectedInstructionCount": 9,
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x17",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldr w21, [x20]",
|
||||
"add x20, x20, #0x4 (4)",
|
||||
"bfxil x8, x20, #0, #32",
|
||||
"strh w21, [x28, #140]",
|
||||
"ubfx x20, x21, #3, #13",
|
||||
"ldr w20, [x8]",
|
||||
"add x8, x8, #0x4 (4)",
|
||||
"bfxil x8, x8, #0, #32",
|
||||
"strh w20, [x28, #140]",
|
||||
"ubfx w20, w20, #3, #13",
|
||||
"add x0, x28, x20, lsl #2",
|
||||
"ldr w20, [x0, #880]",
|
||||
"str w20, [x28, #160]"
|
||||
]
|
||||
},
|
||||
"push ds": {
|
||||
"ExpectedInstructionCount": 4,
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x1e",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldrh w21, [x28, #142]",
|
||||
"str w21, [x20, #-4]!",
|
||||
"bfxil x8, x20, #0, #32"
|
||||
"ldrh w20, [x28, #142]",
|
||||
"str w20, [x8, #-4]!",
|
||||
"bfxil x8, x8, #0, #32"
|
||||
]
|
||||
},
|
||||
"pop ds": {
|
||||
"ExpectedInstructionCount": 9,
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x1f",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldr w21, [x20]",
|
||||
"add x20, x20, #0x4 (4)",
|
||||
"bfxil x8, x20, #0, #32",
|
||||
"strh w21, [x28, #142]",
|
||||
"ubfx x20, x21, #3, #13",
|
||||
"ldr w20, [x8]",
|
||||
"add x8, x8, #0x4 (4)",
|
||||
"bfxil x8, x8, #0, #32",
|
||||
"strh w20, [x28, #142]",
|
||||
"ubfx w20, w20, #3, #13",
|
||||
"add x0, x28, x20, lsl #2",
|
||||
"ldr w20, [x0, #880]",
|
||||
"str w20, [x28, #164]"
|
||||
]
|
||||
},
|
||||
"daa": {
|
||||
"ExpectedInstructionCount": 63,
|
||||
"ExpectedInstructionCount": 54,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x27",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w20, [x28, #728]",
|
||||
"ubfx x21, x20, #29, #1",
|
||||
"ldrb w22, [x28, #708]",
|
||||
"mov w23, w4",
|
||||
"uxtb x23, w23",
|
||||
"uxtb w23, w4",
|
||||
"and w20, w20, #0xdfffffff",
|
||||
"str w20, [x28, #728]",
|
||||
"and x20, x23, #0xf",
|
||||
@@ -119,16 +111,13 @@
|
||||
"cbnz x20, #+0x10",
|
||||
"mov w20, #0x0",
|
||||
"strb w20, [x28, #708]",
|
||||
"b #+0x38",
|
||||
"b #+0x2c",
|
||||
"add x20, x23, #0x6 (6)",
|
||||
"mov w22, w4",
|
||||
"mov w0, w22",
|
||||
"bfxil w0, w20, #0, #8",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"bfxil w4, w20, #0, #8",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"ldr w20, [x28, #728]",
|
||||
"ubfx x22, x20, #29, #1",
|
||||
"orr w22, w21, w22",
|
||||
"orr x22, x21, x22",
|
||||
"bfi w20, w22, #29, #1",
|
||||
"mov w22, #0x1",
|
||||
"strb w22, [x28, #708]",
|
||||
@@ -140,20 +129,15 @@
|
||||
"ldr w20, [x28, #728]",
|
||||
"and w20, w20, #0xdfffffff",
|
||||
"str w20, [x28, #728]",
|
||||
"b #+0x30",
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"b #+0x20",
|
||||
"uxtb w20, w4",
|
||||
"add x20, x20, #0x60 (96)",
|
||||
"mov w21, w4",
|
||||
"mov w0, w21",
|
||||
"bfxil w0, w20, #0, #8",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"bfxil w4, w20, #0, #8",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"ldr w20, [x28, #728]",
|
||||
"orr w20, w20, #0x20000000",
|
||||
"str w20, [x28, #728]",
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"uxtb w20, w4",
|
||||
"and x21, x20, #0x80",
|
||||
"cmp x21, #0x0 (0)",
|
||||
"cset x21, hs",
|
||||
@@ -171,15 +155,14 @@
|
||||
]
|
||||
},
|
||||
"das": {
|
||||
"ExpectedInstructionCount": 63,
|
||||
"ExpectedInstructionCount": 54,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x2f",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w20, [x28, #728]",
|
||||
"ubfx x21, x20, #29, #1",
|
||||
"ldrb w22, [x28, #708]",
|
||||
"mov w23, w4",
|
||||
"uxtb x23, w23",
|
||||
"uxtb w23, w4",
|
||||
"and w20, w20, #0xdfffffff",
|
||||
"str w20, [x28, #728]",
|
||||
"and x20, x23, #0xf",
|
||||
@@ -189,16 +172,13 @@
|
||||
"cbnz x20, #+0x10",
|
||||
"mov w20, #0x0",
|
||||
"strb w20, [x28, #708]",
|
||||
"b #+0x38",
|
||||
"b #+0x2c",
|
||||
"sub x20, x23, #0x6 (6)",
|
||||
"mov w22, w4",
|
||||
"mov w0, w22",
|
||||
"bfxil w0, w20, #0, #8",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"bfxil w4, w20, #0, #8",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"ldr w20, [x28, #728]",
|
||||
"ubfx x22, x20, #29, #1",
|
||||
"orr w22, w21, w22",
|
||||
"orr x22, x21, x22",
|
||||
"bfi w20, w22, #29, #1",
|
||||
"mov w22, #0x1",
|
||||
"strb w22, [x28, #708]",
|
||||
@@ -210,20 +190,15 @@
|
||||
"ldr w20, [x28, #728]",
|
||||
"and w20, w20, #0xdfffffff",
|
||||
"str w20, [x28, #728]",
|
||||
"b #+0x30",
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"b #+0x20",
|
||||
"uxtb w20, w4",
|
||||
"sub x20, x20, #0x60 (96)",
|
||||
"mov w21, w4",
|
||||
"mov w0, w21",
|
||||
"bfxil w0, w20, #0, #8",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"bfxil w4, w20, #0, #8",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"ldr w20, [x28, #728]",
|
||||
"orr w20, w20, #0x20000000",
|
||||
"str w20, [x28, #728]",
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"uxtb w20, w4",
|
||||
"and x21, x20, #0x80",
|
||||
"cmp x21, #0x0 (0)",
|
||||
"cset x21, hs",
|
||||
@@ -241,41 +216,33 @@
|
||||
]
|
||||
},
|
||||
"aaa": {
|
||||
"ExpectedInstructionCount": 36,
|
||||
"ExpectedInstructionCount": 28,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x37",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldrb w20, [x28, #708]",
|
||||
"mov w21, w4",
|
||||
"uxtb x21, w21",
|
||||
"mov w22, w4",
|
||||
"uxth x22, w22",
|
||||
"uxtb w21, w4",
|
||||
"uxth w22, w4",
|
||||
"and x21, x21, #0xf",
|
||||
"cmp x21, #0x9 (9)",
|
||||
"cset x21, hi",
|
||||
"orr x20, x20, x21",
|
||||
"cbnz x20, #+0x38",
|
||||
"cbnz x20, #+0x2c",
|
||||
"mov w20, #0xff0f",
|
||||
"and x20, x22, x20",
|
||||
"mov w21, w4",
|
||||
"mov w0, w21",
|
||||
"bfxil w0, w20, #0, #16",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"bfxil w4, w20, #0, #16",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"mov w20, #0x0",
|
||||
"ldr w21, [x28, #728]",
|
||||
"and w21, w21, #0xdfffffff",
|
||||
"strb w20, [x28, #708]",
|
||||
"str w21, [x28, #728]",
|
||||
"b #+0x38",
|
||||
"b #+0x2c",
|
||||
"add x20, x22, #0x106 (262)",
|
||||
"mov w21, #0xff0f",
|
||||
"and x20, x20, x21",
|
||||
"mov w21, w4",
|
||||
"mov w0, w21",
|
||||
"bfxil w0, w20, #0, #16",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"bfxil w4, w20, #0, #16",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"mov w20, #0x1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"orr w21, w21, #0x20000000",
|
||||
@@ -284,42 +251,34 @@
|
||||
]
|
||||
},
|
||||
"aas": {
|
||||
"ExpectedInstructionCount": 37,
|
||||
"ExpectedInstructionCount": 29,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x3f",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldrb w20, [x28, #708]",
|
||||
"mov w21, w4",
|
||||
"uxtb x21, w21",
|
||||
"mov w22, w4",
|
||||
"uxth x22, w22",
|
||||
"uxtb w21, w4",
|
||||
"uxth w22, w4",
|
||||
"and x21, x21, #0xf",
|
||||
"cmp x21, #0x9 (9)",
|
||||
"cset x21, hi",
|
||||
"orr x20, x20, x21",
|
||||
"cbnz x20, #+0x38",
|
||||
"cbnz x20, #+0x2c",
|
||||
"mov w20, #0xff0f",
|
||||
"and x20, x22, x20",
|
||||
"mov w21, w4",
|
||||
"mov w0, w21",
|
||||
"bfxil w0, w20, #0, #16",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"bfxil w4, w20, #0, #16",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"mov w20, #0x0",
|
||||
"ldr w21, [x28, #728]",
|
||||
"and w21, w21, #0xdfffffff",
|
||||
"strb w20, [x28, #708]",
|
||||
"str w21, [x28, #728]",
|
||||
"b #+0x3c",
|
||||
"b #+0x30",
|
||||
"sub x20, x22, #0x6 (6)",
|
||||
"sub x20, x20, #0x100 (256)",
|
||||
"mov w21, #0xff0f",
|
||||
"and x20, x20, x21",
|
||||
"mov w21, w4",
|
||||
"mov w0, w21",
|
||||
"bfxil w0, w20, #0, #16",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"bfxil w4, w20, #0, #16",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"mov w20, #0x1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"orr w21, w21, #0x20000000",
|
||||
@@ -328,20 +287,18 @@
|
||||
]
|
||||
},
|
||||
"inc ax": {
|
||||
"ExpectedInstructionCount": 27,
|
||||
"ExpectedInstructionCount": 25,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x40",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w4",
|
||||
"uxth x20, w20",
|
||||
"uxth w20, w4",
|
||||
"add w21, w20, #0x1 (1)",
|
||||
"mov w22, w4",
|
||||
"bfxil w22, w21, #0, #16",
|
||||
"bfxil x4, x22, #0, #32",
|
||||
"uxth x21, w21",
|
||||
"bfxil w4, w21, #0, #16",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"uxth w21, w21",
|
||||
"eor w22, w20, #0x1",
|
||||
"eor w22, w22, w21",
|
||||
"ubfx x22, x22, #4, #1",
|
||||
"ubfx w22, w22, #4, #1",
|
||||
"strb w22, [x28, #708]",
|
||||
"eor x22, x21, #0x1",
|
||||
"strb w22, [x28, #706]",
|
||||
@@ -356,7 +313,7 @@
|
||||
"eor w23, w20, #0x1",
|
||||
"eor w20, w21, w20",
|
||||
"bic w20, w20, w23",
|
||||
"ubfx x20, x20, #15, #1",
|
||||
"ubfx w20, w20, #15, #1",
|
||||
"orr x20, x22, x20, lsl #28",
|
||||
"str w20, [x28, #728]"
|
||||
]
|
||||
@@ -367,42 +324,40 @@
|
||||
"Comment": "0x40",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w4",
|
||||
"add w21, w20, #0x1 (1)",
|
||||
"bfxil x4, x21, #0, #32",
|
||||
"add w4, w20, #0x1 (1)",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"eor w21, w20, #0x1",
|
||||
"eor w21, w21, w4",
|
||||
"ubfx w21, w21, #4, #1",
|
||||
"strb w21, [x28, #708]",
|
||||
"eor x21, x4, #0x1",
|
||||
"strb w21, [x28, #706]",
|
||||
"ldr w21, [x28, #728]",
|
||||
"ubfx x21, x21, #29, #1",
|
||||
"tst w4, w4",
|
||||
"mrs x22, nzcv",
|
||||
"orr x21, x22, x21, lsl #29",
|
||||
"eor w22, w20, #0x1",
|
||||
"eor w22, w22, w21",
|
||||
"ubfx x22, x22, #4, #1",
|
||||
"strb w22, [x28, #708]",
|
||||
"eor x22, x21, #0x1",
|
||||
"strb w22, [x28, #706]",
|
||||
"ldr w22, [x28, #728]",
|
||||
"ubfx x22, x22, #29, #1",
|
||||
"tst w21, w21",
|
||||
"mrs x23, nzcv",
|
||||
"orr w22, w23, w22, lsl #29",
|
||||
"eor w23, w20, #0x1",
|
||||
"eor w20, w21, w20",
|
||||
"bic w20, w20, w23",
|
||||
"ubfx x20, x20, #31, #1",
|
||||
"orr w20, w22, w20, lsl #28",
|
||||
"eor w20, w4, w20",
|
||||
"bic w20, w20, w22",
|
||||
"lsr w20, w20, #31",
|
||||
"orr x20, x21, x20, lsl #28",
|
||||
"str w20, [x28, #728]"
|
||||
]
|
||||
},
|
||||
"dec ax": {
|
||||
"ExpectedInstructionCount": 27,
|
||||
"ExpectedInstructionCount": 25,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x48",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w4",
|
||||
"uxth x20, w20",
|
||||
"uxth w20, w4",
|
||||
"sub w21, w20, #0x1 (1)",
|
||||
"mov w22, w4",
|
||||
"bfxil w22, w21, #0, #16",
|
||||
"bfxil x4, x22, #0, #32",
|
||||
"uxth x21, w21",
|
||||
"bfxil w4, w21, #0, #16",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"uxth w21, w21",
|
||||
"eor w22, w20, #0x1",
|
||||
"eor w22, w22, w21",
|
||||
"ubfx x22, x22, #4, #1",
|
||||
"ubfx w22, w22, #4, #1",
|
||||
"strb w22, [x28, #708]",
|
||||
"eor x22, x21, #0x1",
|
||||
"strb w22, [x28, #706]",
|
||||
@@ -417,7 +372,7 @@
|
||||
"eor w23, w20, #0x1",
|
||||
"eor w20, w21, w20",
|
||||
"and w20, w23, w20",
|
||||
"ubfx x20, x20, #15, #1",
|
||||
"ubfx w20, w20, #15, #1",
|
||||
"orr x20, x22, x20, lsl #28",
|
||||
"str w20, [x28, #728]"
|
||||
]
|
||||
@@ -428,159 +383,136 @@
|
||||
"Comment": "0x48",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w4",
|
||||
"sub w21, w20, #0x1 (1)",
|
||||
"bfxil x4, x21, #0, #32",
|
||||
"sub w4, w20, #0x1 (1)",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"eor w21, w20, #0x1",
|
||||
"eor w21, w21, w4",
|
||||
"ubfx w21, w21, #4, #1",
|
||||
"strb w21, [x28, #708]",
|
||||
"eor x21, x4, #0x1",
|
||||
"strb w21, [x28, #706]",
|
||||
"ldr w21, [x28, #728]",
|
||||
"ubfx x21, x21, #29, #1",
|
||||
"tst w4, w4",
|
||||
"mrs x22, nzcv",
|
||||
"orr x21, x22, x21, lsl #29",
|
||||
"eor w22, w20, #0x1",
|
||||
"eor w22, w22, w21",
|
||||
"ubfx x22, x22, #4, #1",
|
||||
"strb w22, [x28, #708]",
|
||||
"eor x22, x21, #0x1",
|
||||
"strb w22, [x28, #706]",
|
||||
"ldr w22, [x28, #728]",
|
||||
"ubfx x22, x22, #29, #1",
|
||||
"tst w21, w21",
|
||||
"mrs x23, nzcv",
|
||||
"orr w22, w23, w22, lsl #29",
|
||||
"eor w23, w20, #0x1",
|
||||
"eor w20, w21, w20",
|
||||
"and w20, w23, w20",
|
||||
"ubfx x20, x20, #31, #1",
|
||||
"orr w20, w22, w20, lsl #28",
|
||||
"eor w20, w4, w20",
|
||||
"and w20, w22, w20",
|
||||
"lsr w20, w20, #31",
|
||||
"orr x20, x21, x20, lsl #28",
|
||||
"str w20, [x28, #728]"
|
||||
]
|
||||
},
|
||||
"pusha": {
|
||||
"ExpectedInstructionCount": 19,
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x60",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"mov w21, w4",
|
||||
"stur w21, [x20, #-4]",
|
||||
"sub w21, w20, #0x4 (4)",
|
||||
"mov w22, w5",
|
||||
"str w22, [x21, #-4]!",
|
||||
"mov w22, w6",
|
||||
"str w22, [x21, #-4]!",
|
||||
"mov w22, w7",
|
||||
"str w22, [x21, #-4]!",
|
||||
"stur w20, [x21, #-4]",
|
||||
"sub w20, w21, #0x4 (4)",
|
||||
"mov w21, w9",
|
||||
"str w21, [x20, #-4]!",
|
||||
"mov w21, w10",
|
||||
"str w21, [x20, #-4]!",
|
||||
"mov w21, w11",
|
||||
"str w21, [x20, #-4]!",
|
||||
"bfxil x8, x20, #0, #32"
|
||||
"str w4, [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]!",
|
||||
"mov w8, w20",
|
||||
"str w11, [x8, #-4]!",
|
||||
"bfxil x8, x8, #0, #32"
|
||||
]
|
||||
},
|
||||
"pushad": {
|
||||
"ExpectedInstructionCount": 19,
|
||||
"ExpectedInstructionCount": 11,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x60",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"mov w21, w4",
|
||||
"stur w21, [x20, #-4]",
|
||||
"sub w21, w20, #0x4 (4)",
|
||||
"mov w22, w5",
|
||||
"str w22, [x21, #-4]!",
|
||||
"mov w22, w6",
|
||||
"str w22, [x21, #-4]!",
|
||||
"mov w22, w7",
|
||||
"str w22, [x21, #-4]!",
|
||||
"stur w20, [x21, #-4]",
|
||||
"sub w20, w21, #0x4 (4)",
|
||||
"mov w21, w9",
|
||||
"str w21, [x20, #-4]!",
|
||||
"mov w21, w10",
|
||||
"str w21, [x20, #-4]!",
|
||||
"mov w21, w11",
|
||||
"str w21, [x20, #-4]!",
|
||||
"bfxil x8, x20, #0, #32"
|
||||
"str w4, [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]!",
|
||||
"mov w8, w20",
|
||||
"str w11, [x8, #-4]!",
|
||||
"bfxil x8, x8, #0, #32"
|
||||
]
|
||||
},
|
||||
"popa": {
|
||||
"ExpectedInstructionCount": 23,
|
||||
"ExpectedInstructionCount": 22,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x61",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldr w21, [x20]",
|
||||
"bfxil x11, x21, #0, #32",
|
||||
"ldr w11, [x8]",
|
||||
"bfxil x11, x11, #0, #32",
|
||||
"add x20, x8, #0x4 (4)",
|
||||
"ldr w10, [x8, #4]",
|
||||
"bfxil x10, x10, #0, #32",
|
||||
"add x21, x20, #0x4 (4)",
|
||||
"ldr w20, [x20, #4]",
|
||||
"bfxil x10, x20, #0, #32",
|
||||
"add x20, x21, #0x4 (4)",
|
||||
"ldr w21, [x21, #4]",
|
||||
"bfxil x9, x21, #0, #32",
|
||||
"add x21, x20, #0x8 (8)",
|
||||
"ldr w20, [x20, #8]",
|
||||
"bfxil x7, x20, #0, #32",
|
||||
"add x20, x21, #0x4 (4)",
|
||||
"ldr w21, [x21, #4]",
|
||||
"bfxil x6, x21, #0, #32",
|
||||
"ldr w9, [x20, #4]",
|
||||
"bfxil x9, x9, #0, #32",
|
||||
"add x20, x21, #0x8 (8)",
|
||||
"ldr w7, [x21, #8]",
|
||||
"bfxil x7, x7, #0, #32",
|
||||
"add x21, x20, #0x4 (4)",
|
||||
"ldr w20, [x20, #4]",
|
||||
"bfxil x5, x20, #0, #32",
|
||||
"ldr w6, [x20, #4]",
|
||||
"bfxil x6, x6, #0, #32",
|
||||
"add x20, x21, #0x4 (4)",
|
||||
"ldr w21, [x21, #4]",
|
||||
"bfxil x4, x21, #0, #32",
|
||||
"add x20, x20, #0x4 (4)",
|
||||
"bfxil x8, x20, #0, #32"
|
||||
"ldr w5, [x21, #4]",
|
||||
"bfxil x5, x5, #0, #32",
|
||||
"add x21, x20, #0x4 (4)",
|
||||
"ldr w4, [x20, #4]",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"add x8, x21, #0x4 (4)",
|
||||
"bfxil x8, x8, #0, #32"
|
||||
]
|
||||
},
|
||||
"popad": {
|
||||
"ExpectedInstructionCount": 23,
|
||||
"ExpectedInstructionCount": 22,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x61",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldr w21, [x20]",
|
||||
"bfxil x11, x21, #0, #32",
|
||||
"ldr w11, [x8]",
|
||||
"bfxil x11, x11, #0, #32",
|
||||
"add x20, x8, #0x4 (4)",
|
||||
"ldr w10, [x8, #4]",
|
||||
"bfxil x10, x10, #0, #32",
|
||||
"add x21, x20, #0x4 (4)",
|
||||
"ldr w20, [x20, #4]",
|
||||
"bfxil x10, x20, #0, #32",
|
||||
"add x20, x21, #0x4 (4)",
|
||||
"ldr w21, [x21, #4]",
|
||||
"bfxil x9, x21, #0, #32",
|
||||
"add x21, x20, #0x8 (8)",
|
||||
"ldr w20, [x20, #8]",
|
||||
"bfxil x7, x20, #0, #32",
|
||||
"add x20, x21, #0x4 (4)",
|
||||
"ldr w21, [x21, #4]",
|
||||
"bfxil x6, x21, #0, #32",
|
||||
"ldr w9, [x20, #4]",
|
||||
"bfxil x9, x9, #0, #32",
|
||||
"add x20, x21, #0x8 (8)",
|
||||
"ldr w7, [x21, #8]",
|
||||
"bfxil x7, x7, #0, #32",
|
||||
"add x21, x20, #0x4 (4)",
|
||||
"ldr w20, [x20, #4]",
|
||||
"bfxil x5, x20, #0, #32",
|
||||
"ldr w6, [x20, #4]",
|
||||
"bfxil x6, x6, #0, #32",
|
||||
"add x20, x21, #0x4 (4)",
|
||||
"ldr w21, [x21, #4]",
|
||||
"bfxil x4, x21, #0, #32",
|
||||
"add x20, x20, #0x4 (4)",
|
||||
"bfxil x8, x20, #0, #32"
|
||||
"ldr w5, [x21, #4]",
|
||||
"bfxil x5, x5, #0, #32",
|
||||
"add x21, x20, #0x4 (4)",
|
||||
"ldr w4, [x20, #4]",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"add x8, x21, #0x4 (4)",
|
||||
"bfxil x8, x8, #0, #32"
|
||||
]
|
||||
},
|
||||
"aam": {
|
||||
"ExpectedInstructionCount": 29,
|
||||
"ExpectedInstructionCount": 24,
|
||||
"Optimal": "No",
|
||||
"Comment": "0xd4",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"uxtb w20, w4",
|
||||
"mov w21, #0xa",
|
||||
"udiv x22, x20, x21",
|
||||
"udiv x2, x20, x21",
|
||||
"msub x20, x2, x21, x20",
|
||||
"lsl x21, x22, #8",
|
||||
"add x20, x21, x20",
|
||||
"mov w21, w4",
|
||||
"mov w0, w21",
|
||||
"bfxil w0, w20, #0, #16",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"bfxil w4, w20, #0, #16",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"uxtb w20, w4",
|
||||
"and x21, x20, #0x80",
|
||||
"cmp x21, #0x0 (0)",
|
||||
"cset x21, hs",
|
||||
@@ -598,26 +530,20 @@
|
||||
]
|
||||
},
|
||||
"aad": {
|
||||
"ExpectedInstructionCount": 30,
|
||||
"ExpectedInstructionCount": 24,
|
||||
"Optimal": "No",
|
||||
"Comment": "0xd5",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"mov w21, w4",
|
||||
"uxth x21, w21",
|
||||
"uxtb w20, w4",
|
||||
"uxth w21, w4",
|
||||
"lsr w21, w21, #8",
|
||||
"mov w22, #0xa",
|
||||
"mul x21, x21, x22",
|
||||
"add x20, x20, x21",
|
||||
"and x20, x20, #0xff",
|
||||
"mov w21, w4",
|
||||
"mov w0, w21",
|
||||
"bfxil w0, w20, #0, #16",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"bfxil w4, w20, #0, #16",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"uxtb w20, w4",
|
||||
"and x21, x20, #0x80",
|
||||
"cmp x21, #0x0 (0)",
|
||||
"cset x21, hs",
|
||||
@@ -635,28 +561,23 @@
|
||||
]
|
||||
},
|
||||
"db 0xd4, 0x40": {
|
||||
"ExpectedInstructionCount": 29,
|
||||
"ExpectedInstructionCount": 24,
|
||||
"Optimal": "No",
|
||||
"Comment": [
|
||||
"aam with a different immediate byte base",
|
||||
"0xd4"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"uxtb w20, w4",
|
||||
"mov w21, #0x40",
|
||||
"udiv x22, x20, x21",
|
||||
"udiv x2, x20, x21",
|
||||
"msub x20, x2, x21, x20",
|
||||
"lsl x21, x22, #8",
|
||||
"add x20, x21, x20",
|
||||
"mov w21, w4",
|
||||
"mov w0, w21",
|
||||
"bfxil w0, w20, #0, #16",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"bfxil w4, w20, #0, #16",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"uxtb w20, w4",
|
||||
"and x21, x20, #0x80",
|
||||
"cmp x21, #0x0 (0)",
|
||||
"cset x21, hs",
|
||||
@@ -674,28 +595,22 @@
|
||||
]
|
||||
},
|
||||
"db 0xd5, 0x40": {
|
||||
"ExpectedInstructionCount": 29,
|
||||
"ExpectedInstructionCount": 23,
|
||||
"Optimal": "No",
|
||||
"Comment": [
|
||||
"aad with a different immediate byte base",
|
||||
"0xd5"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"mov w21, w4",
|
||||
"uxth x21, w21",
|
||||
"uxtb w20, w4",
|
||||
"uxth w21, w4",
|
||||
"lsr w21, w21, #8",
|
||||
"lsl x21, x21, #6",
|
||||
"add x20, x20, x21",
|
||||
"and x20, x20, #0xff",
|
||||
"mov w21, w4",
|
||||
"mov w0, w21",
|
||||
"bfxil w0, w20, #0, #16",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"bfxil w4, w20, #0, #16",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"uxtb w20, w4",
|
||||
"and x21, x20, #0x80",
|
||||
"cmp x21, #0x0 (0)",
|
||||
"cset x21, hs",
|
||||
@@ -713,23 +628,18 @@
|
||||
]
|
||||
},
|
||||
"salc": {
|
||||
"ExpectedInstructionCount": 14,
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Optimal": "No",
|
||||
"Comment": "0xd6",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w4",
|
||||
"uxtb x20, w20",
|
||||
"uxtb w20, w4",
|
||||
"ldr w21, [x28, #728]",
|
||||
"ubfx x22, x21, #29, #1",
|
||||
"ubfx w22, w21, #29, #1",
|
||||
"add w20, w20, w22",
|
||||
"mov w22, w4",
|
||||
"uxtb x22, w22",
|
||||
"uxtb w22, w4",
|
||||
"sub w20, w22, w20",
|
||||
"mov w22, w4",
|
||||
"mov w0, w22",
|
||||
"bfxil w0, w20, #0, #8",
|
||||
"mov w20, w0",
|
||||
"bfxil x4, x20, #0, #32",
|
||||
"bfxil w4, w20, #0, #8",
|
||||
"bfxil x4, x4, #0, #32",
|
||||
"str w21, [x28, #728]"
|
||||
]
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -26,8 +26,8 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"ubfx x20, x20, #0, #1",
|
||||
"uxth w20, w4",
|
||||
"ubfx w20, w20, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -40,8 +40,8 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"ubfx x20, x20, #0, #1",
|
||||
"lsr w20, w4, #0",
|
||||
"ubfx w20, w20, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -67,9 +67,9 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"lsr w20, w20, #15",
|
||||
"ubfx x20, x20, #0, #1",
|
||||
"ubfx w20, w20, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -82,9 +82,9 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /4",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"lsr w20, w20, #31",
|
||||
"ubfx x20, x20, #0, #1",
|
||||
"ubfx w20, w20, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -111,10 +111,10 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"orr x21, x20, #0x1",
|
||||
"bfxil x4, x21, #0, #16",
|
||||
"ubfx x20, x20, #0, #1",
|
||||
"ubfx w20, w20, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -127,10 +127,10 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"orr x21, x20, #0x1",
|
||||
"ubfx x4, x21, #0, #32",
|
||||
"ubfx x20, x20, #0, #1",
|
||||
"lsr w4, w21, #0",
|
||||
"ubfx w20, w20, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -158,11 +158,11 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"lsr w21, w20, #15",
|
||||
"orr x20, x20, #0x8000",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
"ubfx x20, x21, #0, #1",
|
||||
"ubfx w20, w21, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -175,11 +175,11 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /5",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"lsr w21, w20, #31",
|
||||
"orr x20, x20, #0x80000000",
|
||||
"ubfx x4, x20, #0, #32",
|
||||
"ubfx x20, x21, #0, #1",
|
||||
"lsr w4, w20, #0",
|
||||
"ubfx w20, w21, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -207,10 +207,10 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /6",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"and w21, w20, #0xfffffffe",
|
||||
"uxth w20, w4",
|
||||
"and x21, x20, #0xfffffffffffffffe",
|
||||
"bfxil x4, x21, #0, #16",
|
||||
"ubfx x20, x20, #0, #1",
|
||||
"ubfx w20, w20, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -219,13 +219,14 @@
|
||||
]
|
||||
},
|
||||
"btr eax, 0": {
|
||||
"ExpectedInstructionCount": 8,
|
||||
"ExpectedInstructionCount": 9,
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /6",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"and w4, w20, #0xfffffffe",
|
||||
"ubfx x20, x20, #0, #1",
|
||||
"lsr w20, w4, #0",
|
||||
"and x21, x20, #0xfffffffffffffffe",
|
||||
"lsr w4, w21, #0",
|
||||
"ubfx w20, w20, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -253,11 +254,11 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /6",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"lsr w21, w20, #15",
|
||||
"and w20, w20, #0xffff7fff",
|
||||
"and x20, x20, #0xffffffffffff7fff",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
"ubfx x20, x21, #0, #1",
|
||||
"ubfx w20, w21, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -266,14 +267,15 @@
|
||||
]
|
||||
},
|
||||
"btr eax, 31": {
|
||||
"ExpectedInstructionCount": 9,
|
||||
"ExpectedInstructionCount": 10,
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /6",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"lsr w21, w20, #31",
|
||||
"and w4, w20, #0x7fffffff",
|
||||
"ubfx x20, x21, #0, #1",
|
||||
"and x20, x20, #0xffffffff7fffffff",
|
||||
"lsr w4, w20, #0",
|
||||
"ubfx w20, w21, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -301,10 +303,10 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"eor x21, x20, #0x1",
|
||||
"bfxil x4, x21, #0, #16",
|
||||
"ubfx x20, x20, #0, #1",
|
||||
"ubfx w20, w20, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -317,10 +319,10 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"eor x21, x20, #0x1",
|
||||
"ubfx x4, x21, #0, #32",
|
||||
"ubfx x20, x20, #0, #1",
|
||||
"lsr w4, w21, #0",
|
||||
"ubfx w20, w20, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -348,11 +350,11 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"lsr w21, w20, #15",
|
||||
"eor x20, x20, #0x8000",
|
||||
"bfxil x4, x20, #0, #16",
|
||||
"ubfx x20, x21, #0, #1",
|
||||
"ubfx w20, w21, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -365,11 +367,11 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "GROUP8 0x0F 0xBA /7",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"lsr w21, w20, #31",
|
||||
"eor x20, x20, #0x80000000",
|
||||
"ubfx x4, x20, #0, #32",
|
||||
"ubfx x20, x21, #0, #1",
|
||||
"lsr w4, w20, #0",
|
||||
"ubfx w20, w21, #0, #1",
|
||||
"ldr w21, [x28, #728]",
|
||||
"mov w0, w21",
|
||||
"bfi w0, w20, #29, #1",
|
||||
@@ -398,12 +400,12 @@
|
||||
"Comment": "GROUP9 0x0F 0xC7 /1",
|
||||
"ExpectedArm64ASM": [
|
||||
"add x20, x9, #0x0 (0)",
|
||||
"ubfx x21, x4, #0, #32",
|
||||
"ubfx x22, x6, #0, #32",
|
||||
"lsr w21, w4, #0",
|
||||
"lsr w22, w6, #0",
|
||||
"mov w23, w22",
|
||||
"mov w22, w21",
|
||||
"ubfx x21, x7, #0, #32",
|
||||
"ubfx x24, x5, #0, #32",
|
||||
"lsr w21, w7, #0",
|
||||
"lsr w24, w5, #0",
|
||||
"mov w25, w24",
|
||||
"mov w24, w21",
|
||||
"mov w2, w22",
|
||||
@@ -478,7 +480,7 @@
|
||||
"cset x21, ne",
|
||||
"mov x22, x20",
|
||||
"mov x20, x21",
|
||||
"ubfx x4, x22, #0, #32",
|
||||
"lsr w4, w22, #0",
|
||||
"mov w21, #0x0",
|
||||
"strb w21, [x28, #706]",
|
||||
"strb w21, [x28, #708]",
|
||||
@@ -528,7 +530,7 @@
|
||||
"cset x21, ne",
|
||||
"mov x22, x20",
|
||||
"mov x20, x21",
|
||||
"ubfx x4, x22, #0, #32",
|
||||
"lsr w4, w22, #0",
|
||||
"mov w21, #0x0",
|
||||
"strb w21, [x28, #706]",
|
||||
"strb w21, [x28, #708]",
|
||||
@@ -1153,12 +1155,12 @@
|
||||
"ldp x19, x29, [x28, #120]",
|
||||
"strh w20, [x28, #1008]",
|
||||
"ldrh w20, [x4, #2]",
|
||||
"ubfx x21, x20, #11, #3",
|
||||
"ubfx w21, w20, #11, #3",
|
||||
"strb w21, [x28, #747]",
|
||||
"ubfx x21, x20, #8, #1",
|
||||
"ubfx x22, x20, #9, #1",
|
||||
"ubfx x23, x20, #10, #1",
|
||||
"ubfx x20, x20, #14, #1",
|
||||
"ubfx w21, w20, #8, #1",
|
||||
"ubfx w22, w20, #9, #1",
|
||||
"ubfx w23, w20, #10, #1",
|
||||
"ubfx w20, w20, #14, #1",
|
||||
"strb w21, [x28, #744]",
|
||||
"strb w22, [x28, #745]",
|
||||
"strb w23, [x28, #746]",
|
||||
@@ -1198,7 +1200,7 @@
|
||||
"ldr q30, [x4, #384]",
|
||||
"ldr q31, [x4, #400]",
|
||||
"ldr w20, [x4, #24]",
|
||||
"ubfx x20, x20, #13, #3",
|
||||
"ubfx w20, w20, #13, #3",
|
||||
"and x0, x20, #0x3",
|
||||
"cmp x0, #0x2 (2)",
|
||||
"mov w2, #0x1",
|
||||
@@ -1238,7 +1240,7 @@
|
||||
"Comment": "GROUP15 0x0F 0xAE /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w20, [x4]",
|
||||
"ubfx x20, x20, #13, #3",
|
||||
"ubfx w20, w20, #13, #3",
|
||||
"and x0, x20, #0x3",
|
||||
"cmp x0, #0x2 (2)",
|
||||
"mov w2, #0x1",
|
||||
@@ -1261,7 +1263,7 @@
|
||||
"Optimal": "Yes",
|
||||
"Comment": "GROUP15 0x0F 0xAE /2",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"str x20, [x28, #176]"
|
||||
]
|
||||
},
|
||||
@@ -1302,7 +1304,7 @@
|
||||
"Optimal": "Yes",
|
||||
"Comment": "GROUP15 0x0F 0xAE /3",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"str x20, [x28, #168]"
|
||||
]
|
||||
},
|
||||
@@ -1467,12 +1469,12 @@
|
||||
"ldp x19, x29, [x28, #120]",
|
||||
"strh w22, [x28, #1008]",
|
||||
"ldrh w22, [x20, #2]",
|
||||
"ubfx x23, x22, #11, #3",
|
||||
"ubfx w23, w22, #11, #3",
|
||||
"strb w23, [x28, #747]",
|
||||
"ubfx x23, x22, #8, #1",
|
||||
"ubfx x24, x22, #9, #1",
|
||||
"ubfx x25, x22, #10, #1",
|
||||
"ubfx x22, x22, #14, #1",
|
||||
"ubfx w23, w22, #8, #1",
|
||||
"ubfx w24, w22, #9, #1",
|
||||
"ubfx w25, w22, #10, #1",
|
||||
"ubfx w22, w22, #14, #1",
|
||||
"strb w23, [x28, #744]",
|
||||
"strb w24, [x28, #745]",
|
||||
"strb w25, [x28, #746]",
|
||||
@@ -1594,7 +1596,7 @@
|
||||
"cbnz x21, #+0x8",
|
||||
"b #+0x4c",
|
||||
"ldr w20, [x20, #24]",
|
||||
"ubfx x20, x20, #13, #3",
|
||||
"ubfx w20, w20, #13, #3",
|
||||
"and x0, x20, #0x3",
|
||||
"cmp x0, #0x2 (2)",
|
||||
"mov w2, #0x1",
|
||||
|
||||
@@ -9,54 +9,50 @@
|
||||
},
|
||||
"Instructions": {
|
||||
"push fs": {
|
||||
"ExpectedInstructionCount": 4,
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x0f 0xa0",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldrh w21, [x28, #146]",
|
||||
"str w21, [x20, #-4]!",
|
||||
"bfxil x8, x20, #0, #32"
|
||||
"ldrh w20, [x28, #146]",
|
||||
"str w20, [x8, #-4]!",
|
||||
"bfxil x8, x8, #0, #32"
|
||||
]
|
||||
},
|
||||
"pop fs": {
|
||||
"ExpectedInstructionCount": 9,
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x0f 0xa1",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldr w21, [x20]",
|
||||
"add x20, x20, #0x4 (4)",
|
||||
"bfxil x8, x20, #0, #32",
|
||||
"strh w21, [x28, #146]",
|
||||
"ubfx x20, x21, #3, #13",
|
||||
"ldr w20, [x8]",
|
||||
"add x8, x8, #0x4 (4)",
|
||||
"bfxil x8, x8, #0, #32",
|
||||
"strh w20, [x28, #146]",
|
||||
"ubfx w20, w20, #3, #13",
|
||||
"add x0, x28, x20, lsl #2",
|
||||
"ldr w20, [x0, #880]",
|
||||
"str w20, [x28, #176]"
|
||||
]
|
||||
},
|
||||
"push gs": {
|
||||
"ExpectedInstructionCount": 4,
|
||||
"ExpectedInstructionCount": 3,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x0f 0xa8",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldrh w21, [x28, #144]",
|
||||
"str w21, [x20, #-4]!",
|
||||
"bfxil x8, x20, #0, #32"
|
||||
"ldrh w20, [x28, #144]",
|
||||
"str w20, [x8, #-4]!",
|
||||
"bfxil x8, x8, #0, #32"
|
||||
]
|
||||
},
|
||||
"pop gs": {
|
||||
"ExpectedInstructionCount": 9,
|
||||
"ExpectedInstructionCount": 8,
|
||||
"Optimal": "No",
|
||||
"Comment": "0x0f 0xa9",
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, w8",
|
||||
"ldr w21, [x20]",
|
||||
"add x20, x20, #0x4 (4)",
|
||||
"bfxil x8, x20, #0, #32",
|
||||
"strh w21, [x28, #144]",
|
||||
"ubfx x20, x21, #3, #13",
|
||||
"ldr w20, [x8]",
|
||||
"add x8, x8, #0x4 (4)",
|
||||
"bfxil x8, x8, #0, #32",
|
||||
"strh w20, [x28, #144]",
|
||||
"ubfx w20, w20, #3, #13",
|
||||
"add x0, x28, x20, lsl #2",
|
||||
"ldr w20, [x0, #880]",
|
||||
"str w20, [x28, #168]"
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
"strb w20, [x28, #706]",
|
||||
"mov w20, #0x0",
|
||||
"mov w22, #0x90000000",
|
||||
"bic w21, w21, w22",
|
||||
"bic x21, x21, x22",
|
||||
"strb w20, [x28, #708]",
|
||||
"str w21, [x28, #728]"
|
||||
]
|
||||
@@ -195,7 +195,7 @@
|
||||
"strb w20, [x28, #706]",
|
||||
"mov w20, #0x0",
|
||||
"mov w22, #0x90000000",
|
||||
"bic w21, w21, w22",
|
||||
"bic x21, x21, x22",
|
||||
"strb w20, [x28, #708]",
|
||||
"str w21, [x28, #728]"
|
||||
]
|
||||
|
||||
@@ -436,7 +436,7 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "0xf3 0x0f 0xb8",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w7",
|
||||
"uxth w20, w7",
|
||||
"fmov s0, w20",
|
||||
"cnt v0.8b, v0.8b",
|
||||
"addp v0.8b, v0.8b, v0.8b",
|
||||
@@ -456,7 +456,7 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "0xf3 0x0f 0xb8",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"fmov s0, w20",
|
||||
"cnt v0.8b, v0.8b",
|
||||
"addv b0, v0.8b",
|
||||
@@ -493,7 +493,7 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "0xf3 0x0f 0xbc",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w7",
|
||||
"uxth w20, w7",
|
||||
"rbit w20, w20",
|
||||
"orr w20, w20, #0x8000",
|
||||
"clz w20, w20",
|
||||
@@ -501,7 +501,7 @@
|
||||
"cmp x20, #0x0 (0)",
|
||||
"cset x21, eq",
|
||||
"lsl x21, x21, #29",
|
||||
"ubfx x20, x20, #0, #1",
|
||||
"ubfx w20, w20, #0, #1",
|
||||
"orr x20, x21, x20, lsl #30",
|
||||
"str w20, [x28, #728]"
|
||||
]
|
||||
@@ -511,13 +511,13 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "0xf3 0x0f 0xbc",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"rbit w4, w20",
|
||||
"clz w4, w4",
|
||||
"cmp x4, #0x0 (0)",
|
||||
"cset x20, eq",
|
||||
"lsl x20, x20, #29",
|
||||
"ubfx x21, x4, #0, #1",
|
||||
"ubfx w21, w4, #0, #1",
|
||||
"orr x20, x20, x21, lsl #30",
|
||||
"str w20, [x28, #728]"
|
||||
]
|
||||
@@ -542,7 +542,7 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "0xf3 0x0f 0xbd",
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w7",
|
||||
"uxth w20, w7",
|
||||
"lsl w21, w20, #16",
|
||||
"orr w21, w21, #0x8000",
|
||||
"clz w21, w21",
|
||||
@@ -550,7 +550,7 @@
|
||||
"cmp x20, #0x0 (0)",
|
||||
"cset x21, eq",
|
||||
"lsl x21, x21, #29",
|
||||
"ubfx x20, x20, #15, #1",
|
||||
"ubfx w20, w20, #15, #1",
|
||||
"orr x20, x21, x20, lsl #30",
|
||||
"str w20, [x28, #728]"
|
||||
]
|
||||
@@ -560,12 +560,12 @@
|
||||
"Optimal": "No",
|
||||
"Comment": "0xf3 0x0f 0xbd",
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"clz w4, w20",
|
||||
"cmp x20, #0x0 (0)",
|
||||
"cset x21, eq",
|
||||
"lsl x21, x21, #29",
|
||||
"ubfx x20, x20, #31, #1",
|
||||
"lsr w20, w20, #31",
|
||||
"orr x20, x21, x20, lsl #30",
|
||||
"str w20, [x28, #728]"
|
||||
]
|
||||
|
||||
@@ -546,45 +546,45 @@
|
||||
"mov z4.d, p7/m, z16.d",
|
||||
"mov w20, #0x0",
|
||||
"mov w21, v4.s[0]",
|
||||
"ubfx x21, x21, #31, #1",
|
||||
"lsr w21, w21, #31",
|
||||
"orr x20, x20, x21",
|
||||
"mov w21, v4.s[1]",
|
||||
"ubfx x21, x21, #31, #1",
|
||||
"lsr w21, w21, #31",
|
||||
"lsl w21, w21, #1",
|
||||
"orr x20, x20, x21",
|
||||
"mov w21, v4.s[2]",
|
||||
"ubfx x21, x21, #31, #1",
|
||||
"lsr w21, w21, #31",
|
||||
"lsl w21, w21, #2",
|
||||
"orr x20, x20, x21",
|
||||
"mov w21, v4.s[3]",
|
||||
"ubfx x21, x21, #31, #1",
|
||||
"lsr w21, w21, #31",
|
||||
"lsl w21, w21, #3",
|
||||
"orr x20, x20, x21",
|
||||
"not p0.b, p7/z, p6.b",
|
||||
"compact z0.d, p0, z4.d",
|
||||
"mov w21, v4.s[0]",
|
||||
"ubfx x21, x21, #31, #1",
|
||||
"lsr w21, w21, #31",
|
||||
"lsl w21, w21, #4",
|
||||
"orr x20, x20, x21",
|
||||
"not p0.b, p7/z, p6.b",
|
||||
"compact z0.d, p0, z4.d",
|
||||
"mov w21, v4.s[1]",
|
||||
"ubfx x21, x21, #31, #1",
|
||||
"lsr w21, w21, #31",
|
||||
"lsl w21, w21, #5",
|
||||
"orr x20, x20, x21",
|
||||
"not p0.b, p7/z, p6.b",
|
||||
"compact z0.d, p0, z4.d",
|
||||
"mov w21, v4.s[2]",
|
||||
"ubfx x21, x21, #31, #1",
|
||||
"lsr w21, w21, #31",
|
||||
"lsl w21, w21, #6",
|
||||
"orr x20, x20, x21",
|
||||
"not p0.b, p7/z, p6.b",
|
||||
"compact z0.d, p0, z4.d",
|
||||
"mov w21, v4.s[3]",
|
||||
"ubfx x21, x21, #31, #1",
|
||||
"lsr w21, w21, #31",
|
||||
"lsl w21, w21, #7",
|
||||
"orr x20, x20, x21",
|
||||
"ubfx x4, x20, #0, #32"
|
||||
"lsr w4, w20, #0"
|
||||
]
|
||||
},
|
||||
"vmovmskpd rax, xmm0": {
|
||||
@@ -629,7 +629,7 @@
|
||||
"lsr x21, x21, #63",
|
||||
"lsl x21, x21, #3",
|
||||
"orr x20, x20, x21",
|
||||
"ubfx x4, x20, #0, #32"
|
||||
"lsr w4, w20, #0"
|
||||
]
|
||||
},
|
||||
"vsqrtps xmm0, xmm1": {
|
||||
@@ -3023,7 +3023,7 @@
|
||||
"Map 1 0b01 0xC4 128-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"mov z4.d, p7/m, z17.d",
|
||||
"mov v4.h[0], w20",
|
||||
"mov v4.16b, v4.16b",
|
||||
@@ -3037,7 +3037,7 @@
|
||||
"Map 1 0b01 0xC4 128-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"mov z4.d, p7/m, z17.d",
|
||||
"mov v4.h[1], w20",
|
||||
"mov v4.16b, v4.16b",
|
||||
@@ -3051,7 +3051,7 @@
|
||||
"Map 1 0b01 0xC4 128-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"uxth x20, w4",
|
||||
"uxth w20, w4",
|
||||
"mov z4.d, p7/m, z17.d",
|
||||
"mov v4.h[7], w20",
|
||||
"mov v4.16b, v4.16b",
|
||||
@@ -3805,7 +3805,7 @@
|
||||
"strb w20, [x28, #706]",
|
||||
"mov w20, #0x0",
|
||||
"mov w22, #0x90000000",
|
||||
"bic w21, w21, w22",
|
||||
"bic x21, x21, x22",
|
||||
"strb w20, [x28, #708]",
|
||||
"str w21, [x28, #728]"
|
||||
]
|
||||
@@ -3837,7 +3837,7 @@
|
||||
"strb w20, [x28, #706]",
|
||||
"mov w20, #0x0",
|
||||
"mov w22, #0x90000000",
|
||||
"bic w21, w21, w22",
|
||||
"bic x21, x21, x22",
|
||||
"strb w20, [x28, #708]",
|
||||
"str w21, [x28, #728]"
|
||||
]
|
||||
@@ -3869,7 +3869,7 @@
|
||||
"strb w20, [x28, #706]",
|
||||
"mov w20, #0x0",
|
||||
"mov w22, #0x90000000",
|
||||
"bic w21, w21, w22",
|
||||
"bic x21, x21, x22",
|
||||
"strb w20, [x28, #708]",
|
||||
"str w21, [x28, #728]"
|
||||
]
|
||||
@@ -3901,7 +3901,7 @@
|
||||
"strb w20, [x28, #706]",
|
||||
"mov w20, #0x0",
|
||||
"mov w22, #0x90000000",
|
||||
"bic w21, w21, w22",
|
||||
"bic x21, x21, x22",
|
||||
"strb w20, [x28, #708]",
|
||||
"str w21, [x28, #728]"
|
||||
]
|
||||
|
||||
@@ -3733,8 +3733,8 @@
|
||||
"Map 2 0b00 0xf2 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"ubfx x21, x5, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"lsr w21, w5, #0",
|
||||
"bic w4, w21, w20",
|
||||
"mov w20, #0x0",
|
||||
"strb w20, [x28, #708]",
|
||||
@@ -3769,8 +3769,8 @@
|
||||
"Map 2 0b00 0xf5 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"ubfx x21, x5, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"lsr w21, w5, #0",
|
||||
"and x21, x21, #0xff",
|
||||
"mov w22, #0xffff",
|
||||
"movk w22, #0xffff, lsl #16",
|
||||
@@ -3832,8 +3832,8 @@
|
||||
"Map 2 0b10 0xf5 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"ubfx x21, x5, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"lsr w21, w5, #0",
|
||||
"cbz w21, #+0x40",
|
||||
"mov w0, w21",
|
||||
"mov w3, wzr",
|
||||
@@ -3888,8 +3888,8 @@
|
||||
"Map 2 0b11 0xf5 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"ubfx x21, x5, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"lsr w21, w5, #0",
|
||||
"cbz w21, #+0x58",
|
||||
"mov w3, wzr",
|
||||
"stp x4, x5, [x28, #8]",
|
||||
@@ -3954,8 +3954,8 @@
|
||||
"Map 2 0b11 0xf6 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x5, #0, #32",
|
||||
"ubfx x21, x6, #0, #32",
|
||||
"lsr w20, w5, #0",
|
||||
"lsr w21, w6, #0",
|
||||
"mul w7, w20, w21",
|
||||
"ubfx x0, x20, #0, #32",
|
||||
"ubfx x1, x21, #0, #32",
|
||||
@@ -3981,15 +3981,15 @@
|
||||
"Map 2 0b00 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"ubfx x21, x5, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"lsr w21, w5, #0",
|
||||
"mov w22, #0x1f",
|
||||
"uxtb x23, w21",
|
||||
"uxtb w23, w21",
|
||||
"lsr w20, w20, w23",
|
||||
"mov w24, #0x0",
|
||||
"cmp w23, #0x1f (31)",
|
||||
"csel w20, w20, w24, ls",
|
||||
"ubfx x21, x21, #8, #8",
|
||||
"ubfx w21, w21, #8, #8",
|
||||
"cmp w21, #0x1f (31)",
|
||||
"csel w21, w21, w22, ls",
|
||||
"mov w22, #0x1",
|
||||
@@ -4037,8 +4037,8 @@
|
||||
"Map 2 0b01 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"ubfx x21, x5, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"lsr w21, w5, #0",
|
||||
"lsl w4, w20, w21"
|
||||
]
|
||||
},
|
||||
@@ -4059,8 +4059,8 @@
|
||||
"Map 2 0b10 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"ubfx x21, x5, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"lsr w21, w5, #0",
|
||||
"asr w4, w20, w21"
|
||||
]
|
||||
},
|
||||
@@ -4081,8 +4081,8 @@
|
||||
"Map 2 0b11 0xf7 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"ubfx x21, x5, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"lsr w21, w5, #0",
|
||||
"lsr w4, w20, w21"
|
||||
]
|
||||
},
|
||||
|
||||
@@ -3241,7 +3241,7 @@
|
||||
"Map 3 0b01 0x20 128-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"mov z4.d, p7/m, z17.d",
|
||||
"mov v4.b[0], w20",
|
||||
"mov v4.16b, v4.16b",
|
||||
@@ -3256,7 +3256,7 @@
|
||||
"Map 3 0b01 0x20 128-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"mov z4.d, p7/m, z17.d",
|
||||
"mov v4.b[15], w20",
|
||||
"mov v4.16b, v4.16b",
|
||||
@@ -3314,7 +3314,7 @@
|
||||
"Map 3 0b01 0x22 128-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"mov z4.d, p7/m, z17.d",
|
||||
"mov v4.s[0], w20",
|
||||
"mov v4.16b, v4.16b",
|
||||
@@ -3329,7 +3329,7 @@
|
||||
"Map 3 0b01 0x22 128-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x4, #0, #32",
|
||||
"lsr w20, w4, #0",
|
||||
"mov z4.d, p7/m, z17.d",
|
||||
"mov v4.s[3], w20",
|
||||
"mov v4.16b, v4.16b",
|
||||
@@ -5103,7 +5103,7 @@
|
||||
"Map 3 0b11 0xf0 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"ror w4, w20, #0"
|
||||
]
|
||||
},
|
||||
@@ -5114,7 +5114,7 @@
|
||||
"Map 3 0b11 0xf0 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"ror w4, w20, #31"
|
||||
]
|
||||
},
|
||||
@@ -5125,7 +5125,7 @@
|
||||
"Map 3 0b11 0xf0 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"ror w4, w20, #0"
|
||||
]
|
||||
},
|
||||
|
||||
@@ -757,7 +757,7 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ldr w20, [x4]",
|
||||
"ubfx x20, x20, #13, #3",
|
||||
"ubfx w20, w20, #13, #3",
|
||||
"and x0, x20, #0x3",
|
||||
"cmp x0, #0x2 (2)",
|
||||
"mov w2, #0x1",
|
||||
@@ -809,10 +809,10 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x1",
|
||||
"ubfx x21, x7, #0, #32",
|
||||
"lsr w21, w7, #0",
|
||||
"sub x22, x21, #0x1 (1)",
|
||||
"and x22, x22, x21",
|
||||
"ubfx x4, x22, #0, #32",
|
||||
"lsr w4, w22, #0",
|
||||
"mov w23, #0x0",
|
||||
"tst w22, w22",
|
||||
"mrs x22, nzcv",
|
||||
@@ -853,14 +853,14 @@
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"mov w20, #0x1",
|
||||
"ubfx x21, x7, #0, #32",
|
||||
"lsr w21, w7, #0",
|
||||
"sub x22, x21, #0x1 (1)",
|
||||
"eor x22, x22, x21",
|
||||
"ubfx x4, x22, #0, #32",
|
||||
"lsr w4, w22, #0",
|
||||
"mov w22, #0x0",
|
||||
"mov w23, #0x50000000",
|
||||
"ldr w24, [x28, #728]",
|
||||
"bic w23, w24, w23",
|
||||
"bic x23, x24, x23",
|
||||
"strb w22, [x28, #706]",
|
||||
"strb w22, [x28, #708]",
|
||||
"cmp x21, #0x0 (0)",
|
||||
@@ -884,7 +884,7 @@
|
||||
"mov w21, #0x0",
|
||||
"mov w22, #0x50000000",
|
||||
"ldr w23, [x28, #728]",
|
||||
"bic w22, w23, w22",
|
||||
"bic x22, x23, x22",
|
||||
"strb w21, [x28, #706]",
|
||||
"strb w21, [x28, #708]",
|
||||
"cmp x7, #0x0 (0)",
|
||||
@@ -902,7 +902,7 @@
|
||||
"Map group 17 0b011 32-bit"
|
||||
],
|
||||
"ExpectedArm64ASM": [
|
||||
"ubfx x20, x7, #0, #32",
|
||||
"lsr w20, w7, #0",
|
||||
"neg w21, w20",
|
||||
"and w4, w20, w21",
|
||||
"mov w20, #0x0",
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
Reference in new issue
Block a user