summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/arm/dyncom/arm_dyncom_dec.cpp800
-rw-r--r--src/core/arm/dyncom/arm_dyncom_interpreter.cpp2
-rw-r--r--src/core/arm/skyeye_common/vfp/vfpinstr.cpp4
-rw-r--r--src/core/arm/skyeye_common/vfp/vfpsingle.cpp4
4 files changed, 404 insertions, 406 deletions
diff --git a/src/core/arm/dyncom/arm_dyncom_dec.cpp b/src/core/arm/dyncom/arm_dyncom_dec.cpp
index 3887189f1..697be9556 100644
--- a/src/core/arm/dyncom/arm_dyncom_dec.cpp
+++ b/src/core/arm/dyncom/arm_dyncom_dec.cpp
@@ -6,412 +6,412 @@
6#include "core/arm/dyncom/arm_dyncom_dec.h" 6#include "core/arm/dyncom/arm_dyncom_dec.h"
7 7
8const ISEITEM arm_instruction[] = { 8const ISEITEM arm_instruction[] = {
9 { "vmla", 4, ARMVFP2, 23, 27, 0x1C, 20, 21, 0x0, 9, 11, 0x5, 4, 4, 0 }, 9 { "vmla", 4, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x0, 9, 11, 0x5, 4, 4, 0 }},
10 { "vmls", 7, ARMVFP2, 28, 31, 0xF, 25, 27, 0x1, 23, 23, 1, 11, 11, 0, 8, 9, 0x2, 6, 6, 1, 4, 4, 0 }, 10 { "vmls", 7, ARMVFP2, { 28, 31, 0xF, 25, 27, 0x1, 23, 23, 1, 11, 11, 0, 8, 9, 0x2, 6, 6, 1, 4, 4, 0 }},
11 { "vnmla", 4, ARMVFP2, 23, 27, 0x1C, 20, 21, 0x1, 9, 11, 0x5, 4, 4, 0 }, 11 { "vnmla", 4, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x1, 9, 11, 0x5, 4, 4, 0 }},
12 { "vnmla", 5, ARMVFP2, 23, 27, 0x1C, 20, 21, 0x2, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }, 12 { "vnmla", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x2, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }},
13 { "vnmls", 5, ARMVFP2, 23, 27, 0x1C, 20, 21, 0x1, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }, 13 { "vnmls", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x1, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }},
14 { "vnmul", 5, ARMVFP2, 23, 27, 0x1C, 20, 21, 0x2, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }, 14 { "vnmul", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x2, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }},
15 { "vmul", 5, ARMVFP2, 23, 27, 0x1C, 20, 21, 0x2, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }, 15 { "vmul", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x2, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }},
16 { "vadd", 5, ARMVFP2, 23, 27, 0x1C, 20, 21, 0x3, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }, 16 { "vadd", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x3, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }},
17 { "vsub", 5, ARMVFP2, 23, 27, 0x1C, 20, 21, 0x3, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }, 17 { "vsub", 5, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x3, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }},
18 { "vdiv", 5, ARMVFP2, 23, 27, 0x1D, 20, 21, 0x0, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }, 18 { "vdiv", 5, ARMVFP2, { 23, 27, 0x1D, 20, 21, 0x0, 9, 11, 0x5, 6, 6, 0, 4, 4, 0 }},
19 { "vmov(i)", 4, ARMVFP3, 23, 27, 0x1D, 20, 21, 0x3, 9, 11, 0x5, 4, 7, 0 }, 19 { "vmov(i)", 4, ARMVFP3, { 23, 27, 0x1D, 20, 21, 0x3, 9, 11, 0x5, 4, 7, 0 }},
20 { "vmov(r)", 5, ARMVFP3, 23, 27, 0x1D, 16, 21, 0x30, 9, 11, 0x5, 6, 7, 1, 4, 4, 0 }, 20 { "vmov(r)", 5, ARMVFP3, { 23, 27, 0x1D, 16, 21, 0x30, 9, 11, 0x5, 6, 7, 1, 4, 4, 0 }},
21 { "vabs", 5, ARMVFP2, 23, 27, 0x1D, 16, 21, 0x30, 9, 11, 0x5, 6, 7, 3, 4, 4, 0 }, 21 { "vabs", 5, ARMVFP2, { 23, 27, 0x1D, 16, 21, 0x30, 9, 11, 0x5, 6, 7, 3, 4, 4, 0 }},
22 { "vneg", 5, ARMVFP2, 23, 27, 0x1D, 17, 21, 0x18, 9, 11, 0x5, 6, 7, 1, 4, 4, 0 }, 22 { "vneg", 5, ARMVFP2, { 23, 27, 0x1D, 17, 21, 0x18, 9, 11, 0x5, 6, 7, 1, 4, 4, 0 }},
23 { "vsqrt", 5, ARMVFP2, 23, 27, 0x1D, 16, 21, 0x31, 9, 11, 0x5, 6, 7, 3, 4, 4, 0 }, 23 { "vsqrt", 5, ARMVFP2, { 23, 27, 0x1D, 16, 21, 0x31, 9, 11, 0x5, 6, 7, 3, 4, 4, 0 }},
24 { "vcmp", 5, ARMVFP2, 23, 27, 0x1D, 16, 21, 0x34, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }, 24 { "vcmp", 5, ARMVFP2, { 23, 27, 0x1D, 16, 21, 0x34, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }},
25 { "vcmp2", 5, ARMVFP2, 23, 27, 0x1D, 16, 21, 0x35, 9, 11, 0x5, 0, 6, 0x40 }, 25 { "vcmp2", 5, ARMVFP2, { 23, 27, 0x1D, 16, 21, 0x35, 9, 11, 0x5, 0, 6, 0x40 }},
26 { "vcvt(bds)", 5, ARMVFP2, 23, 27, 0x1D, 16, 21, 0x37, 9, 11, 0x5, 6, 7, 3, 4, 4, 0 }, 26 { "vcvt(bds)", 5, ARMVFP2, { 23, 27, 0x1D, 16, 21, 0x37, 9, 11, 0x5, 6, 7, 3, 4, 4, 0 }},
27 { "vcvt(bff)", 6, ARMVFP3, 23, 27, 0x1D, 19, 21, 0x7, 17, 17, 0x1, 9, 11, 5, 6, 6, 1 }, 27 { "vcvt(bff)", 6, ARMVFP3, { 23, 27, 0x1D, 19, 21, 0x7, 17, 17, 0x1, 9, 11, 5, 6, 6, 1 }},
28 { "vcvt(bfi)", 5, ARMVFP2, 23, 27, 0x1D, 19, 21, 0x7, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }, 28 { "vcvt(bfi)", 5, ARMVFP2, { 23, 27, 0x1D, 19, 21, 0x7, 9, 11, 0x5, 6, 6, 1, 4, 4, 0 }},
29 { "vmovbrs", 3, ARMVFP2, 21, 27, 0x70, 8, 11, 0xA, 0, 6, 0x10 }, 29 { "vmovbrs", 3, ARMVFP2, { 21, 27, 0x70, 8, 11, 0xA, 0, 6, 0x10 }},
30 { "vmsr", 2, ARMVFP2, 20, 27, 0xEE, 0, 11, 0xA10 }, 30 { "vmsr", 2, ARMVFP2, { 20, 27, 0xEE, 0, 11, 0xA10 }},
31 { "vmovbrc", 4, ARMVFP2, 23, 27, 0x1C, 20, 20, 0x0, 8, 11, 0xB, 0, 4, 0x10 }, 31 { "vmovbrc", 4, ARMVFP2, { 23, 27, 0x1C, 20, 20, 0x0, 8, 11, 0xB, 0, 4, 0x10 }},
32 { "vmrs", 2, ARMVFP2, 20, 27, 0xEF, 0, 11, 0xA10 }, 32 { "vmrs", 2, ARMVFP2, { 20, 27, 0xEF, 0, 11, 0xA10 }},
33 { "vmovbcr", 4, ARMVFP2, 24, 27, 0xE, 20, 20, 1, 8, 11, 0xB, 0, 4, 0x10 }, 33 { "vmovbcr", 4, ARMVFP2, { 24, 27, 0xE, 20, 20, 1, 8, 11, 0xB, 0, 4, 0x10 }},
34 { "vmovbrrss", 3, ARMVFP2, 21, 27, 0x62, 8, 11, 0xA, 4, 4, 1 }, 34 { "vmovbrrss", 3, ARMVFP2, { 21, 27, 0x62, 8, 11, 0xA, 4, 4, 1 }},
35 { "vmovbrrd", 3, ARMVFP2, 21, 27, 0x62, 6, 11, 0x2C, 4, 4, 1 }, 35 { "vmovbrrd", 3, ARMVFP2, { 21, 27, 0x62, 6, 11, 0x2C, 4, 4, 1 }},
36 { "vstr", 3, ARMVFP2, 24, 27, 0xD, 20, 21, 0, 9, 11, 5 }, 36 { "vstr", 3, ARMVFP2, { 24, 27, 0xD, 20, 21, 0, 9, 11, 5 }},
37 { "vpush", 3, ARMVFP2, 23, 27, 0x1A, 16, 21, 0x2D, 9, 11, 5 }, 37 { "vpush", 3, ARMVFP2, { 23, 27, 0x1A, 16, 21, 0x2D, 9, 11, 5 }},
38 { "vstm", 3, ARMVFP2, 25, 27, 0x6, 20, 20, 0, 9, 11, 5 }, 38 { "vstm", 3, ARMVFP2, { 25, 27, 0x6, 20, 20, 0, 9, 11, 5 }},
39 { "vpop", 3, ARMVFP2, 23, 27, 0x19, 16, 21, 0x3D, 9, 11, 5 }, 39 { "vpop", 3, ARMVFP2, { 23, 27, 0x19, 16, 21, 0x3D, 9, 11, 5 }},
40 { "vldr", 3, ARMVFP2, 24, 27, 0xD, 20, 21, 1, 9, 11, 5 }, 40 { "vldr", 3, ARMVFP2, { 24, 27, 0xD, 20, 21, 1, 9, 11, 5 }},
41 { "vldm", 3, ARMVFP2, 25, 27, 0x6, 20, 20, 1, 9, 11, 5 }, 41 { "vldm", 3, ARMVFP2, { 25, 27, 0x6, 20, 20, 1, 9, 11, 5 }},
42 42
43 { "srs", 4, 6, 25, 31, 0x0000007c, 22, 22, 0x00000001, 16, 20, 0x0000000d, 8, 11, 0x00000005 }, 43 { "srs", 4, 6, { 25, 31, 0x0000007c, 22, 22, 0x00000001, 16, 20, 0x0000000d, 8, 11, 0x00000005 }},
44 { "rfe", 4, 6, 25, 31, 0x0000007c, 22, 22, 0x00000000, 20, 20, 0x00000001, 8, 11, 0x0000000a }, 44 { "rfe", 4, 6, { 25, 31, 0x0000007c, 22, 22, 0x00000000, 20, 20, 0x00000001, 8, 11, 0x0000000a }},
45 { "bkpt", 2, 3, 20, 27, 0x00000012, 4, 7, 0x00000007 }, 45 { "bkpt", 2, 3, { 20, 27, 0x00000012, 4, 7, 0x00000007 }},
46 { "blx", 1, 3, 25, 31, 0x0000007d }, 46 { "blx", 1, 3, { 25, 31, 0x0000007d }},
47 { "cps", 3, 6, 20, 31, 0x00000f10, 16, 16, 0x00000000, 5, 5, 0x00000000 }, 47 { "cps", 3, 6, { 20, 31, 0x00000f10, 16, 16, 0x00000000, 5, 5, 0x00000000 }},
48 { "pld", 4, 4, 26, 31, 0x0000003d, 24, 24, 0x00000001, 20, 22, 0x00000005, 12, 15, 0x0000000f }, 48 { "pld", 4, 4, { 26, 31, 0x0000003d, 24, 24, 0x00000001, 20, 22, 0x00000005, 12, 15, 0x0000000f }},
49 { "setend", 2, 6, 16, 31, 0x0000f101, 4, 7, 0x00000000 }, 49 { "setend", 2, 6, { 16, 31, 0x0000f101, 4, 7, 0x00000000 }},
50 { "clrex", 1, 6, 0, 31, 0xf57ff01f }, 50 { "clrex", 1, 6, { 0, 31, 0xf57ff01f }},
51 { "rev16", 2, 6, 16, 27, 0x000006bf, 4, 11, 0x000000fb }, 51 { "rev16", 2, 6, { 16, 27, 0x000006bf, 4, 11, 0x000000fb }},
52 { "usad8", 3, 6, 20, 27, 0x00000078, 12, 15, 0x0000000f, 4, 7, 0x00000001 }, 52 { "usad8", 3, 6, { 20, 27, 0x00000078, 12, 15, 0x0000000f, 4, 7, 0x00000001 }},
53 { "sxtb", 2, 6, 16, 27, 0x000006af, 4, 7, 0x00000007 }, 53 { "sxtb", 2, 6, { 16, 27, 0x000006af, 4, 7, 0x00000007 }},
54 { "uxtb", 2, 6, 16, 27, 0x000006ef, 4, 7, 0x00000007 }, 54 { "uxtb", 2, 6, { 16, 27, 0x000006ef, 4, 7, 0x00000007 }},
55 { "sxth", 2, 6, 16, 27, 0x000006bf, 4, 7, 0x00000007 }, 55 { "sxth", 2, 6, { 16, 27, 0x000006bf, 4, 7, 0x00000007 }},
56 { "sxtb16", 2, 6, 16, 27, 0x0000068f, 4, 7, 0x00000007 }, 56 { "sxtb16", 2, 6, { 16, 27, 0x0000068f, 4, 7, 0x00000007 }},
57 { "uxth", 2, 6, 16, 27, 0x000006ff, 4, 7, 0x00000007 }, 57 { "uxth", 2, 6, { 16, 27, 0x000006ff, 4, 7, 0x00000007 }},
58 { "uxtb16", 2, 6, 16, 27, 0x000006cf, 4, 7, 0x00000007 }, 58 { "uxtb16", 2, 6, { 16, 27, 0x000006cf, 4, 7, 0x00000007 }},
59 { "cpy", 2, 6, 20, 27, 0x0000001a, 4, 11, 0x00000000 }, 59 { "cpy", 2, 6, { 20, 27, 0x0000001a, 4, 11, 0x00000000 }},
60 { "uxtab", 2, 6, 20, 27, 0x0000006e, 4, 9, 0x00000007 }, 60 { "uxtab", 2, 6, { 20, 27, 0x0000006e, 4, 9, 0x00000007 }},
61 { "ssub8", 2, 6, 20, 27, 0x00000061, 4, 7, 0x0000000f }, 61 { "ssub8", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x0000000f }},
62 { "shsub8", 2, 6, 20, 27, 0x00000063, 4, 7, 0x0000000f }, 62 { "shsub8", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x0000000f }},
63 { "ssubaddx", 2, 6, 20, 27, 0x00000061, 4, 7, 0x00000005 }, 63 { "ssubaddx", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x00000005 }},
64 { "strex", 2, 6, 20, 27, 0x00000018, 4, 7, 0x00000009 }, 64 { "strex", 2, 6, { 20, 27, 0x00000018, 4, 7, 0x00000009 }},
65 { "strexb", 2, 7, 20, 27, 0x0000001c, 4, 7, 0x00000009 }, 65 { "strexb", 2, 7, { 20, 27, 0x0000001c, 4, 7, 0x00000009 }},
66 { "swp", 2, 0, 20, 27, 0x00000010, 4, 7, 0x00000009 }, 66 { "swp", 2, 0, { 20, 27, 0x00000010, 4, 7, 0x00000009 }},
67 { "swpb", 2, 0, 20, 27, 0x00000014, 4, 7, 0x00000009 }, 67 { "swpb", 2, 0, { 20, 27, 0x00000014, 4, 7, 0x00000009 }},
68 { "ssub16", 2, 6, 20, 27, 0x00000061, 4, 7, 0x00000007 }, 68 { "ssub16", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x00000007 }},
69 { "ssat16", 2, 6, 20, 27, 0x0000006a, 4, 7, 0x00000003 }, 69 { "ssat16", 2, 6, { 20, 27, 0x0000006a, 4, 7, 0x00000003 }},
70 { "shsubaddx", 2, 6, 20, 27, 0x00000063, 4, 7, 0x00000005 }, 70 { "shsubaddx", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x00000005 }},
71 { "qsubaddx", 2, 6, 20, 27, 0x00000062, 4, 7, 0x00000005 }, 71 { "qsubaddx", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x00000005 }},
72 { "shaddsubx", 2, 6, 20, 27, 0x00000063, 4, 7, 0x00000003 }, 72 { "shaddsubx", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x00000003 }},
73 { "shadd8", 2, 6, 20, 27, 0x00000063, 4, 7, 0x00000009 }, 73 { "shadd8", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x00000009 }},
74 { "shadd16", 2, 6, 20, 27, 0x00000063, 4, 7, 0x00000001 }, 74 { "shadd16", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x00000001 }},
75 { "sel", 2, 6, 20, 27, 0x00000068, 4, 7, 0x0000000b }, 75 { "sel", 2, 6, { 20, 27, 0x00000068, 4, 7, 0x0000000b }},
76 { "saddsubx", 2, 6, 20, 27, 0x00000061, 4, 7, 0x00000003 }, 76 { "saddsubx", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x00000003 }},
77 { "sadd8", 2, 6, 20, 27, 0x00000061, 4, 7, 0x00000009 }, 77 { "sadd8", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x00000009 }},
78 { "sadd16", 2, 6, 20, 27, 0x00000061, 4, 7, 0x00000001 }, 78 { "sadd16", 2, 6, { 20, 27, 0x00000061, 4, 7, 0x00000001 }},
79 { "shsub16", 2, 6, 20, 27, 0x00000063, 4, 7, 0x00000007 }, 79 { "shsub16", 2, 6, { 20, 27, 0x00000063, 4, 7, 0x00000007 }},
80 { "umaal", 2, 6, 20, 27, 0x00000004, 4, 7, 0x00000009 }, 80 { "umaal", 2, 6, { 20, 27, 0x00000004, 4, 7, 0x00000009 }},
81 { "uxtab16", 2, 6, 20, 27, 0x0000006c, 4, 7, 0x00000007 }, 81 { "uxtab16", 2, 6, { 20, 27, 0x0000006c, 4, 7, 0x00000007 }},
82 { "usubaddx", 2, 6, 20, 27, 0x00000065, 4, 7, 0x00000005 }, 82 { "usubaddx", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x00000005 }},
83 { "usub8", 2, 6, 20, 27, 0x00000065, 4, 7, 0x0000000f }, 83 { "usub8", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x0000000f }},
84 { "usub16", 2, 6, 20, 27, 0x00000065, 4, 7, 0x00000007 }, 84 { "usub16", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x00000007 }},
85 { "usat16", 2, 6, 20, 27, 0x0000006e, 4, 7, 0x00000003 }, 85 { "usat16", 2, 6, { 20, 27, 0x0000006e, 4, 7, 0x00000003 }},
86 { "usada8", 2, 6, 20, 27, 0x00000078, 4, 7, 0x00000001 }, 86 { "usada8", 2, 6, { 20, 27, 0x00000078, 4, 7, 0x00000001 }},
87 { "uqsubaddx", 2, 6, 20, 27, 0x00000066, 4, 7, 0x00000005 }, 87 { "uqsubaddx", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x00000005 }},
88 { "uqsub8", 2, 6, 20, 27, 0x00000066, 4, 7, 0x0000000f }, 88 { "uqsub8", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x0000000f }},
89 { "uqsub16", 2, 6, 20, 27, 0x00000066, 4, 7, 0x00000007 }, 89 { "uqsub16", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x00000007 }},
90 { "uqaddsubx", 2, 6, 20, 27, 0x00000066, 4, 7, 0x00000003 }, 90 { "uqaddsubx", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x00000003 }},
91 { "uqadd8", 2, 6, 20, 27, 0x00000066, 4, 7, 0x00000009 }, 91 { "uqadd8", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x00000009 }},
92 { "uqadd16", 2, 6, 20, 27, 0x00000066, 4, 7, 0x00000001 }, 92 { "uqadd16", 2, 6, { 20, 27, 0x00000066, 4, 7, 0x00000001 }},
93 { "sxtab", 2, 6, 20, 27, 0x0000006a, 4, 7, 0x00000007 }, 93 { "sxtab", 2, 6, { 20, 27, 0x0000006a, 4, 7, 0x00000007 }},
94 { "uhsubaddx", 2, 6, 20, 27, 0x00000067, 4, 7, 0x00000005 }, 94 { "uhsubaddx", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x00000005 }},
95 { "uhsub8", 2, 6, 20, 27, 0x00000067, 4, 7, 0x0000000f }, 95 { "uhsub8", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x0000000f }},
96 { "uhsub16", 2, 6, 20, 27, 0x00000067, 4, 7, 0x00000007 }, 96 { "uhsub16", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x00000007 }},
97 { "uhaddsubx", 2, 6, 20, 27, 0x00000067, 4, 7, 0x00000003 }, 97 { "uhaddsubx", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x00000003 }},
98 { "uhadd8", 2, 6, 20, 27, 0x00000067, 4, 7, 0x00000009 }, 98 { "uhadd8", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x00000009 }},
99 { "uhadd16", 2, 6, 20, 27, 0x00000067, 4, 7, 0x00000001 }, 99 { "uhadd16", 2, 6, { 20, 27, 0x00000067, 4, 7, 0x00000001 }},
100 { "uaddsubx", 2, 6, 20, 27, 0x00000065, 4, 7, 0x00000003 }, 100 { "uaddsubx", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x00000003 }},
101 { "uadd8", 2, 6, 20, 27, 0x00000065, 4, 7, 0x00000009 }, 101 { "uadd8", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x00000009 }},
102 { "uadd16", 2, 6, 20, 27, 0x00000065, 4, 7, 0x00000001 }, 102 { "uadd16", 2, 6, { 20, 27, 0x00000065, 4, 7, 0x00000001 }},
103 { "sxtah", 2, 6, 20, 27, 0x0000006b, 4, 7, 0x00000007 }, 103 { "sxtah", 2, 6, { 20, 27, 0x0000006b, 4, 7, 0x00000007 }},
104 { "sxtab16", 2, 6, 20, 27, 0x00000068, 4, 7, 0x00000007 }, 104 { "sxtab16", 2, 6, { 20, 27, 0x00000068, 4, 7, 0x00000007 }},
105 { "qadd8", 2, 6, 20, 27, 0x00000062, 4, 7, 0x00000009 }, 105 { "qadd8", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x00000009 }},
106 { "bxj", 2, 5, 20, 27, 0x00000012, 4, 7, 0x00000002 }, 106 { "bxj", 2, 5, { 20, 27, 0x00000012, 4, 7, 0x00000002 }},
107 { "clz", 2, 3, 20, 27, 0x00000016, 4, 7, 0x00000001 }, 107 { "clz", 2, 3, { 20, 27, 0x00000016, 4, 7, 0x00000001 }},
108 { "uxtah", 2, 6, 20, 27, 0x0000006f, 4, 7, 0x00000007 }, 108 { "uxtah", 2, 6, { 20, 27, 0x0000006f, 4, 7, 0x00000007 }},
109 { "bx", 2, 2, 20, 27, 0x00000012, 4, 7, 0x00000001 }, 109 { "bx", 2, 2, { 20, 27, 0x00000012, 4, 7, 0x00000001 }},
110 { "rev", 2, 6, 20, 27, 0x0000006b, 4, 7, 0x00000003 }, 110 { "rev", 2, 6, { 20, 27, 0x0000006b, 4, 7, 0x00000003 }},
111 { "blx", 2, 3, 20, 27, 0x00000012, 4, 7, 0x00000003 }, 111 { "blx", 2, 3, { 20, 27, 0x00000012, 4, 7, 0x00000003 }},
112 { "revsh", 2, 6, 20, 27, 0x0000006f, 4, 7, 0x0000000b }, 112 { "revsh", 2, 6, { 20, 27, 0x0000006f, 4, 7, 0x0000000b }},
113 { "qadd", 2, 4, 20, 27, 0x00000010, 4, 7, 0x00000005 }, 113 { "qadd", 2, 4, { 20, 27, 0x00000010, 4, 7, 0x00000005 }},
114 { "qadd16", 2, 6, 20, 27, 0x00000062, 4, 7, 0x00000001 }, 114 { "qadd16", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x00000001 }},
115 { "qaddsubx", 2, 6, 20, 27, 0x00000062, 4, 7, 0x00000003 }, 115 { "qaddsubx", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x00000003 }},
116 { "ldrex", 2, 0, 20, 27, 0x00000019, 4, 7, 0x00000009 }, 116 { "ldrex", 2, 0, { 20, 27, 0x00000019, 4, 7, 0x00000009 }},
117 { "qdadd", 2, 4, 20, 27, 0x00000014, 4, 7, 0x00000005 }, 117 { "qdadd", 2, 4, { 20, 27, 0x00000014, 4, 7, 0x00000005 }},
118 { "qdsub", 2, 4, 20, 27, 0x00000016, 4, 7, 0x00000005 }, 118 { "qdsub", 2, 4, { 20, 27, 0x00000016, 4, 7, 0x00000005 }},
119 { "qsub", 2, 4, 20, 27, 0x00000012, 4, 7, 0x00000005 }, 119 { "qsub", 2, 4, { 20, 27, 0x00000012, 4, 7, 0x00000005 }},
120 { "ldrexb", 2, 7, 20, 27, 0x0000001d, 4, 7, 0x00000009 }, 120 { "ldrexb", 2, 7, { 20, 27, 0x0000001d, 4, 7, 0x00000009 }},
121 { "qsub8", 2, 6, 20, 27, 0x00000062, 4, 7, 0x0000000f }, 121 { "qsub8", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x0000000f }},
122 { "qsub16", 2, 6, 20, 27, 0x00000062, 4, 7, 0x00000007 }, 122 { "qsub16", 2, 6, { 20, 27, 0x00000062, 4, 7, 0x00000007 }},
123 { "smuad", 4, 6, 20, 27, 0x00000070, 12, 15, 0x0000000f, 6, 7, 0x00000000, 4, 4, 0x00000001 }, 123 { "smuad", 4, 6, { 20, 27, 0x00000070, 12, 15, 0x0000000f, 6, 7, 0x00000000, 4, 4, 0x00000001 }},
124 { "smmul", 4, 6, 20, 27, 0x00000075, 12, 15, 0x0000000f, 6, 7, 0x00000000, 4, 4, 0x00000001 }, 124 { "smmul", 4, 6, { 20, 27, 0x00000075, 12, 15, 0x0000000f, 6, 7, 0x00000000, 4, 4, 0x00000001 }},
125 { "smusd", 4, 6, 20, 27, 0x00000070, 12, 15, 0x0000000f, 6, 7, 0x00000001, 4, 4, 0x00000001 }, 125 { "smusd", 4, 6, { 20, 27, 0x00000070, 12, 15, 0x0000000f, 6, 7, 0x00000001, 4, 4, 0x00000001 }},
126 { "smlsd", 3, 6, 20, 27, 0x00000070, 6, 7, 0x00000001, 4, 4, 0x00000001 }, 126 { "smlsd", 3, 6, { 20, 27, 0x00000070, 6, 7, 0x00000001, 4, 4, 0x00000001 }},
127 { "smlsld", 3, 6, 20, 27, 0x00000074, 6, 7, 0x00000001, 4, 4, 0x00000001 }, 127 { "smlsld", 3, 6, { 20, 27, 0x00000074, 6, 7, 0x00000001, 4, 4, 0x00000001 }},
128 { "smmla", 3, 6, 20, 27, 0x00000075, 6, 7, 0x00000000, 4, 4, 0x00000001 }, 128 { "smmla", 3, 6, { 20, 27, 0x00000075, 6, 7, 0x00000000, 4, 4, 0x00000001 }},
129 { "smmls", 3, 6, 20, 27, 0x00000075, 6, 7, 0x00000003, 4, 4, 0x00000001 }, 129 { "smmls", 3, 6, { 20, 27, 0x00000075, 6, 7, 0x00000003, 4, 4, 0x00000001 }},
130 { "smlald", 3, 6, 20, 27, 0x00000074, 6, 7, 0x00000000, 4, 4, 0x00000001 }, 130 { "smlald", 3, 6, { 20, 27, 0x00000074, 6, 7, 0x00000000, 4, 4, 0x00000001 }},
131 { "smlad", 3, 6, 20, 27, 0x00000070, 6, 7, 0x00000000, 4, 4, 0x00000001 }, 131 { "smlad", 3, 6, { 20, 27, 0x00000070, 6, 7, 0x00000000, 4, 4, 0x00000001 }},
132 { "smlaw", 3, 4, 20, 27, 0x00000012, 7, 7, 0x00000001, 4, 5, 0x00000000 }, 132 { "smlaw", 3, 4, { 20, 27, 0x00000012, 7, 7, 0x00000001, 4, 5, 0x00000000 }},
133 { "smulw", 3, 4, 20, 27, 0x00000012, 7, 7, 0x00000001, 4, 5, 0x00000002 }, 133 { "smulw", 3, 4, { 20, 27, 0x00000012, 7, 7, 0x00000001, 4, 5, 0x00000002 }},
134 { "pkhtb", 2, 6, 20, 27, 0x00000068, 4, 6, 0x00000005 }, 134 { "pkhtb", 2, 6, { 20, 27, 0x00000068, 4, 6, 0x00000005 }},
135 { "pkhbt", 2, 6, 20, 27, 0x00000068, 4, 6, 0x00000001 }, 135 { "pkhbt", 2, 6, { 20, 27, 0x00000068, 4, 6, 0x00000001 }},
136 { "smul", 3, 4, 20, 27, 0x00000016, 7, 7, 0x00000001, 4, 4, 0x00000000 }, 136 { "smul", 3, 4, { 20, 27, 0x00000016, 7, 7, 0x00000001, 4, 4, 0x00000000 }},
137 { "smlalxy", 3, 4, 20, 27, 0x00000014, 7, 7, 0x00000001, 4, 4, 0x00000000 }, 137 { "smlalxy", 3, 4, { 20, 27, 0x00000014, 7, 7, 0x00000001, 4, 4, 0x00000000 }},
138 { "smla", 3, 4, 20, 27, 0x00000010, 7, 7, 0x00000001, 4, 4, 0x00000000 }, 138 { "smla", 3, 4, { 20, 27, 0x00000010, 7, 7, 0x00000001, 4, 4, 0x00000000 }},
139 { "mcrr", 1, 6, 20, 27, 0x000000c4 }, 139 { "mcrr", 1, 6, { 20, 27, 0x000000c4 }},
140 { "mrrc", 1, 6, 20, 27, 0x000000c5 }, 140 { "mrrc", 1, 6, { 20, 27, 0x000000c5 }},
141 { "cmp", 2, 0, 26, 27, 0x00000000, 20, 24, 0x00000015 }, 141 { "cmp", 2, 0, { 26, 27, 0x00000000, 20, 24, 0x00000015 }},
142 { "tst", 2, 0, 26, 27, 0x00000000, 20, 24, 0x00000011 }, 142 { "tst", 2, 0, { 26, 27, 0x00000000, 20, 24, 0x00000011 }},
143 { "teq", 2, 0, 26, 27, 0x00000000, 20, 24, 0x00000013 }, 143 { "teq", 2, 0, { 26, 27, 0x00000000, 20, 24, 0x00000013 }},
144 { "cmn", 2, 0, 26, 27, 0x00000000, 20, 24, 0x00000017 }, 144 { "cmn", 2, 0, { 26, 27, 0x00000000, 20, 24, 0x00000017 }},
145 { "smull", 2, 0, 21, 27, 0x00000006, 4, 7, 0x00000009 }, 145 { "smull", 2, 0, { 21, 27, 0x00000006, 4, 7, 0x00000009 }},
146 { "umull", 2, 0, 21, 27, 0x00000004, 4, 7, 0x00000009 }, 146 { "umull", 2, 0, { 21, 27, 0x00000004, 4, 7, 0x00000009 }},
147 { "umlal", 2, 0, 21, 27, 0x00000005, 4, 7, 0x00000009 }, 147 { "umlal", 2, 0, { 21, 27, 0x00000005, 4, 7, 0x00000009 }},
148 { "smlal", 2, 0, 21, 27, 0x00000007, 4, 7, 0x00000009 }, 148 { "smlal", 2, 0, { 21, 27, 0x00000007, 4, 7, 0x00000009 }},
149 { "mul", 2, 0, 21, 27, 0x00000000, 4, 7, 0x00000009 }, 149 { "mul", 2, 0, { 21, 27, 0x00000000, 4, 7, 0x00000009 }},
150 { "mla", 2, 0, 21, 27, 0x00000001, 4, 7, 0x00000009 }, 150 { "mla", 2, 0, { 21, 27, 0x00000001, 4, 7, 0x00000009 }},
151 { "ssat", 2, 6, 21, 27, 0x00000035, 4, 5, 0x00000001 }, 151 { "ssat", 2, 6, { 21, 27, 0x00000035, 4, 5, 0x00000001 }},
152 { "usat", 2, 6, 21, 27, 0x00000037, 4, 5, 0x00000001 }, 152 { "usat", 2, 6, { 21, 27, 0x00000037, 4, 5, 0x00000001 }},
153 { "mrs", 4, 0, 23, 27, 0x00000002, 20, 21, 0x00000000, 16, 19, 0x0000000f, 0, 11, 0x00000000 }, 153 { "mrs", 4, 0, { 23, 27, 0x00000002, 20, 21, 0x00000000, 16, 19, 0x0000000f, 0, 11, 0x00000000 }},
154 { "msr", 3, 0, 23, 27, 0x00000002, 20, 21, 0x00000002, 4, 7, 0x00000000 }, 154 { "msr", 3, 0, { 23, 27, 0x00000002, 20, 21, 0x00000002, 4, 7, 0x00000000 }},
155 { "and", 2, 0, 26, 27, 0x00000000, 21, 24, 0x00000000 }, 155 { "and", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000000 }},
156 { "bic", 2, 0, 26, 27, 0x00000000, 21, 24, 0x0000000e }, 156 { "bic", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x0000000e }},
157 { "ldm", 3, 0, 25, 27, 0x00000004, 20, 22, 0x00000005, 15, 15, 0x00000000 }, 157 { "ldm", 3, 0, { 25, 27, 0x00000004, 20, 22, 0x00000005, 15, 15, 0x00000000 }},
158 { "eor", 2, 0, 26, 27, 0x00000000, 21, 24, 0x00000001 }, 158 { "eor", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000001 }},
159 { "add", 2, 0, 26, 27, 0x00000000, 21, 24, 0x00000004 }, 159 { "add", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000004 }},
160 { "rsb", 2, 0, 26, 27, 0x00000000, 21, 24, 0x00000003 }, 160 { "rsb", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000003 }},
161 { "rsc", 2, 0, 26, 27, 0x00000000, 21, 24, 0x00000007 }, 161 { "rsc", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000007 }},
162 { "sbc", 2, 0, 26, 27, 0x00000000, 21, 24, 0x00000006 }, 162 { "sbc", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000006 }},
163 { "adc", 2, 0, 26, 27, 0x00000000, 21, 24, 0x00000005 }, 163 { "adc", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000005 }},
164 { "sub", 2, 0, 26, 27, 0x00000000, 21, 24, 0x00000002 }, 164 { "sub", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x00000002 }},
165 { "orr", 2, 0, 26, 27, 0x00000000, 21, 24, 0x0000000c }, 165 { "orr", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x0000000c }},
166 { "mvn", 2, 0, 26, 27, 0x00000000, 21, 24, 0x0000000f }, 166 { "mvn", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x0000000f }},
167 { "mov", 2, 0, 26, 27, 0x00000000, 21, 24, 0x0000000d }, 167 { "mov", 2, 0, { 26, 27, 0x00000000, 21, 24, 0x0000000d }},
168 { "stm", 2, 0, 25, 27, 0x00000004, 20, 22, 0x00000004 }, 168 { "stm", 2, 0, { 25, 27, 0x00000004, 20, 22, 0x00000004 }},
169 { "ldm", 4, 0, 25, 27, 0x00000004, 22, 22, 0x00000001, 20, 20, 0x00000001, 15, 15, 0x00000001 }, 169 { "ldm", 4, 0, { 25, 27, 0x00000004, 22, 22, 0x00000001, 20, 20, 0x00000001, 15, 15, 0x00000001 }},
170 { "ldrsh", 3, 2, 25, 27, 0x00000000, 20, 20, 0x00000001, 4, 7, 0x0000000f }, 170 { "ldrsh", 3, 2, { 25, 27, 0x00000000, 20, 20, 0x00000001, 4, 7, 0x0000000f }},
171 { "stm", 3, 0, 25, 27, 0x00000004, 22, 22, 0x00000000, 20, 20, 0x00000000 }, 171 { "stm", 3, 0, { 25, 27, 0x00000004, 22, 22, 0x00000000, 20, 20, 0x00000000 }},
172 { "ldm", 3, 0, 25, 27, 0x00000004, 22, 22, 0x00000000, 20, 20, 0x00000001 }, 172 { "ldm", 3, 0, { 25, 27, 0x00000004, 22, 22, 0x00000000, 20, 20, 0x00000001 }},
173 { "ldrsb", 3, 2, 25, 27, 0x00000000, 20, 20, 0x00000001, 4, 7, 0x0000000d }, 173 { "ldrsb", 3, 2, { 25, 27, 0x00000000, 20, 20, 0x00000001, 4, 7, 0x0000000d }},
174 { "strd", 3, 4, 25, 27, 0x00000000, 20, 20, 0x00000000, 4, 7, 0x0000000f }, 174 { "strd", 3, 4, { 25, 27, 0x00000000, 20, 20, 0x00000000, 4, 7, 0x0000000f }},
175 { "ldrh", 3, 0, 25, 27, 0x00000000, 20, 20, 0x00000001, 4, 7, 0x0000000b }, 175 { "ldrh", 3, 0, { 25, 27, 0x00000000, 20, 20, 0x00000001, 4, 7, 0x0000000b }},
176 { "strh", 3, 0, 25, 27, 0x00000000, 20, 20, 0x00000000, 4, 7, 0x0000000b }, 176 { "strh", 3, 0, { 25, 27, 0x00000000, 20, 20, 0x00000000, 4, 7, 0x0000000b }},
177 { "ldrd", 3, 4, 25, 27, 0x00000000, 20, 20, 0x00000000, 4, 7, 0x0000000d }, 177 { "ldrd", 3, 4, { 25, 27, 0x00000000, 20, 20, 0x00000000, 4, 7, 0x0000000d }},
178 { "strt", 3, 0, 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000002 }, 178 { "strt", 3, 0, { 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000002 }},
179 { "strbt", 3, 0, 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000006 }, 179 { "strbt", 3, 0, { 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000006 }},
180 { "ldrbt", 3, 0, 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000007 }, 180 { "ldrbt", 3, 0, { 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000007 }},
181 { "ldrt", 3, 0, 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000003 }, 181 { "ldrt", 3, 0, { 26, 27, 0x00000001, 24, 24, 0x00000000, 20, 22, 0x00000003 }},
182 { "mrc", 3, 6, 24, 27, 0x0000000e, 20, 20, 0x00000001, 4, 4, 0x00000001 }, 182 { "mrc", 3, 6, { 24, 27, 0x0000000e, 20, 20, 0x00000001, 4, 4, 0x00000001 }},
183 { "mcr", 3, 0, 24, 27, 0x0000000e, 20, 20, 0x00000000, 4, 4, 0x00000001 }, 183 { "mcr", 3, 0, { 24, 27, 0x0000000e, 20, 20, 0x00000000, 4, 4, 0x00000001 }},
184 { "msr", 3, 0, 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000001 }, 184 { "msr", 3, 0, { 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000001 }},
185 { "msr", 4, 0, 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 16, 19, 0x00000004 }, 185 { "msr", 4, 0, { 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 16, 19, 0x00000004 }},
186 { "msr", 5, 0, 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 19, 19, 0x00000001, 16, 17, 0x00000000 }, 186 { "msr", 5, 0, { 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 19, 19, 0x00000001, 16, 17, 0x00000000 }},
187 { "msr", 4, 0, 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 16, 17, 0x00000001 }, 187 { "msr", 4, 0, { 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 16, 17, 0x00000001 }},
188 { "msr", 4, 0, 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 17, 17, 0x00000001 }, 188 { "msr", 4, 0, { 23, 27, 0x00000006, 20, 21, 0x00000002, 22, 22, 0x00000000, 17, 17, 0x00000001 }},
189 { "ldrb", 3, 0, 26, 27, 0x00000001, 22, 22, 0x00000001, 20, 20, 0x00000001 }, 189 { "ldrb", 3, 0, { 26, 27, 0x00000001, 22, 22, 0x00000001, 20, 20, 0x00000001 }},
190 { "strb", 3, 0, 26, 27, 0x00000001, 22, 22, 0x00000001, 20, 20, 0x00000000 }, 190 { "strb", 3, 0, { 26, 27, 0x00000001, 22, 22, 0x00000001, 20, 20, 0x00000000 }},
191 { "ldr", 4, 0, 28, 31, 0x0000000e, 26, 27, 0x00000001, 22, 22, 0x00000000, 20, 20, 0x00000001 }, 191 { "ldr", 4, 0, { 28, 31, 0x0000000e, 26, 27, 0x00000001, 22, 22, 0x00000000, 20, 20, 0x00000001 }},
192 { "ldrcond", 3, 0, 26, 27, 0x00000001, 22, 22, 0x00000000, 20, 20, 0x00000001 }, 192 { "ldrcond", 3, 0, { 26, 27, 0x00000001, 22, 22, 0x00000000, 20, 20, 0x00000001 }},
193 { "str", 3, 0, 26, 27, 0x00000001, 22, 22, 0x00000000, 20, 20, 0x00000000 }, 193 { "str", 3, 0, { 26, 27, 0x00000001, 22, 22, 0x00000000, 20, 20, 0x00000000 }},
194 { "cdp", 2, 0, 24, 27, 0x0000000e, 4, 4, 0x00000000 }, 194 { "cdp", 2, 0, { 24, 27, 0x0000000e, 4, 4, 0x00000000 }},
195 { "stc", 2, 0, 25, 27, 0x00000006, 20, 20, 0x00000000 }, 195 { "stc", 2, 0, { 25, 27, 0x00000006, 20, 20, 0x00000000 }},
196 { "ldc", 2, 0, 25, 27, 0x00000006, 20, 20, 0x00000001 }, 196 { "ldc", 2, 0, { 25, 27, 0x00000006, 20, 20, 0x00000001 }},
197 { "ldrexd", 2, ARMV6K, 20, 27, 0x0000001B, 4, 7, 0x00000009 }, 197 { "ldrexd", 2, ARMV6K, { 20, 27, 0x0000001B, 4, 7, 0x00000009 }},
198 { "strexd", 2, ARMV6K, 20, 27, 0x0000001A, 4, 7, 0x00000009 }, 198 { "strexd", 2, ARMV6K, { 20, 27, 0x0000001A, 4, 7, 0x00000009 }},
199 { "ldrexh", 2, ARMV6K, 20, 27, 0x0000001F, 4, 7, 0x00000009 }, 199 { "ldrexh", 2, ARMV6K, { 20, 27, 0x0000001F, 4, 7, 0x00000009 }},
200 { "strexh", 2, ARMV6K, 20, 27, 0x0000001E, 4, 7, 0x00000009 }, 200 { "strexh", 2, ARMV6K, { 20, 27, 0x0000001E, 4, 7, 0x00000009 }},
201 { "nop", 5, ARMV6K, 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000000 }, 201 { "nop", 5, ARMV6K, { 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000000 }},
202 { "yield", 5, ARMV6K, 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000001 }, 202 { "yield", 5, ARMV6K, { 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000001 }},
203 { "wfe", 5, ARMV6K, 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000002 }, 203 { "wfe", 5, ARMV6K, { 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000002 }},
204 { "wfi", 5, ARMV6K, 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000003 }, 204 { "wfi", 5, ARMV6K, { 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000003 }},
205 { "sev", 5, ARMV6K, 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000004 }, 205 { "sev", 5, ARMV6K, { 23, 27, 0x00000006, 22, 22, 0x00000000, 20, 21, 0x00000002, 16, 19, 0x00000000, 0, 7, 0x00000004 }},
206 { "swi", 1, 0, 24, 27, 0x0000000f }, 206 { "swi", 1, 0, { 24, 27, 0x0000000f }},
207 { "bbl", 1, 0, 25, 27, 0x00000005 }, 207 { "bbl", 1, 0, { 25, 27, 0x00000005 }},
208}; 208};
209 209
210const ISEITEM arm_exclusion_code[] = { 210const ISEITEM arm_exclusion_code[] = {
211 { "vmla", 0, ARMVFP2, 0 }, 211 { "vmla", 0, ARMVFP2, { 0 }},
212 { "vmls", 0, ARMVFP2, 0 }, 212 { "vmls", 0, ARMVFP2, { 0 }},
213 { "vnmla", 0, ARMVFP2, 0 }, 213 { "vnmla", 0, ARMVFP2, { 0 }},
214 { "vnmla", 0, ARMVFP2, 0 }, 214 { "vnmla", 0, ARMVFP2, { 0 }},
215 { "vnmls", 0, ARMVFP2, 0 }, 215 { "vnmls", 0, ARMVFP2, { 0 }},
216 { "vnmul", 0, ARMVFP2, 0 }, 216 { "vnmul", 0, ARMVFP2, { 0 }},
217 { "vmul", 0, ARMVFP2, 0 }, 217 { "vmul", 0, ARMVFP2, { 0 }},
218 { "vadd", 0, ARMVFP2, 0 }, 218 { "vadd", 0, ARMVFP2, { 0 }},
219 { "vsub", 0, ARMVFP2, 0 }, 219 { "vsub", 0, ARMVFP2, { 0 }},
220 { "vdiv", 0, ARMVFP2, 0 }, 220 { "vdiv", 0, ARMVFP2, { 0 }},
221 { "vmov(i)", 0, ARMVFP3, 0 }, 221 { "vmov(i)", 0, ARMVFP3, { 0 }},
222 { "vmov(r)", 0, ARMVFP3, 0 }, 222 { "vmov(r)", 0, ARMVFP3, { 0 }},
223 { "vabs", 0, ARMVFP2, 0 }, 223 { "vabs", 0, ARMVFP2, { 0 }},
224 { "vneg", 0, ARMVFP2, 0 }, 224 { "vneg", 0, ARMVFP2, { 0 }},
225 { "vsqrt", 0, ARMVFP2, 0 }, 225 { "vsqrt", 0, ARMVFP2, { 0 }},
226 { "vcmp", 0, ARMVFP2, 0 }, 226 { "vcmp", 0, ARMVFP2, { 0 }},
227 { "vcmp2", 0, ARMVFP2, 0 }, 227 { "vcmp2", 0, ARMVFP2, { 0 }},
228 { "vcvt(bff)", 0, ARMVFP3, 4, 4, 1 }, 228 { "vcvt(bff)", 0, ARMVFP3, { 4, 4, 1 }},
229 { "vcvt(bds)", 0, ARMVFP2, 0 }, 229 { "vcvt(bds)", 0, ARMVFP2, { 0 }},
230 { "vcvt(bfi)", 0, ARMVFP2, 0 }, 230 { "vcvt(bfi)", 0, ARMVFP2, { 0 }},
231 { "vmovbrs", 0, ARMVFP2, 0 }, 231 { "vmovbrs", 0, ARMVFP2, { 0 }},
232 { "vmsr", 0, ARMVFP2, 0 }, 232 { "vmsr", 0, ARMVFP2, { 0 }},
233 { "vmovbrc", 0, ARMVFP2, 0 }, 233 { "vmovbrc", 0, ARMVFP2, { 0 }},
234 { "vmrs", 0, ARMVFP2, 0 }, 234 { "vmrs", 0, ARMVFP2, { 0 }},
235 { "vmovbcr", 0, ARMVFP2, 0 }, 235 { "vmovbcr", 0, ARMVFP2, { 0 }},
236 { "vmovbrrss", 0, ARMVFP2, 0 }, 236 { "vmovbrrss", 0, ARMVFP2, { 0 }},
237 { "vmovbrrd", 0, ARMVFP2, 0 }, 237 { "vmovbrrd", 0, ARMVFP2, { 0 }},
238 { "vstr", 0, ARMVFP2, 0 }, 238 { "vstr", 0, ARMVFP2, { 0 }},
239 { "vpush", 0, ARMVFP2, 0 }, 239 { "vpush", 0, ARMVFP2, { 0 }},
240 { "vstm", 0, ARMVFP2, 0 }, 240 { "vstm", 0, ARMVFP2, { 0 }},
241 { "vpop", 0, ARMVFP2, 0 }, 241 { "vpop", 0, ARMVFP2, { 0 }},
242 { "vldr", 0, ARMVFP2, 0 }, 242 { "vldr", 0, ARMVFP2, { 0 }},
243 { "vldm", 0, ARMVFP2, 0 }, 243 { "vldm", 0, ARMVFP2, { 0 }},
244 244
245 { "srs", 0, 6, 0 }, 245 { "srs", 0, 6, { 0 }},
246 { "rfe", 0, 6, 0 }, 246 { "rfe", 0, 6, { 0 }},
247 { "bkpt", 0, 3, 0 }, 247 { "bkpt", 0, 3, { 0 }},
248 { "blx", 0, 3, 0 }, 248 { "blx", 0, 3, { 0 }},
249 { "cps", 0, 6, 0 }, 249 { "cps", 0, 6, { 0 }},
250 { "pld", 0, 4, 0 }, 250 { "pld", 0, 4, { 0 }},
251 { "setend", 0, 6, 0 }, 251 { "setend", 0, 6, { 0 }},
252 { "clrex", 0, 6, 0 }, 252 { "clrex", 0, 6, { 0 }},
253 { "rev16", 0, 6, 0 }, 253 { "rev16", 0, 6, { 0 }},
254 { "usad8", 0, 6, 0 }, 254 { "usad8", 0, 6, { 0 }},
255 { "sxtb", 0, 6, 0 }, 255 { "sxtb", 0, 6, { 0 }},
256 { "uxtb", 0, 6, 0 }, 256 { "uxtb", 0, 6, { 0 }},
257 { "sxth", 0, 6, 0 }, 257 { "sxth", 0, 6, { 0 }},
258 { "sxtb16", 0, 6, 0 }, 258 { "sxtb16", 0, 6, { 0 }},
259 { "uxth", 0, 6, 0 }, 259 { "uxth", 0, 6, { 0 }},
260 { "uxtb16", 0, 6, 0 }, 260 { "uxtb16", 0, 6, { 0 }},
261 { "cpy", 0, 6, 0 }, 261 { "cpy", 0, 6, { 0 }},
262 { "uxtab", 0, 6, 0 }, 262 { "uxtab", 0, 6, { 0 }},
263 { "ssub8", 0, 6, 0 }, 263 { "ssub8", 0, 6, { 0 }},
264 { "shsub8", 0, 6, 0 }, 264 { "shsub8", 0, 6, { 0 }},
265 { "ssubaddx", 0, 6, 0 }, 265 { "ssubaddx", 0, 6, { 0 }},
266 { "strex", 0, 6, 0 }, 266 { "strex", 0, 6, { 0 }},
267 { "strexb", 0, 7, 0 }, 267 { "strexb", 0, 7, { 0 }},
268 { "swp", 0, 0, 0 }, 268 { "swp", 0, 0, { 0 }},
269 { "swpb", 0, 0, 0 }, 269 { "swpb", 0, 0, { 0 }},
270 { "ssub16", 0, 6, 0 }, 270 { "ssub16", 0, 6, { 0 }},
271 { "ssat16", 0, 6, 0 }, 271 { "ssat16", 0, 6, { 0 }},
272 { "shsubaddx", 0, 6, 0 }, 272 { "shsubaddx", 0, 6, { 0 }},
273 { "qsubaddx", 0, 6, 0 }, 273 { "qsubaddx", 0, 6, { 0 }},
274 { "shaddsubx", 0, 6, 0 }, 274 { "shaddsubx", 0, 6, { 0 }},
275 { "shadd8", 0, 6, 0 }, 275 { "shadd8", 0, 6, { 0 }},
276 { "shadd16", 0, 6, 0 }, 276 { "shadd16", 0, 6, { 0 }},
277 { "sel", 0, 6, 0 }, 277 { "sel", 0, 6, { 0 }},
278 { "saddsubx", 0, 6, 0 }, 278 { "saddsubx", 0, 6, { 0 }},
279 { "sadd8", 0, 6, 0 }, 279 { "sadd8", 0, 6, { 0 }},
280 { "sadd16", 0, 6, 0 }, 280 { "sadd16", 0, 6, { 0 }},
281 { "shsub16", 0, 6, 0 }, 281 { "shsub16", 0, 6, { 0 }},
282 { "umaal", 0, 6, 0 }, 282 { "umaal", 0, 6, { 0 }},
283 { "uxtab16", 0, 6, 0 }, 283 { "uxtab16", 0, 6, { 0 }},
284 { "usubaddx", 0, 6, 0 }, 284 { "usubaddx", 0, 6, { 0 }},
285 { "usub8", 0, 6, 0 }, 285 { "usub8", 0, 6, { 0 }},
286 { "usub16", 0, 6, 0 }, 286 { "usub16", 0, 6, { 0 }},
287 { "usat16", 0, 6, 0 }, 287 { "usat16", 0, 6, { 0 }},
288 { "usada8", 0, 6, 0 }, 288 { "usada8", 0, 6, { 0 }},
289 { "uqsubaddx", 0, 6, 0 }, 289 { "uqsubaddx", 0, 6, { 0 }},
290 { "uqsub8", 0, 6, 0 }, 290 { "uqsub8", 0, 6, { 0 }},
291 { "uqsub16", 0, 6, 0 }, 291 { "uqsub16", 0, 6, { 0 }},
292 { "uqaddsubx", 0, 6, 0 }, 292 { "uqaddsubx", 0, 6, { 0 }},
293 { "uqadd8", 0, 6, 0 }, 293 { "uqadd8", 0, 6, { 0 }},
294 { "uqadd16", 0, 6, 0 }, 294 { "uqadd16", 0, 6, { 0 }},
295 { "sxtab", 0, 6, 0 }, 295 { "sxtab", 0, 6, { 0 }},
296 { "uhsubaddx", 0, 6, 0 }, 296 { "uhsubaddx", 0, 6, { 0 }},
297 { "uhsub8", 0, 6, 0 }, 297 { "uhsub8", 0, 6, { 0 }},
298 { "uhsub16", 0, 6, 0 }, 298 { "uhsub16", 0, 6, { 0 }},
299 { "uhaddsubx", 0, 6, 0 }, 299 { "uhaddsubx", 0, 6, { 0 }},
300 { "uhadd8", 0, 6, 0 }, 300 { "uhadd8", 0, 6, { 0 }},
301 { "uhadd16", 0, 6, 0 }, 301 { "uhadd16", 0, 6, { 0 }},
302 { "uaddsubx", 0, 6, 0 }, 302 { "uaddsubx", 0, 6, { 0 }},
303 { "uadd8", 0, 6, 0 }, 303 { "uadd8", 0, 6, { 0 }},
304 { "uadd16", 0, 6, 0 }, 304 { "uadd16", 0, 6, { 0 }},
305 { "sxtah", 0, 6, 0 }, 305 { "sxtah", 0, 6, { 0 }},
306 { "sxtab16", 0, 6, 0 }, 306 { "sxtab16", 0, 6, { 0 }},
307 { "qadd8", 0, 6, 0 }, 307 { "qadd8", 0, 6, { 0 }},
308 { "bxj", 0, 5, 0 }, 308 { "bxj", 0, 5, { 0 }},
309 { "clz", 0, 3, 0 }, 309 { "clz", 0, 3, { 0 }},
310 { "uxtah", 0, 6, 0 }, 310 { "uxtah", 0, 6, { 0 }},
311 { "bx", 0, 2, 0 }, 311 { "bx", 0, 2, { 0 }},
312 { "rev", 0, 6, 0 }, 312 { "rev", 0, 6, { 0 }},
313 { "blx", 0, 3, 0 }, 313 { "blx", 0, 3, { 0 }},
314 { "revsh", 0, 6, 0 }, 314 { "revsh", 0, 6, { 0 }},
315 { "qadd", 0, 4, 0 }, 315 { "qadd", 0, 4, { 0 }},
316 { "qadd16", 0, 6, 0 }, 316 { "qadd16", 0, 6, { 0 }},
317 { "qaddsubx", 0, 6, 0 }, 317 { "qaddsubx", 0, 6, { 0 }},
318 { "ldrex", 0, 0, 0 }, 318 { "ldrex", 0, 0, { 0 }},
319 { "qdadd", 0, 4, 0 }, 319 { "qdadd", 0, 4, { 0 }},
320 { "qdsub", 0, 4, 0 }, 320 { "qdsub", 0, 4, { 0 }},
321 { "qsub", 0, 4, 0 }, 321 { "qsub", 0, 4, { 0 }},
322 { "ldrexb", 0, 7, 0 }, 322 { "ldrexb", 0, 7, { 0 }},
323 { "qsub8", 0, 6, 0 }, 323 { "qsub8", 0, 6, { 0 }},
324 { "qsub16", 0, 6, 0 }, 324 { "qsub16", 0, 6, { 0 }},
325 { "smuad", 0, 6, 0 }, 325 { "smuad", 0, 6, { 0 }},
326 { "smmul", 0, 6, 0 }, 326 { "smmul", 0, 6, { 0 }},
327 { "smusd", 0, 6, 0 }, 327 { "smusd", 0, 6, { 0 }},
328 { "smlsd", 0, 6, 0 }, 328 { "smlsd", 0, 6, { 0 }},
329 { "smlsld", 0, 6, 0 }, 329 { "smlsld", 0, 6, { 0 }},
330 { "smmla", 0, 6, 0 }, 330 { "smmla", 0, 6, { 0 }},
331 { "smmls", 0, 6, 0 }, 331 { "smmls", 0, 6, { 0 }},
332 { "smlald", 0, 6, 0 }, 332 { "smlald", 0, 6, { 0 }},
333 { "smlad", 0, 6, 0 }, 333 { "smlad", 0, 6, { 0 }},
334 { "smlaw", 0, 4, 0 }, 334 { "smlaw", 0, 4, { 0 }},
335 { "smulw", 0, 4, 0 }, 335 { "smulw", 0, 4, { 0 }},
336 { "pkhtb", 0, 6, 0 }, 336 { "pkhtb", 0, 6, { 0 }},
337 { "pkhbt", 0, 6, 0 }, 337 { "pkhbt", 0, 6, { 0 }},
338 { "smul", 0, 4, 0 }, 338 { "smul", 0, 4, { 0 }},
339 { "smlal", 0, 4, 0 }, 339 { "smlal", 0, 4, { 0 }},
340 { "smla", 0, 4, 0 }, 340 { "smla", 0, 4, { 0 }},
341 { "mcrr", 0, 6, 0 }, 341 { "mcrr", 0, 6, { 0 }},
342 { "mrrc", 0, 6, 0 }, 342 { "mrrc", 0, 6, { 0 }},
343 { "cmp", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 343 { "cmp", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
344 { "tst", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 344 { "tst", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
345 { "teq", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 345 { "teq", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
346 { "cmn", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 346 { "cmn", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
347 { "smull", 0, 0, 0 }, 347 { "smull", 0, 0, { 0 }},
348 { "umull", 0, 0, 0 }, 348 { "umull", 0, 0, { 0 }},
349 { "umlal", 0, 0, 0 }, 349 { "umlal", 0, 0, { 0 }},
350 { "smlal", 0, 0, 0 }, 350 { "smlal", 0, 0, { 0 }},
351 { "mul", 0, 0, 0 }, 351 { "mul", 0, 0, { 0 }},
352 { "mla", 0, 0, 0 }, 352 { "mla", 0, 0, { 0 }},
353 { "ssat", 0, 6, 0 }, 353 { "ssat", 0, 6, { 0 }},
354 { "usat", 0, 6, 0 }, 354 { "usat", 0, 6, { 0 }},
355 { "mrs", 0, 0, 0 }, 355 { "mrs", 0, 0, { 0 }},
356 { "msr", 0, 0, 0 }, 356 { "msr", 0, 0, { 0 }},
357 { "and", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 357 { "and", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
358 { "bic", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 358 { "bic", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
359 { "ldm", 0, 0, 0 }, 359 { "ldm", 0, 0, { 0 }},
360 { "eor", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 360 { "eor", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
361 { "add", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 361 { "add", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
362 { "rsb", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 362 { "rsb", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
363 { "rsc", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 363 { "rsc", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
364 { "sbc", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 364 { "sbc", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
365 { "adc", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 365 { "adc", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
366 { "sub", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 366 { "sub", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
367 { "orr", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 367 { "orr", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
368 { "mvn", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 368 { "mvn", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
369 { "mov", 3, 0, 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }, 369 { "mov", 3, 0, { 4, 4, 0x00000001, 7, 7, 0x00000001, 25, 25, 0x00000000 }},
370 { "stm", 0, 0, 0 }, 370 { "stm", 0, 0, { 0 }},
371 { "ldm", 0, 0, 0 }, 371 { "ldm", 0, 0, { 0 }},
372 { "ldrsh", 0, 2, 0 }, 372 { "ldrsh", 0, 2, { 0 }},
373 { "stm", 0, 0, 0 }, 373 { "stm", 0, 0, { 0 }},
374 { "ldm", 0, 0, 0 }, 374 { "ldm", 0, 0, { 0 }},
375 { "ldrsb", 0, 2, 0 }, 375 { "ldrsb", 0, 2, { 0 }},
376 { "strd", 0, 4, 0 }, 376 { "strd", 0, 4, { 0 }},
377 { "ldrh", 0, 0, 0 }, 377 { "ldrh", 0, 0, { 0 }},
378 { "strh", 0, 0, 0 }, 378 { "strh", 0, 0, { 0 }},
379 { "ldrd", 0, 4, 0 }, 379 { "ldrd", 0, 4, { 0 }},
380 { "strt", 0, 0, 0 }, 380 { "strt", 0, 0, { 0 }},
381 { "strbt", 0, 0, 0 }, 381 { "strbt", 0, 0, { 0 }},
382 { "ldrbt", 0, 0, 0 }, 382 { "ldrbt", 0, 0, { 0 }},
383 { "ldrt", 0, 0, 0 }, 383 { "ldrt", 0, 0, { 0 }},
384 { "mrc", 0, 6, 0 }, 384 { "mrc", 0, 6, { 0 }},
385 { "mcr", 0, 0, 0 }, 385 { "mcr", 0, 0, { 0 }},
386 { "msr", 0, 0, 0 }, 386 { "msr", 0, 0, { 0 }},
387 { "msr", 0, 0, 0 }, 387 { "msr", 0, 0, { 0 }},
388 { "msr", 0, 0, 0 }, 388 { "msr", 0, 0, { 0 }},
389 { "msr", 0, 0, 0 }, 389 { "msr", 0, 0, { 0 }},
390 { "msr", 0, 0, 0 }, 390 { "msr", 0, 0, { 0 }},
391 { "ldrb", 0, 0, 0 }, 391 { "ldrb", 0, 0, { 0 }},
392 { "strb", 0, 0, 0 }, 392 { "strb", 0, 0, { 0 }},
393 { "ldr", 0, 0, 0 }, 393 { "ldr", 0, 0, { 0 }},
394 { "ldrcond", 1, 0, 28, 31, 0x0000000e }, 394 { "ldrcond", 1, 0, { 28, 31, 0x0000000e }},
395 { "str", 0, 0, 0 }, 395 { "str", 0, 0, { 0 }},
396 { "cdp", 0, 0, 0 }, 396 { "cdp", 0, 0, { 0 }},
397 { "stc", 0, 0, 0 }, 397 { "stc", 0, 0, { 0 }},
398 { "ldc", 0, 0, 0 }, 398 { "ldc", 0, 0, { 0 }},
399 { "ldrexd", 0, ARMV6K, 0 }, 399 { "ldrexd", 0, ARMV6K, { 0 }},
400 { "strexd", 0, ARMV6K, 0 }, 400 { "strexd", 0, ARMV6K, { 0 }},
401 { "ldrexh", 0, ARMV6K, 0 }, 401 { "ldrexh", 0, ARMV6K, { 0 }},
402 { "strexh", 0, ARMV6K, 0 }, 402 { "strexh", 0, ARMV6K, { 0 }},
403 { "nop", 0, ARMV6K, 0 }, 403 { "nop", 0, ARMV6K, { 0 }},
404 { "yield", 0, ARMV6K, 0 }, 404 { "yield", 0, ARMV6K, { 0 }},
405 { "wfe", 0, ARMV6K, 0 }, 405 { "wfe", 0, ARMV6K, { 0 }},
406 { "wfi", 0, ARMV6K, 0 }, 406 { "wfi", 0, ARMV6K, { 0 }},
407 { "sev", 0, ARMV6K, 0 }, 407 { "sev", 0, ARMV6K, { 0 }},
408 { "swi", 0, 0, 0 }, 408 { "swi", 0, 0, { 0 }},
409 { "bbl", 0, 0, 0 }, 409 { "bbl", 0, 0, { 0 }},
410 410
411 { "bl_1_thumb", 0, INVALID, 0 }, // Should be table[-4] 411 { "bl_1_thumb", 0, INVALID, { 0 }}, // Should be table[-4]
412 { "bl_2_thumb", 0, INVALID, 0 }, // Should be located at the end of the table[-3] 412 { "bl_2_thumb", 0, INVALID, { 0 }}, // Should be located at the end of the table[-3]
413 { "blx_1_thumb", 0, INVALID, 0 }, // Should be located at table[-2] 413 { "blx_1_thumb", 0, INVALID, { 0 }}, // Should be located at table[-2]
414 { "invalid", 0, INVALID, 0 } 414 { "invalid", 0, INVALID, { 0 }}
415}; 415};
416 416
417int decode_arm_instr(uint32_t instr, int32_t *idx) { 417int decode_arm_instr(uint32_t instr, int32_t *idx) {
diff --git a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
index 66282a7e6..890f8a86b 100644
--- a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
+++ b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp
@@ -4978,7 +4978,7 @@ unsigned InterpreterMainLoop(ARMul_State* cpu) {
4978 { 4978 {
4979 if (inst_base->cond == 0xE || CondPassed(cpu, inst_base->cond)) { 4979 if (inst_base->cond == 0xE || CondPassed(cpu, inst_base->cond)) {
4980 msr_inst* inst_cream = (msr_inst*)inst_base->component; 4980 msr_inst* inst_cream = (msr_inst*)inst_base->component;
4981 const uint32_t UnallocMask = 0x06f0fc00, UserMask = 0xf80f0200, PrivMask = 0x000001df, StateMask = 0x01000020; 4981 const uint32_t UserMask = 0xf80f0200, PrivMask = 0x000001df, StateMask = 0x01000020;
4982 unsigned int inst = inst_cream->inst; 4982 unsigned int inst = inst_cream->inst;
4983 unsigned int operand; 4983 unsigned int operand;
4984 4984
diff --git a/src/core/arm/skyeye_common/vfp/vfpinstr.cpp b/src/core/arm/skyeye_common/vfp/vfpinstr.cpp
index a04bf915c..0f8e95d63 100644
--- a/src/core/arm/skyeye_common/vfp/vfpinstr.cpp
+++ b/src/core/arm/skyeye_common/vfp/vfpinstr.cpp
@@ -1093,8 +1093,6 @@ VMOVBRC_INST:
1093 if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) { 1093 if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) {
1094 CHECK_VFP_ENABLED; 1094 CHECK_VFP_ENABLED;
1095 1095
1096 vmovbrc_inst *inst_cream = (vmovbrc_inst *)inst_base->component;
1097
1098 VFP_DEBUG_UNIMPLEMENTED(VMOVBRC); 1096 VFP_DEBUG_UNIMPLEMENTED(VMOVBRC);
1099 } 1097 }
1100 cpu->Reg[15] += GET_INST_SIZE(cpu); 1098 cpu->Reg[15] += GET_INST_SIZE(cpu);
@@ -1224,8 +1222,6 @@ VMOVBCR_INST:
1224 if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) { 1222 if ((inst_base->cond == 0xe) || CondPassed(cpu, inst_base->cond)) {
1225 CHECK_VFP_ENABLED; 1223 CHECK_VFP_ENABLED;
1226 1224
1227 vmovbcr_inst *inst_cream = (vmovbcr_inst *)inst_base->component;
1228
1229 VFP_DEBUG_UNIMPLEMENTED(VMOVBCR); 1225 VFP_DEBUG_UNIMPLEMENTED(VMOVBCR);
1230 } 1226 }
1231 cpu->Reg[15] += GET_INST_SIZE(cpu); 1227 cpu->Reg[15] += GET_INST_SIZE(cpu);
diff --git a/src/core/arm/skyeye_common/vfp/vfpsingle.cpp b/src/core/arm/skyeye_common/vfp/vfpsingle.cpp
index a692c1909..9a7ca5c14 100644
--- a/src/core/arm/skyeye_common/vfp/vfpsingle.cpp
+++ b/src/core/arm/skyeye_common/vfp/vfpsingle.cpp
@@ -51,6 +51,8 @@
51 * =========================================================================== 51 * ===========================================================================
52 */ 52 */
53 53
54#include <cinttypes>
55
54#include "common/logging/log.h" 56#include "common/logging/log.h"
55 57
56#include "core/arm/skyeye_common/vfp/vfp_helper.h" 58#include "core/arm/skyeye_common/vfp/vfp_helper.h"
@@ -392,7 +394,7 @@ sqrt_invalid:
392 term = (u64)vsd.significand * vsd.significand; 394 term = (u64)vsd.significand * vsd.significand;
393 rem = ((u64)vsm.significand << 32) - term; 395 rem = ((u64)vsm.significand << 32) - term;
394 396
395 LOG_DEBUG(Core_ARM11, "term=%016lx rem=%016lx", term, rem); 397 LOG_DEBUG(Core_ARM11, "term=%016" PRIx64 "rem=%016" PRIx64, term, rem);
396 398
397 while (rem < 0) { 399 while (rem < 0) {
398 vsd.significand -= 1; 400 vsd.significand -= 1;