2 C(0x1a00, AR
, RR_a
, Z
, r1
, r2
, new
, r1_32
, add
, adds32
)
3 C(0xb9f8, ARK
, RRF_a
, DO, r2
, r3
, new
, r1_32
, add
, adds32
)
4 C(0x5a00, A
, RX_a
, Z
, r1
, m2_32s
, new
, r1_32
, add
, adds32
)
5 C(0xe35a, AY
, RXY_a
, LD
, r1
, m2_32s
, new
, r1_32
, add
, adds32
)
6 C(0xb908, AGR
, RRE
, Z
, r1
, r2
, r1
, 0, add
, adds64
)
7 C(0xb918, AGFR
, RRE
, Z
, r1
, r2_32s
, r1
, 0, add
, adds64
)
8 C(0xb9e8, AGRK
, RRF_a
, DO, r2
, r3
, r1
, 0, add
, adds64
)
9 C(0xe308, AG
, RXY_a
, Z
, r1
, m2_64
, r1
, 0, add
, adds64
)
10 C(0xe318, AGF
, RXY_a
, Z
, r1
, m2_32s
, r1
, 0, add
, adds64
)
11 C(0xb30a, AEBR
, RRE
, Z
, e1
, e2
, new
, e1
, aeb
, f32
)
12 C(0xb31a, ADBR
, RRE
, Z
, f1_o
, f2_o
, f1
, 0, adb
, f64
)
13 C(0xb34a, AXBR
, RRE
, Z
, 0, x2_o
, x1
, 0, axb
, f128
)
14 C(0xed0a, AEB
, RXE
, Z
, e1
, m2_32u
, new
, e1
, aeb
, f32
)
15 C(0xed1a, ADB
, RXE
, Z
, f1_o
, m2_64
, f1
, 0, adb
, f64
)
17 C(0xc209, AFI
, RIL_a
, EI
, r1
, i2
, new
, r1_32
, add
, adds32
)
18 C(0xeb6a, ASI
, SIY
, GIE
, m1_32s
, i2
, new
, m1_32
, add
, adds32
)
19 C(0xecd8, AHIK
, RIE_d
, DO, r3
, i2
, new
, r1_32
, add
, adds32
)
20 C(0xc208, AGFI
, RIL_a
, EI
, r1
, i2
, r1
, 0, add
, adds64
)
21 C(0xeb7a, AGSI
, SIY
, GIE
, m1_64
, i2
, new
, m1_64
, add
, adds64
)
22 C(0xecd9, AGHIK
, RIE_d
, DO, r3
, i2
, r1
, 0, add
, adds64
)
24 C(0x4a00, AH
, RX_a
, Z
, r1
, m2_16s
, new
, r1_32
, add
, adds32
)
25 C(0xe37a, AHY
, RXY_a
, LD
, r1
, m2_16s
, new
, r1_32
, add
, adds32
)
26 /* ADD HALFWORD IMMEDIATE
*/
27 C(0xa70a, AHI
, RI_a
, Z
, r1
, i2
, new
, r1_32
, add
, adds32
)
28 C(0xa70b, AGHI
, RI_a
, Z
, r1
, i2
, r1
, 0, add
, adds64
)
31 C(0x1e00, ALR
, RR_a
, Z
, r1
, r2
, new
, r1_32
, add
, addu32
)
32 C(0xb9fa, ALRK
, RRF_a
, DO, r2
, r3
, new
, r1_32
, add
, addu32
)
33 C(0x5e00, AL
, RX_a
, Z
, r1
, m2_32u
, new
, r1_32
, add
, addu32
)
34 C(0xe35e, ALY
, RXY_a
, LD
, r1
, m2_32u
, new
, r1_32
, add
, addu32
)
35 C(0xb90a, ALGR
, RRE
, Z
, r1
, r2
, r1
, 0, add
, addu64
)
36 C(0xb91a, ALGFR
, RRE
, Z
, r1
, r2_32u
, r1
, 0, add
, addu64
)
37 C(0xb9ea, ALGRK
, RRF_a
, DO, r2
, r3
, r1
, 0, add
, addu64
)
38 C(0xe30a, ALG
, RXY_a
, Z
, r1
, m2_64
, r1
, 0, add
, addu64
)
39 C(0xe31a, ALGF
, RXY_a
, Z
, r1
, m2_32u
, r1
, 0, add
, addu64
)
40 /* ADD LOGICAL IMMEDIATE
*/
41 C(0xc20b, ALFI
, RIL_a
, EI
, r1
, i2_32u
, new
, r1_32
, add
, addu32
)
42 C(0xc20a, ALGFI
, RIL_a
, EI
, r1
, i2_32u
, r1
, 0, add
, addu64
)
43 /* ADD LOGICAL
WITH SIGNED IMMEDIATE
*/
44 C(0xeb6e, ALSI
, SIY
, GIE
, m1_32u
, i2
, new
, m1_32
, add
, addu32
)
45 C(0xecda, ALHSIK
, RIE_d
, DO, r3
, i2
, new
, r1_32
, add
, addu32
)
46 C(0xeb7e, ALGSI
, SIY
, GIE
, m1_64
, i2
, new
, m1_64
, add
, addu64
)
47 C(0xecdb, ALGHSIK
, RIE_d
, DO, r3
, i2
, r1
, 0, add
, addu64
)
48 /* ADD LOGICAL
WITH CARRY
*/
49 C(0xb998, ALCR
, RRE
, Z
, r1
, r2
, new
, r1_32
, addc
, addc32
)
50 C(0xb988, ALCGR
, RRE
, Z
, r1
, r2
, r1
, 0, addc
, addc64
)
51 C(0xe398, ALC
, RXY_a
, Z
, r1
, m2_32u
, new
, r1_32
, addc
, addc32
)
52 C(0xe388, ALCG
, RXY_a
, Z
, r1
, m2_64
, r1
, 0, addc
, addc64
)
55 C(0x1400, NR
, RR_a
, Z
, r1
, r2
, new
, r1_32
, and
, nz32
)
56 C(0xb9f4, NRK
, RRF_a
, DO, r2
, r3
, new
, r1_32
, and
, nz32
)
57 C(0x5400, N
, RX_a
, Z
, r1
, m2_32s
, new
, r1_32
, and
, nz32
)
58 C(0xe354, NY
, RXY_a
, LD
, r1
, m2_32s
, new
, r1_32
, and
, nz32
)
59 C(0xb980, NGR
, RRE
, Z
, r1
, r2
, r1
, 0, and
, nz64
)
60 C(0xb9e4, NGRK
, RRF_a
, DO, r2
, r3
, r1
, 0, and
, nz64
)
61 C(0xe380, NG
, RXY_a
, Z
, r1
, m2_64
, r1
, 0, and
, nz64
)
62 C(0xd400, NC
, SS_a
, Z
, la1
, a2
, 0, 0, nc
, 0)
64 D(0xc00a, NIHF
, RIL_a
, EI
, r1_o
, i2_32u
, r1
, 0, andi
, 0, 0x2020)
65 D(0xc00b, NILF
, RIL_a
, EI
, r1_o
, i2_32u
, r1
, 0, andi
, 0, 0x2000)
66 D(0xa504, NIHH
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, andi
, 0, 0x1030)
67 D(0xa505, NIHL
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, andi
, 0, 0x1020)
68 D(0xa506, NILH
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, andi
, 0, 0x1010)
69 D(0xa507, NILL
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, andi
, 0, 0x1000)
70 C(0x9400, NI
, SI
, Z
, m1_8u
, i2_8u
, new
, m1_8
, and
, nz64
)
71 C(0xeb54, NIY
, SIY
, LD
, m1_8u
, i2_8u
, new
, m1_8
, and
, nz64
)
74 C(0x0d00, BASR
, RR_a
, Z
, 0, r2_nz
, r1
, 0, bas
, 0)
75 C(0x4d00, BAS
, RX_a
, Z
, 0, a2
, r1
, 0, bas
, 0)
76 /* BRANCH RELATIVE
AND SAVE
*/
77 C(0xa705, BRAS
, RI_b
, Z
, 0, 0, r1
, 0, basi
, 0)
78 C(0xc005, BRASL
, RIL_b
, Z
, 0, 0, r1
, 0, basi
, 0)
79 /* BRANCH ON CONDITION
*/
80 C(0x0700, BCR
, RR_b
, Z
, 0, r2_nz
, 0, 0, bc
, 0)
81 C(0x4700, BC
, RX_b
, Z
, 0, a2
, 0, 0, bc
, 0)
82 /* BRANCH RELATIVE ON CONDITION
*/
83 C(0xa704, BRC
, RI_c
, Z
, 0, 0, 0, 0, bc
, 0)
84 C(0xc004, BRCL
, RIL_c
, Z
, 0, 0, 0, 0, bc
, 0)
86 C(0x0600, BCTR
, RR_a
, Z
, 0, r2_nz
, 0, 0, bct32
, 0)
87 C(0xb946, BCTGR
, RRE
, Z
, 0, r2_nz
, 0, 0, bct64
, 0)
88 C(0x4600, BCT
, RX_a
, Z
, 0, a2
, 0, 0, bct32
, 0)
89 C(0xe346, BCTG
, RXY_a
, Z
, 0, a2
, 0, 0, bct64
, 0)
90 /* BRANCH RELATIVE ON COUNT
*/
91 C(0xa706, BRCT
, RI_b
, Z
, 0, 0, 0, 0, bct32
, 0)
92 C(0xa707, BRCTG
, RI_b
, Z
, 0, 0, 0, 0, bct64
, 0)
95 C(0x1900, CR
, RR_a
, Z
, r1_o
, r2_o
, 0, 0, 0, cmps32
)
96 C(0x5900, C
, RX_a
, Z
, r1_o
, m2_32s
, 0, 0, 0, cmps32
)
97 C(0xe359, CY
, RXY_a
, LD
, r1_o
, m2_32s
, 0, 0, 0, cmps32
)
98 C(0xb920, CGR
, RRE
, Z
, r1_o
, r2_o
, 0, 0, 0, cmps64
)
99 C(0xb930, CGFR
, RRE
, Z
, r1_o
, r2_32s
, 0, 0, 0, cmps64
)
100 C(0xe320, CG
, RXY_a
, Z
, r1_o
, m2_64
, 0, 0, 0, cmps64
)
101 C(0xe330, CGF
, RXY_a
, Z
, r1_o
, m2_32s
, 0, 0, 0, cmps64
)
102 C(0xb309, CEBR
, RRE
, Z
, e1
, e2
, 0, 0, ceb
, 0)
103 C(0xb319, CDBR
, RRE
, Z
, f1_o
, f2_o
, 0, 0, cdb
, 0)
104 C(0xb349, CXBR
, RRE
, Z
, x1_o
, x2_o
, 0, 0, cxb
, 0)
105 C(0xed09, CEB
, RXE
, Z
, e1
, m2_32u
, 0, 0, ceb
, 0)
106 C(0xed19, CDB
, RXE
, Z
, f1_o
, m2_64
, 0, 0, cdb
, 0)
107 /* COMPARE IMMEDIATE
*/
108 C(0xc20d, CFI
, RIL_a
, EI
, r1
, i2
, 0, 0, 0, cmps32
)
109 C(0xc20c, CGFI
, RIL_a
, EI
, r1
, i2
, 0, 0, 0, cmps64
)
110 /* COMPARE HALFWORD
*/
111 C(0x4900, CH
, RX_a
, Z
, r1_o
, m2_16s
, 0, 0, 0, cmps32
)
112 C(0xe379, CHY
, RXY_a
, LD
, r1_o
, m2_16s
, 0, 0, 0, cmps32
)
113 C(0xe334, CGH
, RXY_a
, GIE
, r1_o
, m2_16s
, 0, 0, 0, cmps64
)
114 /* COMPARE HALFWORD IMMEDIATE
*/
115 C(0xa70e, CHI
, RI_a
, Z
, r1_o
, i2
, 0, 0, 0, cmps32
)
116 C(0xa70f, CGHI
, RI_a
, Z
, r1_o
, i2
, 0, 0, 0, cmps64
)
117 C(0xe554, CHHSI
, SIL
, GIE
, m1_16s
, i2
, 0, 0, 0, cmps64
)
118 C(0xe55c, CHSI
, SIL
, GIE
, m1_32s
, i2
, 0, 0, 0, cmps64
)
119 C(0xe558, CGHSI
, SIL
, GIE
, m1_64
, i2
, 0, 0, 0, cmps64
)
120 /* COMPARE HALFWORD RELATIVE LONG
*/
121 C(0xc605, CHRL
, RIL_a
, GIE
, r1_o
, mri2_32s
, 0, 0, 0, cmps32
)
122 C(0xc604, CGHRL
, RIL_a
, GIE
, r1_o
, mri2_64
, 0, 0, 0, cmps64
)
124 /* COMPARE LOGICAL
*/
125 C(0x1500, CLR
, RR_a
, Z
, r1
, r2
, 0, 0, 0, cmpu32
)
126 C(0x5500, CL
, RX_a
, Z
, r1
, m2_32s
, 0, 0, 0, cmpu32
)
127 C(0xe355, CLY
, RXY_a
, LD
, r1
, m2_32s
, 0, 0, 0, cmpu32
)
128 C(0xb921, CLGR
, RRE
, Z
, r1
, r2
, 0, 0, 0, cmpu64
)
129 C(0xb931, CLGFR
, RRE
, Z
, r1
, r2_32u
, 0, 0, 0, cmpu64
)
130 C(0xe321, CLG
, RXY_a
, Z
, r1
, m2_64
, 0, 0, 0, cmpu64
)
131 C(0xe331, CLGF
, RXY_a
, Z
, r1
, m2_32u
, 0, 0, 0, cmpu64
)
132 C(0xd500, CLC
, SS_a
, Z
, la1
, a2
, 0, 0, clc
, 0)
133 /* COMPARE LOGICAL IMMEDIATE
*/
134 C(0xc20f, CLFI
, RIL_a
, EI
, r1
, i2
, 0, 0, 0, cmpu32
)
135 C(0xc20e, CLGFI
, RIL_a
, EI
, r1
, i2_32u
, 0, 0, 0, cmpu64
)
136 C(0x9500, CLI
, SI
, Z
, m1_8u
, i2_8u
, 0, 0, 0, cmpu64
)
137 C(0xeb55, CLIY
, SIY
, LD
, m1_8u
, i2_8u
, 0, 0, 0, cmpu64
)
138 C(0xe555, CLHHSI
, SIL
, GIE
, m1_16u
, i2_16u
, 0, 0, 0, cmpu64
)
139 C(0xe55d, CLFHSI
, SIL
, GIE
, m1_32u
, i2_16u
, 0, 0, 0, cmpu64
)
140 C(0xe559, CLGHSI
, SIL
, GIE
, m1_64
, i2_16u
, 0, 0, 0, cmpu64
)
141 /* COMPARE LOGICAL RELATIVE LONG
*/
142 C(0xc60f, CLRL
, RIL_b
, GIE
, r1_o
, mri2_32u
, 0, 0, 0, cmpu32
)
143 C(0xc60a, CLGRL
, RIL_b
, GIE
, r1_o
, mri2_64
, 0, 0, 0, cmpu64
)
144 C(0xc60e, CLGFRL
, RIL_b
, GIE
, r1_o
, mri2_32u
, 0, 0, 0, cmpu64
)
145 C(0xc607, CLHRL
, RIL_b
, GIE
, r1_o
, mri2_16u
, 0, 0, 0, cmpu32
)
146 C(0xc606, CLGHRL
, RIL_b
, GIE
, r1_o
, mri2_16u
, 0, 0, 0, cmpu64
)
147 /* COMPARE LOGICAL LONG EXTENDED
*/
148 C(0xa900, CLCLE
, RS_a
, Z
, 0, a2
, 0, 0, clcle
, 0)
149 /* COMPARE LOGICAL CHARACTERS UNDER MASK
*/
150 C(0xbd00, CLM
, RS_b
, Z
, r1_o
, a2
, 0, 0, clm
, 0)
151 C(0xeb21, CLMY
, RSY_b
, LD
, r1_o
, a2
, 0, 0, clm
, 0)
152 C(0xeb20, CLMH
, RSY_b
, Z
, r1_sr32
, a2
, 0, 0, clm
, 0)
154 /* COMPARE
AND SWAP
*/
155 C(0xba00, CS
, RS_a
, Z
, r1_o
, a2
, new
, r1_32
, cs
, 0)
156 C(0xeb14, CSY
, RSY_a
, LD
, r1_o
, a2
, new
, r1_32
, cs
, 0)
157 C(0xeb30, CSG
, RSY_a
, Z
, r1_o
, a2
, r1
, 0, csg
, 0)
158 /* COMPARE DOUBLE
AND SWAP
*/
159 C(0xbb00, CDS
, RS_a
, Z
, r1_D32
, a2
, new
, r1_D32
, cds
, 0)
160 C(0xeb31, CDSY
, RSY_a
, LD
, r1_D32
, a2
, new
, r1_D32
, cds
, 0)
161 C(0xeb3e, CDSG
, RSY_a
, Z
, 0, a2
, 0, 0, cdsg
, 0)
163 /* CONVERT
TO DECIMAL
*/
164 C(0x4e00, CVD
, RX_a
, Z
, r1_o
, a2
, 0, 0, cvd
, 0)
165 C(0xe326, CVDY
, RXY_a
, LD
, r1_o
, a2
, 0, 0, cvd
, 0)
166 /* CONVERT
TO FIXED
*/
167 C(0xb398, CFEBR
, RRF_e
, Z
, 0, e2
, new
, r1_32
, cfeb
, 0)
168 C(0xb399, CFDBR
, RRF_e
, Z
, 0, f2_o
, new
, r1_32
, cfdb
, 0)
169 C(0xb39a, CFXBR
, RRF_e
, Z
, 0, x2_o
, new
, r1_32
, cfxb
, 0)
170 C(0xb3a8, CGEBR
, RRF_e
, Z
, 0, e2
, r1
, 0, cgeb
, 0)
171 C(0xb3a9, CGDBR
, RRF_e
, Z
, 0, f2_o
, r1
, 0, cgdb
, 0)
172 C(0xb3aa, CGXBR
, RRF_e
, Z
, 0, x2_o
, r1
, 0, cgxb
, 0)
173 /* CONVERT
FROM FIXED
*/
174 C(0xb394, CEFBR
, RRF_e
, Z
, 0, r2_32s
, new
, e1
, cegb
, 0)
175 C(0xb395, CDFBR
, RRF_e
, Z
, 0, r2_32s
, f1
, 0, cdgb
, 0)
176 C(0xb396, CXFBR
, RRF_e
, Z
, 0, r2_32s
, x1
, 0, cxgb
, 0)
177 C(0xb3a4, CEGBR
, RRF_e
, Z
, 0, r2_o
, new
, e1
, cegb
, 0)
178 C(0xb3a5, CDGBR
, RRF_e
, Z
, 0, r2_o
, f1
, 0, cdgb
, 0)
179 C(0xb3a6, CXGBR
, RRF_e
, Z
, 0, r2_o
, x1
, 0, cxgb
, 0)
182 C(0x1d00, DR
, RR_a
, Z
, r1_D32
, r2_32s
, new_P
, r1_P32
, divs32
, 0)
183 C(0x5d00, D
, RX_a
, Z
, r1_D32
, m2_32s
, new_P
, r1_P32
, divs32
, 0)
184 C(0xb30d, DEBR
, RRE
, Z
, e1
, e2
, new
, e1
, deb
, 0)
185 C(0xb31d, DDBR
, RRE
, Z
, f1_o
, f2_o
, f1
, 0, ddb
, 0)
186 C(0xb34d, DXBR
, RRE
, Z
, 0, x2_o
, x1
, 0, dxb
, 0)
187 C(0xed0d, DEB
, RXE
, Z
, e1
, m2_32u
, new
, e1
, deb
, 0)
188 C(0xed1d, DDB
, RXE
, Z
, f1_o
, m2_64
, f1
, 0, ddb
, 0)
190 C(0xb997, DLR
, RRE
, Z
, r1_D32
, r2_32u
, new_P
, r1_P32
, divu32
, 0)
191 C(0xe397, DL
, RXY_a
, Z
, r1_D32
, m2_32u
, new_P
, r1_P32
, divu32
, 0)
192 C(0xb987, DLGR
, RRE
, Z
, 0, r2_o
, r1_P
, 0, divu64
, 0)
193 C(0xe387, DLG
, RXY_a
, Z
, 0, m2_64
, r1_P
, 0, divu64
, 0)
195 C(0xb90d, DSGR
, RRE
, Z
, r1p1
, r2
, r1_P
, 0, divs64
, 0)
196 C(0xb91d, DSGFR
, RRE
, Z
, r1p1
, r2_32s
, r1_P
, 0, divs64
, 0)
197 C(0xe30d, DSG
, RXY_a
, Z
, r1p1
, m2_64
, r1_P
, 0, divs64
, 0)
198 C(0xe31d, DSGF
, RXY_a
, Z
, r1p1
, m2_32s
, r1_P
, 0, divs64
, 0)
201 C(0x1700, XR
, RR_a
, Z
, r1
, r2
, new
, r1_32
, xor
, nz32
)
202 C(0xb9f7, XRK
, RRF_a
, DO, r2
, r3
, new
, r1_32
, xor
, nz32
)
203 C(0x5700, X
, RX_a
, Z
, r1
, m2_32s
, new
, r1_32
, xor
, nz32
)
204 C(0xe357, XY
, RXY_a
, LD
, r1
, m2_32s
, new
, r1_32
, xor
, nz32
)
205 C(0xb982, XGR
, RRE
, Z
, r1
, r2
, r1
, 0, xor
, nz64
)
206 C(0xb9e7, XGRK
, RRF_a
, DO, r2
, r3
, r1
, 0, xor
, nz64
)
207 C(0xe382, XG
, RXY_a
, Z
, r1
, m2_64
, r1
, 0, xor
, nz64
)
208 C(0xd700, XC
, SS_a
, Z
, la1
, a2
, 0, 0, xc
, 0)
209 /* EXCLUSIVE
OR IMMEDIATE
*/
210 D(0xc006, XIHF
, RIL_a
, EI
, r1_o
, i2_32u
, r1
, 0, xori
, 0, 0x2020)
211 D(0xc007, XILF
, RIL_a
, EI
, r1_o
, i2_32u
, r1
, 0, xori
, 0, 0x2000)
212 C(0x9700, XI
, SI
, Z
, m1_8u
, i2_8u
, new
, m1_8
, xor
, nz64
)
213 C(0xeb57, XIY
, SIY
, LD
, m1_8u
, i2_8u
, new
, m1_8
, xor
, nz64
)
216 C(0x4400, EX
, RX_a
, Z
, r1_o
, a2
, 0, 0, ex
, 0)
217 /* EXECUTE RELATIVE LONG
*/
218 C(0xc600, EXRL
, RIL_b
, EE
, r1_o
, ri2
, 0, 0, ex
, 0)
221 C(0xb38c, EFPC
, RRE
, Z
, 0, 0, new
, r1_32
, efpc
, 0)
223 /* FIND LEFTMOST ONE
*/
224 C(0xb983, FLOGR
, RRE
, EI
, 0, r2_o
, r1_P
, 0, flogr
, 0)
226 /* INSERT CHARACTER
*/
227 C(0x4300, IC
, RX_a
, Z
, 0, m2_8u
, 0, r1_8
, mov2
, 0)
228 C(0xe373, ICY
, RXY_a
, LD
, 0, m2_8u
, 0, r1_8
, mov2
, 0)
229 /* INSERT CHARACTERS UNDER MASK
*/
230 D(0xbf00, ICM
, RS_b
, Z
, 0, a2
, r1
, 0, icm
, 0, 0)
231 D(0xeb81, ICMY
, RSY_b
, LD
, 0, a2
, r1
, 0, icm
, 0, 0)
232 D(0xeb80, ICMH
, RSY_b
, Z
, 0, a2
, r1
, 0, icm
, 0, 32)
233 /* INSERT IMMEDIATE
*/
234 D(0xc008, IIHF
, RIL_a
, EI
, r1_o
, i2_32u
, r1
, 0, insi
, 0, 0x2020)
235 D(0xc009, IILF
, RIL_a
, EI
, r1_o
, i2_32u
, r1
, 0, insi
, 0, 0x2000)
236 D(0xa500, IIHH
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, insi
, 0, 0x1030)
237 D(0xa501, IIHL
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, insi
, 0, 0x1020)
238 D(0xa502, IILH
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, insi
, 0, 0x1010)
239 D(0xa503, IILL
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, insi
, 0, 0x1000)
240 /* INSERT PROGRAM MASK
*/
241 C(0xb222, IPM
, RRE
, Z
, 0, 0, r1
, 0, ipm
, 0)
244 C(0x1800, LR
, RR_a
, Z
, 0, r2_o
, 0, cond_r1r2_32
, mov2
, 0)
245 C(0x5800, L
, RX_a
, Z
, 0, a2
, new
, r1_32
, ld32s
, 0)
246 C(0xe358, LY
, RXY_a
, Z
, 0, a2
, new
, r1_32
, ld32s
, 0)
247 C(0xb904, LGR
, RRE
, Z
, 0, r2_o
, 0, r1
, mov2
, 0)
248 C(0xb914, LGFR
, RRE
, Z
, 0, r2_32s
, 0, r1
, mov2
, 0)
249 C(0xe304, LG
, RXY_a
, Z
, 0, a2
, r1
, 0, ld64
, 0)
250 C(0xe314, LGF
, RXY_a
, Z
, 0, a2
, r1
, 0, ld32s
, 0)
251 C(0x2800, LDR
, RR_a
, Z
, 0, f2_o
, 0, f1
, mov2
, 0)
252 C(0x6800, LD
, RX_a
, Z
, 0, m2_64
, 0, f1
, mov2
, 0)
253 C(0xed65, LDY
, RXY_a
, LD
, 0, m2_64
, 0, f1
, mov2
, 0)
254 C(0x3800, LER
, RR_a
, Z
, 0, e2
, 0, cond_e1e2
, mov2
, 0)
255 C(0x7800, LE
, RX_a
, Z
, 0, m2_32u
, 0, e1
, mov2
, 0)
256 C(0xed64, LEY
, RXY_a
, LD
, 0, m2_32u
, 0, e1
, mov2
, 0)
257 C(0xb365, LXR
, RRE
, Z
, 0, x2_o
, 0, x1
, movx
, 0)
259 C(0xc001, LGFI
, RIL_a
, EI
, 0, i2
, 0, r1
, mov2
, 0)
260 /* LOAD RELATIVE LONG
*/
261 C(0xc40d, LRL
, RIL_b
, GIE
, 0, ri2
, new
, r1_32
, ld32s
, 0)
262 C(0xc408, LGRL
, RIL_b
, GIE
, 0, ri2
, r1
, 0, ld64
, 0)
263 C(0xc40c, LGFRL
, RIL_b
, GIE
, 0, ri2
, r1
, 0, ld32s
, 0)
265 C(0x4100, LA
, RX_a
, Z
, 0, a2
, 0, r1
, mov2
, 0)
266 C(0xe371, LAY
, RXY_a
, LD
, 0, a2
, 0, r1
, mov2
, 0)
267 /* LOAD ADDRESS RELATIVE LONG
*/
268 C(0xc000, LARL
, RIL_b
, Z
, 0, ri2
, 0, r1
, mov2
, 0)
270 C(0x1200, LTR
, RR_a
, Z
, 0, r2_o
, 0, cond_r1r2_32
, mov2
, s32
)
271 C(0xb902, LTGR
, RRE
, Z
, 0, r2_o
, 0, r1
, mov2
, s64
)
272 C(0xb912, LTGFR
, RRE
, Z
, 0, r2_32s
, 0, r1
, mov2
, s64
)
273 C(0xe312, LT
, RXY_a
, EI
, 0, a2
, new
, r1_32
, ld32s
, s64
)
274 C(0xe302, LTG
, RXY_a
, EI
, 0, a2
, r1
, 0, ld64
, s64
)
275 C(0xe332, LTGF
, RXY_a
, GIE
, 0, a2
, r1
, 0, ld32s
, s64
)
276 C(0xb302, LTEBR
, RRE
, Z
, 0, e2
, 0, cond_e1e2
, mov2
, f32
)
277 C(0xb312, LTDBR
, RRE
, Z
, 0, f2_o
, 0, f1
, mov2
, f64
)
278 C(0xb342, LTXBR
, RRE
, Z
, 0, x2_o
, 0, x1
, movx
, f128
)
280 C(0xb926, LBR
, RRE
, EI
, 0, r2_8s
, 0, r1_32
, mov2
, 0)
281 C(0xb906, LGBR
, RRE
, EI
, 0, r2_8s
, 0, r1
, mov2
, 0)
282 C(0xe376, LB
, RXY_a
, LD
, 0, a2
, new
, r1_32
, ld8s
, 0)
283 C(0xe377, LGB
, RXY_a
, LD
, 0, a2
, r1
, 0, ld8s
, 0)
284 /* LOAD COMPLEMENT
*/
285 C(0x1300, LCR
, RR_a
, Z
, 0, r2
, new
, r1_32
, neg
, neg32
)
286 C(0xb903, LCGR
, RRE
, Z
, 0, r2
, r1
, 0, neg
, neg64
)
287 C(0xb913, LCGFR
, RRE
, Z
, 0, r2_32s
, r1
, 0, neg
, neg64
)
288 C(0xb303, LCEBR
, RRE
, Z
, 0, e2
, new
, e1
, negf32
, f32
)
289 C(0xb313, LCDBR
, RRE
, Z
, 0, f2_o
, f1
, 0, negf64
, f64
)
290 C(0xb343, LCXBR
, RRE
, Z
, 0, x2_o
, x1
, 0, negf128
, f128
)
292 C(0xb927, LHR
, RRE
, EI
, 0, r2_16s
, 0, r1_32
, mov2
, 0)
293 C(0xb907, LGHR
, RRE
, EI
, 0, r2_16s
, 0, r1
, mov2
, 0)
294 C(0x4800, LH
, RX_a
, Z
, 0, a2
, new
, r1_32
, ld16s
, 0)
295 C(0xe378, LHY
, RXY_a
, LD
, 0, a2
, new
, r1_32
, ld16s
, 0)
296 C(0xe315, LGH
, RXY_a
, Z
, 0, a2
, r1
, 0, ld16s
, 0)
297 /* LOAD HALFWORD IMMEDIATE
*/
298 C(0xa708, LHI
, RI_a
, Z
, 0, i2
, 0, r1_32
, mov2
, 0)
299 C(0xa709, LGHI
, RI_a
, Z
, 0, i2
, 0, r1
, mov2
, 0)
300 /* LOAD HALFWORD RELATIVE LONG
*/
301 C(0xc405, LHRL
, RIL_b
, GIE
, 0, ri2
, new
, r1_32
, ld16s
, 0)
302 C(0xc404, LGHRL
, RIL_b
, GIE
, 0, ri2
, r1
, 0, ld16s
, 0)
304 C(0xb916, LLGFR
, RRE
, Z
, 0, r2_32u
, 0, r1
, mov2
, 0)
305 C(0xe316, LLGF
, RXY_a
, Z
, 0, a2
, r1
, 0, ld32u
, 0)
306 /* LOAD LOGICAL RELATIVE LONG
*/
307 C(0xc40e, LLGFRL
, RIL_b
, GIE
, 0, ri2
, r1
, 0, ld32u
, 0)
308 /* LOAD LOGICAL CHARACTER
*/
309 C(0xb994, LLCR
, RRE
, EI
, 0, r2_8u
, 0, r1_32
, mov2
, 0)
310 C(0xb984, LLGCR
, RRE
, EI
, 0, r2_8u
, 0, r1
, mov2
, 0)
311 C(0xe394, LLC
, RXY_a
, EI
, 0, a2
, new
, r1_32
, ld8u
, 0)
312 C(0xe390, LLGC
, RXY_a
, Z
, 0, a2
, r1
, 0, ld8u
, 0)
313 /* LOAD LOGICAL HALFWORD
*/
314 C(0xb995, LLHR
, RRE
, EI
, 0, r2_16u
, 0, r1_32
, mov2
, 0)
315 C(0xb985, LLGHR
, RRE
, EI
, 0, r2_16u
, 0, r1
, mov2
, 0)
316 C(0xe395, LLH
, RXY_a
, EI
, 0, a2
, new
, r1_32
, ld16u
, 0)
317 C(0xe391, LLGH
, RXY_a
, Z
, 0, a2
, r1
, 0, ld16u
, 0)
318 /* LOAD LOGICAL HALFWORD RELATIVE LONG
*/
319 C(0xc402, LLHRL
, RIL_b
, GIE
, 0, ri2
, new
, r1_32
, ld16u
, 0)
320 C(0xc406, LLGHRL
, RIL_b
, GIE
, 0, ri2
, r1
, 0, ld16u
, 0)
321 /* LOAD LOGICAL IMMEDATE
*/
322 D(0xc00e, LLIHF
, RIL_a
, EI
, 0, i2_32u_shl
, 0, r1
, mov2
, 0, 32)
323 D(0xc00f, LLILF
, RIL_a
, EI
, 0, i2_32u_shl
, 0, r1
, mov2
, 0, 0)
324 D(0xa50c, LLIHH
, RI_a
, Z
, 0, i2_16u_shl
, 0, r1
, mov2
, 0, 48)
325 D(0xa50d, LLIHL
, RI_a
, Z
, 0, i2_16u_shl
, 0, r1
, mov2
, 0, 32)
326 D(0xa50e, LLILH
, RI_a
, Z
, 0, i2_16u_shl
, 0, r1
, mov2
, 0, 16)
327 D(0xa50f, LLILL
, RI_a
, Z
, 0, i2_16u_shl
, 0, r1
, mov2
, 0, 0)
328 /* LOAD LOGICAL THIRTY ONE BITS
*/
329 C(0xb917, LLGTR
, RRE
, Z
, 0, r2_o
, r1
, 0, llgt
, 0)
330 C(0xe317, LLGT
, RXY_a
, Z
, 0, m2_32u
, r1
, 0, llgt
, 0)
332 C(0x1100, LNR
, RR_a
, Z
, 0, r2_32s
, new
, r1_32
, nabs
, nabs32
)
333 C(0xb901, LNGR
, RRE
, Z
, 0, r2
, r1
, 0, nabs
, nabs64
)
334 C(0xb911, LNGFR
, RRE
, Z
, 0, r2_32s
, r1
, 0, nabs
, nabs64
)
335 C(0xb301, LNEBR
, RRE
, Z
, 0, e2
, new
, e1
, nabsf32
, f32
)
336 C(0xb311, LNDBR
, RRE
, Z
, 0, f2_o
, f1
, 0, nabsf64
, f64
)
337 C(0xb341, LNXBR
, RRE
, Z
, 0, x2_o
, x1
, 0, nabsf128
, f128
)
339 C(0x1000, LPR
, RR_a
, Z
, 0, r2_32s
, new
, r1_32
, abs
, abs32
)
340 C(0xb900, LPGR
, RRE
, Z
, 0, r2
, r1
, 0, abs
, abs64
)
341 C(0xb910, LPGFR
, RRE
, Z
, 0, r2_32s
, r1
, 0, abs
, abs64
)
342 C(0xb300, LPEBR
, RRE
, Z
, 0, e2
, new
, e1
, absf32
, f32
)
343 C(0xb310, LPDBR
, RRE
, Z
, 0, f2_o
, f1
, 0, absf64
, f64
)
344 C(0xb340, LPXBR
, RRE
, Z
, 0, x2_o
, x1
, 0, absf128
, f128
)
346 C(0xb91f, LRVR
, RRE
, Z
, 0, r2_32u
, new
, r1_32
, rev32
, 0)
347 C(0xb90f, LRVGR
, RRE
, Z
, 0, r2_o
, r1
, 0, rev64
, 0)
348 C(0xe31f, LRVH
, RXY_a
, Z
, 0, m2_16u
, new
, r1_16
, rev16
, 0)
349 C(0xe31e, LRV
, RXY_a
, Z
, 0, m2_32u
, new
, r1_32
, rev32
, 0)
350 C(0xe30f, LRVG
, RXY_a
, Z
, 0, m2_64
, r1
, 0, rev64
, 0)
352 C(0xb374, LZER
, RRE
, Z
, 0, 0, 0, e1
, zero
, 0)
353 C(0xb375, LZDR
, RRE
, Z
, 0, 0, 0, f1
, zero
, 0)
354 C(0xb376, LZXR
, RRE
, Z
, 0, 0, 0, x1
, zero2
, 0)
357 C(0xb29d, LFPC
, S
, Z
, 0, m2_32u
, 0, 0, sfpc
, 0)
359 /* LOAD LENGTHENED
*/
360 C(0xb304, LDEBR
, RRE
, Z
, 0, e2
, f1
, 0, ldeb
, 0)
361 C(0xb305, LXDBR
, RRE
, Z
, 0, f2_o
, x1
, 0, lxdb
, 0)
362 C(0xb306, LXEBR
, RRE
, Z
, 0, e2
, x1
, 0, lxeb
, 0)
363 C(0xed04, LDEB
, RXE
, Z
, 0, m2_32u
, f1
, 0, ldeb
, 0)
364 C(0xed05, LXDB
, RXE
, Z
, 0, m2_64
, x1
, 0, lxdb
, 0)
365 C(0xed06, LXEB
, RXE
, Z
, 0, m2_32u
, x1
, 0, lxeb
, 0)
367 C(0xb344, LEDBR
, RRE
, Z
, 0, f2_o
, new
, e1
, ledb
, 0)
368 C(0xb345, LDXBR
, RRE
, Z
, 0, x2_o
, f1
, 0, ldxb
, 0)
369 C(0xb346, LEXBR
, RRE
, Z
, 0, x2_o
, new
, e1
, lexb
, 0)
372 C(0x9800, LM
, RS_a
, Z
, 0, a2
, 0, 0, lm32
, 0)
373 C(0xeb98, LMY
, RSY_a
, LD
, 0, a2
, 0, 0, lm32
, 0)
374 C(0xeb04, LMG
, RSY_a
, Z
, 0, a2
, 0, 0, lm64
, 0)
375 /* LOAD MULTIPLE
HIGH */
376 C(0xeb96, LMH
, RSY_a
, Z
, 0, a2
, 0, 0, lmh
, 0)
377 /* LOAD ACCESS MULTIPLE
*/
378 C(0x9a00, LAM
, RS_a
, Z
, 0, a2
, 0, 0, lam
, 0)
379 C(0xeb9a, LAMY
, RSY_a
, LD
, 0, a2
, 0, 0, lam
, 0)
382 C(0xd200, MVC
, SS_a
, Z
, la1
, a2
, 0, 0, mvc
, 0)
383 C(0xe544, MVHHI
, SIL
, GIE
, la1
, i2
, 0, m1_16
, mov2
, 0)
384 C(0xe54c, MVHI
, SIL
, GIE
, la1
, i2
, 0, m1_32
, mov2
, 0)
385 C(0xe548, MVGHI
, SIL
, GIE
, la1
, i2
, 0, m1_64
, mov2
, 0)
386 C(0x9200, MVI
, SI
, Z
, la1
, i2
, 0, m1_8
, mov2
, 0)
387 C(0xeb52, MVIY
, SIY
, LD
, la1
, i2
, 0, m1_8
, mov2
, 0)
389 C(0x0e00, MVCL
, RR_a
, Z
, 0, 0, 0, 0, mvcl
, 0)
390 /* MOVE LONG EXTENDED
*/
391 C(0xa800, MVCLE
, RS_a
, Z
, 0, a2
, 0, 0, mvcle
, 0)
394 C(0x1c00, MR
, RR_a
, Z
, r1p1_32s
, r2_32s
, new
, r1_D32
, mul
, 0)
395 C(0x5c00, M
, RX_a
, Z
, r1p1_32s
, m2_32s
, new
, r1_D32
, mul
, 0)
396 C(0xe35c, MFY
, RXY_a
, GIE
, r1p1_32s
, m2_32s
, new
, r1_D32
, mul
, 0)
397 C(0xb317, MEEBR
, RRE
, Z
, e1
, e2
, new
, e1
, meeb
, 0)
398 C(0xb31c, MDBR
, RRE
, Z
, f1_o
, f2_o
, f1
, 0, mdb
, 0)
399 C(0xb34c, MXBR
, RRE
, Z
, 0, x2_o
, x1
, 0, mxb
, 0)
400 C(0xb30c, MDEBR
, RRE
, Z
, f1_o
, e2
, f1
, 0, mdeb
, 0)
401 C(0xb307, MXDBR
, RRE
, Z
, 0, f2_o
, x1
, 0, mxdb
, 0)
402 C(0xed17, MEEB
, RXE
, Z
, e1
, m2_32u
, new
, e1
, meeb
, 0)
403 C(0xed1c, MDB
, RXE
, Z
, f1_o
, m2_64
, f1
, 0, mdb
, 0)
404 C(0xed0c, MDEB
, RXE
, Z
, f1_o
, m2_32u
, f1
, 0, mdeb
, 0)
405 C(0xed07, MXDB
, RXE
, Z
, 0, m2_64
, x1
, 0, mxdb
, 0)
406 /* MULTIPLY HALFWORD
*/
407 C(0x4c00, MH
, RX_a
, Z
, r1_o
, m2_16s
, new
, r1_32
, mul
, 0)
408 C(0xe37c, MHY
, RXY_a
, GIE
, r1_o
, m2_16s
, new
, r1_32
, mul
, 0)
409 /* MULTIPLY HALFWORD IMMEDIATE
*/
410 C(0xa70c, MHI
, RI_a
, Z
, r1_o
, i2
, new
, r1_32
, mul
, 0)
411 C(0xa70d, MGHI
, RI_a
, Z
, r1_o
, i2
, r1
, 0, mul
, 0)
412 /* MULTIPLY LOGICAL
*/
413 C(0xb996, MLR
, RRE
, Z
, r1p1_32u
, r2_32u
, new
, r1_D32
, mul
, 0)
414 C(0xe396, ML
, RXY_a
, Z
, r1p1_32u
, m2_32u
, new
, r1_D32
, mul
, 0)
415 C(0xb986, MLGR
, RRE
, Z
, r1p1
, r2_o
, r1_P
, 0, mul128
, 0)
416 C(0xe386, MLG
, RXY_a
, Z
, r1p1
, m2_64
, r1_P
, 0, mul128
, 0)
417 /* MULTIPLY SINGLE
*/
418 C(0xb252, MSR
, RRE
, Z
, r1_o
, r2_o
, new
, r1_32
, mul
, 0)
419 C(0x7100, MS
, RX_a
, Z
, r1_o
, m2_32s
, new
, r1_32
, mul
, 0)
420 C(0xe351, MSY
, RXY_a
, LD
, r1_o
, m2_32s
, new
, r1_32
, mul
, 0)
421 C(0xb90c, MSGR
, RRE
, Z
, r1_o
, r2_o
, r1
, 0, mul
, 0)
422 C(0xb91c, MSGFR
, RRE
, Z
, r1_o
, r2_32s
, r1
, 0, mul
, 0)
423 C(0xe30c, MSG
, RXY_a
, Z
, r1_o
, m2_64
, r1
, 0, mul
, 0)
424 C(0xe31c, MSGF
, RXY_a
, Z
, r1_o
, m2_32s
, r1
, 0, mul
, 0)
425 /* MULTIPLY SINGLE IMMEDIATE
*/
426 C(0xc201, MSFI
, RIL_a
, GIE
, r1_o
, i2
, new
, r1_32
, mul
, 0)
427 C(0xc200, MSGFI
, RIL_a
, GIE
, r1_o
, i2
, r1
, 0, mul
, 0)
429 /* MULTIPLY
AND ADD
*/
430 C(0xb30e, MAEBR
, RRD
, Z
, e1
, e2
, new
, e1
, maeb
, 0)
431 C(0xb31e, MADBR
, RRD
, Z
, f1_o
, f2_o
, f1
, 0, madb
, 0)
432 C(0xed0e, MAEB
, RXF
, Z
, e1
, m2_32u
, new
, e1
, maeb
, 0)
433 C(0xed1e, MADB
, RXF
, Z
, f1_o
, m2_64
, f1
, 0, madb
, 0)
434 /* MULTIPLY
AND SUBTRACT
*/
435 C(0xb30f, MSEBR
, RRD
, Z
, e1
, e2
, new
, e1
, mseb
, 0)
436 C(0xb31f, MSDBR
, RRD
, Z
, f1_o
, f2_o
, f1
, 0, msdb
, 0)
437 C(0xed0f, MSEB
, RXF
, Z
, e1
, m2_32u
, new
, e1
, mseb
, 0)
438 C(0xed1f, MSDB
, RXF
, Z
, f1_o
, m2_64
, f1
, 0, msdb
, 0)
441 C(0x1600, OR, RR_a
, Z
, r1
, r2
, new
, r1_32
, or
, nz32
)
442 C(0xb9f6, ORK
, RRF_a
, DO, r2
, r3
, new
, r1_32
, or
, nz32
)
443 C(0x5600, O
, RX_a
, Z
, r1
, m2_32s
, new
, r1_32
, or
, nz32
)
444 C(0xe356, OY
, RXY_a
, LD
, r1
, m2_32s
, new
, r1_32
, or
, nz32
)
445 C(0xb981, OGR
, RRE
, Z
, r1
, r2
, r1
, 0, or
, nz64
)
446 C(0xb9e6, OGRK
, RRF_a
, DO, r2
, r3
, r1
, 0, or
, nz64
)
447 C(0xe381, OG
, RXY_a
, Z
, r1
, m2_64
, r1
, 0, or
, nz64
)
448 C(0xd600, OC
, SS_a
, Z
, la1
, a2
, 0, 0, oc
, 0)
450 D(0xc00c, OIHF
, RIL_a
, EI
, r1_o
, i2_32u
, r1
, 0, ori
, 0, 0x2020)
451 D(0xc00d, OILF
, RIL_a
, EI
, r1_o
, i2_32u
, r1
, 0, ori
, 0, 0x2000)
452 D(0xa508, OIHH
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, ori
, 0, 0x1030)
453 D(0xa509, OIHL
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, ori
, 0, 0x1020)
454 D(0xa50a, OILH
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, ori
, 0, 0x1010)
455 D(0xa50b, OILL
, RI_a
, Z
, r1_o
, i2_16u
, r1
, 0, ori
, 0, 0x1000)
456 C(0x9600, OI
, SI
, Z
, m1_8u
, i2_8u
, new
, m1_8
, or
, nz64
)
457 C(0xeb56, OIY
, SIY
, LD
, m1_8u
, i2_8u
, new
, m1_8
, or
, nz64
)
459 /* ROTATE LEFT SINGLE LOGICAL
*/
460 C(0xeb1d, RLL
, RSY_a
, Z
, r3_o
, sh32
, new
, r1_32
, rll32
, 0)
461 C(0xeb1c, RLLG
, RSY_a
, Z
, r3_o
, sh64
, r1
, 0, rll64
, 0)
464 C(0xb384, SFPC
, RRE
, Z
, 0, r1_o
, 0, 0, sfpc
, 0)
466 /* SHIFT LEFT SINGLE
*/
467 D(0x8b00, SLA
, RS_a
, Z
, r1
, sh32
, new
, r1_32
, sla
, 0, 31)
468 D(0xebdd, SLAK
, RSY_a
, DO, r3
, sh32
, new
, r1_32
, sla
, 0, 31)
469 D(0xeb0b, SLAG
, RSY_a
, Z
, r3
, sh64
, r1
, 0, sla
, 0, 63)
470 /* SHIFT LEFT SINGLE LOGICAL
*/
471 C(0x8900, SLL
, RS_a
, Z
, r1_o
, sh32
, new
, r1_32
, sll
, 0)
472 C(0xebdf, SLLK
, RSY_a
, DO, r3_o
, sh32
, new
, r1_32
, sll
, 0)
473 C(0xeb0d, SLLG
, RSY_a
, Z
, r3_o
, sh64
, r1
, 0, sll
, 0)
474 /* SHIFT RIGHT SINGLE
*/
475 C(0x8a00, SRA
, RS_a
, Z
, r1_32s
, sh32
, new
, r1_32
, sra
, s32
)
476 C(0xebdc, SRAK
, RSY_a
, DO, r3_32s
, sh32
, new
, r1_32
, sra
, s32
)
477 C(0xeb0a, SRAG
, RSY_a
, Z
, r3_o
, sh64
, r1
, 0, sra
, s64
)
478 /* SHIFT RIGHT SINGLE LOGICAL
*/
479 C(0x8800, SRL
, RS_a
, Z
, r1_32u
, sh32
, new
, r1_32
, srl
, 0)
480 C(0xebde, SRLK
, RSY_a
, DO, r3_32u
, sh32
, new
, r1_32
, srl
, 0)
481 C(0xeb0c, SRLG
, RSY_a
, Z
, r3_o
, sh64
, r1
, 0, srl
, 0)
482 /* SHIFT LEFT DOUBLE
*/
483 D(0x8f00, SLDA
, RS_a
, Z
, r1_D32
, sh64
, new
, r1_D32
, sla
, 0, 31)
484 /* SHIFT LEFT DOUBLE LOGICAL
*/
485 C(0x8d00, SLDL
, RS_a
, Z
, r1_D32
, sh64
, new
, r1_D32
, sll
, 0)
486 /* SHIFT RIGHT DOUBLE
*/
487 C(0x8e00, SRDA
, RS_a
, Z
, r1_D32
, sh64
, new
, r1_D32
, sra
, s64
)
488 /* SHIFT RIGHT DOUBLE LOGICAL
*/
489 C(0x8c00, SRDL
, RS_a
, Z
, r1_D32
, sh64
, new
, r1_D32
, srl
, 0)
492 C(0xb314, SQEBR
, RRE
, Z
, 0, e2
, new
, e1
, sqeb
, 0)
493 C(0xb315, SQDBR
, RRE
, Z
, 0, f2_o
, f1
, 0, sqdb
, 0)
494 C(0xb316, SQXBR
, RRE
, Z
, 0, x2_o
, x1
, 0, sqxb
, 0)
495 C(0xed14, SQEB
, RXE
, Z
, 0, m2_32u
, new
, e1
, sqeb
, 0)
496 C(0xed15, SQDB
, RXE
, Z
, 0, m2_64
, f1
, 0, sqdb
, 0)
499 C(0x5000, ST
, RX_a
, Z
, r1_o
, a2
, 0, 0, st32
, 0)
500 C(0xe350, STY
, RXY_a
, LD
, r1_o
, a2
, 0, 0, st32
, 0)
501 C(0xe324, STG
, RXY_a
, Z
, r1_o
, a2
, 0, 0, st64
, 0)
502 C(0x6000, STD
, RX_a
, Z
, f1_o
, a2
, 0, 0, st64
, 0)
503 C(0xed67, STDY
, RXY_a
, LD
, f1_o
, a2
, 0, 0, st64
, 0)
504 C(0x7000, STE
, RX_a
, Z
, e1
, a2
, 0, 0, st32
, 0)
505 C(0xed66, STEY
, RXY_a
, LD
, e1
, a2
, 0, 0, st32
, 0)
506 /* STORE RELATIVE LONG
*/
507 C(0xc40f, STRL
, RIL_b
, GIE
, r1_o
, ri2
, 0, 0, st32
, 0)
508 C(0xc40b, STGRL
, RIL_b
, GIE
, r1_o
, ri2
, 0, 0, st64
, 0)
509 /* STORE CHARACTER
*/
510 C(0x4200, STC
, RX_a
, Z
, r1_o
, a2
, 0, 0, st8
, 0)
511 C(0xe372, STCY
, RXY_a
, LD
, r1_o
, a2
, 0, 0, st8
, 0)
512 /* STORE CHARACTERS UNDER MASK
*/
513 D(0xbe00, STCM
, RS_b
, Z
, r1_o
, a2
, 0, 0, stcm
, 0, 0)
514 D(0xeb2d, STCMY
, RSY_b
, LD
, r1_o
, a2
, 0, 0, stcm
, 0, 0)
515 D(0xeb2c, STCMH
, RSY_b
, LD
, r1_o
, a2
, 0, 0, stcm
, 0, 32)
517 C(0x4000, STH
, RX_a
, Z
, r1_o
, a2
, 0, 0, st16
, 0)
518 C(0xe370, STHY
, RXY_a
, LD
, r1_o
, a2
, 0, 0, st16
, 0)
519 /* STORE HALFWORD RELATIVE LONG
*/
520 C(0xc407, STHRL
, RIL_b
, GIE
, r1_o
, ri2
, 0, 0, st16
, 0)
522 C(0xe33f, STRVH
, RXY_a
, Z
, la2
, r1_16u
, new
, m1_16
, rev16
, 0)
523 C(0xe33e, STRV
, RXY_a
, Z
, la2
, r1_32u
, new
, m1_32
, rev32
, 0)
524 C(0xe32f, STRVG
, RXY_a
, Z
, la2
, r1_o
, new
, m1_64
, rev64
, 0)
527 C(0xb29c, STFPC
, S
, Z
, 0, a2
, new
, m2_32
, efpc
, 0)
530 D(0x9000, STM
, RS_a
, Z
, 0, a2
, 0, 0, stm
, 0, 4)
531 D(0xeb90, STMY
, RSY_a
, LD
, 0, a2
, 0, 0, stm
, 0, 4)
532 D(0xeb24, STMG
, RSY_a
, Z
, 0, a2
, 0, 0, stm
, 0, 8)
533 /* STORE MULTIPLE
HIGH */
534 C(0xeb26, STMH
, RSY_a
, Z
, 0, a2
, 0, 0, stmh
, 0)
535 /* STORE ACCESS MULTIPLE
*/
536 C(0x9b00, STAM
, RS_a
, Z
, 0, a2
, 0, 0, stam
, 0)
537 C(0xeb9b, STAMY
, RSY_a
, LD
, 0, a2
, 0, 0, stam
, 0)
540 C(0x1b00, SR
, RR_a
, Z
, r1
, r2
, new
, r1_32
, sub
, subs32
)
541 C(0xb9f9, SRK
, RRF_a
, DO, r2
, r3
, new
, r1_32
, sub
, subs32
)
542 C(0x5b00, S
, RX_a
, Z
, r1
, m2_32s
, new
, r1_32
, sub
, subs32
)
543 C(0xe35b, SY
, RXY_a
, LD
, r1
, m2_32s
, new
, r1_32
, sub
, subs32
)
544 C(0xb909, SGR
, RRE
, Z
, r1
, r2
, r1
, 0, sub
, subs64
)
545 C(0xb919, SGFR
, RRE
, Z
, r1
, r2_32s
, r1
, 0, sub
, subs64
)
546 C(0xb9e9, SGRK
, RRF_a
, DO, r2
, r3
, r1
, 0, sub
, subs64
)
547 C(0xe309, SG
, RXY_a
, Z
, r1
, m2_64
, r1
, 0, sub
, subs64
)
548 C(0xe319, SGF
, RXY_a
, Z
, r1
, m2_32s
, r1
, 0, sub
, subs64
)
549 C(0xb30b, SEBR
, RRE
, Z
, e1
, e2
, new
, e1
, seb
, f32
)
550 C(0xb31b, SDBR
, RRE
, Z
, f1_o
, f2_o
, f1
, 0, sdb
, f64
)
551 C(0xb34b, SXBR
, RRE
, Z
, 0, x2_o
, x1
, 0, sxb
, f128
)
552 C(0xed0b, SEB
, RXE
, Z
, e1
, m2_32u
, new
, e1
, seb
, f32
)
553 C(0xed1b, SDB
, RXE
, Z
, f1_o
, m2_64
, f1
, 0, sdb
, f64
)
554 /* SUBTRACT HALFWORD
*/
555 C(0x4b00, SH
, RX_a
, Z
, r1
, m2_16s
, new
, r1_32
, sub
, subs32
)
556 C(0xe37b, SHY
, RXY_a
, LD
, r1
, m2_16s
, new
, r1_32
, sub
, subs32
)
557 /* SUBTRACT LOGICAL
*/
558 C(0x1f00, SLR
, RR_a
, Z
, r1
, r2
, new
, r1_32
, sub
, subu32
)
559 C(0xb9fb, SLRK
, RRF_a
, DO, r2
, r3
, new
, r1_32
, sub
, subu32
)
560 C(0x5f00, SL
, RX_a
, Z
, r1
, m2_32u
, new
, r1_32
, sub
, subu32
)
561 C(0xe35f, SLY
, RXY_a
, LD
, r1
, m2_32u
, new
, r1_32
, sub
, subu32
)
562 C(0xb90b, SLGR
, RRE
, Z
, r1
, r2
, r1
, 0, sub
, subu64
)
563 C(0xb91b, SLGFR
, RRE
, Z
, r1
, r2_32u
, r1
, 0, sub
, subu64
)
564 C(0xb9eb, SLGRK
, RRF_a
, DO, r2
, r3
, r1
, 0, sub
, subu64
)
565 C(0xe30b, SLG
, RXY_a
, Z
, r1
, m2_64
, r1
, 0, sub
, subu64
)
566 C(0xe31b, SLGF
, RXY_a
, Z
, r1
, m2_32u
, r1
, 0, sub
, subu64
)
567 /* SUBTRACT LOGICAL IMMEDIATE
*/
568 C(0xc205, SLFI
, RIL_a
, EI
, r1
, i2_32u
, new
, r1_32
, sub
, subu32
)
569 C(0xc204, SLGFI
, RIL_a
, EI
, r1
, i2_32u
, r1
, 0, sub
, subu64
)
570 /* SUBTRACT LOGICAL
WITH BORROW
*/
571 C(0xb999, SLBR
, RRE
, Z
, r1
, r2
, new
, r1_32
, subb
, subb32
)
572 C(0xb989, SLBGR
, RRE
, Z
, r1
, r2
, r1
, 0, subb
, subb64
)
573 C(0xe399, SLB
, RXY_a
, Z
, r1
, m2_32u
, new
, r1_32
, subb
, subb32
)
574 C(0xe389, SLBG
, RXY_a
, Z
, r1
, m2_64
, r1
, 0, subb
, subb64
)
576 /* SUPERVISOR CALL
*/
577 C(0x0a00, SVC
, I
, Z
, 0, 0, 0, 0, svc
, 0)
579 /* TEST DATA CLASS
*/
580 C(0xed10, TCEB
, RXE
, Z
, e1
, a2
, 0, 0, tceb
, 0)
581 C(0xed11, TCDB
, RXE
, Z
, f1_o
, a2
, 0, 0, tcdb
, 0)
582 C(0xed12, TCXB
, RXE
, Z
, x1_o
, a2
, 0, 0, tcxb
, 0)
584 /* TEST UNDER MASK
*/
585 C(0x9100, TM
, SI
, Z
, m1_8u
, i2_8u
, 0, 0, 0, tm32
)
586 C(0xeb51, TMY
, SIY
, LD
, m1_8u
, i2_8u
, 0, 0, 0, tm32
)
587 D(0xa702, TMHH
, RI_a
, Z
, r1_o
, i2_16u_shl
, 0, 0, 0, tm64
, 48)
588 D(0xa703, TMHL
, RI_a
, Z
, r1_o
, i2_16u_shl
, 0, 0, 0, tm64
, 32)
589 D(0xa700, TMLH
, RI_a
, Z
, r1_o
, i2_16u_shl
, 0, 0, 0, tm64
, 16)
590 D(0xa701, TMLL
, RI_a
, Z
, r1_o
, i2_16u_shl
, 0, 0, 0, tm64
, 0)
593 C(0xdc00, TR
, SS_a
, Z
, la1
, a2
, 0, 0, tr
, 0)
596 /* Really format SS_b
, but we pack both lengths into one argument
597 for the helper call
, so we might as well leave one
8-bit field.
*/
598 C(0xf300, UNPK
, SS_a
, Z
, la1
, a2
, 0, 0, unpk
, 0)
600 #ifndef CONFIG_USER_ONLY
601 /* DIAGNOSE (KVM hypercall
) */
602 C(0x8300, DIAG
, RX_a
, Z
, 0, 0, 0, 0, diag
, 0)
604 C(0xb700, LCTL
, RS_a
, Z
, 0, a2
, 0, 0, lctl
, 0)
605 C(0xeb2f, LCTLG
, RSY_a
, Z
, 0, a2
, 0, 0, lctlg
, 0)
607 C(0x8200, LPSW
, S
, Z
, 0, a2
, 0, 0, lpsw
, 0)
608 /* LOAD
REAL ADDRESS
*/
609 C(0xb100, LRA
, RX_a
, Z
, 0, a2
, r1
, 0, lra
, 0)
610 C(0xe313, LRAY
, RXY_a
, LD
, 0, a2
, r1
, 0, lra
, 0)
611 C(0xe303, LRAG
, RXY_a
, Z
, 0, a2
, r1
, 0, lra
, 0)
612 /* MOVE
TO PRIMARY
*/
613 C(0xda00, MVCP
, SS_d
, Z
, la1
, a2
, 0, 0, mvcp
, 0)
614 /* MOVE
TO SECONDARY
*/
615 C(0xdb00, MVCS
, SS_d
, Z
, la1
, a2
, 0, 0, mvcs
, 0)
616 /* SET ADDRESSING MODE
*/
617 /* We only do
64-bit
, so accept this as a no
-op.
618 Let SAM24 and SAM31 signal illegal instruction.
*/
619 C(0x010e, SAM64
, E
, Z
, 0, 0, 0, 0, 0, 0)
620 /* SET SYSTEM MASK
*/
621 C(0x8000, SSM
, S
, Z
, 0, m2_8u
, 0, 0, ssm
, 0)
622 /* SIGNAL PROCESSOR
*/
623 C(0xae00, SIGP
, RS_a
, Z
, r3_o
, a2
, 0, 0, sigp
, 0)
625 C(0xb600, STCTL
, RS_a
, Z
, 0, a2
, 0, 0, stctl
, 0)
626 C(0xeb25, STCTG
, RSY_a
, Z
, 0, a2
, 0, 0, stctg
, 0)
627 /* STORE
THEN AND SYSTEM MASK
*/
628 C(0xac00, STNSM
, SI
, Z
, la1
, 0, 0, 0, stnosm
, 0)
629 /* STORE
THEN OR SYSTEM MASK
*/
630 C(0xad00, STOSM
, SI
, Z
, la1
, 0, 0, 0, stnosm
, 0)
631 /* TEST PROTECTION
*/
632 C(0xe501, TPROT
, SSE
, Z
, la1
, a2
, 0, 0, tprot
, 0)
633 #endif
/* CONFIG_USER_ONLY
*/