1 | /*
|
---|
2 | * Autogenerated by $Id: IEMAllInstrA64Impl.h 108958 2025-04-12 00:16:40Z vboxsync $
|
---|
3 | * from the open source v9Ap6-A specs, build 406 (5e0a212688c6bd7aee92394b6f5e491b4d0fee1d)
|
---|
4 | * dated Sun Dec 15 22:18:44 2024 UTC.
|
---|
5 | *
|
---|
6 | * Do not edit!
|
---|
7 | */
|
---|
8 |
|
---|
9 | /*
|
---|
10 | * Copyright (C) 2025 Oracle and/or its affiliates.
|
---|
11 | *
|
---|
12 | * This file is part of VirtualBox base platform packages, as
|
---|
13 | * available from https://www.215389.xyz.
|
---|
14 | *
|
---|
15 | * This program is free software; you can redistribute it and/or
|
---|
16 | * modify it under the terms of the GNU General Public License
|
---|
17 | * as published by the Free Software Foundation, in version 3 of the
|
---|
18 | * License.
|
---|
19 | *
|
---|
20 | * This program is distributed in the hope that it will be useful, but
|
---|
21 | * WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
22 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
---|
23 | * General Public License for more details.
|
---|
24 | *
|
---|
25 | * You should have received a copy of the GNU General Public License
|
---|
26 | * along with this program; if not, see <https://www.gnu.org/licenses>.
|
---|
27 | *
|
---|
28 | * SPDX-License-Identifier: GPL-3.0-only
|
---|
29 | */
|
---|
30 |
|
---|
31 |
|
---|
32 |
|
---|
33 |
|
---|
34 | /*
|
---|
35 | *
|
---|
36 | * Instruction Set & Groups: addsub_carry / dpreg / A64
|
---|
37 | *
|
---|
38 | */
|
---|
39 |
|
---|
40 | /* ADC <Wd>, <Wn>, <Wm> (ffe0fc00/1a000000) */
|
---|
41 | //#define IEM_INSTR_IMPL_A64__ADC_32_addsub_carry(Rd, Rn, Rm)
|
---|
42 |
|
---|
43 |
|
---|
44 | /* ADCS <Wd>, <Wn>, <Wm> (ffe0fc00/3a000000) */
|
---|
45 | //#define IEM_INSTR_IMPL_A64__ADCS_32_addsub_carry(Rd, Rn, Rm)
|
---|
46 |
|
---|
47 |
|
---|
48 | /* SBC <Wd>, <Wn>, <Wm> (ffe0fc00/5a000000) */
|
---|
49 | //#define IEM_INSTR_IMPL_A64__SBC_32_addsub_carry(Rd, Rn, Rm)
|
---|
50 |
|
---|
51 |
|
---|
52 | /* SBCS <Wd>, <Wn>, <Wm> (ffe0fc00/7a000000) */
|
---|
53 | //#define IEM_INSTR_IMPL_A64__SBCS_32_addsub_carry(Rd, Rn, Rm)
|
---|
54 |
|
---|
55 |
|
---|
56 | /* ADC <Xd>, <Xn>, <Xm> (ffe0fc00/9a000000) */
|
---|
57 | //#define IEM_INSTR_IMPL_A64__ADC_64_addsub_carry(Rd, Rn, Rm)
|
---|
58 |
|
---|
59 |
|
---|
60 | /* ADCS <Xd>, <Xn>, <Xm> (ffe0fc00/ba000000) */
|
---|
61 | //#define IEM_INSTR_IMPL_A64__ADCS_64_addsub_carry(Rd, Rn, Rm)
|
---|
62 |
|
---|
63 |
|
---|
64 | /* SBC <Xd>, <Xn>, <Xm> (ffe0fc00/da000000) */
|
---|
65 | //#define IEM_INSTR_IMPL_A64__SBC_64_addsub_carry(Rd, Rn, Rm)
|
---|
66 |
|
---|
67 |
|
---|
68 | /* SBCS <Xd>, <Xn>, <Xm> (ffe0fc00/fa000000) */
|
---|
69 | //#define IEM_INSTR_IMPL_A64__SBCS_64_addsub_carry(Rd, Rn, Rm)
|
---|
70 |
|
---|
71 |
|
---|
72 |
|
---|
73 | /*
|
---|
74 | *
|
---|
75 | * Instruction Set & Groups: addsub_ext / dpreg / A64
|
---|
76 | *
|
---|
77 | */
|
---|
78 |
|
---|
79 | /* ADD <Wd|WSP>, <Wn|WSP>, <Wm>{, <extend>{ #<amount>}} (ffe00000/0b200000) */
|
---|
80 | //#define IEM_INSTR_IMPL_A64__ADD_32_addsub_ext(Rd, Rn, imm3, option, Rm)
|
---|
81 |
|
---|
82 |
|
---|
83 | /* ADDS <Wd>, <Wn|WSP>, <Wm>{, <extend>{ #<amount>}} (ffe00000/2b200000) */
|
---|
84 | //#define IEM_INSTR_IMPL_A64__ADDS_32S_addsub_ext(Rd, Rn, imm3, option, Rm)
|
---|
85 |
|
---|
86 |
|
---|
87 | /* SUB <Wd|WSP>, <Wn|WSP>, <Wm>{, <extend>{ #<amount>}} (ffe00000/4b200000) */
|
---|
88 | //#define IEM_INSTR_IMPL_A64__SUB_32_addsub_ext(Rd, Rn, imm3, option, Rm)
|
---|
89 |
|
---|
90 |
|
---|
91 | /* SUBS <Wd>, <Wn|WSP>, <Wm>{, <extend>{ #<amount>}} (ffe00000/6b200000) */
|
---|
92 | //#define IEM_INSTR_IMPL_A64__SUBS_32S_addsub_ext(Rd, Rn, imm3, option, Rm)
|
---|
93 |
|
---|
94 |
|
---|
95 | /* ADD <Xd|SP>, <Xn|SP>, <R><m>{, <extend>{ #<amount>}} (ffe00000/8b200000) */
|
---|
96 | //#define IEM_INSTR_IMPL_A64__ADD_64_addsub_ext(Rd, Rn, imm3, option, Rm)
|
---|
97 |
|
---|
98 |
|
---|
99 | /* ADDS <Xd>, <Xn|SP>, <R><m>{, <extend>{ #<amount>}} (ffe00000/ab200000) */
|
---|
100 | //#define IEM_INSTR_IMPL_A64__ADDS_64S_addsub_ext(Rd, Rn, imm3, option, Rm)
|
---|
101 |
|
---|
102 |
|
---|
103 | /* SUB <Xd|SP>, <Xn|SP>, <R><m>{, <extend>{ #<amount>}} (ffe00000/cb200000) */
|
---|
104 | //#define IEM_INSTR_IMPL_A64__SUB_64_addsub_ext(Rd, Rn, imm3, option, Rm)
|
---|
105 |
|
---|
106 |
|
---|
107 | /* SUBS <Xd>, <Xn|SP>, <R><m>{, <extend>{ #<amount>}} (ffe00000/eb200000) */
|
---|
108 | //#define IEM_INSTR_IMPL_A64__SUBS_64S_addsub_ext(Rd, Rn, imm3, option, Rm)
|
---|
109 |
|
---|
110 |
|
---|
111 |
|
---|
112 | /*
|
---|
113 | *
|
---|
114 | * Instruction Set & Groups: addsub_imm / dpimm / A64
|
---|
115 | *
|
---|
116 | */
|
---|
117 |
|
---|
118 | /* ADD <Wd|WSP>, <Wn|WSP>, #<imm>{, <shift>} (ff800000/11000000) */
|
---|
119 | //#define IEM_INSTR_IMPL_A64__ADD_32_addsub_imm(Rd, Rn, imm12, sh)
|
---|
120 |
|
---|
121 |
|
---|
122 | /* ADDS <Wd>, <Wn|WSP>, #<imm>{, <shift>} (ff800000/31000000) */
|
---|
123 | //#define IEM_INSTR_IMPL_A64__ADDS_32S_addsub_imm(Rd, Rn, imm12, sh)
|
---|
124 |
|
---|
125 |
|
---|
126 | /* SUB <Wd|WSP>, <Wn|WSP>, #<imm>{, <shift>} (ff800000/51000000) */
|
---|
127 | //#define IEM_INSTR_IMPL_A64__SUB_32_addsub_imm(Rd, Rn, imm12, sh)
|
---|
128 |
|
---|
129 |
|
---|
130 | /* SUBS <Wd>, <Wn|WSP>, #<imm>{, <shift>} (ff800000/71000000) */
|
---|
131 | //#define IEM_INSTR_IMPL_A64__SUBS_32S_addsub_imm(Rd, Rn, imm12, sh)
|
---|
132 |
|
---|
133 |
|
---|
134 | /* ADD <Xd|SP>, <Xn|SP>, #<imm>{, <shift>} (ff800000/91000000) */
|
---|
135 | //#define IEM_INSTR_IMPL_A64__ADD_64_addsub_imm(Rd, Rn, imm12, sh)
|
---|
136 |
|
---|
137 |
|
---|
138 | /* ADDS <Xd>, <Xn|SP>, #<imm>{, <shift>} (ff800000/b1000000) */
|
---|
139 | //#define IEM_INSTR_IMPL_A64__ADDS_64S_addsub_imm(Rd, Rn, imm12, sh)
|
---|
140 |
|
---|
141 |
|
---|
142 | /* SUB <Xd|SP>, <Xn|SP>, #<imm>{, <shift>} (ff800000/d1000000) */
|
---|
143 | //#define IEM_INSTR_IMPL_A64__SUB_64_addsub_imm(Rd, Rn, imm12, sh)
|
---|
144 |
|
---|
145 |
|
---|
146 | /* SUBS <Xd>, <Xn|SP>, #<imm>{, <shift>} (ff800000/f1000000) */
|
---|
147 | //#define IEM_INSTR_IMPL_A64__SUBS_64S_addsub_imm(Rd, Rn, imm12, sh)
|
---|
148 |
|
---|
149 |
|
---|
150 |
|
---|
151 | /*
|
---|
152 | *
|
---|
153 | * Instruction Set & Groups: addsub_immtags / dpimm / A64
|
---|
154 | *
|
---|
155 | */
|
---|
156 |
|
---|
157 | /* ADDG <Xd|SP>, <Xn|SP>, #<uimm6>, #<uimm4> (ffc0c000/91800000) */
|
---|
158 | //#define IEM_INSTR_IMPL_A64__ADDG_64_addsub_immtags(Rd, Rn, imm4, imm6)
|
---|
159 |
|
---|
160 |
|
---|
161 | /* SUBG <Xd|SP>, <Xn|SP>, #<uimm6>, #<uimm4> (ffc0c000/d1800000) */
|
---|
162 | //#define IEM_INSTR_IMPL_A64__SUBG_64_addsub_immtags(Rd, Rn, imm4, imm6)
|
---|
163 |
|
---|
164 |
|
---|
165 |
|
---|
166 | /*
|
---|
167 | *
|
---|
168 | * Instruction Set & Groups: addsub_pt / dpreg / A64
|
---|
169 | *
|
---|
170 | */
|
---|
171 |
|
---|
172 | /* ADDPT <Xd|SP>, <Xn|SP>, <Xm>{, LSL #<amount>} (ffe0e000/9a002000) */
|
---|
173 | //#define IEM_INSTR_IMPL_A64__ADDPT_64_addsub_pt(Rd, Rn, imm3, Rm)
|
---|
174 |
|
---|
175 |
|
---|
176 | /* SUBPT <Xd|SP>, <Xn|SP>, <Xm>{, LSL #<amount>} (ffe0e000/da002000) */
|
---|
177 | //#define IEM_INSTR_IMPL_A64__SUBPT_64_addsub_pt(Rd, Rn, imm3, Rm)
|
---|
178 |
|
---|
179 |
|
---|
180 |
|
---|
181 | /*
|
---|
182 | *
|
---|
183 | * Instruction Set & Groups: addsub_shift / dpreg / A64
|
---|
184 | *
|
---|
185 | */
|
---|
186 |
|
---|
187 | /* ADD <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/0b000000) */
|
---|
188 | //#define IEM_INSTR_IMPL_A64__ADD_32_addsub_shift(Rd, Rn, imm6, Rm, shift)
|
---|
189 |
|
---|
190 |
|
---|
191 | /* ADDS <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/2b000000) */
|
---|
192 | //#define IEM_INSTR_IMPL_A64__ADDS_32_addsub_shift(Rd, Rn, imm6, Rm, shift)
|
---|
193 |
|
---|
194 |
|
---|
195 | /* SUB <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/4b000000) */
|
---|
196 | //#define IEM_INSTR_IMPL_A64__SUB_32_addsub_shift(Rd, Rn, imm6, Rm, shift)
|
---|
197 |
|
---|
198 |
|
---|
199 | /* SUBS <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/6b000000) */
|
---|
200 | //#define IEM_INSTR_IMPL_A64__SUBS_32_addsub_shift(Rd, Rn, imm6, Rm, shift)
|
---|
201 |
|
---|
202 |
|
---|
203 | /* ADD <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/8b000000) */
|
---|
204 | //#define IEM_INSTR_IMPL_A64__ADD_64_addsub_shift(Rd, Rn, imm6, Rm, shift)
|
---|
205 |
|
---|
206 |
|
---|
207 | /* ADDS <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/ab000000) */
|
---|
208 | //#define IEM_INSTR_IMPL_A64__ADDS_64_addsub_shift(Rd, Rn, imm6, Rm, shift)
|
---|
209 |
|
---|
210 |
|
---|
211 | /* SUB <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/cb000000) */
|
---|
212 | //#define IEM_INSTR_IMPL_A64__SUB_64_addsub_shift(Rd, Rn, imm6, Rm, shift)
|
---|
213 |
|
---|
214 |
|
---|
215 | /* SUBS <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/eb000000) */
|
---|
216 | //#define IEM_INSTR_IMPL_A64__SUBS_64_addsub_shift(Rd, Rn, imm6, Rm, shift)
|
---|
217 |
|
---|
218 |
|
---|
219 |
|
---|
220 | /*
|
---|
221 | *
|
---|
222 | * Instruction Set & Groups: asimdall / simd_dp / A64
|
---|
223 | *
|
---|
224 | */
|
---|
225 |
|
---|
226 | /* SADDLV <V><d>, <Vn>.<T> (bf3ffc00/0e303800) */
|
---|
227 | //#define IEM_INSTR_IMPL_A64__SADDLV_asimdall_only(Rd, Rn, size, Q)
|
---|
228 |
|
---|
229 |
|
---|
230 | /* SMAXV <V><d>, <Vn>.<T> (bf3ffc00/0e30a800) */
|
---|
231 | //#define IEM_INSTR_IMPL_A64__SMAXV_asimdall_only(Rd, Rn, op, size, Q)
|
---|
232 |
|
---|
233 |
|
---|
234 | /* SMINV <V><d>, <Vn>.<T> (bf3ffc00/0e31a800) */
|
---|
235 | //#define IEM_INSTR_IMPL_A64__SMINV_asimdall_only(Rd, Rn, op, size, Q)
|
---|
236 |
|
---|
237 |
|
---|
238 | /* ADDV <V><d>, <Vn>.<T> (bf3ffc00/0e31b800) */
|
---|
239 | //#define IEM_INSTR_IMPL_A64__ADDV_asimdall_only(Rd, Rn, size, Q)
|
---|
240 |
|
---|
241 |
|
---|
242 | /* FMAXNMV <V><d>, <Vn>.<T> (bffffc00/0e30c800) */
|
---|
243 | //#define IEM_INSTR_IMPL_A64__FMAXNMV_asimdall_only_H(Rd, Rn, o1, Q)
|
---|
244 |
|
---|
245 |
|
---|
246 | /* FMAXV <V><d>, <Vn>.<T> (bffffc00/0e30f800) */
|
---|
247 | //#define IEM_INSTR_IMPL_A64__FMAXV_asimdall_only_H(Rd, Rn, o1, Q)
|
---|
248 |
|
---|
249 |
|
---|
250 | /* FMINNMV <V><d>, <Vn>.<T> (bffffc00/0eb0c800) */
|
---|
251 | //#define IEM_INSTR_IMPL_A64__FMINNMV_asimdall_only_H(Rd, Rn, o1, Q)
|
---|
252 |
|
---|
253 |
|
---|
254 | /* FMINV <V><d>, <Vn>.<T> (bffffc00/0eb0f800) */
|
---|
255 | //#define IEM_INSTR_IMPL_A64__FMINV_asimdall_only_H(Rd, Rn, o1, Q)
|
---|
256 |
|
---|
257 |
|
---|
258 | /* UADDLV <V><d>, <Vn>.<T> (bf3ffc00/2e303800) */
|
---|
259 | //#define IEM_INSTR_IMPL_A64__UADDLV_asimdall_only(Rd, Rn, size, Q)
|
---|
260 |
|
---|
261 |
|
---|
262 | /* UMAXV <V><d>, <Vn>.<T> (bf3ffc00/2e30a800) */
|
---|
263 | //#define IEM_INSTR_IMPL_A64__UMAXV_asimdall_only(Rd, Rn, op, size, Q)
|
---|
264 |
|
---|
265 |
|
---|
266 | /* UMINV <V><d>, <Vn>.<T> (bf3ffc00/2e31a800) */
|
---|
267 | //#define IEM_INSTR_IMPL_A64__UMINV_asimdall_only(Rd, Rn, op, size, Q)
|
---|
268 |
|
---|
269 |
|
---|
270 | /* FMAXNMV S<d>, <Vn>.4S (fffffc00/6e30c800) */
|
---|
271 | //#define IEM_INSTR_IMPL_A64__FMAXNMV_asimdall_only_SD(Rd, Rn, sz, o1, Q)
|
---|
272 |
|
---|
273 |
|
---|
274 | /* FMAXV S<d>, <Vn>.4S (fffffc00/6e30f800) */
|
---|
275 | //#define IEM_INSTR_IMPL_A64__FMAXV_asimdall_only_SD(Rd, Rn, sz, o1, Q)
|
---|
276 |
|
---|
277 |
|
---|
278 | /* FMINNMV S<d>, <Vn>.4S (fffffc00/6eb0c800) */
|
---|
279 | //#define IEM_INSTR_IMPL_A64__FMINNMV_asimdall_only_SD(Rd, Rn, sz, o1, Q)
|
---|
280 |
|
---|
281 |
|
---|
282 | /* FMINV S<d>, <Vn>.4S (fffffc00/6eb0f800) */
|
---|
283 | //#define IEM_INSTR_IMPL_A64__FMINV_asimdall_only_SD(Rd, Rn, sz, o1, Q)
|
---|
284 |
|
---|
285 |
|
---|
286 |
|
---|
287 | /*
|
---|
288 | *
|
---|
289 | * Instruction Set & Groups: asimddiff / simd_dp / A64
|
---|
290 | *
|
---|
291 | */
|
---|
292 |
|
---|
293 | /* SADDL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e200000) */
|
---|
294 | //#define IEM_INSTR_IMPL_A64__SADDL_asimddiff_L(Rd, Rn, o1, Rm, size, Q)
|
---|
295 |
|
---|
296 |
|
---|
297 | /* SADDW2 <Vd>.<Ta>, <Vn>.<Ta>, <Vm>.<Tb> (bf20fc00/0e201000) */
|
---|
298 | //#define IEM_INSTR_IMPL_A64__SADDW_asimddiff_W(Rd, Rn, o1, Rm, size, Q)
|
---|
299 |
|
---|
300 |
|
---|
301 | /* SSUBL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e202000) */
|
---|
302 | //#define IEM_INSTR_IMPL_A64__SSUBL_asimddiff_L(Rd, Rn, o1, Rm, size, Q)
|
---|
303 |
|
---|
304 |
|
---|
305 | /* SSUBW2 <Vd>.<Ta>, <Vn>.<Ta>, <Vm>.<Tb> (bf20fc00/0e203000) */
|
---|
306 | //#define IEM_INSTR_IMPL_A64__SSUBW_asimddiff_W(Rd, Rn, o1, Rm, size, Q)
|
---|
307 |
|
---|
308 |
|
---|
309 | /* ADDHN2 <Vd>.<Tb>, <Vn>.<Ta>, <Vm>.<Ta> (bf20fc00/0e204000) */
|
---|
310 | //#define IEM_INSTR_IMPL_A64__ADDHN_asimddiff_N(Rd, Rn, o1, Rm, size, Q)
|
---|
311 |
|
---|
312 |
|
---|
313 | /* SABAL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e205000) */
|
---|
314 | //#define IEM_INSTR_IMPL_A64__SABAL_asimddiff_L(Rd, Rn, op, Rm, size, Q)
|
---|
315 |
|
---|
316 |
|
---|
317 | /* SUBHN2 <Vd>.<Tb>, <Vn>.<Ta>, <Vm>.<Ta> (bf20fc00/0e206000) */
|
---|
318 | //#define IEM_INSTR_IMPL_A64__SUBHN_asimddiff_N(Rd, Rn, o1, Rm, size, Q)
|
---|
319 |
|
---|
320 |
|
---|
321 | /* SABDL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e207000) */
|
---|
322 | //#define IEM_INSTR_IMPL_A64__SABDL_asimddiff_L(Rd, Rn, op, Rm, size, Q)
|
---|
323 |
|
---|
324 |
|
---|
325 | /* SMLAL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e208000) */
|
---|
326 | //#define IEM_INSTR_IMPL_A64__SMLAL_asimddiff_L(Rd, Rn, o1, Rm, size, Q)
|
---|
327 |
|
---|
328 |
|
---|
329 | /* SQDMLAL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e209000) */
|
---|
330 | //#define IEM_INSTR_IMPL_A64__SQDMLAL_asimddiff_L(Rd, Rn, o1, Rm, size, Q)
|
---|
331 |
|
---|
332 |
|
---|
333 | /* SMLSL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e20a000) */
|
---|
334 | //#define IEM_INSTR_IMPL_A64__SMLSL_asimddiff_L(Rd, Rn, o1, Rm, size, Q)
|
---|
335 |
|
---|
336 |
|
---|
337 | /* SQDMLSL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e20b000) */
|
---|
338 | //#define IEM_INSTR_IMPL_A64__SQDMLSL_asimddiff_L(Rd, Rn, o1, Rm, size, Q)
|
---|
339 |
|
---|
340 |
|
---|
341 | /* SMULL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e20c000) */
|
---|
342 | //#define IEM_INSTR_IMPL_A64__SMULL_asimddiff_L(Rd, Rn, Rm, size, Q)
|
---|
343 |
|
---|
344 |
|
---|
345 | /* SQDMULL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e20d000) */
|
---|
346 | //#define IEM_INSTR_IMPL_A64__SQDMULL_asimddiff_L(Rd, Rn, Rm, size, Q)
|
---|
347 |
|
---|
348 |
|
---|
349 | /* PMULL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e20e000) */
|
---|
350 | //#define IEM_INSTR_IMPL_A64__PMULL_asimddiff_L(Rd, Rn, Rm, size, Q)
|
---|
351 |
|
---|
352 |
|
---|
353 | /* UADDL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/2e200000) */
|
---|
354 | //#define IEM_INSTR_IMPL_A64__UADDL_asimddiff_L(Rd, Rn, o1, Rm, size, Q)
|
---|
355 |
|
---|
356 |
|
---|
357 | /* UADDW2 <Vd>.<Ta>, <Vn>.<Ta>, <Vm>.<Tb> (bf20fc00/2e201000) */
|
---|
358 | //#define IEM_INSTR_IMPL_A64__UADDW_asimddiff_W(Rd, Rn, o1, Rm, size, Q)
|
---|
359 |
|
---|
360 |
|
---|
361 | /* USUBL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/2e202000) */
|
---|
362 | //#define IEM_INSTR_IMPL_A64__USUBL_asimddiff_L(Rd, Rn, o1, Rm, size, Q)
|
---|
363 |
|
---|
364 |
|
---|
365 | /* USUBW2 <Vd>.<Ta>, <Vn>.<Ta>, <Vm>.<Tb> (bf20fc00/2e203000) */
|
---|
366 | //#define IEM_INSTR_IMPL_A64__USUBW_asimddiff_W(Rd, Rn, o1, Rm, size, Q)
|
---|
367 |
|
---|
368 |
|
---|
369 | /* RADDHN2 <Vd>.<Tb>, <Vn>.<Ta>, <Vm>.<Ta> (bf20fc00/2e204000) */
|
---|
370 | //#define IEM_INSTR_IMPL_A64__RADDHN_asimddiff_N(Rd, Rn, o1, Rm, size, Q)
|
---|
371 |
|
---|
372 |
|
---|
373 | /* UABAL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/2e205000) */
|
---|
374 | //#define IEM_INSTR_IMPL_A64__UABAL_asimddiff_L(Rd, Rn, op, Rm, size, Q)
|
---|
375 |
|
---|
376 |
|
---|
377 | /* RSUBHN2 <Vd>.<Tb>, <Vn>.<Ta>, <Vm>.<Ta> (bf20fc00/2e206000) */
|
---|
378 | //#define IEM_INSTR_IMPL_A64__RSUBHN_asimddiff_N(Rd, Rn, o1, Rm, size, Q)
|
---|
379 |
|
---|
380 |
|
---|
381 | /* UABDL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/2e207000) */
|
---|
382 | //#define IEM_INSTR_IMPL_A64__UABDL_asimddiff_L(Rd, Rn, op, Rm, size, Q)
|
---|
383 |
|
---|
384 |
|
---|
385 | /* UMLAL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/2e208000) */
|
---|
386 | //#define IEM_INSTR_IMPL_A64__UMLAL_asimddiff_L(Rd, Rn, o1, Rm, size, Q)
|
---|
387 |
|
---|
388 |
|
---|
389 | /* UMLSL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/2e20a000) */
|
---|
390 | //#define IEM_INSTR_IMPL_A64__UMLSL_asimddiff_L(Rd, Rn, o1, Rm, size, Q)
|
---|
391 |
|
---|
392 |
|
---|
393 | /* UMULL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/2e20c000) */
|
---|
394 | //#define IEM_INSTR_IMPL_A64__UMULL_asimddiff_L(Rd, Rn, Rm, size, Q)
|
---|
395 |
|
---|
396 |
|
---|
397 |
|
---|
398 | /*
|
---|
399 | *
|
---|
400 | * Instruction Set & Groups: asimdelem / simd_dp / A64
|
---|
401 | *
|
---|
402 | */
|
---|
403 |
|
---|
404 | /* SMLAL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Ts>[<index>] (bf00f400/0f002000) */
|
---|
405 | //#define IEM_INSTR_IMPL_A64__SMLAL_asimdelem_L(Rd, Rn, H, o2, Rm, M, L, size, Q)
|
---|
406 |
|
---|
407 |
|
---|
408 | /* SQDMLAL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Ts>[<index>] (bf00f400/0f003000) */
|
---|
409 | //#define IEM_INSTR_IMPL_A64__SQDMLAL_asimdelem_L(Rd, Rn, H, o2, Rm, M, L, size, Q)
|
---|
410 |
|
---|
411 |
|
---|
412 | /* SMLSL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Ts>[<index>] (bf00f400/0f006000) */
|
---|
413 | //#define IEM_INSTR_IMPL_A64__SMLSL_asimdelem_L(Rd, Rn, H, o2, Rm, M, L, size, Q)
|
---|
414 |
|
---|
415 |
|
---|
416 | /* SQDMLSL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Ts>[<index>] (bf00f400/0f007000) */
|
---|
417 | //#define IEM_INSTR_IMPL_A64__SQDMLSL_asimdelem_L(Rd, Rn, H, o2, Rm, M, L, size, Q)
|
---|
418 |
|
---|
419 |
|
---|
420 | /* MUL <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>] (bf00f400/0f008000) */
|
---|
421 | //#define IEM_INSTR_IMPL_A64__MUL_asimdelem_R(Rd, Rn, H, Rm, M, L, size, Q)
|
---|
422 |
|
---|
423 |
|
---|
424 | /* SMULL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Ts>[<index>] (bf00f400/0f00a000) */
|
---|
425 | //#define IEM_INSTR_IMPL_A64__SMULL_asimdelem_L(Rd, Rn, H, Rm, M, L, size, Q)
|
---|
426 |
|
---|
427 |
|
---|
428 | /* SQDMULL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Ts>[<index>] (bf00f400/0f00b000) */
|
---|
429 | //#define IEM_INSTR_IMPL_A64__SQDMULL_asimdelem_L(Rd, Rn, H, Rm, M, L, size, Q)
|
---|
430 |
|
---|
431 |
|
---|
432 | /* SQDMULH <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>] (bf00f400/0f00c000) */
|
---|
433 | //#define IEM_INSTR_IMPL_A64__SQDMULH_asimdelem_R(Rd, Rn, H, op, Rm, M, L, size, Q)
|
---|
434 |
|
---|
435 |
|
---|
436 | /* SQRDMULH <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>] (bf00f400/0f00d000) */
|
---|
437 | //#define IEM_INSTR_IMPL_A64__SQRDMULH_asimdelem_R(Rd, Rn, H, op, Rm, M, L, size, Q)
|
---|
438 |
|
---|
439 |
|
---|
440 | /* SDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.4B[<index>] (bf00f400/0f00e000) */
|
---|
441 | //#define IEM_INSTR_IMPL_A64__SDOT_asimdelem_D(Rd, Rn, H, Rm, M, L, size, Q)
|
---|
442 |
|
---|
443 |
|
---|
444 | /* FDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.4B[<index>] (bfc0f400/0f000000) */
|
---|
445 | //#define IEM_INSTR_IMPL_A64__FDOT_asimdelem_D(Rd, Rn, H, Rm, M, L, Q)
|
---|
446 |
|
---|
447 |
|
---|
448 | /* FMLA <Vd>.<T>, <Vn>.<T>, <Vm>.H[<index>] (bfc0f400/0f001000) */
|
---|
449 | //#define IEM_INSTR_IMPL_A64__FMLA_asimdelem_RH_H(Rd, Rn, H, o2, Rm, M, L, Q)
|
---|
450 |
|
---|
451 |
|
---|
452 | /* FMLS <Vd>.<T>, <Vn>.<T>, <Vm>.H[<index>] (bfc0f400/0f005000) */
|
---|
453 | //#define IEM_INSTR_IMPL_A64__FMLS_asimdelem_RH_H(Rd, Rn, H, o2, Rm, M, L, Q)
|
---|
454 |
|
---|
455 |
|
---|
456 | /* FMUL <Vd>.<T>, <Vn>.<T>, <Vm>.H[<index>] (bfc0f400/0f009000) */
|
---|
457 | //#define IEM_INSTR_IMPL_A64__FMUL_asimdelem_RH_H(Rd, Rn, H, Rm, M, L, Q)
|
---|
458 |
|
---|
459 |
|
---|
460 | /* SUDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.4B[<index>] (bfc0f400/0f00f000) */
|
---|
461 | //#define IEM_INSTR_IMPL_A64__SUDOT_asimdelem_D(Rd, Rn, H, Rm, M, L, US, Q)
|
---|
462 |
|
---|
463 |
|
---|
464 | /* FDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.2B[<index>] (bfc0f400/0f400000) */
|
---|
465 | //#define IEM_INSTR_IMPL_A64__FDOT_asimdelem_G(Rd, Rn, H, Rm, M, L, Q)
|
---|
466 |
|
---|
467 |
|
---|
468 | /* BFDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.2H[<index>] (bfc0f400/0f40f000) */
|
---|
469 | //#define IEM_INSTR_IMPL_A64__BFDOT_asimdelem_E(Rd, Rn, H, Rm, M, L, Q)
|
---|
470 |
|
---|
471 |
|
---|
472 | /* FMLA <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>] (bf80f400/0f801000) */
|
---|
473 | //#define IEM_INSTR_IMPL_A64__FMLA_asimdelem_R_SD(Rd, Rn, H, o2, Rm, M, L, sz, Q)
|
---|
474 |
|
---|
475 |
|
---|
476 | /* FMLS <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>] (bf80f400/0f805000) */
|
---|
477 | //#define IEM_INSTR_IMPL_A64__FMLS_asimdelem_R_SD(Rd, Rn, H, o2, Rm, M, L, sz, Q)
|
---|
478 |
|
---|
479 |
|
---|
480 | /* FMUL <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>] (bf80f400/0f809000) */
|
---|
481 | //#define IEM_INSTR_IMPL_A64__FMUL_asimdelem_R_SD(Rd, Rn, H, Rm, M, L, sz, Q)
|
---|
482 |
|
---|
483 |
|
---|
484 | /* FMLAL <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.H[<index>] (bfc0f400/0f800000) */
|
---|
485 | //#define IEM_INSTR_IMPL_A64__FMLAL_asimdelem_LH(Rd, Rn, H, S, Rm, M, L, sz, Q)
|
---|
486 |
|
---|
487 |
|
---|
488 | /* FMLSL <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.H[<index>] (bfc0f400/0f804000) */
|
---|
489 | //#define IEM_INSTR_IMPL_A64__FMLSL_asimdelem_LH(Rd, Rn, H, S, Rm, M, L, sz, Q)
|
---|
490 |
|
---|
491 |
|
---|
492 | /* USDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.4B[<index>] (bfc0f400/0f80f000) */
|
---|
493 | //#define IEM_INSTR_IMPL_A64__USDOT_asimdelem_D(Rd, Rn, H, Rm, M, L, US, Q)
|
---|
494 |
|
---|
495 |
|
---|
496 | /* BFMLAL<bt> <Vd>.4S, <Vn>.8H, <Vm>.H[<index>] (bfc0f400/0fc0f000) */
|
---|
497 | //#define IEM_INSTR_IMPL_A64__BFMLAL_asimdelem_F(Rd, Rn, H, Rm, M, L, Q)
|
---|
498 |
|
---|
499 |
|
---|
500 | /* MLA <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>] (bf00f400/2f000000) */
|
---|
501 | //#define IEM_INSTR_IMPL_A64__MLA_asimdelem_R(Rd, Rn, H, o2, Rm, M, L, size, Q)
|
---|
502 |
|
---|
503 |
|
---|
504 | /* UMLAL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Ts>[<index>] (bf00f400/2f002000) */
|
---|
505 | //#define IEM_INSTR_IMPL_A64__UMLAL_asimdelem_L(Rd, Rn, H, o2, Rm, M, L, size, Q)
|
---|
506 |
|
---|
507 |
|
---|
508 | /* MLS <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>] (bf00f400/2f004000) */
|
---|
509 | //#define IEM_INSTR_IMPL_A64__MLS_asimdelem_R(Rd, Rn, H, o2, Rm, M, L, size, Q)
|
---|
510 |
|
---|
511 |
|
---|
512 | /* UMLSL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Ts>[<index>] (bf00f400/2f006000) */
|
---|
513 | //#define IEM_INSTR_IMPL_A64__UMLSL_asimdelem_L(Rd, Rn, H, o2, Rm, M, L, size, Q)
|
---|
514 |
|
---|
515 |
|
---|
516 | /* UMULL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Ts>[<index>] (bf00f400/2f00a000) */
|
---|
517 | //#define IEM_INSTR_IMPL_A64__UMULL_asimdelem_L(Rd, Rn, H, Rm, M, L, size, Q)
|
---|
518 |
|
---|
519 |
|
---|
520 | /* SQRDMLAH <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>] (bf00f400/2f00d000) */
|
---|
521 | //#define IEM_INSTR_IMPL_A64__SQRDMLAH_asimdelem_R(Rd, Rn, H, S, Rm, M, L, size, Q)
|
---|
522 |
|
---|
523 |
|
---|
524 | /* UDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.4B[<index>] (bf00f400/2f00e000) */
|
---|
525 | //#define IEM_INSTR_IMPL_A64__UDOT_asimdelem_D(Rd, Rn, H, Rm, M, L, size, Q)
|
---|
526 |
|
---|
527 |
|
---|
528 | /* SQRDMLSH <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>] (bf00f400/2f00f000) */
|
---|
529 | //#define IEM_INSTR_IMPL_A64__SQRDMLSH_asimdelem_R(Rd, Rn, H, S, Rm, M, L, size, Q)
|
---|
530 |
|
---|
531 |
|
---|
532 | /* FMULX <Vd>.<T>, <Vn>.<T>, <Vm>.H[<index>] (bfc0f400/2f009000) */
|
---|
533 | //#define IEM_INSTR_IMPL_A64__FMULX_asimdelem_RH_H(Rd, Rn, H, Rm, M, L, Q)
|
---|
534 |
|
---|
535 |
|
---|
536 | /* FCMLA <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>], #<rotate> (bf009400/2f001000) */
|
---|
537 | //#define IEM_INSTR_IMPL_A64__FCMLA_advsimd_elt(Rd, Rn, H, rot, Rm, M, L, size, Q)
|
---|
538 |
|
---|
539 |
|
---|
540 | /* FMULX <Vd>.<T>, <Vn>.<T>, <Vm>.<Ts>[<index>] (bf80f400/2f809000) */
|
---|
541 | //#define IEM_INSTR_IMPL_A64__FMULX_asimdelem_R_SD(Rd, Rn, H, Rm, M, L, sz, Q)
|
---|
542 |
|
---|
543 |
|
---|
544 | /* FMLAL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.H[<index>] (bfc0f400/2f808000) */
|
---|
545 | //#define IEM_INSTR_IMPL_A64__FMLAL2_asimdelem_LH(Rd, Rn, H, S, Rm, M, L, sz, Q)
|
---|
546 |
|
---|
547 |
|
---|
548 | /* FMLSL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.H[<index>] (bfc0f400/2f80c000) */
|
---|
549 | //#define IEM_INSTR_IMPL_A64__FMLSL2_asimdelem_LH(Rd, Rn, H, S, Rm, M, L, sz, Q)
|
---|
550 |
|
---|
551 |
|
---|
552 | /* FMLALB <Vd>.8H, <Vn>.16B, <Vm>.B[<index>] (ffc0f400/0fc00000) */
|
---|
553 | //#define IEM_INSTR_IMPL_A64__FMLALB_asimdelem_H(Rd, Rn, H, Rm, M, L)
|
---|
554 |
|
---|
555 |
|
---|
556 | /* FMLALLBB <Vd>.4S, <Vn>.16B, <Vm>.B[<index>] (ffc0f400/2f008000) */
|
---|
557 | //#define IEM_INSTR_IMPL_A64__FMLALLBB_asimdelem_J(Rd, Rn, H, Rm, M, L)
|
---|
558 |
|
---|
559 |
|
---|
560 | /* FMLALLBT <Vd>.4S, <Vn>.16B, <Vm>.B[<index>] (ffc0f400/2f408000) */
|
---|
561 | //#define IEM_INSTR_IMPL_A64__FMLALLBT_asimdelem_J(Rd, Rn, H, Rm, M, L)
|
---|
562 |
|
---|
563 |
|
---|
564 | /* FMLALT <Vd>.8H, <Vn>.16B, <Vm>.B[<index>] (ffc0f400/4fc00000) */
|
---|
565 | //#define IEM_INSTR_IMPL_A64__FMLALT_asimdelem_H(Rd, Rn, H, Rm, M, L)
|
---|
566 |
|
---|
567 |
|
---|
568 | /* FMLALLTB <Vd>.4S, <Vn>.16B, <Vm>.B[<index>] (ffc0f400/6f008000) */
|
---|
569 | //#define IEM_INSTR_IMPL_A64__FMLALLTB_asimdelem_J(Rd, Rn, H, Rm, M, L)
|
---|
570 |
|
---|
571 |
|
---|
572 | /* FMLALLTT <Vd>.4S, <Vn>.16B, <Vm>.B[<index>] (ffc0f400/6f408000) */
|
---|
573 | //#define IEM_INSTR_IMPL_A64__FMLALLTT_asimdelem_J(Rd, Rn, H, Rm, M, L)
|
---|
574 |
|
---|
575 |
|
---|
576 |
|
---|
577 | /*
|
---|
578 | *
|
---|
579 | * Instruction Set & Groups: asimdext / simd_dp / A64
|
---|
580 | *
|
---|
581 | */
|
---|
582 |
|
---|
583 | /* EXT <Vd>.<T>, <Vn>.<T>, <Vm>.<T>, #<index> (bfe08400/2e000000) */
|
---|
584 | //#define IEM_INSTR_IMPL_A64__EXT_asimdext_only(Rd, Rn, imm4, Rm, Q)
|
---|
585 |
|
---|
586 |
|
---|
587 |
|
---|
588 | /*
|
---|
589 | *
|
---|
590 | * Instruction Set & Groups: asimdimm / simd_dp / A64
|
---|
591 | *
|
---|
592 | */
|
---|
593 |
|
---|
594 | /* MOVI <Vd>.<T>, #<imm8>{, LSL #<amount>} (bff89c00/0f000400) */
|
---|
595 | //#define IEM_INSTR_IMPL_A64__MOVI_asimdimm_L_sl(Rd, h, g, f, e, d, cmode, c, b, a, Q)
|
---|
596 |
|
---|
597 |
|
---|
598 | /* ORR <Vd>.<T>, #<imm8>{, LSL #<amount>} (bff89c00/0f001400) */
|
---|
599 | //#define IEM_INSTR_IMPL_A64__ORR_asimdimm_L_sl(Rd, h, g, f, e, d, cmode, c, b, a, Q)
|
---|
600 |
|
---|
601 |
|
---|
602 | /* MOVI <Vd>.<T>, #<imm8>{, LSL #<amount>} (bff8dc00/0f008400) */
|
---|
603 | //#define IEM_INSTR_IMPL_A64__MOVI_asimdimm_L_hl(Rd, h, g, f, e, d, cmode, c, b, a, Q)
|
---|
604 |
|
---|
605 |
|
---|
606 | /* ORR <Vd>.<T>, #<imm8>{, LSL #<amount>} (bff8dc00/0f009400) */
|
---|
607 | //#define IEM_INSTR_IMPL_A64__ORR_asimdimm_L_hl(Rd, h, g, f, e, d, cmode, c, b, a, Q)
|
---|
608 |
|
---|
609 |
|
---|
610 | /* MOVI <Vd>.<T>, #<imm8>, MSL #<amount> (bff8ec00/0f00c400) */
|
---|
611 | //#define IEM_INSTR_IMPL_A64__MOVI_asimdimm_M_sm(Rd, h, g, f, e, d, cmode, c, b, a, Q)
|
---|
612 |
|
---|
613 |
|
---|
614 | /* MOVI <Vd>.<T>, #<imm8>{, LSL #0} (bff8fc00/0f00e400) */
|
---|
615 | //#define IEM_INSTR_IMPL_A64__MOVI_asimdimm_N_b(Rd, h, g, f, e, d, c, b, a, Q)
|
---|
616 |
|
---|
617 |
|
---|
618 | /* FMOV <Vd>.<T>, #<imm> (bff8fc00/0f00f400) */
|
---|
619 | //#define IEM_INSTR_IMPL_A64__FMOV_asimdimm_S_s(Rd, h, g, f, e, d, c, b, a, Q)
|
---|
620 |
|
---|
621 |
|
---|
622 | /* FMOV <Vd>.<T>, #<imm> (bff8fc00/0f00fc00) */
|
---|
623 | //#define IEM_INSTR_IMPL_A64__FMOV_asimdimm_H_h(Rd, h, g, f, e, d, c, b, a, Q)
|
---|
624 |
|
---|
625 |
|
---|
626 | /* MVNI <Vd>.<T>, #<imm8>{, LSL #<amount>} (bff89c00/2f000400) */
|
---|
627 | //#define IEM_INSTR_IMPL_A64__MVNI_asimdimm_L_sl(Rd, h, g, f, e, d, cmode, c, b, a, Q)
|
---|
628 |
|
---|
629 |
|
---|
630 | /* BIC <Vd>.<T>, #<imm8>{, LSL #<amount>} (bff89c00/2f001400) */
|
---|
631 | //#define IEM_INSTR_IMPL_A64__BIC_asimdimm_L_sl(Rd, h, g, f, e, d, cmode, c, b, a, Q)
|
---|
632 |
|
---|
633 |
|
---|
634 | /* MVNI <Vd>.<T>, #<imm8>{, LSL #<amount>} (bff8dc00/2f008400) */
|
---|
635 | //#define IEM_INSTR_IMPL_A64__MVNI_asimdimm_L_hl(Rd, h, g, f, e, d, cmode, c, b, a, Q)
|
---|
636 |
|
---|
637 |
|
---|
638 | /* BIC <Vd>.<T>, #<imm8>{, LSL #<amount>} (bff8dc00/2f009400) */
|
---|
639 | //#define IEM_INSTR_IMPL_A64__BIC_asimdimm_L_hl(Rd, h, g, f, e, d, cmode, c, b, a, Q)
|
---|
640 |
|
---|
641 |
|
---|
642 | /* MVNI <Vd>.<T>, #<imm8>, MSL #<amount> (bff8ec00/2f00c400) */
|
---|
643 | //#define IEM_INSTR_IMPL_A64__MVNI_asimdimm_M_sm(Rd, h, g, f, e, d, cmode, c, b, a, Q)
|
---|
644 |
|
---|
645 |
|
---|
646 | /* MOVI <Dd>, #<imm> (fff8fc00/2f00e400) */
|
---|
647 | //#define IEM_INSTR_IMPL_A64__MOVI_asimdimm_D_ds(Rd, h, g, f, e, d, c, b, a)
|
---|
648 |
|
---|
649 |
|
---|
650 | /* MOVI <Vd>.2D, #<imm> (fff8fc00/6f00e400) */
|
---|
651 | //#define IEM_INSTR_IMPL_A64__MOVI_asimdimm_D2_d(Rd, h, g, f, e, d, c, b, a)
|
---|
652 |
|
---|
653 |
|
---|
654 | /* FMOV <Vd>.2D, #<imm> (fff8fc00/6f00f400) */
|
---|
655 | //#define IEM_INSTR_IMPL_A64__FMOV_asimdimm_D2_d(Rd, h, g, f, e, d, c, b, a)
|
---|
656 |
|
---|
657 |
|
---|
658 |
|
---|
659 | /*
|
---|
660 | *
|
---|
661 | * Instruction Set & Groups: asimdins / simd_dp / A64
|
---|
662 | *
|
---|
663 | */
|
---|
664 |
|
---|
665 | /* DUP <Vd>.<T>, <Vn>.<Ts>[<index>] (bfe0fc00/0e000400) */
|
---|
666 | //#define IEM_INSTR_IMPL_A64__DUP_asimdins_DV_v(Rd, Rn, imm5, Q)
|
---|
667 |
|
---|
668 |
|
---|
669 | /* DUP <Vd>.<T>, <R><n> (bfe0fc00/0e000c00) */
|
---|
670 | //#define IEM_INSTR_IMPL_A64__DUP_asimdins_DR_r(Rd, Rn, imm5, Q)
|
---|
671 |
|
---|
672 |
|
---|
673 | /* SMOV <Wd>, <Vn>.<Ts>[<index>] (ffe0fc00/0e002c00) */
|
---|
674 | //#define IEM_INSTR_IMPL_A64__SMOV_asimdins_W_w(Rd, Rn, imm5)
|
---|
675 |
|
---|
676 |
|
---|
677 | /* UMOV <Wd>, <Vn>.<Ts>[<index>] (ffe0fc00/0e003c00) */
|
---|
678 | //#define IEM_INSTR_IMPL_A64__UMOV_asimdins_W_w(Rd, Rn, imm5)
|
---|
679 |
|
---|
680 |
|
---|
681 | /* INS <Vd>.<Ts>[<index>], <R><n> (ffe0fc00/4e001c00) */
|
---|
682 | //#define IEM_INSTR_IMPL_A64__INS_asimdins_IR_r(Rd, Rn, imm5)
|
---|
683 |
|
---|
684 |
|
---|
685 | /* SMOV <Xd>, <Vn>.<Ts>[<index>] (ffe0fc00/4e002c00) */
|
---|
686 | //#define IEM_INSTR_IMPL_A64__SMOV_asimdins_X_x(Rd, Rn, imm5)
|
---|
687 |
|
---|
688 |
|
---|
689 | /* UMOV <Xd>, <Vn>.D[<index>] (ffeffc00/4e083c00) */
|
---|
690 | //#define IEM_INSTR_IMPL_A64__UMOV_asimdins_X_x(Rd, Rn, imm5)
|
---|
691 |
|
---|
692 |
|
---|
693 | /* INS <Vd>.<Ts>[<index1>], <Vn>.<Ts>[<index2>] (ffe08400/6e000400) */
|
---|
694 | //#define IEM_INSTR_IMPL_A64__INS_asimdins_IV_v(Rd, Rn, imm4, imm5)
|
---|
695 |
|
---|
696 |
|
---|
697 |
|
---|
698 | /*
|
---|
699 | *
|
---|
700 | * Instruction Set & Groups: asimdmisc / simd_dp / A64
|
---|
701 | *
|
---|
702 | */
|
---|
703 |
|
---|
704 | /* REV64 <Vd>.<T>, <Vn>.<T> (bf3ffc00/0e200800) */
|
---|
705 | //#define IEM_INSTR_IMPL_A64__REV64_asimdmisc_R(Rd, Rn, o0, size, Q)
|
---|
706 |
|
---|
707 |
|
---|
708 | /* REV16 <Vd>.<T>, <Vn>.<T> (bf3ffc00/0e201800) */
|
---|
709 | //#define IEM_INSTR_IMPL_A64__REV16_asimdmisc_R(Rd, Rn, o0, size, Q)
|
---|
710 |
|
---|
711 |
|
---|
712 | /* SADDLP <Vd>.<Ta>, <Vn>.<Tb> (bf3ffc00/0e202800) */
|
---|
713 | //#define IEM_INSTR_IMPL_A64__SADDLP_asimdmisc_P(Rd, Rn, op, size, Q)
|
---|
714 |
|
---|
715 |
|
---|
716 | /* SUQADD <Vd>.<T>, <Vn>.<T> (bf3ffc00/0e203800) */
|
---|
717 | //#define IEM_INSTR_IMPL_A64__SUQADD_asimdmisc_R(Rd, Rn, size, Q)
|
---|
718 |
|
---|
719 |
|
---|
720 | /* CLS <Vd>.<T>, <Vn>.<T> (bf3ffc00/0e204800) */
|
---|
721 | //#define IEM_INSTR_IMPL_A64__CLS_asimdmisc_R(Rd, Rn, size, Q)
|
---|
722 |
|
---|
723 |
|
---|
724 | /* CNT <Vd>.<T>, <Vn>.<T> (bf3ffc00/0e205800) */
|
---|
725 | //#define IEM_INSTR_IMPL_A64__CNT_asimdmisc_R(Rd, Rn, size, Q)
|
---|
726 |
|
---|
727 |
|
---|
728 | /* SADALP <Vd>.<Ta>, <Vn>.<Tb> (bf3ffc00/0e206800) */
|
---|
729 | //#define IEM_INSTR_IMPL_A64__SADALP_asimdmisc_P(Rd, Rn, op, size, Q)
|
---|
730 |
|
---|
731 |
|
---|
732 | /* SQABS <Vd>.<T>, <Vn>.<T> (bf3ffc00/0e207800) */
|
---|
733 | //#define IEM_INSTR_IMPL_A64__SQABS_asimdmisc_R(Rd, Rn, size, Q)
|
---|
734 |
|
---|
735 |
|
---|
736 | /* CMGT <Vd>.<T>, <Vn>.<T>, #0 (bf3ffc00/0e208800) */
|
---|
737 | //#define IEM_INSTR_IMPL_A64__CMGT_asimdmisc_Z(Rd, Rn, op, size, Q)
|
---|
738 |
|
---|
739 |
|
---|
740 | /* CMEQ <Vd>.<T>, <Vn>.<T>, #0 (bf3ffc00/0e209800) */
|
---|
741 | //#define IEM_INSTR_IMPL_A64__CMEQ_asimdmisc_Z(Rd, Rn, op, size, Q)
|
---|
742 |
|
---|
743 |
|
---|
744 | /* CMLT <Vd>.<T>, <Vn>.<T>, #0 (bf3ffc00/0e20a800) */
|
---|
745 | //#define IEM_INSTR_IMPL_A64__CMLT_asimdmisc_Z(Rd, Rn, size, Q)
|
---|
746 |
|
---|
747 |
|
---|
748 | /* ABS <Vd>.<T>, <Vn>.<T> (bf3ffc00/0e20b800) */
|
---|
749 | //#define IEM_INSTR_IMPL_A64__ABS_asimdmisc_R(Rd, Rn, size, Q)
|
---|
750 |
|
---|
751 |
|
---|
752 | /* XTN2 <Vd>.<Tb>, <Vn>.<Ta> (bf3ffc00/0e212800) */
|
---|
753 | //#define IEM_INSTR_IMPL_A64__XTN_asimdmisc_N(Rd, Rn, size, Q)
|
---|
754 |
|
---|
755 |
|
---|
756 | /* SQXTN2 <Vd>.<Tb>, <Vn>.<Ta> (bf3ffc00/0e214800) */
|
---|
757 | //#define IEM_INSTR_IMPL_A64__SQXTN_asimdmisc_N(Rd, Rn, size, Q)
|
---|
758 |
|
---|
759 |
|
---|
760 | /* FCVTN2 <Vd>.<Tb>, <Vn>.<Ta> (bfbffc00/0e216800) */
|
---|
761 | //#define IEM_INSTR_IMPL_A64__FCVTN_asimdmisc_N(Rd, Rn, sz, Q)
|
---|
762 |
|
---|
763 |
|
---|
764 | /* FCVTL2 <Vd>.<Ta>, <Vn>.<Tb> (bfbffc00/0e217800) */
|
---|
765 | //#define IEM_INSTR_IMPL_A64__FCVTL_asimdmisc_L(Rd, Rn, sz, Q)
|
---|
766 |
|
---|
767 |
|
---|
768 | /* FRINTN <Vd>.<T>, <Vn>.<T> (bfbffc00/0e218800) */
|
---|
769 | //#define IEM_INSTR_IMPL_A64__FRINTN_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
770 |
|
---|
771 |
|
---|
772 | /* FRINTM <Vd>.<T>, <Vn>.<T> (bfbffc00/0e219800) */
|
---|
773 | //#define IEM_INSTR_IMPL_A64__FRINTM_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
774 |
|
---|
775 |
|
---|
776 | /* FCVTNS <Vd>.<T>, <Vn>.<T> (bfbffc00/0e21a800) */
|
---|
777 | //#define IEM_INSTR_IMPL_A64__FCVTNS_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
778 |
|
---|
779 |
|
---|
780 | /* FCVTMS <Vd>.<T>, <Vn>.<T> (bfbffc00/0e21b800) */
|
---|
781 | //#define IEM_INSTR_IMPL_A64__FCVTMS_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
782 |
|
---|
783 |
|
---|
784 | /* FCVTAS <Vd>.<T>, <Vn>.<T> (bfbffc00/0e21c800) */
|
---|
785 | //#define IEM_INSTR_IMPL_A64__FCVTAS_asimdmisc_R(Rd, Rn, sz, Q)
|
---|
786 |
|
---|
787 |
|
---|
788 | /* SCVTF <Vd>.<T>, <Vn>.<T> (bfbffc00/0e21d800) */
|
---|
789 | //#define IEM_INSTR_IMPL_A64__SCVTF_asimdmisc_R(Rd, Rn, sz, Q)
|
---|
790 |
|
---|
791 |
|
---|
792 | /* FRINT32Z <Vd>.<T>, <Vn>.<T> (bfbffc00/0e21e800) */
|
---|
793 | //#define IEM_INSTR_IMPL_A64__FRINT32Z_asimdmisc_R(Rd, Rn, op, sz, Q)
|
---|
794 |
|
---|
795 |
|
---|
796 | /* FRINT64Z <Vd>.<T>, <Vn>.<T> (bfbffc00/0e21f800) */
|
---|
797 | //#define IEM_INSTR_IMPL_A64__FRINT64Z_asimdmisc_R(Rd, Rn, op, sz, Q)
|
---|
798 |
|
---|
799 |
|
---|
800 | /* FCMGT <Vd>.<T>, <Vn>.<T>, #0.0 (bfbffc00/0ea0c800) */
|
---|
801 | //#define IEM_INSTR_IMPL_A64__FCMGT_asimdmisc_FZ(Rd, Rn, op, sz, Q)
|
---|
802 |
|
---|
803 |
|
---|
804 | /* FCMEQ <Vd>.<T>, <Vn>.<T>, #0.0 (bfbffc00/0ea0d800) */
|
---|
805 | //#define IEM_INSTR_IMPL_A64__FCMEQ_asimdmisc_FZ(Rd, Rn, op, sz, Q)
|
---|
806 |
|
---|
807 |
|
---|
808 | /* FCMLT <Vd>.<T>, <Vn>.<T>, #0.0 (bfbffc00/0ea0e800) */
|
---|
809 | //#define IEM_INSTR_IMPL_A64__FCMLT_asimdmisc_FZ(Rd, Rn, sz, Q)
|
---|
810 |
|
---|
811 |
|
---|
812 | /* FABS <Vd>.<T>, <Vn>.<T> (bfbffc00/0ea0f800) */
|
---|
813 | //#define IEM_INSTR_IMPL_A64__FABS_asimdmisc_R(Rd, Rn, sz, Q)
|
---|
814 |
|
---|
815 |
|
---|
816 | /* FRINTP <Vd>.<T>, <Vn>.<T> (bfbffc00/0ea18800) */
|
---|
817 | //#define IEM_INSTR_IMPL_A64__FRINTP_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
818 |
|
---|
819 |
|
---|
820 | /* FRINTZ <Vd>.<T>, <Vn>.<T> (bfbffc00/0ea19800) */
|
---|
821 | //#define IEM_INSTR_IMPL_A64__FRINTZ_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
822 |
|
---|
823 |
|
---|
824 | /* FCVTPS <Vd>.<T>, <Vn>.<T> (bfbffc00/0ea1a800) */
|
---|
825 | //#define IEM_INSTR_IMPL_A64__FCVTPS_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
826 |
|
---|
827 |
|
---|
828 | /* FCVTZS <Vd>.<T>, <Vn>.<T> (bfbffc00/0ea1b800) */
|
---|
829 | //#define IEM_INSTR_IMPL_A64__FCVTZS_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
830 |
|
---|
831 |
|
---|
832 | /* URECPE <Vd>.<T>, <Vn>.<T> (bfbffc00/0ea1c800) */
|
---|
833 | //#define IEM_INSTR_IMPL_A64__URECPE_asimdmisc_R(Rd, Rn, sz, Q)
|
---|
834 |
|
---|
835 |
|
---|
836 | /* FRECPE <Vd>.<T>, <Vn>.<T> (bfbffc00/0ea1d800) */
|
---|
837 | //#define IEM_INSTR_IMPL_A64__FRECPE_asimdmisc_R(Rd, Rn, sz, Q)
|
---|
838 |
|
---|
839 |
|
---|
840 | /* BFCVTN2 <Vd>.<Ta>, <Vn>.4S (bffffc00/0ea16800) */
|
---|
841 | //#define IEM_INSTR_IMPL_A64__BFCVTN_asimdmisc_4S(Rd, Rn, Q)
|
---|
842 |
|
---|
843 |
|
---|
844 | /* REV32 <Vd>.<T>, <Vn>.<T> (bf3ffc00/2e200800) */
|
---|
845 | //#define IEM_INSTR_IMPL_A64__REV32_asimdmisc_R(Rd, Rn, o0, size, Q)
|
---|
846 |
|
---|
847 |
|
---|
848 | /* UADDLP <Vd>.<Ta>, <Vn>.<Tb> (bf3ffc00/2e202800) */
|
---|
849 | //#define IEM_INSTR_IMPL_A64__UADDLP_asimdmisc_P(Rd, Rn, op, size, Q)
|
---|
850 |
|
---|
851 |
|
---|
852 | /* USQADD <Vd>.<T>, <Vn>.<T> (bf3ffc00/2e203800) */
|
---|
853 | //#define IEM_INSTR_IMPL_A64__USQADD_asimdmisc_R(Rd, Rn, size, Q)
|
---|
854 |
|
---|
855 |
|
---|
856 | /* CLZ <Vd>.<T>, <Vn>.<T> (bf3ffc00/2e204800) */
|
---|
857 | //#define IEM_INSTR_IMPL_A64__CLZ_asimdmisc_R(Rd, Rn, size, Q)
|
---|
858 |
|
---|
859 |
|
---|
860 | /* UADALP <Vd>.<Ta>, <Vn>.<Tb> (bf3ffc00/2e206800) */
|
---|
861 | //#define IEM_INSTR_IMPL_A64__UADALP_asimdmisc_P(Rd, Rn, op, size, Q)
|
---|
862 |
|
---|
863 |
|
---|
864 | /* SQNEG <Vd>.<T>, <Vn>.<T> (bf3ffc00/2e207800) */
|
---|
865 | //#define IEM_INSTR_IMPL_A64__SQNEG_asimdmisc_R(Rd, Rn, size, Q)
|
---|
866 |
|
---|
867 |
|
---|
868 | /* CMGE <Vd>.<T>, <Vn>.<T>, #0 (bf3ffc00/2e208800) */
|
---|
869 | //#define IEM_INSTR_IMPL_A64__CMGE_asimdmisc_Z(Rd, Rn, op, size, Q)
|
---|
870 |
|
---|
871 |
|
---|
872 | /* CMLE <Vd>.<T>, <Vn>.<T>, #0 (bf3ffc00/2e209800) */
|
---|
873 | //#define IEM_INSTR_IMPL_A64__CMLE_asimdmisc_Z(Rd, Rn, op, size, Q)
|
---|
874 |
|
---|
875 |
|
---|
876 | /* NEG <Vd>.<T>, <Vn>.<T> (bf3ffc00/2e20b800) */
|
---|
877 | //#define IEM_INSTR_IMPL_A64__NEG_asimdmisc_R(Rd, Rn, size, Q)
|
---|
878 |
|
---|
879 |
|
---|
880 | /* SQXTUN2 <Vd>.<Tb>, <Vn>.<Ta> (bf3ffc00/2e212800) */
|
---|
881 | //#define IEM_INSTR_IMPL_A64__SQXTUN_asimdmisc_N(Rd, Rn, size, Q)
|
---|
882 |
|
---|
883 |
|
---|
884 | /* SHLL2 <Vd>.<Ta>, <Vn>.<Tb>, #<shift> (bf3ffc00/2e213800) */
|
---|
885 | //#define IEM_INSTR_IMPL_A64__SHLL_asimdmisc_S(Rd, Rn, size, Q)
|
---|
886 |
|
---|
887 |
|
---|
888 | /* UQXTN2 <Vd>.<Tb>, <Vn>.<Ta> (bf3ffc00/2e214800) */
|
---|
889 | //#define IEM_INSTR_IMPL_A64__UQXTN_asimdmisc_N(Rd, Rn, size, Q)
|
---|
890 |
|
---|
891 |
|
---|
892 | /* FCVTXN2 <Vd>.<Tb>, <Vn>.2D (bffffc00/2e616800) */
|
---|
893 | //#define IEM_INSTR_IMPL_A64__FCVTXN_asimdmisc_N(Rd, Rn, Q)
|
---|
894 |
|
---|
895 |
|
---|
896 | /* FRINTA <Vd>.<T>, <Vn>.<T> (bfbffc00/2e218800) */
|
---|
897 | //#define IEM_INSTR_IMPL_A64__FRINTA_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
898 |
|
---|
899 |
|
---|
900 | /* FRINTX <Vd>.<T>, <Vn>.<T> (bfbffc00/2e219800) */
|
---|
901 | //#define IEM_INSTR_IMPL_A64__FRINTX_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
902 |
|
---|
903 |
|
---|
904 | /* FCVTNU <Vd>.<T>, <Vn>.<T> (bfbffc00/2e21a800) */
|
---|
905 | //#define IEM_INSTR_IMPL_A64__FCVTNU_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
906 |
|
---|
907 |
|
---|
908 | /* FCVTMU <Vd>.<T>, <Vn>.<T> (bfbffc00/2e21b800) */
|
---|
909 | //#define IEM_INSTR_IMPL_A64__FCVTMU_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
910 |
|
---|
911 |
|
---|
912 | /* FCVTAU <Vd>.<T>, <Vn>.<T> (bfbffc00/2e21c800) */
|
---|
913 | //#define IEM_INSTR_IMPL_A64__FCVTAU_asimdmisc_R(Rd, Rn, sz, Q)
|
---|
914 |
|
---|
915 |
|
---|
916 | /* UCVTF <Vd>.<T>, <Vn>.<T> (bfbffc00/2e21d800) */
|
---|
917 | //#define IEM_INSTR_IMPL_A64__UCVTF_asimdmisc_R(Rd, Rn, sz, Q)
|
---|
918 |
|
---|
919 |
|
---|
920 | /* FRINT32X <Vd>.<T>, <Vn>.<T> (bfbffc00/2e21e800) */
|
---|
921 | //#define IEM_INSTR_IMPL_A64__FRINT32X_asimdmisc_R(Rd, Rn, op, sz, Q)
|
---|
922 |
|
---|
923 |
|
---|
924 | /* FRINT64X <Vd>.<T>, <Vn>.<T> (bfbffc00/2e21f800) */
|
---|
925 | //#define IEM_INSTR_IMPL_A64__FRINT64X_asimdmisc_R(Rd, Rn, op, sz, Q)
|
---|
926 |
|
---|
927 |
|
---|
928 | /* NOT <Vd>.<T>, <Vn>.<T> (bffffc00/2e205800) */
|
---|
929 | //#define IEM_INSTR_IMPL_A64__NOT_asimdmisc_R(Rd, Rn, Q)
|
---|
930 |
|
---|
931 |
|
---|
932 | /* F1CVTL2 <Vd>.8H, <Vn>.<Ta> (bffffc00/2e217800) */
|
---|
933 | //#define IEM_INSTR_IMPL_A64__F1CVTL_asimdmisc_V(Rd, Rn, Q)
|
---|
934 |
|
---|
935 |
|
---|
936 | /* RBIT <Vd>.<T>, <Vn>.<T> (bffffc00/2e605800) */
|
---|
937 | //#define IEM_INSTR_IMPL_A64__RBIT_asimdmisc_R(Rd, Rn, Q)
|
---|
938 |
|
---|
939 |
|
---|
940 | /* F2CVTL2 <Vd>.8H, <Vn>.<Ta> (bffffc00/2e617800) */
|
---|
941 | //#define IEM_INSTR_IMPL_A64__F2CVTL_asimdmisc_V(Rd, Rn, Q)
|
---|
942 |
|
---|
943 |
|
---|
944 | /* FCMGE <Vd>.<T>, <Vn>.<T>, #0.0 (bfbffc00/2ea0c800) */
|
---|
945 | //#define IEM_INSTR_IMPL_A64__FCMGE_asimdmisc_FZ(Rd, Rn, op, sz, Q)
|
---|
946 |
|
---|
947 |
|
---|
948 | /* FCMLE <Vd>.<T>, <Vn>.<T>, #0.0 (bfbffc00/2ea0d800) */
|
---|
949 | //#define IEM_INSTR_IMPL_A64__FCMLE_asimdmisc_FZ(Rd, Rn, op, sz, Q)
|
---|
950 |
|
---|
951 |
|
---|
952 | /* FNEG <Vd>.<T>, <Vn>.<T> (bfbffc00/2ea0f800) */
|
---|
953 | //#define IEM_INSTR_IMPL_A64__FNEG_asimdmisc_R(Rd, Rn, sz, Q)
|
---|
954 |
|
---|
955 |
|
---|
956 | /* FRINTI <Vd>.<T>, <Vn>.<T> (bfbffc00/2ea19800) */
|
---|
957 | //#define IEM_INSTR_IMPL_A64__FRINTI_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
958 |
|
---|
959 |
|
---|
960 | /* FCVTPU <Vd>.<T>, <Vn>.<T> (bfbffc00/2ea1a800) */
|
---|
961 | //#define IEM_INSTR_IMPL_A64__FCVTPU_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
962 |
|
---|
963 |
|
---|
964 | /* FCVTZU <Vd>.<T>, <Vn>.<T> (bfbffc00/2ea1b800) */
|
---|
965 | //#define IEM_INSTR_IMPL_A64__FCVTZU_asimdmisc_R(Rd, Rn, o1, sz, o2, Q)
|
---|
966 |
|
---|
967 |
|
---|
968 | /* URSQRTE <Vd>.<T>, <Vn>.<T> (bfbffc00/2ea1c800) */
|
---|
969 | //#define IEM_INSTR_IMPL_A64__URSQRTE_asimdmisc_R(Rd, Rn, sz, Q)
|
---|
970 |
|
---|
971 |
|
---|
972 | /* FRSQRTE <Vd>.<T>, <Vn>.<T> (bfbffc00/2ea1d800) */
|
---|
973 | //#define IEM_INSTR_IMPL_A64__FRSQRTE_asimdmisc_R(Rd, Rn, sz, Q)
|
---|
974 |
|
---|
975 |
|
---|
976 | /* FSQRT <Vd>.<T>, <Vn>.<T> (bfbffc00/2ea1f800) */
|
---|
977 | //#define IEM_INSTR_IMPL_A64__FSQRT_asimdmisc_R(Rd, Rn, sz, Q)
|
---|
978 |
|
---|
979 |
|
---|
980 | /* BF1CVTL2 <Vd>.8H, <Vn>.<Ta> (bffffc00/2ea17800) */
|
---|
981 | //#define IEM_INSTR_IMPL_A64__BF1CVTL_asimdmisc_V(Rd, Rn, Q)
|
---|
982 |
|
---|
983 |
|
---|
984 | /* BF2CVTL2 <Vd>.8H, <Vn>.<Ta> (bffffc00/2ee17800) */
|
---|
985 | //#define IEM_INSTR_IMPL_A64__BF2CVTL_asimdmisc_V(Rd, Rn, Q)
|
---|
986 |
|
---|
987 |
|
---|
988 |
|
---|
989 | /*
|
---|
990 | *
|
---|
991 | * Instruction Set & Groups: asimdmiscfp16 / simd_dp / A64
|
---|
992 | *
|
---|
993 | */
|
---|
994 |
|
---|
995 | /* FRINTN <Vd>.<T>, <Vn>.<T> (bffffc00/0e798800) */
|
---|
996 | //#define IEM_INSTR_IMPL_A64__FRINTN_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
997 |
|
---|
998 |
|
---|
999 | /* FRINTM <Vd>.<T>, <Vn>.<T> (bffffc00/0e799800) */
|
---|
1000 | //#define IEM_INSTR_IMPL_A64__FRINTM_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1001 |
|
---|
1002 |
|
---|
1003 | /* FCVTNS <Vd>.<T>, <Vn>.<T> (bffffc00/0e79a800) */
|
---|
1004 | //#define IEM_INSTR_IMPL_A64__FCVTNS_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1005 |
|
---|
1006 |
|
---|
1007 | /* FCVTMS <Vd>.<T>, <Vn>.<T> (bffffc00/0e79b800) */
|
---|
1008 | //#define IEM_INSTR_IMPL_A64__FCVTMS_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1009 |
|
---|
1010 |
|
---|
1011 | /* FCVTAS <Vd>.<T>, <Vn>.<T> (bffffc00/0e79c800) */
|
---|
1012 | //#define IEM_INSTR_IMPL_A64__FCVTAS_asimdmiscfp16_R(Rd, Rn, Q)
|
---|
1013 |
|
---|
1014 |
|
---|
1015 | /* SCVTF <Vd>.<T>, <Vn>.<T> (bffffc00/0e79d800) */
|
---|
1016 | //#define IEM_INSTR_IMPL_A64__SCVTF_asimdmiscfp16_R(Rd, Rn, Q)
|
---|
1017 |
|
---|
1018 |
|
---|
1019 | /* FCMGT <Vd>.<T>, <Vn>.<T>, #0.0 (bffffc00/0ef8c800) */
|
---|
1020 | //#define IEM_INSTR_IMPL_A64__FCMGT_asimdmiscfp16_FZ(Rd, Rn, op, Q)
|
---|
1021 |
|
---|
1022 |
|
---|
1023 | /* FCMEQ <Vd>.<T>, <Vn>.<T>, #0.0 (bffffc00/0ef8d800) */
|
---|
1024 | //#define IEM_INSTR_IMPL_A64__FCMEQ_asimdmiscfp16_FZ(Rd, Rn, op, Q)
|
---|
1025 |
|
---|
1026 |
|
---|
1027 | /* FCMLT <Vd>.<T>, <Vn>.<T>, #0.0 (bffffc00/0ef8e800) */
|
---|
1028 | //#define IEM_INSTR_IMPL_A64__FCMLT_asimdmiscfp16_FZ(Rd, Rn, Q)
|
---|
1029 |
|
---|
1030 |
|
---|
1031 | /* FABS <Vd>.<T>, <Vn>.<T> (bffffc00/0ef8f800) */
|
---|
1032 | //#define IEM_INSTR_IMPL_A64__FABS_asimdmiscfp16_R(Rd, Rn, Q)
|
---|
1033 |
|
---|
1034 |
|
---|
1035 | /* FRINTP <Vd>.<T>, <Vn>.<T> (bffffc00/0ef98800) */
|
---|
1036 | //#define IEM_INSTR_IMPL_A64__FRINTP_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1037 |
|
---|
1038 |
|
---|
1039 | /* FRINTZ <Vd>.<T>, <Vn>.<T> (bffffc00/0ef99800) */
|
---|
1040 | //#define IEM_INSTR_IMPL_A64__FRINTZ_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1041 |
|
---|
1042 |
|
---|
1043 | /* FCVTPS <Vd>.<T>, <Vn>.<T> (bffffc00/0ef9a800) */
|
---|
1044 | //#define IEM_INSTR_IMPL_A64__FCVTPS_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1045 |
|
---|
1046 |
|
---|
1047 | /* FCVTZS <Vd>.<T>, <Vn>.<T> (bffffc00/0ef9b800) */
|
---|
1048 | //#define IEM_INSTR_IMPL_A64__FCVTZS_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1049 |
|
---|
1050 |
|
---|
1051 | /* FRECPE <Vd>.<T>, <Vn>.<T> (bffffc00/0ef9d800) */
|
---|
1052 | //#define IEM_INSTR_IMPL_A64__FRECPE_asimdmiscfp16_R(Rd, Rn, Q)
|
---|
1053 |
|
---|
1054 |
|
---|
1055 | /* FRINTA <Vd>.<T>, <Vn>.<T> (bffffc00/2e798800) */
|
---|
1056 | //#define IEM_INSTR_IMPL_A64__FRINTA_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1057 |
|
---|
1058 |
|
---|
1059 | /* FRINTX <Vd>.<T>, <Vn>.<T> (bffffc00/2e799800) */
|
---|
1060 | //#define IEM_INSTR_IMPL_A64__FRINTX_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1061 |
|
---|
1062 |
|
---|
1063 | /* FCVTNU <Vd>.<T>, <Vn>.<T> (bffffc00/2e79a800) */
|
---|
1064 | //#define IEM_INSTR_IMPL_A64__FCVTNU_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1065 |
|
---|
1066 |
|
---|
1067 | /* FCVTMU <Vd>.<T>, <Vn>.<T> (bffffc00/2e79b800) */
|
---|
1068 | //#define IEM_INSTR_IMPL_A64__FCVTMU_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1069 |
|
---|
1070 |
|
---|
1071 | /* FCVTAU <Vd>.<T>, <Vn>.<T> (bffffc00/2e79c800) */
|
---|
1072 | //#define IEM_INSTR_IMPL_A64__FCVTAU_asimdmiscfp16_R(Rd, Rn, Q)
|
---|
1073 |
|
---|
1074 |
|
---|
1075 | /* UCVTF <Vd>.<T>, <Vn>.<T> (bffffc00/2e79d800) */
|
---|
1076 | //#define IEM_INSTR_IMPL_A64__UCVTF_asimdmiscfp16_R(Rd, Rn, Q)
|
---|
1077 |
|
---|
1078 |
|
---|
1079 | /* FCMGE <Vd>.<T>, <Vn>.<T>, #0.0 (bffffc00/2ef8c800) */
|
---|
1080 | //#define IEM_INSTR_IMPL_A64__FCMGE_asimdmiscfp16_FZ(Rd, Rn, op, Q)
|
---|
1081 |
|
---|
1082 |
|
---|
1083 | /* FCMLE <Vd>.<T>, <Vn>.<T>, #0.0 (bffffc00/2ef8d800) */
|
---|
1084 | //#define IEM_INSTR_IMPL_A64__FCMLE_asimdmiscfp16_FZ(Rd, Rn, op, Q)
|
---|
1085 |
|
---|
1086 |
|
---|
1087 | /* FNEG <Vd>.<T>, <Vn>.<T> (bffffc00/2ef8f800) */
|
---|
1088 | //#define IEM_INSTR_IMPL_A64__FNEG_asimdmiscfp16_R(Rd, Rn, Q)
|
---|
1089 |
|
---|
1090 |
|
---|
1091 | /* FRINTI <Vd>.<T>, <Vn>.<T> (bffffc00/2ef99800) */
|
---|
1092 | //#define IEM_INSTR_IMPL_A64__FRINTI_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1093 |
|
---|
1094 |
|
---|
1095 | /* FCVTPU <Vd>.<T>, <Vn>.<T> (bffffc00/2ef9a800) */
|
---|
1096 | //#define IEM_INSTR_IMPL_A64__FCVTPU_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1097 |
|
---|
1098 |
|
---|
1099 | /* FCVTZU <Vd>.<T>, <Vn>.<T> (bffffc00/2ef9b800) */
|
---|
1100 | //#define IEM_INSTR_IMPL_A64__FCVTZU_asimdmiscfp16_R(Rd, Rn, o1, o2, Q)
|
---|
1101 |
|
---|
1102 |
|
---|
1103 | /* FRSQRTE <Vd>.<T>, <Vn>.<T> (bffffc00/2ef9d800) */
|
---|
1104 | //#define IEM_INSTR_IMPL_A64__FRSQRTE_asimdmiscfp16_R(Rd, Rn, Q)
|
---|
1105 |
|
---|
1106 |
|
---|
1107 | /* FSQRT <Vd>.<T>, <Vn>.<T> (bffffc00/2ef9f800) */
|
---|
1108 | //#define IEM_INSTR_IMPL_A64__FSQRT_asimdmiscfp16_R(Rd, Rn, Q)
|
---|
1109 |
|
---|
1110 |
|
---|
1111 |
|
---|
1112 | /*
|
---|
1113 | *
|
---|
1114 | * Instruction Set & Groups: asimdperm / simd_dp / A64
|
---|
1115 | *
|
---|
1116 | */
|
---|
1117 |
|
---|
1118 | /* UZP1 <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e001800) */
|
---|
1119 | //#define IEM_INSTR_IMPL_A64__UZP1_asimdperm_only(Rd, Rn, op, Rm, size, Q)
|
---|
1120 |
|
---|
1121 |
|
---|
1122 | /* TRN1 <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e002800) */
|
---|
1123 | //#define IEM_INSTR_IMPL_A64__TRN1_asimdperm_only(Rd, Rn, op, Rm, size, Q)
|
---|
1124 |
|
---|
1125 |
|
---|
1126 | /* ZIP1 <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e003800) */
|
---|
1127 | //#define IEM_INSTR_IMPL_A64__ZIP1_asimdperm_only(Rd, Rn, op, Rm, size, Q)
|
---|
1128 |
|
---|
1129 |
|
---|
1130 | /* UZP2 <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e005800) */
|
---|
1131 | //#define IEM_INSTR_IMPL_A64__UZP2_asimdperm_only(Rd, Rn, op, Rm, size, Q)
|
---|
1132 |
|
---|
1133 |
|
---|
1134 | /* TRN2 <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e006800) */
|
---|
1135 | //#define IEM_INSTR_IMPL_A64__TRN2_asimdperm_only(Rd, Rn, op, Rm, size, Q)
|
---|
1136 |
|
---|
1137 |
|
---|
1138 | /* ZIP2 <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e007800) */
|
---|
1139 | //#define IEM_INSTR_IMPL_A64__ZIP2_asimdperm_only(Rd, Rn, op, Rm, size, Q)
|
---|
1140 |
|
---|
1141 |
|
---|
1142 |
|
---|
1143 | /*
|
---|
1144 | *
|
---|
1145 | * Instruction Set & Groups: asimdsame / simd_dp / A64
|
---|
1146 | *
|
---|
1147 | */
|
---|
1148 |
|
---|
1149 | /* SHADD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e200400) */
|
---|
1150 | //#define IEM_INSTR_IMPL_A64__SHADD_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1151 |
|
---|
1152 |
|
---|
1153 | /* SQADD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e200c00) */
|
---|
1154 | //#define IEM_INSTR_IMPL_A64__SQADD_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1155 |
|
---|
1156 |
|
---|
1157 | /* SRHADD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e201400) */
|
---|
1158 | //#define IEM_INSTR_IMPL_A64__SRHADD_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1159 |
|
---|
1160 |
|
---|
1161 | /* SHSUB <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e202400) */
|
---|
1162 | //#define IEM_INSTR_IMPL_A64__SHSUB_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1163 |
|
---|
1164 |
|
---|
1165 | /* SQSUB <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e202c00) */
|
---|
1166 | //#define IEM_INSTR_IMPL_A64__SQSUB_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1167 |
|
---|
1168 |
|
---|
1169 | /* CMGT <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e203400) */
|
---|
1170 | //#define IEM_INSTR_IMPL_A64__CMGT_asimdsame_only(Rd, Rn, eq, Rm, size, Q)
|
---|
1171 |
|
---|
1172 |
|
---|
1173 | /* CMGE <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e203c00) */
|
---|
1174 | //#define IEM_INSTR_IMPL_A64__CMGE_asimdsame_only(Rd, Rn, eq, Rm, size, Q)
|
---|
1175 |
|
---|
1176 |
|
---|
1177 | /* SSHL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e204400) */
|
---|
1178 | //#define IEM_INSTR_IMPL_A64__SSHL_asimdsame_only(Rd, Rn, S, R, Rm, size, Q)
|
---|
1179 |
|
---|
1180 |
|
---|
1181 | /* SQSHL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e204c00) */
|
---|
1182 | //#define IEM_INSTR_IMPL_A64__SQSHL_asimdsame_only(Rd, Rn, S, R, Rm, size, Q)
|
---|
1183 |
|
---|
1184 |
|
---|
1185 | /* SRSHL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e205400) */
|
---|
1186 | //#define IEM_INSTR_IMPL_A64__SRSHL_asimdsame_only(Rd, Rn, S, R, Rm, size, Q)
|
---|
1187 |
|
---|
1188 |
|
---|
1189 | /* SQRSHL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e205c00) */
|
---|
1190 | //#define IEM_INSTR_IMPL_A64__SQRSHL_asimdsame_only(Rd, Rn, S, R, Rm, size, Q)
|
---|
1191 |
|
---|
1192 |
|
---|
1193 | /* SMAX <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e206400) */
|
---|
1194 | //#define IEM_INSTR_IMPL_A64__SMAX_asimdsame_only(Rd, Rn, o1, Rm, size, Q)
|
---|
1195 |
|
---|
1196 |
|
---|
1197 | /* SMIN <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e206c00) */
|
---|
1198 | //#define IEM_INSTR_IMPL_A64__SMIN_asimdsame_only(Rd, Rn, o1, Rm, size, Q)
|
---|
1199 |
|
---|
1200 |
|
---|
1201 | /* SABD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e207400) */
|
---|
1202 | //#define IEM_INSTR_IMPL_A64__SABD_asimdsame_only(Rd, Rn, ac, Rm, size, Q)
|
---|
1203 |
|
---|
1204 |
|
---|
1205 | /* SABA <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e207c00) */
|
---|
1206 | //#define IEM_INSTR_IMPL_A64__SABA_asimdsame_only(Rd, Rn, ac, Rm, size, Q)
|
---|
1207 |
|
---|
1208 |
|
---|
1209 | /* ADD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e208400) */
|
---|
1210 | //#define IEM_INSTR_IMPL_A64__ADD_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1211 |
|
---|
1212 |
|
---|
1213 | /* CMTST <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e208c00) */
|
---|
1214 | //#define IEM_INSTR_IMPL_A64__CMTST_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1215 |
|
---|
1216 |
|
---|
1217 | /* MLA <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e209400) */
|
---|
1218 | //#define IEM_INSTR_IMPL_A64__MLA_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1219 |
|
---|
1220 |
|
---|
1221 | /* MUL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e209c00) */
|
---|
1222 | //#define IEM_INSTR_IMPL_A64__MUL_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1223 |
|
---|
1224 |
|
---|
1225 | /* SMAXP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e20a400) */
|
---|
1226 | //#define IEM_INSTR_IMPL_A64__SMAXP_asimdsame_only(Rd, Rn, o1, Rm, size, Q)
|
---|
1227 |
|
---|
1228 |
|
---|
1229 | /* SMINP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e20ac00) */
|
---|
1230 | //#define IEM_INSTR_IMPL_A64__SMINP_asimdsame_only(Rd, Rn, o1, Rm, size, Q)
|
---|
1231 |
|
---|
1232 |
|
---|
1233 | /* SQDMULH <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e20b400) */
|
---|
1234 | //#define IEM_INSTR_IMPL_A64__SQDMULH_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1235 |
|
---|
1236 |
|
---|
1237 | /* ADDP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e20bc00) */
|
---|
1238 | //#define IEM_INSTR_IMPL_A64__ADDP_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1239 |
|
---|
1240 |
|
---|
1241 | /* FMAXNM <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0e20c400) */
|
---|
1242 | //#define IEM_INSTR_IMPL_A64__FMAXNM_asimdsame_only(Rd, Rn, Rm, sz, o1, Q)
|
---|
1243 |
|
---|
1244 |
|
---|
1245 | /* FMLA <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0e20cc00) */
|
---|
1246 | //#define IEM_INSTR_IMPL_A64__FMLA_asimdsame_only(Rd, Rn, Rm, sz, op, Q)
|
---|
1247 |
|
---|
1248 |
|
---|
1249 | /* FADD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0e20d400) */
|
---|
1250 | //#define IEM_INSTR_IMPL_A64__FADD_asimdsame_only(Rd, Rn, Rm, sz, Q)
|
---|
1251 |
|
---|
1252 |
|
---|
1253 | /* FMULX <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0e20dc00) */
|
---|
1254 | //#define IEM_INSTR_IMPL_A64__FMULX_asimdsame_only(Rd, Rn, Rm, sz, Q)
|
---|
1255 |
|
---|
1256 |
|
---|
1257 | /* FCMEQ <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0e20e400) */
|
---|
1258 | //#define IEM_INSTR_IMPL_A64__FCMEQ_asimdsame_only(Rd, Rn, ac, Rm, sz, E, Q)
|
---|
1259 |
|
---|
1260 |
|
---|
1261 | /* FMAX <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0e20f400) */
|
---|
1262 | //#define IEM_INSTR_IMPL_A64__FMAX_asimdsame_only(Rd, Rn, Rm, sz, o1, Q)
|
---|
1263 |
|
---|
1264 |
|
---|
1265 | /* FRECPS <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0e20fc00) */
|
---|
1266 | //#define IEM_INSTR_IMPL_A64__FRECPS_asimdsame_only(Rd, Rn, Rm, sz, Q)
|
---|
1267 |
|
---|
1268 |
|
---|
1269 | /* AND <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0e201c00) */
|
---|
1270 | //#define IEM_INSTR_IMPL_A64__AND_asimdsame_only(Rd, Rn, Rm, Q)
|
---|
1271 |
|
---|
1272 |
|
---|
1273 | /* FMLAL <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bfe0fc00/0e20ec00) */
|
---|
1274 | //#define IEM_INSTR_IMPL_A64__FMLAL_asimdsame_F(Rd, Rn, Rm, sz, S, Q)
|
---|
1275 |
|
---|
1276 |
|
---|
1277 | /* BIC <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0e601c00) */
|
---|
1278 | //#define IEM_INSTR_IMPL_A64__BIC_asimdsame_only(Rd, Rn, Rm, Q)
|
---|
1279 |
|
---|
1280 |
|
---|
1281 | /* FMINNM <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0ea0c400) */
|
---|
1282 | //#define IEM_INSTR_IMPL_A64__FMINNM_asimdsame_only(Rd, Rn, Rm, sz, o1, Q)
|
---|
1283 |
|
---|
1284 |
|
---|
1285 | /* FMLS <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0ea0cc00) */
|
---|
1286 | //#define IEM_INSTR_IMPL_A64__FMLS_asimdsame_only(Rd, Rn, Rm, sz, op, Q)
|
---|
1287 |
|
---|
1288 |
|
---|
1289 | /* FSUB <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0ea0d400) */
|
---|
1290 | //#define IEM_INSTR_IMPL_A64__FSUB_asimdsame_only(Rd, Rn, Rm, sz, Q)
|
---|
1291 |
|
---|
1292 |
|
---|
1293 | /* FAMAX <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/0e20dc00) */
|
---|
1294 | //#define IEM_INSTR_IMPL_A64__FAMAX_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1295 |
|
---|
1296 |
|
---|
1297 | /* FMIN <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0ea0f400) */
|
---|
1298 | //#define IEM_INSTR_IMPL_A64__FMIN_asimdsame_only(Rd, Rn, Rm, sz, o1, Q)
|
---|
1299 |
|
---|
1300 |
|
---|
1301 | /* FRSQRTS <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/0ea0fc00) */
|
---|
1302 | //#define IEM_INSTR_IMPL_A64__FRSQRTS_asimdsame_only(Rd, Rn, Rm, sz, Q)
|
---|
1303 |
|
---|
1304 |
|
---|
1305 | /* ORR <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0ea01c00) */
|
---|
1306 | //#define IEM_INSTR_IMPL_A64__ORR_asimdsame_only(Rd, Rn, Rm, Q)
|
---|
1307 |
|
---|
1308 |
|
---|
1309 | /* FMLSL <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bfe0fc00/0ea0ec00) */
|
---|
1310 | //#define IEM_INSTR_IMPL_A64__FMLSL_asimdsame_F(Rd, Rn, Rm, sz, S, Q)
|
---|
1311 |
|
---|
1312 |
|
---|
1313 | /* ORN <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0ee01c00) */
|
---|
1314 | //#define IEM_INSTR_IMPL_A64__ORN_asimdsame_only(Rd, Rn, Rm, Q)
|
---|
1315 |
|
---|
1316 |
|
---|
1317 | /* UHADD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e200400) */
|
---|
1318 | //#define IEM_INSTR_IMPL_A64__UHADD_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1319 |
|
---|
1320 |
|
---|
1321 | /* UQADD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e200c00) */
|
---|
1322 | //#define IEM_INSTR_IMPL_A64__UQADD_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1323 |
|
---|
1324 |
|
---|
1325 | /* URHADD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e201400) */
|
---|
1326 | //#define IEM_INSTR_IMPL_A64__URHADD_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1327 |
|
---|
1328 |
|
---|
1329 | /* UHSUB <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e202400) */
|
---|
1330 | //#define IEM_INSTR_IMPL_A64__UHSUB_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1331 |
|
---|
1332 |
|
---|
1333 | /* UQSUB <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e202c00) */
|
---|
1334 | //#define IEM_INSTR_IMPL_A64__UQSUB_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1335 |
|
---|
1336 |
|
---|
1337 | /* CMHI <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e203400) */
|
---|
1338 | //#define IEM_INSTR_IMPL_A64__CMHI_asimdsame_only(Rd, Rn, eq, Rm, size, Q)
|
---|
1339 |
|
---|
1340 |
|
---|
1341 | /* CMHS <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e203c00) */
|
---|
1342 | //#define IEM_INSTR_IMPL_A64__CMHS_asimdsame_only(Rd, Rn, eq, Rm, size, Q)
|
---|
1343 |
|
---|
1344 |
|
---|
1345 | /* USHL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e204400) */
|
---|
1346 | //#define IEM_INSTR_IMPL_A64__USHL_asimdsame_only(Rd, Rn, S, R, Rm, size, Q)
|
---|
1347 |
|
---|
1348 |
|
---|
1349 | /* UQSHL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e204c00) */
|
---|
1350 | //#define IEM_INSTR_IMPL_A64__UQSHL_asimdsame_only(Rd, Rn, S, R, Rm, size, Q)
|
---|
1351 |
|
---|
1352 |
|
---|
1353 | /* URSHL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e205400) */
|
---|
1354 | //#define IEM_INSTR_IMPL_A64__URSHL_asimdsame_only(Rd, Rn, S, R, Rm, size, Q)
|
---|
1355 |
|
---|
1356 |
|
---|
1357 | /* UQRSHL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e205c00) */
|
---|
1358 | //#define IEM_INSTR_IMPL_A64__UQRSHL_asimdsame_only(Rd, Rn, S, R, Rm, size, Q)
|
---|
1359 |
|
---|
1360 |
|
---|
1361 | /* UMAX <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e206400) */
|
---|
1362 | //#define IEM_INSTR_IMPL_A64__UMAX_asimdsame_only(Rd, Rn, o1, Rm, size, Q)
|
---|
1363 |
|
---|
1364 |
|
---|
1365 | /* UMIN <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e206c00) */
|
---|
1366 | //#define IEM_INSTR_IMPL_A64__UMIN_asimdsame_only(Rd, Rn, o1, Rm, size, Q)
|
---|
1367 |
|
---|
1368 |
|
---|
1369 | /* UABD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e207400) */
|
---|
1370 | //#define IEM_INSTR_IMPL_A64__UABD_asimdsame_only(Rd, Rn, ac, Rm, size, Q)
|
---|
1371 |
|
---|
1372 |
|
---|
1373 | /* UABA <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e207c00) */
|
---|
1374 | //#define IEM_INSTR_IMPL_A64__UABA_asimdsame_only(Rd, Rn, ac, Rm, size, Q)
|
---|
1375 |
|
---|
1376 |
|
---|
1377 | /* SUB <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e208400) */
|
---|
1378 | //#define IEM_INSTR_IMPL_A64__SUB_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1379 |
|
---|
1380 |
|
---|
1381 | /* CMEQ <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e208c00) */
|
---|
1382 | //#define IEM_INSTR_IMPL_A64__CMEQ_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1383 |
|
---|
1384 |
|
---|
1385 | /* MLS <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e209400) */
|
---|
1386 | //#define IEM_INSTR_IMPL_A64__MLS_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1387 |
|
---|
1388 |
|
---|
1389 | /* PMUL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e209c00) */
|
---|
1390 | //#define IEM_INSTR_IMPL_A64__PMUL_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1391 |
|
---|
1392 |
|
---|
1393 | /* UMAXP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e20a400) */
|
---|
1394 | //#define IEM_INSTR_IMPL_A64__UMAXP_asimdsame_only(Rd, Rn, o1, Rm, size, Q)
|
---|
1395 |
|
---|
1396 |
|
---|
1397 | /* UMINP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e20ac00) */
|
---|
1398 | //#define IEM_INSTR_IMPL_A64__UMINP_asimdsame_only(Rd, Rn, o1, Rm, size, Q)
|
---|
1399 |
|
---|
1400 |
|
---|
1401 | /* SQRDMULH <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e20b400) */
|
---|
1402 | //#define IEM_INSTR_IMPL_A64__SQRDMULH_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1403 |
|
---|
1404 |
|
---|
1405 | /* FMAXNMP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2e20c400) */
|
---|
1406 | //#define IEM_INSTR_IMPL_A64__FMAXNMP_asimdsame_only(Rd, Rn, Rm, sz, o1, Q)
|
---|
1407 |
|
---|
1408 |
|
---|
1409 | /* FADDP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2e20d400) */
|
---|
1410 | //#define IEM_INSTR_IMPL_A64__FADDP_asimdsame_only(Rd, Rn, Rm, sz, Q)
|
---|
1411 |
|
---|
1412 |
|
---|
1413 | /* FMUL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2e20dc00) */
|
---|
1414 | //#define IEM_INSTR_IMPL_A64__FMUL_asimdsame_only(Rd, Rn, Rm, sz, Q)
|
---|
1415 |
|
---|
1416 |
|
---|
1417 | /* FCMGE <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2e20e400) */
|
---|
1418 | //#define IEM_INSTR_IMPL_A64__FCMGE_asimdsame_only(Rd, Rn, ac, Rm, sz, E, Q)
|
---|
1419 |
|
---|
1420 |
|
---|
1421 | /* FACGE <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2e20ec00) */
|
---|
1422 | //#define IEM_INSTR_IMPL_A64__FACGE_asimdsame_only(Rd, Rn, ac, Rm, sz, E, Q)
|
---|
1423 |
|
---|
1424 |
|
---|
1425 | /* FMAXP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2e20f400) */
|
---|
1426 | //#define IEM_INSTR_IMPL_A64__FMAXP_asimdsame_only(Rd, Rn, Rm, sz, o1, Q)
|
---|
1427 |
|
---|
1428 |
|
---|
1429 | /* FDIV <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2e20fc00) */
|
---|
1430 | //#define IEM_INSTR_IMPL_A64__FDIV_asimdsame_only(Rd, Rn, Rm, sz, Q)
|
---|
1431 |
|
---|
1432 |
|
---|
1433 | /* EOR <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2e201c00) */
|
---|
1434 | //#define IEM_INSTR_IMPL_A64__EOR_asimdsame_only(Rd, Rn, Rm, opc2, Q)
|
---|
1435 |
|
---|
1436 |
|
---|
1437 | /* FMLAL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bfe0fc00/2e20cc00) */
|
---|
1438 | //#define IEM_INSTR_IMPL_A64__FMLAL2_asimdsame_F(Rd, Rn, Rm, sz, S, Q)
|
---|
1439 |
|
---|
1440 |
|
---|
1441 | /* BSL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2e601c00) */
|
---|
1442 | //#define IEM_INSTR_IMPL_A64__BSL_asimdsame_only(Rd, Rn, Rm, opc2, Q)
|
---|
1443 |
|
---|
1444 |
|
---|
1445 | /* FMINNMP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2ea0c400) */
|
---|
1446 | //#define IEM_INSTR_IMPL_A64__FMINNMP_asimdsame_only(Rd, Rn, Rm, sz, o1, Q)
|
---|
1447 |
|
---|
1448 |
|
---|
1449 | /* FABD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2ea0d400) */
|
---|
1450 | //#define IEM_INSTR_IMPL_A64__FABD_asimdsame_only(Rd, Rn, Rm, sz, Q)
|
---|
1451 |
|
---|
1452 |
|
---|
1453 | /* FAMIN <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e20dc00) */
|
---|
1454 | //#define IEM_INSTR_IMPL_A64__FAMIN_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1455 |
|
---|
1456 |
|
---|
1457 | /* FCMGT <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2ea0e400) */
|
---|
1458 | //#define IEM_INSTR_IMPL_A64__FCMGT_asimdsame_only(Rd, Rn, ac, Rm, sz, E, Q)
|
---|
1459 |
|
---|
1460 |
|
---|
1461 | /* FACGT <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2ea0ec00) */
|
---|
1462 | //#define IEM_INSTR_IMPL_A64__FACGT_asimdsame_only(Rd, Rn, ac, Rm, sz, E, Q)
|
---|
1463 |
|
---|
1464 |
|
---|
1465 | /* FMINP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfa0fc00/2ea0f400) */
|
---|
1466 | //#define IEM_INSTR_IMPL_A64__FMINP_asimdsame_only(Rd, Rn, Rm, sz, o1, Q)
|
---|
1467 |
|
---|
1468 |
|
---|
1469 | /* FSCALE <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e20fc00) */
|
---|
1470 | //#define IEM_INSTR_IMPL_A64__FSCALE_asimdsame_only(Rd, Rn, Rm, size, Q)
|
---|
1471 |
|
---|
1472 |
|
---|
1473 | /* BIT <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2ea01c00) */
|
---|
1474 | //#define IEM_INSTR_IMPL_A64__BIT_asimdsame_only(Rd, Rn, Rm, opc2, Q)
|
---|
1475 |
|
---|
1476 |
|
---|
1477 | /* FMLSL2 <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bfe0fc00/2ea0cc00) */
|
---|
1478 | //#define IEM_INSTR_IMPL_A64__FMLSL2_asimdsame_F(Rd, Rn, Rm, sz, S, Q)
|
---|
1479 |
|
---|
1480 |
|
---|
1481 | /* BIF <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2ee01c00) */
|
---|
1482 | //#define IEM_INSTR_IMPL_A64__BIF_asimdsame_only(Rd, Rn, Rm, opc2, Q)
|
---|
1483 |
|
---|
1484 |
|
---|
1485 |
|
---|
1486 | /*
|
---|
1487 | *
|
---|
1488 | * Instruction Set & Groups: asimdsame2 / simd_dp / A64
|
---|
1489 | *
|
---|
1490 | */
|
---|
1491 |
|
---|
1492 | /* SDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/0e009400) */
|
---|
1493 | //#define IEM_INSTR_IMPL_A64__SDOT_asimdsame2_D(Rd, Rn, Rm, size, Q)
|
---|
1494 |
|
---|
1495 |
|
---|
1496 | /* FCVTN2 <Vd>.<Ta>, <Vn>.4S, <Vm>.4S (bfe0fc00/0e00f400) */
|
---|
1497 | //#define IEM_INSTR_IMPL_A64__FCVTN_asimdsame2_H(Rd, Rn, Rm, Q)
|
---|
1498 |
|
---|
1499 |
|
---|
1500 | /* FDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bfe0fc00/0e00fc00) */
|
---|
1501 | //#define IEM_INSTR_IMPL_A64__FDOT_asimdsame2_DD(Rd, Rn, Rm, Q)
|
---|
1502 |
|
---|
1503 |
|
---|
1504 | /* FCVTN <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bfe0fc00/0e40f400) */
|
---|
1505 | //#define IEM_INSTR_IMPL_A64__FCVTN_asimdsame2_D(Rd, Rn, Rm, Q)
|
---|
1506 |
|
---|
1507 |
|
---|
1508 | /* FDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bfe0fc00/0e40fc00) */
|
---|
1509 | //#define IEM_INSTR_IMPL_A64__FDOT_asimdsame2_D(Rd, Rn, Rm, Q)
|
---|
1510 |
|
---|
1511 |
|
---|
1512 | /* USDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bfe0fc00/0e809c00) */
|
---|
1513 | //#define IEM_INSTR_IMPL_A64__USDOT_asimdsame2_D(Rd, Rn, Rm, Q)
|
---|
1514 |
|
---|
1515 |
|
---|
1516 | /* SQRDMLAH <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e008400) */
|
---|
1517 | //#define IEM_INSTR_IMPL_A64__SQRDMLAH_asimdsame2_only(Rd, Rn, S, Rm, size, Q)
|
---|
1518 |
|
---|
1519 |
|
---|
1520 | /* SQRDMLSH <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bf20fc00/2e008c00) */
|
---|
1521 | //#define IEM_INSTR_IMPL_A64__SQRDMLSH_asimdsame2_only(Rd, Rn, S, Rm, size, Q)
|
---|
1522 |
|
---|
1523 |
|
---|
1524 | /* UDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bf20fc00/2e009400) */
|
---|
1525 | //#define IEM_INSTR_IMPL_A64__UDOT_asimdsame2_D(Rd, Rn, Rm, size, Q)
|
---|
1526 |
|
---|
1527 |
|
---|
1528 | /* FCMLA <Vd>.<T>, <Vn>.<T>, <Vm>.<T>, #<rotate> (bf20e400/2e00c400) */
|
---|
1529 | //#define IEM_INSTR_IMPL_A64__FCMLA_asimdsame2_C(Rd, Rn, rot, Rm, size, Q)
|
---|
1530 |
|
---|
1531 |
|
---|
1532 | /* FCADD <Vd>.<T>, <Vn>.<T>, <Vm>.<T>, #<rotate> (bf20ec00/2e00e400) */
|
---|
1533 | //#define IEM_INSTR_IMPL_A64__FCADD_asimdsame2_C(Rd, Rn, rot, Rm, size, Q)
|
---|
1534 |
|
---|
1535 |
|
---|
1536 | /* BFDOT <Vd>.<Ta>, <Vn>.<Tb>, <Vm>.<Tb> (bfe0fc00/2e40fc00) */
|
---|
1537 | //#define IEM_INSTR_IMPL_A64__BFDOT_asimdsame2_D(Rd, Rn, Rm, Q)
|
---|
1538 |
|
---|
1539 |
|
---|
1540 | /* BFMLAL<bt> <Vd>.4S, <Vn>.8H, <Vm>.8H (bfe0fc00/2ec0fc00) */
|
---|
1541 | //#define IEM_INSTR_IMPL_A64__BFMLAL_asimdsame2_F(Rd, Rn, Rm, Q)
|
---|
1542 |
|
---|
1543 |
|
---|
1544 | /* FMLALLBB <Vd>.4S, <Vn>.16B, <Vm>.16B (ffe0fc00/0e00c400) */
|
---|
1545 | //#define IEM_INSTR_IMPL_A64__FMLALLBB_asimdsame2_G(Rd, Rn, Rm)
|
---|
1546 |
|
---|
1547 |
|
---|
1548 | /* FMLALLBT <Vd>.4S, <Vn>.16B, <Vm>.16B (ffe0fc00/0e40c400) */
|
---|
1549 | //#define IEM_INSTR_IMPL_A64__FMLALLBT_asimdsame2_G(Rd, Rn, Rm)
|
---|
1550 |
|
---|
1551 |
|
---|
1552 | /* FMLALB <Vd>.8H, <Vn>.16B, <Vm>.16B (ffe0fc00/0ec0fc00) */
|
---|
1553 | //#define IEM_INSTR_IMPL_A64__FMLALB_asimdsame2_J(Rd, Rn, Rm)
|
---|
1554 |
|
---|
1555 |
|
---|
1556 | /* FMLALLTB <Vd>.4S, <Vn>.16B, <Vm>.16B (ffe0fc00/4e00c400) */
|
---|
1557 | //#define IEM_INSTR_IMPL_A64__FMLALLTB_asimdsame2_G(Rd, Rn, Rm)
|
---|
1558 |
|
---|
1559 |
|
---|
1560 | /* FMLALLTT <Vd>.4S, <Vn>.16B, <Vm>.16B (ffe0fc00/4e40c400) */
|
---|
1561 | //#define IEM_INSTR_IMPL_A64__FMLALLTT_asimdsame2_G(Rd, Rn, Rm)
|
---|
1562 |
|
---|
1563 |
|
---|
1564 | /* SMMLA <Vd>.4S, <Vn>.16B, <Vm>.16B (ffe0fc00/4e80a400) */
|
---|
1565 | //#define IEM_INSTR_IMPL_A64__SMMLA_asimdsame2_G(Rd, Rn, B, Rm)
|
---|
1566 |
|
---|
1567 |
|
---|
1568 | /* USMMLA <Vd>.4S, <Vn>.16B, <Vm>.16B (ffe0fc00/4e80ac00) */
|
---|
1569 | //#define IEM_INSTR_IMPL_A64__USMMLA_asimdsame2_G(Rd, Rn, B, Rm)
|
---|
1570 |
|
---|
1571 |
|
---|
1572 | /* FMLALT <Vd>.8H, <Vn>.16B, <Vm>.16B (ffe0fc00/4ec0fc00) */
|
---|
1573 | //#define IEM_INSTR_IMPL_A64__FMLALT_asimdsame2_J(Rd, Rn, Rm)
|
---|
1574 |
|
---|
1575 |
|
---|
1576 | /* FMMLA <Vd>.8H, <Vn>.16B, <Vm>.16B (ffe0fc00/6e00ec00) */
|
---|
1577 | //#define IEM_INSTR_IMPL_A64__FMMLA_asimd_FP8FP16(Rd, Rn, Rm)
|
---|
1578 |
|
---|
1579 |
|
---|
1580 | /* BFMMLA <Vd>.4S, <Vn>.8H, <Vm>.8H (ffe0fc00/6e40ec00) */
|
---|
1581 | //#define IEM_INSTR_IMPL_A64__BFMMLA_asimdsame2_E(Rd, Rn, Rm)
|
---|
1582 |
|
---|
1583 |
|
---|
1584 | /* FMMLA <Vd>.4S, <Vn>.16B, <Vm>.16B (ffe0fc00/6e80ec00) */
|
---|
1585 | //#define IEM_INSTR_IMPL_A64__FMMLA_asimd_FP8FP32(Rd, Rn, Rm)
|
---|
1586 |
|
---|
1587 |
|
---|
1588 | /* UMMLA <Vd>.4S, <Vn>.16B, <Vm>.16B (ffe0fc00/6e80a400) */
|
---|
1589 | //#define IEM_INSTR_IMPL_A64__UMMLA_asimdsame2_G(Rd, Rn, B, Rm)
|
---|
1590 |
|
---|
1591 |
|
---|
1592 |
|
---|
1593 | /*
|
---|
1594 | *
|
---|
1595 | * Instruction Set & Groups: asimdsamefp16 / simd_dp / A64
|
---|
1596 | *
|
---|
1597 | */
|
---|
1598 |
|
---|
1599 | /* FMAXNM <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0e400400) */
|
---|
1600 | //#define IEM_INSTR_IMPL_A64__FMAXNM_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1601 |
|
---|
1602 |
|
---|
1603 | /* FMLA <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0e400c00) */
|
---|
1604 | //#define IEM_INSTR_IMPL_A64__FMLA_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1605 |
|
---|
1606 |
|
---|
1607 | /* FADD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0e401400) */
|
---|
1608 | //#define IEM_INSTR_IMPL_A64__FADD_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1609 |
|
---|
1610 |
|
---|
1611 | /* FMULX <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0e401c00) */
|
---|
1612 | //#define IEM_INSTR_IMPL_A64__FMULX_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1613 |
|
---|
1614 |
|
---|
1615 | /* FCMEQ <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0e402400) */
|
---|
1616 | //#define IEM_INSTR_IMPL_A64__FCMEQ_asimdsamefp16_only(Rd, Rn, ac, Rm, E, Q)
|
---|
1617 |
|
---|
1618 |
|
---|
1619 | /* FMAX <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0e403400) */
|
---|
1620 | //#define IEM_INSTR_IMPL_A64__FMAX_asimdsamefp16_only(Rd, Rn, Rm, o1, Q)
|
---|
1621 |
|
---|
1622 |
|
---|
1623 | /* FRECPS <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0e403c00) */
|
---|
1624 | //#define IEM_INSTR_IMPL_A64__FRECPS_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1625 |
|
---|
1626 |
|
---|
1627 | /* FMINNM <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0ec00400) */
|
---|
1628 | //#define IEM_INSTR_IMPL_A64__FMINNM_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1629 |
|
---|
1630 |
|
---|
1631 | /* FMLS <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0ec00c00) */
|
---|
1632 | //#define IEM_INSTR_IMPL_A64__FMLS_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1633 |
|
---|
1634 |
|
---|
1635 | /* FSUB <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0ec01400) */
|
---|
1636 | //#define IEM_INSTR_IMPL_A64__FSUB_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1637 |
|
---|
1638 |
|
---|
1639 | /* FAMAX <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0ec01c00) */
|
---|
1640 | //#define IEM_INSTR_IMPL_A64__FAMAX_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1641 |
|
---|
1642 |
|
---|
1643 | /* FMIN <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0ec03400) */
|
---|
1644 | //#define IEM_INSTR_IMPL_A64__FMIN_asimdsamefp16_only(Rd, Rn, Rm, o1, Q)
|
---|
1645 |
|
---|
1646 |
|
---|
1647 | /* FRSQRTS <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/0ec03c00) */
|
---|
1648 | //#define IEM_INSTR_IMPL_A64__FRSQRTS_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1649 |
|
---|
1650 |
|
---|
1651 | /* FMAXNMP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2e400400) */
|
---|
1652 | //#define IEM_INSTR_IMPL_A64__FMAXNMP_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1653 |
|
---|
1654 |
|
---|
1655 | /* FADDP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2e401400) */
|
---|
1656 | //#define IEM_INSTR_IMPL_A64__FADDP_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1657 |
|
---|
1658 |
|
---|
1659 | /* FMUL <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2e401c00) */
|
---|
1660 | //#define IEM_INSTR_IMPL_A64__FMUL_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1661 |
|
---|
1662 |
|
---|
1663 | /* FCMGE <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2e402400) */
|
---|
1664 | //#define IEM_INSTR_IMPL_A64__FCMGE_asimdsamefp16_only(Rd, Rn, ac, Rm, E, Q)
|
---|
1665 |
|
---|
1666 |
|
---|
1667 | /* FACGE <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2e402c00) */
|
---|
1668 | //#define IEM_INSTR_IMPL_A64__FACGE_asimdsamefp16_only(Rd, Rn, ac, Rm, E, Q)
|
---|
1669 |
|
---|
1670 |
|
---|
1671 | /* FMAXP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2e403400) */
|
---|
1672 | //#define IEM_INSTR_IMPL_A64__FMAXP_asimdsamefp16_only(Rd, Rn, Rm, o1, Q)
|
---|
1673 |
|
---|
1674 |
|
---|
1675 | /* FDIV <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2e403c00) */
|
---|
1676 | //#define IEM_INSTR_IMPL_A64__FDIV_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1677 |
|
---|
1678 |
|
---|
1679 | /* FMINNMP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2ec00400) */
|
---|
1680 | //#define IEM_INSTR_IMPL_A64__FMINNMP_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1681 |
|
---|
1682 |
|
---|
1683 | /* FABD <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2ec01400) */
|
---|
1684 | //#define IEM_INSTR_IMPL_A64__FABD_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1685 |
|
---|
1686 |
|
---|
1687 | /* FAMIN <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2ec01c00) */
|
---|
1688 | //#define IEM_INSTR_IMPL_A64__FAMIN_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1689 |
|
---|
1690 |
|
---|
1691 | /* FCMGT <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2ec02400) */
|
---|
1692 | //#define IEM_INSTR_IMPL_A64__FCMGT_asimdsamefp16_only(Rd, Rn, ac, Rm, E, Q)
|
---|
1693 |
|
---|
1694 |
|
---|
1695 | /* FACGT <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2ec02c00) */
|
---|
1696 | //#define IEM_INSTR_IMPL_A64__FACGT_asimdsamefp16_only(Rd, Rn, ac, Rm, E, Q)
|
---|
1697 |
|
---|
1698 |
|
---|
1699 | /* FMINP <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2ec03400) */
|
---|
1700 | //#define IEM_INSTR_IMPL_A64__FMINP_asimdsamefp16_only(Rd, Rn, Rm, o1, Q)
|
---|
1701 |
|
---|
1702 |
|
---|
1703 | /* FSCALE <Vd>.<T>, <Vn>.<T>, <Vm>.<T> (bfe0fc00/2ec03c00) */
|
---|
1704 | //#define IEM_INSTR_IMPL_A64__FSCALE_asimdsamefp16_only(Rd, Rn, Rm, Q)
|
---|
1705 |
|
---|
1706 |
|
---|
1707 |
|
---|
1708 | /*
|
---|
1709 | *
|
---|
1710 | * Instruction Set & Groups: asimdshf / simd_dp / A64
|
---|
1711 | *
|
---|
1712 | */
|
---|
1713 |
|
---|
1714 | /* SSHR <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/0f000400) */
|
---|
1715 | //#define IEM_INSTR_IMPL_A64__SSHR_asimdshf_R(Rd, Rn, o0, o1, immb, immh, Q)
|
---|
1716 |
|
---|
1717 |
|
---|
1718 | /* SSRA <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/0f001400) */
|
---|
1719 | //#define IEM_INSTR_IMPL_A64__SSRA_asimdshf_R(Rd, Rn, o0, o1, immb, immh, Q)
|
---|
1720 |
|
---|
1721 |
|
---|
1722 | /* SRSHR <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/0f002400) */
|
---|
1723 | //#define IEM_INSTR_IMPL_A64__SRSHR_asimdshf_R(Rd, Rn, o0, o1, immb, immh, Q)
|
---|
1724 |
|
---|
1725 |
|
---|
1726 | /* SRSRA <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/0f003400) */
|
---|
1727 | //#define IEM_INSTR_IMPL_A64__SRSRA_asimdshf_R(Rd, Rn, o0, o1, immb, immh, Q)
|
---|
1728 |
|
---|
1729 |
|
---|
1730 | /* SHL <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/0f005400) */
|
---|
1731 | //#define IEM_INSTR_IMPL_A64__SHL_asimdshf_R(Rd, Rn, immb, immh, Q)
|
---|
1732 |
|
---|
1733 |
|
---|
1734 | /* SQSHL <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/0f007400) */
|
---|
1735 | //#define IEM_INSTR_IMPL_A64__SQSHL_asimdshf_R(Rd, Rn, op, immb, immh, Q)
|
---|
1736 |
|
---|
1737 |
|
---|
1738 | /* SHRN2 <Vd>.<Tb>, <Vn>.<Ta>, #<shift> (bf80fc00/0f008400) */
|
---|
1739 | //#define IEM_INSTR_IMPL_A64__SHRN_asimdshf_N(Rd, Rn, op, immb, immh, Q)
|
---|
1740 |
|
---|
1741 |
|
---|
1742 | /* RSHRN2 <Vd>.<Tb>, <Vn>.<Ta>, #<shift> (bf80fc00/0f008c00) */
|
---|
1743 | //#define IEM_INSTR_IMPL_A64__RSHRN_asimdshf_N(Rd, Rn, op, immb, immh, Q)
|
---|
1744 |
|
---|
1745 |
|
---|
1746 | /* SQSHRN2 <Vd>.<Tb>, <Vn>.<Ta>, #<shift> (bf80fc00/0f009400) */
|
---|
1747 | //#define IEM_INSTR_IMPL_A64__SQSHRN_asimdshf_N(Rd, Rn, op, immb, immh, Q)
|
---|
1748 |
|
---|
1749 |
|
---|
1750 | /* SQRSHRN2 <Vd>.<Tb>, <Vn>.<Ta>, #<shift> (bf80fc00/0f009c00) */
|
---|
1751 | //#define IEM_INSTR_IMPL_A64__SQRSHRN_asimdshf_N(Rd, Rn, op, immb, immh, Q)
|
---|
1752 |
|
---|
1753 |
|
---|
1754 | /* SSHLL2 <Vd>.<Ta>, <Vn>.<Tb>, #<shift> (bf80fc00/0f00a400) */
|
---|
1755 | //#define IEM_INSTR_IMPL_A64__SSHLL_asimdshf_L(Rd, Rn, immb, immh, Q)
|
---|
1756 |
|
---|
1757 |
|
---|
1758 | /* SCVTF <Vd>.<T>, <Vn>.<T>, #<fbits> (bf80fc00/0f00e400) */
|
---|
1759 | //#define IEM_INSTR_IMPL_A64__SCVTF_asimdshf_C(Rd, Rn, immb, immh, Q)
|
---|
1760 |
|
---|
1761 |
|
---|
1762 | /* FCVTZS <Vd>.<T>, <Vn>.<T>, #<fbits> (bf80fc00/0f00fc00) */
|
---|
1763 | //#define IEM_INSTR_IMPL_A64__FCVTZS_asimdshf_C(Rd, Rn, immb, immh, Q)
|
---|
1764 |
|
---|
1765 |
|
---|
1766 | /* USHR <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/2f000400) */
|
---|
1767 | //#define IEM_INSTR_IMPL_A64__USHR_asimdshf_R(Rd, Rn, o0, o1, immb, immh, Q)
|
---|
1768 |
|
---|
1769 |
|
---|
1770 | /* USRA <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/2f001400) */
|
---|
1771 | //#define IEM_INSTR_IMPL_A64__USRA_asimdshf_R(Rd, Rn, o0, o1, immb, immh, Q)
|
---|
1772 |
|
---|
1773 |
|
---|
1774 | /* URSHR <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/2f002400) */
|
---|
1775 | //#define IEM_INSTR_IMPL_A64__URSHR_asimdshf_R(Rd, Rn, o0, o1, immb, immh, Q)
|
---|
1776 |
|
---|
1777 |
|
---|
1778 | /* URSRA <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/2f003400) */
|
---|
1779 | //#define IEM_INSTR_IMPL_A64__URSRA_asimdshf_R(Rd, Rn, o0, o1, immb, immh, Q)
|
---|
1780 |
|
---|
1781 |
|
---|
1782 | /* SRI <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/2f004400) */
|
---|
1783 | //#define IEM_INSTR_IMPL_A64__SRI_asimdshf_R(Rd, Rn, immb, immh, Q)
|
---|
1784 |
|
---|
1785 |
|
---|
1786 | /* SLI <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/2f005400) */
|
---|
1787 | //#define IEM_INSTR_IMPL_A64__SLI_asimdshf_R(Rd, Rn, immb, immh, Q)
|
---|
1788 |
|
---|
1789 |
|
---|
1790 | /* SQSHLU <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/2f006400) */
|
---|
1791 | //#define IEM_INSTR_IMPL_A64__SQSHLU_asimdshf_R(Rd, Rn, op, immb, immh, Q)
|
---|
1792 |
|
---|
1793 |
|
---|
1794 | /* UQSHL <Vd>.<T>, <Vn>.<T>, #<shift> (bf80fc00/2f007400) */
|
---|
1795 | //#define IEM_INSTR_IMPL_A64__UQSHL_asimdshf_R(Rd, Rn, op, immb, immh, Q)
|
---|
1796 |
|
---|
1797 |
|
---|
1798 | /* SQSHRUN2 <Vd>.<Tb>, <Vn>.<Ta>, #<shift> (bf80fc00/2f008400) */
|
---|
1799 | //#define IEM_INSTR_IMPL_A64__SQSHRUN_asimdshf_N(Rd, Rn, op, immb, immh, Q)
|
---|
1800 |
|
---|
1801 |
|
---|
1802 | /* SQRSHRUN2 <Vd>.<Tb>, <Vn>.<Ta>, #<shift> (bf80fc00/2f008c00) */
|
---|
1803 | //#define IEM_INSTR_IMPL_A64__SQRSHRUN_asimdshf_N(Rd, Rn, op, immb, immh, Q)
|
---|
1804 |
|
---|
1805 |
|
---|
1806 | /* UQSHRN2 <Vd>.<Tb>, <Vn>.<Ta>, #<shift> (bf80fc00/2f009400) */
|
---|
1807 | //#define IEM_INSTR_IMPL_A64__UQSHRN_asimdshf_N(Rd, Rn, op, immb, immh, Q)
|
---|
1808 |
|
---|
1809 |
|
---|
1810 | /* UQRSHRN2 <Vd>.<Tb>, <Vn>.<Ta>, #<shift> (bf80fc00/2f009c00) */
|
---|
1811 | //#define IEM_INSTR_IMPL_A64__UQRSHRN_asimdshf_N(Rd, Rn, op, immb, immh, Q)
|
---|
1812 |
|
---|
1813 |
|
---|
1814 | /* USHLL2 <Vd>.<Ta>, <Vn>.<Tb>, #<shift> (bf80fc00/2f00a400) */
|
---|
1815 | //#define IEM_INSTR_IMPL_A64__USHLL_asimdshf_L(Rd, Rn, immb, immh, Q)
|
---|
1816 |
|
---|
1817 |
|
---|
1818 | /* UCVTF <Vd>.<T>, <Vn>.<T>, #<fbits> (bf80fc00/2f00e400) */
|
---|
1819 | //#define IEM_INSTR_IMPL_A64__UCVTF_asimdshf_C(Rd, Rn, immb, immh, Q)
|
---|
1820 |
|
---|
1821 |
|
---|
1822 | /* FCVTZU <Vd>.<T>, <Vn>.<T>, #<fbits> (bf80fc00/2f00fc00) */
|
---|
1823 | //#define IEM_INSTR_IMPL_A64__FCVTZU_asimdshf_C(Rd, Rn, immb, immh, Q)
|
---|
1824 |
|
---|
1825 |
|
---|
1826 |
|
---|
1827 | /*
|
---|
1828 | *
|
---|
1829 | * Instruction Set & Groups: asimdtbl / simd_dp / A64
|
---|
1830 | *
|
---|
1831 | */
|
---|
1832 |
|
---|
1833 | /* TBL <Vd>.<Ta>, { <Vn>.16B }, <Vm>.<Ta> (bfe0fc00/0e000000) */
|
---|
1834 | //#define IEM_INSTR_IMPL_A64__TBL_asimdtbl_L1_1(Rd, Rn, Rm, Q)
|
---|
1835 |
|
---|
1836 |
|
---|
1837 | /* TBX <Vd>.<Ta>, { <Vn>.16B }, <Vm>.<Ta> (bfe0fc00/0e001000) */
|
---|
1838 | //#define IEM_INSTR_IMPL_A64__TBX_asimdtbl_L1_1(Rd, Rn, Rm, Q)
|
---|
1839 |
|
---|
1840 |
|
---|
1841 | /* TBL <Vd>.<Ta>, { <Vn>.16B, <Vn+1>.16B }, <Vm>.<Ta> (bfe0fc00/0e002000) */
|
---|
1842 | //#define IEM_INSTR_IMPL_A64__TBL_asimdtbl_L2_2(Rd, Rn, Rm, Q)
|
---|
1843 |
|
---|
1844 |
|
---|
1845 | /* TBX <Vd>.<Ta>, { <Vn>.16B, <Vn+1>.16B }, <Vm>.<Ta> (bfe0fc00/0e003000) */
|
---|
1846 | //#define IEM_INSTR_IMPL_A64__TBX_asimdtbl_L2_2(Rd, Rn, Rm, Q)
|
---|
1847 |
|
---|
1848 |
|
---|
1849 | /* TBL <Vd>.<Ta>, { <Vn>.16B, <Vn+1>.16B, <Vn+2>.16B }, <Vm>.<Ta> (bfe0fc00/0e004000) */
|
---|
1850 | //#define IEM_INSTR_IMPL_A64__TBL_asimdtbl_L3_3(Rd, Rn, Rm, Q)
|
---|
1851 |
|
---|
1852 |
|
---|
1853 | /* TBX <Vd>.<Ta>, { <Vn>.16B, <Vn+1>.16B, <Vn+2>.16B }, <Vm>.<Ta> (bfe0fc00/0e005000) */
|
---|
1854 | //#define IEM_INSTR_IMPL_A64__TBX_asimdtbl_L3_3(Rd, Rn, Rm, Q)
|
---|
1855 |
|
---|
1856 |
|
---|
1857 | /* TBL <Vd>.<Ta>, { <Vn>.16B, <Vn+1>.16B, <Vn+2>.16B, <Vn+3>.16B }, <Vm>.<Ta> (bfe0fc00/0e006000) */
|
---|
1858 | //#define IEM_INSTR_IMPL_A64__TBL_asimdtbl_L4_4(Rd, Rn, Rm, Q)
|
---|
1859 |
|
---|
1860 |
|
---|
1861 | /* TBX <Vd>.<Ta>, { <Vn>.16B, <Vn+1>.16B, <Vn+2>.16B, <Vn+3>.16B }, <Vm>.<Ta> (bfe0fc00/0e007000) */
|
---|
1862 | //#define IEM_INSTR_IMPL_A64__TBX_asimdtbl_L4_4(Rd, Rn, Rm, Q)
|
---|
1863 |
|
---|
1864 |
|
---|
1865 | /* LUTI4 <Vd>.8H, { <Vn1>.8H, <Vn2>.8H }, <Vm>[<index>] (ffe09c00/4e401000) */
|
---|
1866 | //#define IEM_INSTR_IMPL_A64__LUTI4_asimdtbl_L7(Rd, Rn, len, Rm)
|
---|
1867 |
|
---|
1868 |
|
---|
1869 | /* LUTI4 <Vd>.16B, { <Vn>.16B }, <Vm>[<index>] (ffe0bc00/4e402000) */
|
---|
1870 | //#define IEM_INSTR_IMPL_A64__LUTI4_asimdtbl_L5(Rd, Rn, len, Rm)
|
---|
1871 |
|
---|
1872 |
|
---|
1873 | /* LUTI2 <Vd>.16B, { <Vn>.16B }, <Vm>[<index>] (ffe09c00/4e801000) */
|
---|
1874 | //#define IEM_INSTR_IMPL_A64__LUTI2_asimdtbl_L5(Rd, Rn, len, Rm)
|
---|
1875 |
|
---|
1876 |
|
---|
1877 | /* LUTI2 <Vd>.8H, { <Vn>.8H }, <Vm>[<index>] (ffe08c00/4ec00000) */
|
---|
1878 | //#define IEM_INSTR_IMPL_A64__LUTI2_asimdtbl_L6(Rd, Rn, op, len, Rm)
|
---|
1879 |
|
---|
1880 |
|
---|
1881 |
|
---|
1882 | /*
|
---|
1883 | *
|
---|
1884 | * Instruction Set & Groups: asisddiff / simd_dp / A64
|
---|
1885 | *
|
---|
1886 | */
|
---|
1887 |
|
---|
1888 | /* SQDMLAL <Va><d>, <Vb><n>, <Vb><m> (ff20fc00/5e209000) */
|
---|
1889 | //#define IEM_INSTR_IMPL_A64__SQDMLAL_asisddiff_only(Rd, Rn, o1, Rm, size)
|
---|
1890 |
|
---|
1891 |
|
---|
1892 | /* SQDMLSL <Va><d>, <Vb><n>, <Vb><m> (ff20fc00/5e20b000) */
|
---|
1893 | //#define IEM_INSTR_IMPL_A64__SQDMLSL_asisddiff_only(Rd, Rn, o1, Rm, size)
|
---|
1894 |
|
---|
1895 |
|
---|
1896 | /* SQDMULL <Va><d>, <Vb><n>, <Vb><m> (ff20fc00/5e20d000) */
|
---|
1897 | //#define IEM_INSTR_IMPL_A64__SQDMULL_asisddiff_only(Rd, Rn, Rm, size)
|
---|
1898 |
|
---|
1899 |
|
---|
1900 |
|
---|
1901 | /*
|
---|
1902 | *
|
---|
1903 | * Instruction Set & Groups: asisdelem / simd_dp / A64
|
---|
1904 | *
|
---|
1905 | */
|
---|
1906 |
|
---|
1907 | /* SQDMLAL <Va><d>, <Vb><n>, <Vm>.<Ts>[<index>] (ff00f400/5f003000) */
|
---|
1908 | //#define IEM_INSTR_IMPL_A64__SQDMLAL_asisdelem_L(Rd, Rn, H, o2, Rm, M, L, size)
|
---|
1909 |
|
---|
1910 |
|
---|
1911 | /* SQDMLSL <Va><d>, <Vb><n>, <Vm>.<Ts>[<index>] (ff00f400/5f007000) */
|
---|
1912 | //#define IEM_INSTR_IMPL_A64__SQDMLSL_asisdelem_L(Rd, Rn, H, o2, Rm, M, L, size)
|
---|
1913 |
|
---|
1914 |
|
---|
1915 | /* SQDMULL <Va><d>, <Vb><n>, <Vm>.<Ts>[<index>] (ff00f400/5f00b000) */
|
---|
1916 | //#define IEM_INSTR_IMPL_A64__SQDMULL_asisdelem_L(Rd, Rn, H, Rm, M, L, size)
|
---|
1917 |
|
---|
1918 |
|
---|
1919 | /* SQDMULH <V><d>, <V><n>, <Vm>.<Ts>[<index>] (ff00f400/5f00c000) */
|
---|
1920 | //#define IEM_INSTR_IMPL_A64__SQDMULH_asisdelem_R(Rd, Rn, H, op, Rm, M, L, size)
|
---|
1921 |
|
---|
1922 |
|
---|
1923 | /* SQRDMULH <V><d>, <V><n>, <Vm>.<Ts>[<index>] (ff00f400/5f00d000) */
|
---|
1924 | //#define IEM_INSTR_IMPL_A64__SQRDMULH_asisdelem_R(Rd, Rn, H, op, Rm, M, L, size)
|
---|
1925 |
|
---|
1926 |
|
---|
1927 | /* FMLA <Hd>, <Hn>, <Vm>.H[<index>] (ffc0f400/5f001000) */
|
---|
1928 | //#define IEM_INSTR_IMPL_A64__FMLA_asisdelem_RH_H(Rd, Rn, H, o2, Rm, M, L)
|
---|
1929 |
|
---|
1930 |
|
---|
1931 | /* FMLS <Hd>, <Hn>, <Vm>.H[<index>] (ffc0f400/5f005000) */
|
---|
1932 | //#define IEM_INSTR_IMPL_A64__FMLS_asisdelem_RH_H(Rd, Rn, H, o2, Rm, M, L)
|
---|
1933 |
|
---|
1934 |
|
---|
1935 | /* FMUL <Hd>, <Hn>, <Vm>.H[<index>] (ffc0f400/5f009000) */
|
---|
1936 | //#define IEM_INSTR_IMPL_A64__FMUL_asisdelem_RH_H(Rd, Rn, H, Rm, M, L)
|
---|
1937 |
|
---|
1938 |
|
---|
1939 | /* FMLA <V><d>, <V><n>, <Vm>.<Ts>[<index>] (ff80f400/5f801000) */
|
---|
1940 | //#define IEM_INSTR_IMPL_A64__FMLA_asisdelem_R_SD(Rd, Rn, H, o2, Rm, M, L, sz)
|
---|
1941 |
|
---|
1942 |
|
---|
1943 | /* FMLS <V><d>, <V><n>, <Vm>.<Ts>[<index>] (ff80f400/5f805000) */
|
---|
1944 | //#define IEM_INSTR_IMPL_A64__FMLS_asisdelem_R_SD(Rd, Rn, H, o2, Rm, M, L, sz)
|
---|
1945 |
|
---|
1946 |
|
---|
1947 | /* FMUL <V><d>, <V><n>, <Vm>.<Ts>[<index>] (ff80f400/5f809000) */
|
---|
1948 | //#define IEM_INSTR_IMPL_A64__FMUL_asisdelem_R_SD(Rd, Rn, H, Rm, M, L, sz)
|
---|
1949 |
|
---|
1950 |
|
---|
1951 | /* SQRDMLAH <V><d>, <V><n>, <Vm>.<Ts>[<index>] (ff00f400/7f00d000) */
|
---|
1952 | //#define IEM_INSTR_IMPL_A64__SQRDMLAH_asisdelem_R(Rd, Rn, H, S, Rm, M, L, size)
|
---|
1953 |
|
---|
1954 |
|
---|
1955 | /* SQRDMLSH <V><d>, <V><n>, <Vm>.<Ts>[<index>] (ff00f400/7f00f000) */
|
---|
1956 | //#define IEM_INSTR_IMPL_A64__SQRDMLSH_asisdelem_R(Rd, Rn, H, S, Rm, M, L, size)
|
---|
1957 |
|
---|
1958 |
|
---|
1959 | /* FMULX <Hd>, <Hn>, <Vm>.H[<index>] (ffc0f400/7f009000) */
|
---|
1960 | //#define IEM_INSTR_IMPL_A64__FMULX_asisdelem_RH_H(Rd, Rn, H, Rm, M, L)
|
---|
1961 |
|
---|
1962 |
|
---|
1963 | /* FMULX <V><d>, <V><n>, <Vm>.<Ts>[<index>] (ff80f400/7f809000) */
|
---|
1964 | //#define IEM_INSTR_IMPL_A64__FMULX_asisdelem_R_SD(Rd, Rn, H, Rm, M, L, sz)
|
---|
1965 |
|
---|
1966 |
|
---|
1967 |
|
---|
1968 | /*
|
---|
1969 | *
|
---|
1970 | * Instruction Set & Groups: asisdlse / ldst / A64
|
---|
1971 | *
|
---|
1972 | */
|
---|
1973 |
|
---|
1974 | /* ST4 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>] (bffff000/0c000000) */
|
---|
1975 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlse_R4(Rt, Rn, size, Q)
|
---|
1976 |
|
---|
1977 |
|
---|
1978 | /* ST1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>] (bffff000/0c002000) */
|
---|
1979 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlse_R4_4v(Rt, Rn, size, Q)
|
---|
1980 |
|
---|
1981 |
|
---|
1982 | /* ST3 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>] (bffff000/0c004000) */
|
---|
1983 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlse_R3(Rt, Rn, size, Q)
|
---|
1984 |
|
---|
1985 |
|
---|
1986 | /* ST1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>] (bffff000/0c006000) */
|
---|
1987 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlse_R3_3v(Rt, Rn, size, Q)
|
---|
1988 |
|
---|
1989 |
|
---|
1990 | /* ST1 { <Vt>.<T> }, [<Xn|SP>] (bffff000/0c007000) */
|
---|
1991 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlse_R1_1v(Rt, Rn, size, Q)
|
---|
1992 |
|
---|
1993 |
|
---|
1994 | /* ST2 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>] (bffff000/0c008000) */
|
---|
1995 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlse_R2(Rt, Rn, size, Q)
|
---|
1996 |
|
---|
1997 |
|
---|
1998 | /* ST1 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>] (bffff000/0c00a000) */
|
---|
1999 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlse_R2_2v(Rt, Rn, size, Q)
|
---|
2000 |
|
---|
2001 |
|
---|
2002 | /* LD4 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>] (bffff000/0c400000) */
|
---|
2003 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlse_R4(Rt, Rn, size, Q)
|
---|
2004 |
|
---|
2005 |
|
---|
2006 | /* LD1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>] (bffff000/0c402000) */
|
---|
2007 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlse_R4_4v(Rt, Rn, size, Q)
|
---|
2008 |
|
---|
2009 |
|
---|
2010 | /* LD3 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>] (bffff000/0c404000) */
|
---|
2011 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlse_R3(Rt, Rn, size, Q)
|
---|
2012 |
|
---|
2013 |
|
---|
2014 | /* LD1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>] (bffff000/0c406000) */
|
---|
2015 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlse_R3_3v(Rt, Rn, size, Q)
|
---|
2016 |
|
---|
2017 |
|
---|
2018 | /* LD1 { <Vt>.<T> }, [<Xn|SP>] (bffff000/0c407000) */
|
---|
2019 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlse_R1_1v(Rt, Rn, size, Q)
|
---|
2020 |
|
---|
2021 |
|
---|
2022 | /* LD2 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>] (bffff000/0c408000) */
|
---|
2023 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlse_R2(Rt, Rn, size, Q)
|
---|
2024 |
|
---|
2025 |
|
---|
2026 | /* LD1 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>] (bffff000/0c40a000) */
|
---|
2027 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlse_R2_2v(Rt, Rn, size, Q)
|
---|
2028 |
|
---|
2029 |
|
---|
2030 |
|
---|
2031 | /*
|
---|
2032 | *
|
---|
2033 | * Instruction Set & Groups: asisdlsep / ldst / A64
|
---|
2034 | *
|
---|
2035 | */
|
---|
2036 |
|
---|
2037 | /* ST4 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0c800000) */
|
---|
2038 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlsep_R4_r(Rt, Rn, size, Rm, Q)
|
---|
2039 |
|
---|
2040 |
|
---|
2041 | /* ST1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0c802000) */
|
---|
2042 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsep_R4_r4(Rt, Rn, size, Rm, Q)
|
---|
2043 |
|
---|
2044 |
|
---|
2045 | /* ST3 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0c804000) */
|
---|
2046 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlsep_R3_r(Rt, Rn, size, Rm, Q)
|
---|
2047 |
|
---|
2048 |
|
---|
2049 | /* ST1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0c806000) */
|
---|
2050 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsep_R3_r3(Rt, Rn, size, Rm, Q)
|
---|
2051 |
|
---|
2052 |
|
---|
2053 | /* ST1 { <Vt>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0c807000) */
|
---|
2054 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsep_R1_r1(Rt, Rn, size, Rm, Q)
|
---|
2055 |
|
---|
2056 |
|
---|
2057 | /* ST2 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0c808000) */
|
---|
2058 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlsep_R2_r(Rt, Rn, size, Rm, Q)
|
---|
2059 |
|
---|
2060 |
|
---|
2061 | /* ST1 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0c80a000) */
|
---|
2062 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsep_R2_r2(Rt, Rn, size, Rm, Q)
|
---|
2063 |
|
---|
2064 |
|
---|
2065 | /* ST4 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>], <imm> (bffff000/0c9f0000) */
|
---|
2066 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlsep_I4_i(Rt, Rn, size, Q)
|
---|
2067 |
|
---|
2068 |
|
---|
2069 | /* ST1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>], <imm> (bffff000/0c9f2000) */
|
---|
2070 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsep_I4_i4(Rt, Rn, size, Q)
|
---|
2071 |
|
---|
2072 |
|
---|
2073 | /* ST3 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>], <imm> (bffff000/0c9f4000) */
|
---|
2074 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlsep_I3_i(Rt, Rn, size, Q)
|
---|
2075 |
|
---|
2076 |
|
---|
2077 | /* ST1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>], <imm> (bffff000/0c9f6000) */
|
---|
2078 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsep_I3_i3(Rt, Rn, size, Q)
|
---|
2079 |
|
---|
2080 |
|
---|
2081 | /* ST1 { <Vt>.<T> }, [<Xn|SP>], <imm> (bffff000/0c9f7000) */
|
---|
2082 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsep_I1_i1(Rt, Rn, size, Q)
|
---|
2083 |
|
---|
2084 |
|
---|
2085 | /* ST2 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>], <imm> (bffff000/0c9f8000) */
|
---|
2086 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlsep_I2_i(Rt, Rn, size, Q)
|
---|
2087 |
|
---|
2088 |
|
---|
2089 | /* ST1 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>], <imm> (bffff000/0c9fa000) */
|
---|
2090 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsep_I2_i2(Rt, Rn, size, Q)
|
---|
2091 |
|
---|
2092 |
|
---|
2093 | /* LD4 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0cc00000) */
|
---|
2094 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlsep_R4_r(Rt, Rn, size, Rm, Q)
|
---|
2095 |
|
---|
2096 |
|
---|
2097 | /* LD1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0cc02000) */
|
---|
2098 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsep_R4_r4(Rt, Rn, size, Rm, Q)
|
---|
2099 |
|
---|
2100 |
|
---|
2101 | /* LD3 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0cc04000) */
|
---|
2102 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlsep_R3_r(Rt, Rn, size, Rm, Q)
|
---|
2103 |
|
---|
2104 |
|
---|
2105 | /* LD1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0cc06000) */
|
---|
2106 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsep_R3_r3(Rt, Rn, size, Rm, Q)
|
---|
2107 |
|
---|
2108 |
|
---|
2109 | /* LD1 { <Vt>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0cc07000) */
|
---|
2110 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsep_R1_r1(Rt, Rn, size, Rm, Q)
|
---|
2111 |
|
---|
2112 |
|
---|
2113 | /* LD2 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0cc08000) */
|
---|
2114 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlsep_R2_r(Rt, Rn, size, Rm, Q)
|
---|
2115 |
|
---|
2116 |
|
---|
2117 | /* LD1 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0cc0a000) */
|
---|
2118 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsep_R2_r2(Rt, Rn, size, Rm, Q)
|
---|
2119 |
|
---|
2120 |
|
---|
2121 | /* LD4 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>], <imm> (bffff000/0cdf0000) */
|
---|
2122 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlsep_I4_i(Rt, Rn, size, Q)
|
---|
2123 |
|
---|
2124 |
|
---|
2125 | /* LD1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>], <imm> (bffff000/0cdf2000) */
|
---|
2126 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsep_I4_i4(Rt, Rn, size, Q)
|
---|
2127 |
|
---|
2128 |
|
---|
2129 | /* LD3 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>], <imm> (bffff000/0cdf4000) */
|
---|
2130 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlsep_I3_i(Rt, Rn, size, Q)
|
---|
2131 |
|
---|
2132 |
|
---|
2133 | /* LD1 { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>], <imm> (bffff000/0cdf6000) */
|
---|
2134 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsep_I3_i3(Rt, Rn, size, Q)
|
---|
2135 |
|
---|
2136 |
|
---|
2137 | /* LD1 { <Vt>.<T> }, [<Xn|SP>], <imm> (bffff000/0cdf7000) */
|
---|
2138 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsep_I1_i1(Rt, Rn, size, Q)
|
---|
2139 |
|
---|
2140 |
|
---|
2141 | /* LD2 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>], <imm> (bffff000/0cdf8000) */
|
---|
2142 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlsep_I2_i(Rt, Rn, size, Q)
|
---|
2143 |
|
---|
2144 |
|
---|
2145 | /* LD1 { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>], <imm> (bffff000/0cdfa000) */
|
---|
2146 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsep_I2_i2(Rt, Rn, size, Q)
|
---|
2147 |
|
---|
2148 |
|
---|
2149 |
|
---|
2150 | /*
|
---|
2151 | *
|
---|
2152 | * Instruction Set & Groups: asisdlso / ldst / A64
|
---|
2153 | *
|
---|
2154 | */
|
---|
2155 |
|
---|
2156 | /* ST1 { <Vt>.B }[<index>], [<Xn|SP>] (bfffe000/0d000000) */
|
---|
2157 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlso_B1_1b(Rt, Rn, size, S, Q)
|
---|
2158 |
|
---|
2159 |
|
---|
2160 | /* ST3 { <Vt>.B, <Vt2>.B, <Vt3>.B }[<index>], [<Xn|SP>] (bfffe000/0d002000) */
|
---|
2161 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlso_B3_3b(Rt, Rn, size, S, Q)
|
---|
2162 |
|
---|
2163 |
|
---|
2164 | /* ST1 { <Vt>.H }[<index>], [<Xn|SP>] (bfffe400/0d004000) */
|
---|
2165 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlso_H1_1h(Rt, Rn, size, S, Q)
|
---|
2166 |
|
---|
2167 |
|
---|
2168 | /* ST3 { <Vt>.H, <Vt2>.H, <Vt3>.H }[<index>], [<Xn|SP>] (bfffe400/0d006000) */
|
---|
2169 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlso_H3_3h(Rt, Rn, size, S, Q)
|
---|
2170 |
|
---|
2171 |
|
---|
2172 | /* ST1 { <Vt>.S }[<index>], [<Xn|SP>] (bfffec00/0d008000) */
|
---|
2173 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlso_S1_1s(Rt, Rn, S, Q)
|
---|
2174 |
|
---|
2175 |
|
---|
2176 | /* ST1 { <Vt>.D }[<index>], [<Xn|SP>] (bffffc00/0d008400) */
|
---|
2177 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlso_D1_1d(Rt, Rn, Q)
|
---|
2178 |
|
---|
2179 |
|
---|
2180 | /* ST3 { <Vt>.S, <Vt2>.S, <Vt3>.S }[<index>], [<Xn|SP>] (bfffec00/0d00a000) */
|
---|
2181 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlso_S3_3s(Rt, Rn, S, Q)
|
---|
2182 |
|
---|
2183 |
|
---|
2184 | /* ST3 { <Vt>.D, <Vt2>.D, <Vt3>.D }[<index>], [<Xn|SP>] (bffffc00/0d00a400) */
|
---|
2185 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlso_D3_3d(Rt, Rn, Q)
|
---|
2186 |
|
---|
2187 |
|
---|
2188 | /* STL1 { <Vt>.D }[<index>], [<Xn|SP>] (bffffc00/0d018400) */
|
---|
2189 | //#define IEM_INSTR_IMPL_A64__STL1_asisdlso_D1(Rt, Rn, Q)
|
---|
2190 |
|
---|
2191 |
|
---|
2192 | /* ST2 { <Vt>.B, <Vt2>.B }[<index>], [<Xn|SP>] (bfffe000/0d200000) */
|
---|
2193 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlso_B2_2b(Rt, Rn, size, S, Q)
|
---|
2194 |
|
---|
2195 |
|
---|
2196 | /* ST4 { <Vt>.B, <Vt2>.B, <Vt3>.B, <Vt4>.B }[<index>], [<Xn|SP>] (bfffe000/0d202000) */
|
---|
2197 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlso_B4_4b(Rt, Rn, size, S, Q)
|
---|
2198 |
|
---|
2199 |
|
---|
2200 | /* ST2 { <Vt>.H, <Vt2>.H }[<index>], [<Xn|SP>] (bfffe400/0d204000) */
|
---|
2201 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlso_H2_2h(Rt, Rn, size, S, Q)
|
---|
2202 |
|
---|
2203 |
|
---|
2204 | /* ST4 { <Vt>.H, <Vt2>.H, <Vt3>.H, <Vt4>.H }[<index>], [<Xn|SP>] (bfffe400/0d206000) */
|
---|
2205 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlso_H4_4h(Rt, Rn, size, S, Q)
|
---|
2206 |
|
---|
2207 |
|
---|
2208 | /* ST2 { <Vt>.S, <Vt2>.S }[<index>], [<Xn|SP>] (bfffec00/0d208000) */
|
---|
2209 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlso_S2_2s(Rt, Rn, S, Q)
|
---|
2210 |
|
---|
2211 |
|
---|
2212 | /* ST2 { <Vt>.D, <Vt2>.D }[<index>], [<Xn|SP>] (bffffc00/0d208400) */
|
---|
2213 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlso_D2_2d(Rt, Rn, Q)
|
---|
2214 |
|
---|
2215 |
|
---|
2216 | /* ST4 { <Vt>.S, <Vt2>.S, <Vt3>.S, <Vt4>.S }[<index>], [<Xn|SP>] (bfffec00/0d20a000) */
|
---|
2217 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlso_S4_4s(Rt, Rn, S, Q)
|
---|
2218 |
|
---|
2219 |
|
---|
2220 | /* ST4 { <Vt>.D, <Vt2>.D, <Vt3>.D, <Vt4>.D }[<index>], [<Xn|SP>] (bffffc00/0d20a400) */
|
---|
2221 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlso_D4_4d(Rt, Rn, Q)
|
---|
2222 |
|
---|
2223 |
|
---|
2224 | /* LD1 { <Vt>.B }[<index>], [<Xn|SP>] (bfffe000/0d400000) */
|
---|
2225 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlso_B1_1b(Rt, Rn, size, S, Q)
|
---|
2226 |
|
---|
2227 |
|
---|
2228 | /* LD3 { <Vt>.B, <Vt2>.B, <Vt3>.B }[<index>], [<Xn|SP>] (bfffe000/0d402000) */
|
---|
2229 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlso_B3_3b(Rt, Rn, size, S, Q)
|
---|
2230 |
|
---|
2231 |
|
---|
2232 | /* LD1 { <Vt>.H }[<index>], [<Xn|SP>] (bfffe400/0d404000) */
|
---|
2233 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlso_H1_1h(Rt, Rn, size, S, Q)
|
---|
2234 |
|
---|
2235 |
|
---|
2236 | /* LD3 { <Vt>.H, <Vt2>.H, <Vt3>.H }[<index>], [<Xn|SP>] (bfffe400/0d406000) */
|
---|
2237 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlso_H3_3h(Rt, Rn, size, S, Q)
|
---|
2238 |
|
---|
2239 |
|
---|
2240 | /* LD1 { <Vt>.S }[<index>], [<Xn|SP>] (bfffec00/0d408000) */
|
---|
2241 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlso_S1_1s(Rt, Rn, S, Q)
|
---|
2242 |
|
---|
2243 |
|
---|
2244 | /* LD1 { <Vt>.D }[<index>], [<Xn|SP>] (bffffc00/0d408400) */
|
---|
2245 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlso_D1_1d(Rt, Rn, Q)
|
---|
2246 |
|
---|
2247 |
|
---|
2248 | /* LD3 { <Vt>.S, <Vt2>.S, <Vt3>.S }[<index>], [<Xn|SP>] (bfffec00/0d40a000) */
|
---|
2249 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlso_S3_3s(Rt, Rn, S, Q)
|
---|
2250 |
|
---|
2251 |
|
---|
2252 | /* LD3 { <Vt>.D, <Vt2>.D, <Vt3>.D }[<index>], [<Xn|SP>] (bffffc00/0d40a400) */
|
---|
2253 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlso_D3_3d(Rt, Rn, Q)
|
---|
2254 |
|
---|
2255 |
|
---|
2256 | /* LD1R { <Vt>.<T> }, [<Xn|SP>] (bffff000/0d40c000) */
|
---|
2257 | //#define IEM_INSTR_IMPL_A64__LD1R_asisdlso_R1(Rt, Rn, size, Q)
|
---|
2258 |
|
---|
2259 |
|
---|
2260 | /* LD3R { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>] (bffff000/0d40e000) */
|
---|
2261 | //#define IEM_INSTR_IMPL_A64__LD3R_asisdlso_R3(Rt, Rn, size, Q)
|
---|
2262 |
|
---|
2263 |
|
---|
2264 | /* LDAP1 { <Vt>.D }[<index>], [<Xn|SP>] (bffffc00/0d418400) */
|
---|
2265 | //#define IEM_INSTR_IMPL_A64__LDAP1_asisdlso_D1(Rt, Rn, Q)
|
---|
2266 |
|
---|
2267 |
|
---|
2268 | /* LD2 { <Vt>.B, <Vt2>.B }[<index>], [<Xn|SP>] (bfffe000/0d600000) */
|
---|
2269 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlso_B2_2b(Rt, Rn, size, S, Q)
|
---|
2270 |
|
---|
2271 |
|
---|
2272 | /* LD4 { <Vt>.B, <Vt2>.B, <Vt3>.B, <Vt4>.B }[<index>], [<Xn|SP>] (bfffe000/0d602000) */
|
---|
2273 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlso_B4_4b(Rt, Rn, size, S, Q)
|
---|
2274 |
|
---|
2275 |
|
---|
2276 | /* LD2 { <Vt>.H, <Vt2>.H }[<index>], [<Xn|SP>] (bfffe400/0d604000) */
|
---|
2277 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlso_H2_2h(Rt, Rn, size, S, Q)
|
---|
2278 |
|
---|
2279 |
|
---|
2280 | /* LD4 { <Vt>.H, <Vt2>.H, <Vt3>.H, <Vt4>.H }[<index>], [<Xn|SP>] (bfffe400/0d606000) */
|
---|
2281 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlso_H4_4h(Rt, Rn, size, S, Q)
|
---|
2282 |
|
---|
2283 |
|
---|
2284 | /* LD2 { <Vt>.S, <Vt2>.S }[<index>], [<Xn|SP>] (bfffec00/0d608000) */
|
---|
2285 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlso_S2_2s(Rt, Rn, S, Q)
|
---|
2286 |
|
---|
2287 |
|
---|
2288 | /* LD2 { <Vt>.D, <Vt2>.D }[<index>], [<Xn|SP>] (bffffc00/0d608400) */
|
---|
2289 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlso_D2_2d(Rt, Rn, Q)
|
---|
2290 |
|
---|
2291 |
|
---|
2292 | /* LD4 { <Vt>.S, <Vt2>.S, <Vt3>.S, <Vt4>.S }[<index>], [<Xn|SP>] (bfffec00/0d60a000) */
|
---|
2293 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlso_S4_4s(Rt, Rn, S, Q)
|
---|
2294 |
|
---|
2295 |
|
---|
2296 | /* LD4 { <Vt>.D, <Vt2>.D, <Vt3>.D, <Vt4>.D }[<index>], [<Xn|SP>] (bffffc00/0d60a400) */
|
---|
2297 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlso_D4_4d(Rt, Rn, Q)
|
---|
2298 |
|
---|
2299 |
|
---|
2300 | /* LD2R { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>] (bffff000/0d60c000) */
|
---|
2301 | //#define IEM_INSTR_IMPL_A64__LD2R_asisdlso_R2(Rt, Rn, size, Q)
|
---|
2302 |
|
---|
2303 |
|
---|
2304 | /* LD4R { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>] (bffff000/0d60e000) */
|
---|
2305 | //#define IEM_INSTR_IMPL_A64__LD4R_asisdlso_R4(Rt, Rn, size, Q)
|
---|
2306 |
|
---|
2307 |
|
---|
2308 |
|
---|
2309 | /*
|
---|
2310 | *
|
---|
2311 | * Instruction Set & Groups: asisdlsop / ldst / A64
|
---|
2312 | *
|
---|
2313 | */
|
---|
2314 |
|
---|
2315 | /* ST1 { <Vt>.B }[<index>], [<Xn|SP>], <Xm> (bfe0e000/0d800000) */
|
---|
2316 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsop_BX1_r1b(Rt, Rn, size, S, Rm, Q)
|
---|
2317 |
|
---|
2318 |
|
---|
2319 | /* ST3 { <Vt>.B, <Vt2>.B, <Vt3>.B }[<index>], [<Xn|SP>], <Xm> (bfe0e000/0d802000) */
|
---|
2320 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlsop_BX3_r3b(Rt, Rn, size, S, Rm, Q)
|
---|
2321 |
|
---|
2322 |
|
---|
2323 | /* ST1 { <Vt>.H }[<index>], [<Xn|SP>], <Xm> (bfe0e400/0d804000) */
|
---|
2324 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsop_HX1_r1h(Rt, Rn, size, S, Rm, Q)
|
---|
2325 |
|
---|
2326 |
|
---|
2327 | /* ST3 { <Vt>.H, <Vt2>.H, <Vt3>.H }[<index>], [<Xn|SP>], <Xm> (bfe0e400/0d806000) */
|
---|
2328 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlsop_HX3_r3h(Rt, Rn, size, S, Rm, Q)
|
---|
2329 |
|
---|
2330 |
|
---|
2331 | /* ST1 { <Vt>.S }[<index>], [<Xn|SP>], <Xm> (bfe0ec00/0d808000) */
|
---|
2332 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsop_SX1_r1s(Rt, Rn, S, Rm, Q)
|
---|
2333 |
|
---|
2334 |
|
---|
2335 | /* ST1 { <Vt>.D }[<index>], [<Xn|SP>], <Xm> (bfe0fc00/0d808400) */
|
---|
2336 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsop_DX1_r1d(Rt, Rn, Rm, Q)
|
---|
2337 |
|
---|
2338 |
|
---|
2339 | /* ST3 { <Vt>.S, <Vt2>.S, <Vt3>.S }[<index>], [<Xn|SP>], <Xm> (bfe0ec00/0d80a000) */
|
---|
2340 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlsop_SX3_r3s(Rt, Rn, S, Rm, Q)
|
---|
2341 |
|
---|
2342 |
|
---|
2343 | /* ST3 { <Vt>.D, <Vt2>.D, <Vt3>.D }[<index>], [<Xn|SP>], <Xm> (bfe0fc00/0d80a400) */
|
---|
2344 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlsop_DX3_r3d(Rt, Rn, Rm, Q)
|
---|
2345 |
|
---|
2346 |
|
---|
2347 | /* ST1 { <Vt>.B }[<index>], [<Xn|SP>], #1 (bfffe000/0d9f0000) */
|
---|
2348 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsop_B1_i1b(Rt, Rn, size, S, Q)
|
---|
2349 |
|
---|
2350 |
|
---|
2351 | /* ST3 { <Vt>.B, <Vt2>.B, <Vt3>.B }[<index>], [<Xn|SP>], #3 (bfffe000/0d9f2000) */
|
---|
2352 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlsop_B3_i3b(Rt, Rn, size, S, Q)
|
---|
2353 |
|
---|
2354 |
|
---|
2355 | /* ST1 { <Vt>.H }[<index>], [<Xn|SP>], #2 (bfffe400/0d9f4000) */
|
---|
2356 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsop_H1_i1h(Rt, Rn, size, S, Q)
|
---|
2357 |
|
---|
2358 |
|
---|
2359 | /* ST3 { <Vt>.H, <Vt2>.H, <Vt3>.H }[<index>], [<Xn|SP>], #6 (bfffe400/0d9f6000) */
|
---|
2360 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlsop_H3_i3h(Rt, Rn, size, S, Q)
|
---|
2361 |
|
---|
2362 |
|
---|
2363 | /* ST1 { <Vt>.S }[<index>], [<Xn|SP>], #4 (bfffec00/0d9f8000) */
|
---|
2364 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsop_S1_i1s(Rt, Rn, S, Q)
|
---|
2365 |
|
---|
2366 |
|
---|
2367 | /* ST1 { <Vt>.D }[<index>], [<Xn|SP>], #8 (bffffc00/0d9f8400) */
|
---|
2368 | //#define IEM_INSTR_IMPL_A64__ST1_asisdlsop_D1_i1d(Rt, Rn, Q)
|
---|
2369 |
|
---|
2370 |
|
---|
2371 | /* ST3 { <Vt>.S, <Vt2>.S, <Vt3>.S }[<index>], [<Xn|SP>], #12 (bfffec00/0d9fa000) */
|
---|
2372 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlsop_S3_i3s(Rt, Rn, S, Q)
|
---|
2373 |
|
---|
2374 |
|
---|
2375 | /* ST3 { <Vt>.D, <Vt2>.D, <Vt3>.D }[<index>], [<Xn|SP>], #24 (bffffc00/0d9fa400) */
|
---|
2376 | //#define IEM_INSTR_IMPL_A64__ST3_asisdlsop_D3_i3d(Rt, Rn, Q)
|
---|
2377 |
|
---|
2378 |
|
---|
2379 | /* ST2 { <Vt>.B, <Vt2>.B }[<index>], [<Xn|SP>], <Xm> (bfe0e000/0da00000) */
|
---|
2380 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlsop_BX2_r2b(Rt, Rn, size, S, Rm, Q)
|
---|
2381 |
|
---|
2382 |
|
---|
2383 | /* ST4 { <Vt>.B, <Vt2>.B, <Vt3>.B, <Vt4>.B }[<index>], [<Xn|SP>], <Xm> (bfe0e000/0da02000) */
|
---|
2384 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlsop_BX4_r4b(Rt, Rn, size, S, Rm, Q)
|
---|
2385 |
|
---|
2386 |
|
---|
2387 | /* ST2 { <Vt>.H, <Vt2>.H }[<index>], [<Xn|SP>], <Xm> (bfe0e400/0da04000) */
|
---|
2388 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlsop_HX2_r2h(Rt, Rn, size, S, Rm, Q)
|
---|
2389 |
|
---|
2390 |
|
---|
2391 | /* ST4 { <Vt>.H, <Vt2>.H, <Vt3>.H, <Vt4>.H }[<index>], [<Xn|SP>], <Xm> (bfe0e400/0da06000) */
|
---|
2392 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlsop_HX4_r4h(Rt, Rn, size, S, Rm, Q)
|
---|
2393 |
|
---|
2394 |
|
---|
2395 | /* ST2 { <Vt>.S, <Vt2>.S }[<index>], [<Xn|SP>], <Xm> (bfe0ec00/0da08000) */
|
---|
2396 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlsop_SX2_r2s(Rt, Rn, S, Rm, Q)
|
---|
2397 |
|
---|
2398 |
|
---|
2399 | /* ST2 { <Vt>.D, <Vt2>.D }[<index>], [<Xn|SP>], <Xm> (bfe0fc00/0da08400) */
|
---|
2400 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlsop_DX2_r2d(Rt, Rn, Rm, Q)
|
---|
2401 |
|
---|
2402 |
|
---|
2403 | /* ST4 { <Vt>.S, <Vt2>.S, <Vt3>.S, <Vt4>.S }[<index>], [<Xn|SP>], <Xm> (bfe0ec00/0da0a000) */
|
---|
2404 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlsop_SX4_r4s(Rt, Rn, S, Rm, Q)
|
---|
2405 |
|
---|
2406 |
|
---|
2407 | /* ST4 { <Vt>.D, <Vt2>.D, <Vt3>.D, <Vt4>.D }[<index>], [<Xn|SP>], <Xm> (bfe0fc00/0da0a400) */
|
---|
2408 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlsop_DX4_r4d(Rt, Rn, Rm, Q)
|
---|
2409 |
|
---|
2410 |
|
---|
2411 | /* ST2 { <Vt>.B, <Vt2>.B }[<index>], [<Xn|SP>], #2 (bfffe000/0dbf0000) */
|
---|
2412 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlsop_B2_i2b(Rt, Rn, size, S, Q)
|
---|
2413 |
|
---|
2414 |
|
---|
2415 | /* ST4 { <Vt>.B, <Vt2>.B, <Vt3>.B, <Vt4>.B }[<index>], [<Xn|SP>], #4 (bfffe000/0dbf2000) */
|
---|
2416 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlsop_B4_i4b(Rt, Rn, size, S, Q)
|
---|
2417 |
|
---|
2418 |
|
---|
2419 | /* ST2 { <Vt>.H, <Vt2>.H }[<index>], [<Xn|SP>], #4 (bfffe400/0dbf4000) */
|
---|
2420 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlsop_H2_i2h(Rt, Rn, size, S, Q)
|
---|
2421 |
|
---|
2422 |
|
---|
2423 | /* ST4 { <Vt>.H, <Vt2>.H, <Vt3>.H, <Vt4>.H }[<index>], [<Xn|SP>], #8 (bfffe400/0dbf6000) */
|
---|
2424 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlsop_H4_i4h(Rt, Rn, size, S, Q)
|
---|
2425 |
|
---|
2426 |
|
---|
2427 | /* ST2 { <Vt>.S, <Vt2>.S }[<index>], [<Xn|SP>], #8 (bfffec00/0dbf8000) */
|
---|
2428 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlsop_S2_i2s(Rt, Rn, S, Q)
|
---|
2429 |
|
---|
2430 |
|
---|
2431 | /* ST2 { <Vt>.D, <Vt2>.D }[<index>], [<Xn|SP>], #16 (bffffc00/0dbf8400) */
|
---|
2432 | //#define IEM_INSTR_IMPL_A64__ST2_asisdlsop_D2_i2d(Rt, Rn, Q)
|
---|
2433 |
|
---|
2434 |
|
---|
2435 | /* ST4 { <Vt>.S, <Vt2>.S, <Vt3>.S, <Vt4>.S }[<index>], [<Xn|SP>], #16 (bfffec00/0dbfa000) */
|
---|
2436 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlsop_S4_i4s(Rt, Rn, S, Q)
|
---|
2437 |
|
---|
2438 |
|
---|
2439 | /* ST4 { <Vt>.D, <Vt2>.D, <Vt3>.D, <Vt4>.D }[<index>], [<Xn|SP>], #32 (bffffc00/0dbfa400) */
|
---|
2440 | //#define IEM_INSTR_IMPL_A64__ST4_asisdlsop_D4_i4d(Rt, Rn, Q)
|
---|
2441 |
|
---|
2442 |
|
---|
2443 | /* LD1 { <Vt>.B }[<index>], [<Xn|SP>], <Xm> (bfe0e000/0dc00000) */
|
---|
2444 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsop_BX1_r1b(Rt, Rn, size, S, Rm, Q)
|
---|
2445 |
|
---|
2446 |
|
---|
2447 | /* LD3 { <Vt>.B, <Vt2>.B, <Vt3>.B }[<index>], [<Xn|SP>], <Xm> (bfe0e000/0dc02000) */
|
---|
2448 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlsop_BX3_r3b(Rt, Rn, size, S, Rm, Q)
|
---|
2449 |
|
---|
2450 |
|
---|
2451 | /* LD1 { <Vt>.H }[<index>], [<Xn|SP>], <Xm> (bfe0e400/0dc04000) */
|
---|
2452 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsop_HX1_r1h(Rt, Rn, size, S, Rm, Q)
|
---|
2453 |
|
---|
2454 |
|
---|
2455 | /* LD3 { <Vt>.H, <Vt2>.H, <Vt3>.H }[<index>], [<Xn|SP>], <Xm> (bfe0e400/0dc06000) */
|
---|
2456 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlsop_HX3_r3h(Rt, Rn, size, S, Rm, Q)
|
---|
2457 |
|
---|
2458 |
|
---|
2459 | /* LD1 { <Vt>.S }[<index>], [<Xn|SP>], <Xm> (bfe0ec00/0dc08000) */
|
---|
2460 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsop_SX1_r1s(Rt, Rn, S, Rm, Q)
|
---|
2461 |
|
---|
2462 |
|
---|
2463 | /* LD1 { <Vt>.D }[<index>], [<Xn|SP>], <Xm> (bfe0fc00/0dc08400) */
|
---|
2464 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsop_DX1_r1d(Rt, Rn, Rm, Q)
|
---|
2465 |
|
---|
2466 |
|
---|
2467 | /* LD3 { <Vt>.S, <Vt2>.S, <Vt3>.S }[<index>], [<Xn|SP>], <Xm> (bfe0ec00/0dc0a000) */
|
---|
2468 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlsop_SX3_r3s(Rt, Rn, S, Rm, Q)
|
---|
2469 |
|
---|
2470 |
|
---|
2471 | /* LD3 { <Vt>.D, <Vt2>.D, <Vt3>.D }[<index>], [<Xn|SP>], <Xm> (bfe0fc00/0dc0a400) */
|
---|
2472 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlsop_DX3_r3d(Rt, Rn, Rm, Q)
|
---|
2473 |
|
---|
2474 |
|
---|
2475 | /* LD1R { <Vt>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0dc0c000) */
|
---|
2476 | //#define IEM_INSTR_IMPL_A64__LD1R_asisdlsop_RX1_r(Rt, Rn, size, Rm, Q)
|
---|
2477 |
|
---|
2478 |
|
---|
2479 | /* LD3R { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0dc0e000) */
|
---|
2480 | //#define IEM_INSTR_IMPL_A64__LD3R_asisdlsop_RX3_r(Rt, Rn, size, Rm, Q)
|
---|
2481 |
|
---|
2482 |
|
---|
2483 | /* LD1 { <Vt>.B }[<index>], [<Xn|SP>], #1 (bfffe000/0ddf0000) */
|
---|
2484 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsop_B1_i1b(Rt, Rn, size, S, Q)
|
---|
2485 |
|
---|
2486 |
|
---|
2487 | /* LD3 { <Vt>.B, <Vt2>.B, <Vt3>.B }[<index>], [<Xn|SP>], #3 (bfffe000/0ddf2000) */
|
---|
2488 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlsop_B3_i3b(Rt, Rn, size, S, Q)
|
---|
2489 |
|
---|
2490 |
|
---|
2491 | /* LD1 { <Vt>.H }[<index>], [<Xn|SP>], #2 (bfffe400/0ddf4000) */
|
---|
2492 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsop_H1_i1h(Rt, Rn, size, S, Q)
|
---|
2493 |
|
---|
2494 |
|
---|
2495 | /* LD3 { <Vt>.H, <Vt2>.H, <Vt3>.H }[<index>], [<Xn|SP>], #6 (bfffe400/0ddf6000) */
|
---|
2496 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlsop_H3_i3h(Rt, Rn, size, S, Q)
|
---|
2497 |
|
---|
2498 |
|
---|
2499 | /* LD1 { <Vt>.S }[<index>], [<Xn|SP>], #4 (bfffec00/0ddf8000) */
|
---|
2500 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsop_S1_i1s(Rt, Rn, S, Q)
|
---|
2501 |
|
---|
2502 |
|
---|
2503 | /* LD1 { <Vt>.D }[<index>], [<Xn|SP>], #8 (bffffc00/0ddf8400) */
|
---|
2504 | //#define IEM_INSTR_IMPL_A64__LD1_asisdlsop_D1_i1d(Rt, Rn, Q)
|
---|
2505 |
|
---|
2506 |
|
---|
2507 | /* LD3 { <Vt>.S, <Vt2>.S, <Vt3>.S }[<index>], [<Xn|SP>], #12 (bfffec00/0ddfa000) */
|
---|
2508 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlsop_S3_i3s(Rt, Rn, S, Q)
|
---|
2509 |
|
---|
2510 |
|
---|
2511 | /* LD3 { <Vt>.D, <Vt2>.D, <Vt3>.D }[<index>], [<Xn|SP>], #24 (bffffc00/0ddfa400) */
|
---|
2512 | //#define IEM_INSTR_IMPL_A64__LD3_asisdlsop_D3_i3d(Rt, Rn, Q)
|
---|
2513 |
|
---|
2514 |
|
---|
2515 | /* LD1R { <Vt>.<T> }, [<Xn|SP>], <imm> (bffff000/0ddfc000) */
|
---|
2516 | //#define IEM_INSTR_IMPL_A64__LD1R_asisdlsop_R1_i(Rt, Rn, size, Q)
|
---|
2517 |
|
---|
2518 |
|
---|
2519 | /* LD3R { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T> }, [<Xn|SP>], <imm> (bffff000/0ddfe000) */
|
---|
2520 | //#define IEM_INSTR_IMPL_A64__LD3R_asisdlsop_R3_i(Rt, Rn, size, Q)
|
---|
2521 |
|
---|
2522 |
|
---|
2523 | /* LD2 { <Vt>.B, <Vt2>.B }[<index>], [<Xn|SP>], <Xm> (bfe0e000/0de00000) */
|
---|
2524 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlsop_BX2_r2b(Rt, Rn, size, S, Rm, Q)
|
---|
2525 |
|
---|
2526 |
|
---|
2527 | /* LD4 { <Vt>.B, <Vt2>.B, <Vt3>.B, <Vt4>.B }[<index>], [<Xn|SP>], <Xm> (bfe0e000/0de02000) */
|
---|
2528 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlsop_BX4_r4b(Rt, Rn, size, S, Rm, Q)
|
---|
2529 |
|
---|
2530 |
|
---|
2531 | /* LD2 { <Vt>.H, <Vt2>.H }[<index>], [<Xn|SP>], <Xm> (bfe0e400/0de04000) */
|
---|
2532 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlsop_HX2_r2h(Rt, Rn, size, S, Rm, Q)
|
---|
2533 |
|
---|
2534 |
|
---|
2535 | /* LD4 { <Vt>.H, <Vt2>.H, <Vt3>.H, <Vt4>.H }[<index>], [<Xn|SP>], <Xm> (bfe0e400/0de06000) */
|
---|
2536 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlsop_HX4_r4h(Rt, Rn, size, S, Rm, Q)
|
---|
2537 |
|
---|
2538 |
|
---|
2539 | /* LD2 { <Vt>.S, <Vt2>.S }[<index>], [<Xn|SP>], <Xm> (bfe0ec00/0de08000) */
|
---|
2540 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlsop_SX2_r2s(Rt, Rn, S, Rm, Q)
|
---|
2541 |
|
---|
2542 |
|
---|
2543 | /* LD2 { <Vt>.D, <Vt2>.D }[<index>], [<Xn|SP>], <Xm> (bfe0fc00/0de08400) */
|
---|
2544 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlsop_DX2_r2d(Rt, Rn, Rm, Q)
|
---|
2545 |
|
---|
2546 |
|
---|
2547 | /* LD4 { <Vt>.S, <Vt2>.S, <Vt3>.S, <Vt4>.S }[<index>], [<Xn|SP>], <Xm> (bfe0ec00/0de0a000) */
|
---|
2548 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlsop_SX4_r4s(Rt, Rn, S, Rm, Q)
|
---|
2549 |
|
---|
2550 |
|
---|
2551 | /* LD4 { <Vt>.D, <Vt2>.D, <Vt3>.D, <Vt4>.D }[<index>], [<Xn|SP>], <Xm> (bfe0fc00/0de0a400) */
|
---|
2552 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlsop_DX4_r4d(Rt, Rn, Rm, Q)
|
---|
2553 |
|
---|
2554 |
|
---|
2555 | /* LD2R { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0de0c000) */
|
---|
2556 | //#define IEM_INSTR_IMPL_A64__LD2R_asisdlsop_RX2_r(Rt, Rn, size, Rm, Q)
|
---|
2557 |
|
---|
2558 |
|
---|
2559 | /* LD4R { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>], <Xm> (bfe0f000/0de0e000) */
|
---|
2560 | //#define IEM_INSTR_IMPL_A64__LD4R_asisdlsop_RX4_r(Rt, Rn, size, Rm, Q)
|
---|
2561 |
|
---|
2562 |
|
---|
2563 | /* LD2 { <Vt>.B, <Vt2>.B }[<index>], [<Xn|SP>], #2 (bfffe000/0dff0000) */
|
---|
2564 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlsop_B2_i2b(Rt, Rn, size, S, Q)
|
---|
2565 |
|
---|
2566 |
|
---|
2567 | /* LD4 { <Vt>.B, <Vt2>.B, <Vt3>.B, <Vt4>.B }[<index>], [<Xn|SP>], #4 (bfffe000/0dff2000) */
|
---|
2568 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlsop_B4_i4b(Rt, Rn, size, S, Q)
|
---|
2569 |
|
---|
2570 |
|
---|
2571 | /* LD2 { <Vt>.H, <Vt2>.H }[<index>], [<Xn|SP>], #4 (bfffe400/0dff4000) */
|
---|
2572 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlsop_H2_i2h(Rt, Rn, size, S, Q)
|
---|
2573 |
|
---|
2574 |
|
---|
2575 | /* LD4 { <Vt>.H, <Vt2>.H, <Vt3>.H, <Vt4>.H }[<index>], [<Xn|SP>], #8 (bfffe400/0dff6000) */
|
---|
2576 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlsop_H4_i4h(Rt, Rn, size, S, Q)
|
---|
2577 |
|
---|
2578 |
|
---|
2579 | /* LD2 { <Vt>.S, <Vt2>.S }[<index>], [<Xn|SP>], #8 (bfffec00/0dff8000) */
|
---|
2580 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlsop_S2_i2s(Rt, Rn, S, Q)
|
---|
2581 |
|
---|
2582 |
|
---|
2583 | /* LD2 { <Vt>.D, <Vt2>.D }[<index>], [<Xn|SP>], #16 (bffffc00/0dff8400) */
|
---|
2584 | //#define IEM_INSTR_IMPL_A64__LD2_asisdlsop_D2_i2d(Rt, Rn, Q)
|
---|
2585 |
|
---|
2586 |
|
---|
2587 | /* LD4 { <Vt>.S, <Vt2>.S, <Vt3>.S, <Vt4>.S }[<index>], [<Xn|SP>], #16 (bfffec00/0dffa000) */
|
---|
2588 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlsop_S4_i4s(Rt, Rn, S, Q)
|
---|
2589 |
|
---|
2590 |
|
---|
2591 | /* LD4 { <Vt>.D, <Vt2>.D, <Vt3>.D, <Vt4>.D }[<index>], [<Xn|SP>], #32 (bffffc00/0dffa400) */
|
---|
2592 | //#define IEM_INSTR_IMPL_A64__LD4_asisdlsop_D4_i4d(Rt, Rn, Q)
|
---|
2593 |
|
---|
2594 |
|
---|
2595 | /* LD2R { <Vt>.<T>, <Vt2>.<T> }, [<Xn|SP>], <imm> (bffff000/0dffc000) */
|
---|
2596 | //#define IEM_INSTR_IMPL_A64__LD2R_asisdlsop_R2_i(Rt, Rn, size, Q)
|
---|
2597 |
|
---|
2598 |
|
---|
2599 | /* LD4R { <Vt>.<T>, <Vt2>.<T>, <Vt3>.<T>, <Vt4>.<T> }, [<Xn|SP>], <imm> (bffff000/0dffe000) */
|
---|
2600 | //#define IEM_INSTR_IMPL_A64__LD4R_asisdlsop_R4_i(Rt, Rn, size, Q)
|
---|
2601 |
|
---|
2602 |
|
---|
2603 |
|
---|
2604 | /*
|
---|
2605 | *
|
---|
2606 | * Instruction Set & Groups: asisdmisc / simd_dp / A64
|
---|
2607 | *
|
---|
2608 | */
|
---|
2609 |
|
---|
2610 | /* SUQADD <V><d>, <V><n> (ff3ffc00/5e203800) */
|
---|
2611 | //#define IEM_INSTR_IMPL_A64__SUQADD_asisdmisc_R(Rd, Rn, size)
|
---|
2612 |
|
---|
2613 |
|
---|
2614 | /* SQABS <V><d>, <V><n> (ff3ffc00/5e207800) */
|
---|
2615 | //#define IEM_INSTR_IMPL_A64__SQABS_asisdmisc_R(Rd, Rn, size)
|
---|
2616 |
|
---|
2617 |
|
---|
2618 | /* CMGT D<d>, D<n>, #0 (fffffc00/5ee08800) */
|
---|
2619 | //#define IEM_INSTR_IMPL_A64__CMGT_asisdmisc_Z(Rd, Rn, op)
|
---|
2620 |
|
---|
2621 |
|
---|
2622 | /* CMEQ D<d>, D<n>, #0 (fffffc00/5ee09800) */
|
---|
2623 | //#define IEM_INSTR_IMPL_A64__CMEQ_asisdmisc_Z(Rd, Rn, op)
|
---|
2624 |
|
---|
2625 |
|
---|
2626 | /* CMLT D<d>, D<n>, #0 (fffffc00/5ee0a800) */
|
---|
2627 | //#define IEM_INSTR_IMPL_A64__CMLT_asisdmisc_Z(Rd, Rn)
|
---|
2628 |
|
---|
2629 |
|
---|
2630 | /* ABS D<d>, D<n> (fffffc00/5ee0b800) */
|
---|
2631 | //#define IEM_INSTR_IMPL_A64__ABS_asisdmisc_R(Rd, Rn)
|
---|
2632 |
|
---|
2633 |
|
---|
2634 | /* SQXTN <Vb><d>, <Va><n> (ff3ffc00/5e214800) */
|
---|
2635 | //#define IEM_INSTR_IMPL_A64__SQXTN_asisdmisc_N(Rd, Rn, size)
|
---|
2636 |
|
---|
2637 |
|
---|
2638 | /* FCVTNS <V><d>, <V><n> (ffbffc00/5e21a800) */
|
---|
2639 | //#define IEM_INSTR_IMPL_A64__FCVTNS_asisdmisc_R(Rd, Rn, o1, sz, o2)
|
---|
2640 |
|
---|
2641 |
|
---|
2642 | /* FCVTMS <V><d>, <V><n> (ffbffc00/5e21b800) */
|
---|
2643 | //#define IEM_INSTR_IMPL_A64__FCVTMS_asisdmisc_R(Rd, Rn, o1, sz, o2)
|
---|
2644 |
|
---|
2645 |
|
---|
2646 | /* FCVTAS <V><d>, <V><n> (ffbffc00/5e21c800) */
|
---|
2647 | //#define IEM_INSTR_IMPL_A64__FCVTAS_asisdmisc_R(Rd, Rn, sz)
|
---|
2648 |
|
---|
2649 |
|
---|
2650 | /* SCVTF <V><d>, <V><n> (ffbffc00/5e21d800) */
|
---|
2651 | //#define IEM_INSTR_IMPL_A64__SCVTF_asisdmisc_R(Rd, Rn, sz)
|
---|
2652 |
|
---|
2653 |
|
---|
2654 | /* FCMGT <V><d>, <V><n>, #0.0 (ffbffc00/5ea0c800) */
|
---|
2655 | //#define IEM_INSTR_IMPL_A64__FCMGT_asisdmisc_FZ(Rd, Rn, op, sz)
|
---|
2656 |
|
---|
2657 |
|
---|
2658 | /* FCMEQ <V><d>, <V><n>, #0.0 (ffbffc00/5ea0d800) */
|
---|
2659 | //#define IEM_INSTR_IMPL_A64__FCMEQ_asisdmisc_FZ(Rd, Rn, op, sz)
|
---|
2660 |
|
---|
2661 |
|
---|
2662 | /* FCMLT <V><d>, <V><n>, #0.0 (ffbffc00/5ea0e800) */
|
---|
2663 | //#define IEM_INSTR_IMPL_A64__FCMLT_asisdmisc_FZ(Rd, Rn, sz)
|
---|
2664 |
|
---|
2665 |
|
---|
2666 | /* FCVTPS <V><d>, <V><n> (ffbffc00/5ea1a800) */
|
---|
2667 | //#define IEM_INSTR_IMPL_A64__FCVTPS_asisdmisc_R(Rd, Rn, o1, sz, o2)
|
---|
2668 |
|
---|
2669 |
|
---|
2670 | /* FCVTZS <V><d>, <V><n> (ffbffc00/5ea1b800) */
|
---|
2671 | //#define IEM_INSTR_IMPL_A64__FCVTZS_asisdmisc_R(Rd, Rn, o1, sz, o2)
|
---|
2672 |
|
---|
2673 |
|
---|
2674 | /* FRECPE <V><d>, <V><n> (ffbffc00/5ea1d800) */
|
---|
2675 | //#define IEM_INSTR_IMPL_A64__FRECPE_asisdmisc_R(Rd, Rn, sz)
|
---|
2676 |
|
---|
2677 |
|
---|
2678 | /* FRECPX <V><d>, <V><n> (ffbffc00/5ea1f800) */
|
---|
2679 | //#define IEM_INSTR_IMPL_A64__FRECPX_asisdmisc_R(Rd, Rn, sz)
|
---|
2680 |
|
---|
2681 |
|
---|
2682 | /* USQADD <V><d>, <V><n> (ff3ffc00/7e203800) */
|
---|
2683 | //#define IEM_INSTR_IMPL_A64__USQADD_asisdmisc_R(Rd, Rn, size)
|
---|
2684 |
|
---|
2685 |
|
---|
2686 | /* SQNEG <V><d>, <V><n> (ff3ffc00/7e207800) */
|
---|
2687 | //#define IEM_INSTR_IMPL_A64__SQNEG_asisdmisc_R(Rd, Rn, size)
|
---|
2688 |
|
---|
2689 |
|
---|
2690 | /* CMGE D<d>, D<n>, #0 (fffffc00/7ee08800) */
|
---|
2691 | //#define IEM_INSTR_IMPL_A64__CMGE_asisdmisc_Z(Rd, Rn, op)
|
---|
2692 |
|
---|
2693 |
|
---|
2694 | /* CMLE D<d>, D<n>, #0 (fffffc00/7ee09800) */
|
---|
2695 | //#define IEM_INSTR_IMPL_A64__CMLE_asisdmisc_Z(Rd, Rn, op)
|
---|
2696 |
|
---|
2697 |
|
---|
2698 | /* NEG D<d>, D<n> (fffffc00/7ee0b800) */
|
---|
2699 | //#define IEM_INSTR_IMPL_A64__NEG_asisdmisc_R(Rd, Rn)
|
---|
2700 |
|
---|
2701 |
|
---|
2702 | /* SQXTUN <Vb><d>, <Va><n> (ff3ffc00/7e212800) */
|
---|
2703 | //#define IEM_INSTR_IMPL_A64__SQXTUN_asisdmisc_N(Rd, Rn, size)
|
---|
2704 |
|
---|
2705 |
|
---|
2706 | /* UQXTN <Vb><d>, <Va><n> (ff3ffc00/7e214800) */
|
---|
2707 | //#define IEM_INSTR_IMPL_A64__UQXTN_asisdmisc_N(Rd, Rn, size)
|
---|
2708 |
|
---|
2709 |
|
---|
2710 | /* FCVTXN S<d>, D<n> (fffffc00/7e616800) */
|
---|
2711 | //#define IEM_INSTR_IMPL_A64__FCVTXN_asisdmisc_N(Rd, Rn)
|
---|
2712 |
|
---|
2713 |
|
---|
2714 | /* FCVTNU <V><d>, <V><n> (ffbffc00/7e21a800) */
|
---|
2715 | //#define IEM_INSTR_IMPL_A64__FCVTNU_asisdmisc_R(Rd, Rn, o1, sz, o2)
|
---|
2716 |
|
---|
2717 |
|
---|
2718 | /* FCVTMU <V><d>, <V><n> (ffbffc00/7e21b800) */
|
---|
2719 | //#define IEM_INSTR_IMPL_A64__FCVTMU_asisdmisc_R(Rd, Rn, o1, sz, o2)
|
---|
2720 |
|
---|
2721 |
|
---|
2722 | /* FCVTAU <V><d>, <V><n> (ffbffc00/7e21c800) */
|
---|
2723 | //#define IEM_INSTR_IMPL_A64__FCVTAU_asisdmisc_R(Rd, Rn, sz)
|
---|
2724 |
|
---|
2725 |
|
---|
2726 | /* UCVTF <V><d>, <V><n> (ffbffc00/7e21d800) */
|
---|
2727 | //#define IEM_INSTR_IMPL_A64__UCVTF_asisdmisc_R(Rd, Rn, sz)
|
---|
2728 |
|
---|
2729 |
|
---|
2730 | /* FCMGE <V><d>, <V><n>, #0.0 (ffbffc00/7ea0c800) */
|
---|
2731 | //#define IEM_INSTR_IMPL_A64__FCMGE_asisdmisc_FZ(Rd, Rn, op, sz)
|
---|
2732 |
|
---|
2733 |
|
---|
2734 | /* FCMLE <V><d>, <V><n>, #0.0 (ffbffc00/7ea0d800) */
|
---|
2735 | //#define IEM_INSTR_IMPL_A64__FCMLE_asisdmisc_FZ(Rd, Rn, op, sz)
|
---|
2736 |
|
---|
2737 |
|
---|
2738 | /* FCVTPU <V><d>, <V><n> (ffbffc00/7ea1a800) */
|
---|
2739 | //#define IEM_INSTR_IMPL_A64__FCVTPU_asisdmisc_R(Rd, Rn, o1, sz, o2)
|
---|
2740 |
|
---|
2741 |
|
---|
2742 | /* FCVTZU <V><d>, <V><n> (ffbffc00/7ea1b800) */
|
---|
2743 | //#define IEM_INSTR_IMPL_A64__FCVTZU_asisdmisc_R(Rd, Rn, o1, sz, o2)
|
---|
2744 |
|
---|
2745 |
|
---|
2746 | /* FRSQRTE <V><d>, <V><n> (ffbffc00/7ea1d800) */
|
---|
2747 | //#define IEM_INSTR_IMPL_A64__FRSQRTE_asisdmisc_R(Rd, Rn, sz)
|
---|
2748 |
|
---|
2749 |
|
---|
2750 |
|
---|
2751 | /*
|
---|
2752 | *
|
---|
2753 | * Instruction Set & Groups: asisdmiscfp16 / simd_dp / A64
|
---|
2754 | *
|
---|
2755 | */
|
---|
2756 |
|
---|
2757 | /* FCVTNS <Hd>, <Hn> (fffffc00/5e79a800) */
|
---|
2758 | //#define IEM_INSTR_IMPL_A64__FCVTNS_asisdmiscfp16_R(Rd, Rn, o1, o2)
|
---|
2759 |
|
---|
2760 |
|
---|
2761 | /* FCVTMS <Hd>, <Hn> (fffffc00/5e79b800) */
|
---|
2762 | //#define IEM_INSTR_IMPL_A64__FCVTMS_asisdmiscfp16_R(Rd, Rn, o1, o2)
|
---|
2763 |
|
---|
2764 |
|
---|
2765 | /* FCVTAS <Hd>, <Hn> (fffffc00/5e79c800) */
|
---|
2766 | //#define IEM_INSTR_IMPL_A64__FCVTAS_asisdmiscfp16_R(Rd, Rn)
|
---|
2767 |
|
---|
2768 |
|
---|
2769 | /* SCVTF <Hd>, <Hn> (fffffc00/5e79d800) */
|
---|
2770 | //#define IEM_INSTR_IMPL_A64__SCVTF_asisdmiscfp16_R(Rd, Rn)
|
---|
2771 |
|
---|
2772 |
|
---|
2773 | /* FCMGT <Hd>, <Hn>, #0.0 (fffffc00/5ef8c800) */
|
---|
2774 | //#define IEM_INSTR_IMPL_A64__FCMGT_asisdmiscfp16_FZ(Rd, Rn, op)
|
---|
2775 |
|
---|
2776 |
|
---|
2777 | /* FCMEQ <Hd>, <Hn>, #0.0 (fffffc00/5ef8d800) */
|
---|
2778 | //#define IEM_INSTR_IMPL_A64__FCMEQ_asisdmiscfp16_FZ(Rd, Rn, op)
|
---|
2779 |
|
---|
2780 |
|
---|
2781 | /* FCMLT <Hd>, <Hn>, #0.0 (fffffc00/5ef8e800) */
|
---|
2782 | //#define IEM_INSTR_IMPL_A64__FCMLT_asisdmiscfp16_FZ(Rd, Rn)
|
---|
2783 |
|
---|
2784 |
|
---|
2785 | /* FCVTPS <Hd>, <Hn> (fffffc00/5ef9a800) */
|
---|
2786 | //#define IEM_INSTR_IMPL_A64__FCVTPS_asisdmiscfp16_R(Rd, Rn, o1, o2)
|
---|
2787 |
|
---|
2788 |
|
---|
2789 | /* FCVTZS <Hd>, <Hn> (fffffc00/5ef9b800) */
|
---|
2790 | //#define IEM_INSTR_IMPL_A64__FCVTZS_asisdmiscfp16_R(Rd, Rn, o1, o2)
|
---|
2791 |
|
---|
2792 |
|
---|
2793 | /* FRECPE <Hd>, <Hn> (fffffc00/5ef9d800) */
|
---|
2794 | //#define IEM_INSTR_IMPL_A64__FRECPE_asisdmiscfp16_R(Rd, Rn)
|
---|
2795 |
|
---|
2796 |
|
---|
2797 | /* FRECPX <Hd>, <Hn> (fffffc00/5ef9f800) */
|
---|
2798 | //#define IEM_INSTR_IMPL_A64__FRECPX_asisdmiscfp16_R(Rd, Rn)
|
---|
2799 |
|
---|
2800 |
|
---|
2801 | /* FCVTNU <Hd>, <Hn> (fffffc00/7e79a800) */
|
---|
2802 | //#define IEM_INSTR_IMPL_A64__FCVTNU_asisdmiscfp16_R(Rd, Rn, o1, o2)
|
---|
2803 |
|
---|
2804 |
|
---|
2805 | /* FCVTMU <Hd>, <Hn> (fffffc00/7e79b800) */
|
---|
2806 | //#define IEM_INSTR_IMPL_A64__FCVTMU_asisdmiscfp16_R(Rd, Rn, o1, o2)
|
---|
2807 |
|
---|
2808 |
|
---|
2809 | /* FCVTAU <Hd>, <Hn> (fffffc00/7e79c800) */
|
---|
2810 | //#define IEM_INSTR_IMPL_A64__FCVTAU_asisdmiscfp16_R(Rd, Rn)
|
---|
2811 |
|
---|
2812 |
|
---|
2813 | /* UCVTF <Hd>, <Hn> (fffffc00/7e79d800) */
|
---|
2814 | //#define IEM_INSTR_IMPL_A64__UCVTF_asisdmiscfp16_R(Rd, Rn)
|
---|
2815 |
|
---|
2816 |
|
---|
2817 | /* FCMGE <Hd>, <Hn>, #0.0 (fffffc00/7ef8c800) */
|
---|
2818 | //#define IEM_INSTR_IMPL_A64__FCMGE_asisdmiscfp16_FZ(Rd, Rn, op)
|
---|
2819 |
|
---|
2820 |
|
---|
2821 | /* FCMLE <Hd>, <Hn>, #0.0 (fffffc00/7ef8d800) */
|
---|
2822 | //#define IEM_INSTR_IMPL_A64__FCMLE_asisdmiscfp16_FZ(Rd, Rn, op)
|
---|
2823 |
|
---|
2824 |
|
---|
2825 | /* FCVTPU <Hd>, <Hn> (fffffc00/7ef9a800) */
|
---|
2826 | //#define IEM_INSTR_IMPL_A64__FCVTPU_asisdmiscfp16_R(Rd, Rn, o1, o2)
|
---|
2827 |
|
---|
2828 |
|
---|
2829 | /* FCVTZU <Hd>, <Hn> (fffffc00/7ef9b800) */
|
---|
2830 | //#define IEM_INSTR_IMPL_A64__FCVTZU_asisdmiscfp16_R(Rd, Rn, o1, o2)
|
---|
2831 |
|
---|
2832 |
|
---|
2833 | /* FRSQRTE <Hd>, <Hn> (fffffc00/7ef9d800) */
|
---|
2834 | //#define IEM_INSTR_IMPL_A64__FRSQRTE_asisdmiscfp16_R(Rd, Rn)
|
---|
2835 |
|
---|
2836 |
|
---|
2837 |
|
---|
2838 | /*
|
---|
2839 | *
|
---|
2840 | * Instruction Set & Groups: asisdone / simd_dp / A64
|
---|
2841 | *
|
---|
2842 | */
|
---|
2843 |
|
---|
2844 | /* DUP <V><d>, <Vn>.<T>[<index>] (ffe0fc00/5e000400) */
|
---|
2845 | //#define IEM_INSTR_IMPL_A64__DUP_asisdone_only(Rd, Rn, imm5)
|
---|
2846 |
|
---|
2847 |
|
---|
2848 |
|
---|
2849 | /*
|
---|
2850 | *
|
---|
2851 | * Instruction Set & Groups: asisdpair / simd_dp / A64
|
---|
2852 | *
|
---|
2853 | */
|
---|
2854 |
|
---|
2855 | /* ADDP D<d>, <Vn>.2D (fffffc00/5ef1b800) */
|
---|
2856 | //#define IEM_INSTR_IMPL_A64__ADDP_asisdpair_only(Rd, Rn)
|
---|
2857 |
|
---|
2858 |
|
---|
2859 | /* FMAXNMP H<d>, <Vn>.2H (fffffc00/5e30c800) */
|
---|
2860 | //#define IEM_INSTR_IMPL_A64__FMAXNMP_asisdpair_only_H(Rd, Rn, sz, o1)
|
---|
2861 |
|
---|
2862 |
|
---|
2863 | /* FADDP H<d>, <Vn>.2H (fffffc00/5e30d800) */
|
---|
2864 | //#define IEM_INSTR_IMPL_A64__FADDP_asisdpair_only_H(Rd, Rn, sz)
|
---|
2865 |
|
---|
2866 |
|
---|
2867 | /* FMAXP H<d>, <Vn>.2H (fffffc00/5e30f800) */
|
---|
2868 | //#define IEM_INSTR_IMPL_A64__FMAXP_asisdpair_only_H(Rd, Rn, sz, o1)
|
---|
2869 |
|
---|
2870 |
|
---|
2871 | /* FMINNMP H<d>, <Vn>.2H (fffffc00/5eb0c800) */
|
---|
2872 | //#define IEM_INSTR_IMPL_A64__FMINNMP_asisdpair_only_H(Rd, Rn, sz, o1)
|
---|
2873 |
|
---|
2874 |
|
---|
2875 | /* FMINP H<d>, <Vn>.2H (fffffc00/5eb0f800) */
|
---|
2876 | //#define IEM_INSTR_IMPL_A64__FMINP_asisdpair_only_H(Rd, Rn, sz, o1)
|
---|
2877 |
|
---|
2878 |
|
---|
2879 | /* FMAXNMP <V><d>, <Vn>.<T> (ffbffc00/7e30c800) */
|
---|
2880 | //#define IEM_INSTR_IMPL_A64__FMAXNMP_asisdpair_only_SD(Rd, Rn, sz, o1)
|
---|
2881 |
|
---|
2882 |
|
---|
2883 | /* FADDP <V><d>, <Vn>.<T> (ffbffc00/7e30d800) */
|
---|
2884 | //#define IEM_INSTR_IMPL_A64__FADDP_asisdpair_only_SD(Rd, Rn, sz)
|
---|
2885 |
|
---|
2886 |
|
---|
2887 | /* FMAXP <V><d>, <Vn>.<T> (ffbffc00/7e30f800) */
|
---|
2888 | //#define IEM_INSTR_IMPL_A64__FMAXP_asisdpair_only_SD(Rd, Rn, sz, o1)
|
---|
2889 |
|
---|
2890 |
|
---|
2891 | /* FMINNMP <V><d>, <Vn>.<T> (ffbffc00/7eb0c800) */
|
---|
2892 | //#define IEM_INSTR_IMPL_A64__FMINNMP_asisdpair_only_SD(Rd, Rn, sz, o1)
|
---|
2893 |
|
---|
2894 |
|
---|
2895 | /* FMINP <V><d>, <Vn>.<T> (ffbffc00/7eb0f800) */
|
---|
2896 | //#define IEM_INSTR_IMPL_A64__FMINP_asisdpair_only_SD(Rd, Rn, sz, o1)
|
---|
2897 |
|
---|
2898 |
|
---|
2899 |
|
---|
2900 | /*
|
---|
2901 | *
|
---|
2902 | * Instruction Set & Groups: asisdsame / simd_dp / A64
|
---|
2903 | *
|
---|
2904 | */
|
---|
2905 |
|
---|
2906 | /* SQADD <V><d>, <V><n>, <V><m> (ff20fc00/5e200c00) */
|
---|
2907 | //#define IEM_INSTR_IMPL_A64__SQADD_asisdsame_only(Rd, Rn, Rm, size)
|
---|
2908 |
|
---|
2909 |
|
---|
2910 | /* SQSUB <V><d>, <V><n>, <V><m> (ff20fc00/5e202c00) */
|
---|
2911 | //#define IEM_INSTR_IMPL_A64__SQSUB_asisdsame_only(Rd, Rn, Rm, size)
|
---|
2912 |
|
---|
2913 |
|
---|
2914 | /* CMGT D<d>, D<n>, D<m> (ffe0fc00/5ee03400) */
|
---|
2915 | //#define IEM_INSTR_IMPL_A64__CMGT_asisdsame_only(Rd, Rn, eq, Rm)
|
---|
2916 |
|
---|
2917 |
|
---|
2918 | /* CMGE D<d>, D<n>, D<m> (ffe0fc00/5ee03c00) */
|
---|
2919 | //#define IEM_INSTR_IMPL_A64__CMGE_asisdsame_only(Rd, Rn, eq, Rm)
|
---|
2920 |
|
---|
2921 |
|
---|
2922 | /* SSHL D<d>, D<n>, D<m> (ffe0fc00/5ee04400) */
|
---|
2923 | //#define IEM_INSTR_IMPL_A64__SSHL_asisdsame_only(Rd, Rn, S, R, Rm)
|
---|
2924 |
|
---|
2925 |
|
---|
2926 | /* SQSHL <V><d>, <V><n>, <V><m> (ff20fc00/5e204c00) */
|
---|
2927 | //#define IEM_INSTR_IMPL_A64__SQSHL_asisdsame_only(Rd, Rn, S, R, Rm, size)
|
---|
2928 |
|
---|
2929 |
|
---|
2930 | /* SRSHL D<d>, D<n>, D<m> (ffe0fc00/5ee05400) */
|
---|
2931 | //#define IEM_INSTR_IMPL_A64__SRSHL_asisdsame_only(Rd, Rn, S, R, Rm)
|
---|
2932 |
|
---|
2933 |
|
---|
2934 | /* SQRSHL <V><d>, <V><n>, <V><m> (ff20fc00/5e205c00) */
|
---|
2935 | //#define IEM_INSTR_IMPL_A64__SQRSHL_asisdsame_only(Rd, Rn, S, R, Rm, size)
|
---|
2936 |
|
---|
2937 |
|
---|
2938 | /* ADD D<d>, D<n>, D<m> (ffe0fc00/5ee08400) */
|
---|
2939 | //#define IEM_INSTR_IMPL_A64__ADD_asisdsame_only(Rd, Rn, Rm)
|
---|
2940 |
|
---|
2941 |
|
---|
2942 | /* CMTST D<d>, D<n>, D<m> (ffe0fc00/5ee08c00) */
|
---|
2943 | //#define IEM_INSTR_IMPL_A64__CMTST_asisdsame_only(Rd, Rn, Rm)
|
---|
2944 |
|
---|
2945 |
|
---|
2946 | /* SQDMULH <V><d>, <V><n>, <V><m> (ff20fc00/5e20b400) */
|
---|
2947 | //#define IEM_INSTR_IMPL_A64__SQDMULH_asisdsame_only(Rd, Rn, Rm, size)
|
---|
2948 |
|
---|
2949 |
|
---|
2950 | /* FMULX <V><d>, <V><n>, <V><m> (ffa0fc00/5e20dc00) */
|
---|
2951 | //#define IEM_INSTR_IMPL_A64__FMULX_asisdsame_only(Rd, Rn, Rm, sz)
|
---|
2952 |
|
---|
2953 |
|
---|
2954 | /* FCMEQ <V><d>, <V><n>, <V><m> (ffa0fc00/5e20e400) */
|
---|
2955 | //#define IEM_INSTR_IMPL_A64__FCMEQ_asisdsame_only(Rd, Rn, ac, Rm, sz, E)
|
---|
2956 |
|
---|
2957 |
|
---|
2958 | /* FRECPS <V><d>, <V><n>, <V><m> (ffa0fc00/5e20fc00) */
|
---|
2959 | //#define IEM_INSTR_IMPL_A64__FRECPS_asisdsame_only(Rd, Rn, Rm, sz)
|
---|
2960 |
|
---|
2961 |
|
---|
2962 | /* FRSQRTS <V><d>, <V><n>, <V><m> (ffa0fc00/5ea0fc00) */
|
---|
2963 | //#define IEM_INSTR_IMPL_A64__FRSQRTS_asisdsame_only(Rd, Rn, Rm, sz)
|
---|
2964 |
|
---|
2965 |
|
---|
2966 | /* UQADD <V><d>, <V><n>, <V><m> (ff20fc00/7e200c00) */
|
---|
2967 | //#define IEM_INSTR_IMPL_A64__UQADD_asisdsame_only(Rd, Rn, Rm, size)
|
---|
2968 |
|
---|
2969 |
|
---|
2970 | /* UQSUB <V><d>, <V><n>, <V><m> (ff20fc00/7e202c00) */
|
---|
2971 | //#define IEM_INSTR_IMPL_A64__UQSUB_asisdsame_only(Rd, Rn, Rm, size)
|
---|
2972 |
|
---|
2973 |
|
---|
2974 | /* CMHI D<d>, D<n>, D<m> (ffe0fc00/7ee03400) */
|
---|
2975 | //#define IEM_INSTR_IMPL_A64__CMHI_asisdsame_only(Rd, Rn, eq, Rm)
|
---|
2976 |
|
---|
2977 |
|
---|
2978 | /* CMHS D<d>, D<n>, D<m> (ffe0fc00/7ee03c00) */
|
---|
2979 | //#define IEM_INSTR_IMPL_A64__CMHS_asisdsame_only(Rd, Rn, eq, Rm)
|
---|
2980 |
|
---|
2981 |
|
---|
2982 | /* USHL D<d>, D<n>, D<m> (ffe0fc00/7ee04400) */
|
---|
2983 | //#define IEM_INSTR_IMPL_A64__USHL_asisdsame_only(Rd, Rn, S, R, Rm)
|
---|
2984 |
|
---|
2985 |
|
---|
2986 | /* UQSHL <V><d>, <V><n>, <V><m> (ff20fc00/7e204c00) */
|
---|
2987 | //#define IEM_INSTR_IMPL_A64__UQSHL_asisdsame_only(Rd, Rn, S, R, Rm, size)
|
---|
2988 |
|
---|
2989 |
|
---|
2990 | /* URSHL D<d>, D<n>, D<m> (ffe0fc00/7ee05400) */
|
---|
2991 | //#define IEM_INSTR_IMPL_A64__URSHL_asisdsame_only(Rd, Rn, S, R, Rm)
|
---|
2992 |
|
---|
2993 |
|
---|
2994 | /* UQRSHL <V><d>, <V><n>, <V><m> (ff20fc00/7e205c00) */
|
---|
2995 | //#define IEM_INSTR_IMPL_A64__UQRSHL_asisdsame_only(Rd, Rn, S, R, Rm, size)
|
---|
2996 |
|
---|
2997 |
|
---|
2998 | /* SUB D<d>, D<n>, D<m> (ffe0fc00/7ee08400) */
|
---|
2999 | //#define IEM_INSTR_IMPL_A64__SUB_asisdsame_only(Rd, Rn, Rm)
|
---|
3000 |
|
---|
3001 |
|
---|
3002 | /* CMEQ D<d>, D<n>, D<m> (ffe0fc00/7ee08c00) */
|
---|
3003 | //#define IEM_INSTR_IMPL_A64__CMEQ_asisdsame_only(Rd, Rn, Rm)
|
---|
3004 |
|
---|
3005 |
|
---|
3006 | /* SQRDMULH <V><d>, <V><n>, <V><m> (ff20fc00/7e20b400) */
|
---|
3007 | //#define IEM_INSTR_IMPL_A64__SQRDMULH_asisdsame_only(Rd, Rn, Rm, size)
|
---|
3008 |
|
---|
3009 |
|
---|
3010 | /* FCMGE <V><d>, <V><n>, <V><m> (ffa0fc00/7e20e400) */
|
---|
3011 | //#define IEM_INSTR_IMPL_A64__FCMGE_asisdsame_only(Rd, Rn, ac, Rm, sz, E)
|
---|
3012 |
|
---|
3013 |
|
---|
3014 | /* FACGE <V><d>, <V><n>, <V><m> (ffa0fc00/7e20ec00) */
|
---|
3015 | //#define IEM_INSTR_IMPL_A64__FACGE_asisdsame_only(Rd, Rn, ac, Rm, sz, E)
|
---|
3016 |
|
---|
3017 |
|
---|
3018 | /* FABD <V><d>, <V><n>, <V><m> (ffa0fc00/7ea0d400) */
|
---|
3019 | //#define IEM_INSTR_IMPL_A64__FABD_asisdsame_only(Rd, Rn, Rm, sz)
|
---|
3020 |
|
---|
3021 |
|
---|
3022 | /* FCMGT <V><d>, <V><n>, <V><m> (ffa0fc00/7ea0e400) */
|
---|
3023 | //#define IEM_INSTR_IMPL_A64__FCMGT_asisdsame_only(Rd, Rn, ac, Rm, sz, E)
|
---|
3024 |
|
---|
3025 |
|
---|
3026 | /* FACGT <V><d>, <V><n>, <V><m> (ffa0fc00/7ea0ec00) */
|
---|
3027 | //#define IEM_INSTR_IMPL_A64__FACGT_asisdsame_only(Rd, Rn, ac, Rm, sz, E)
|
---|
3028 |
|
---|
3029 |
|
---|
3030 |
|
---|
3031 | /*
|
---|
3032 | *
|
---|
3033 | * Instruction Set & Groups: asisdsame2 / simd_dp / A64
|
---|
3034 | *
|
---|
3035 | */
|
---|
3036 |
|
---|
3037 | /* SQRDMLAH <V><d>, <V><n>, <V><m> (ff20fc00/7e008400) */
|
---|
3038 | //#define IEM_INSTR_IMPL_A64__SQRDMLAH_asisdsame2_only(Rd, Rn, S, Rm, size)
|
---|
3039 |
|
---|
3040 |
|
---|
3041 | /* SQRDMLSH <V><d>, <V><n>, <V><m> (ff20fc00/7e008c00) */
|
---|
3042 | //#define IEM_INSTR_IMPL_A64__SQRDMLSH_asisdsame2_only(Rd, Rn, S, Rm, size)
|
---|
3043 |
|
---|
3044 |
|
---|
3045 |
|
---|
3046 | /*
|
---|
3047 | *
|
---|
3048 | * Instruction Set & Groups: asisdsamefp16 / simd_dp / A64
|
---|
3049 | *
|
---|
3050 | */
|
---|
3051 |
|
---|
3052 | /* FMULX <Hd>, <Hn>, <Hm> (ffe0fc00/5e401c00) */
|
---|
3053 | //#define IEM_INSTR_IMPL_A64__FMULX_asisdsamefp16_only(Rd, Rn, Rm)
|
---|
3054 |
|
---|
3055 |
|
---|
3056 | /* FCMEQ <Hd>, <Hn>, <Hm> (ffe0fc00/5e402400) */
|
---|
3057 | //#define IEM_INSTR_IMPL_A64__FCMEQ_asisdsamefp16_only(Rd, Rn, ac, Rm, E)
|
---|
3058 |
|
---|
3059 |
|
---|
3060 | /* FRECPS <Hd>, <Hn>, <Hm> (ffe0fc00/5e403c00) */
|
---|
3061 | //#define IEM_INSTR_IMPL_A64__FRECPS_asisdsamefp16_only(Rd, Rn, Rm)
|
---|
3062 |
|
---|
3063 |
|
---|
3064 | /* FRSQRTS <Hd>, <Hn>, <Hm> (ffe0fc00/5ec03c00) */
|
---|
3065 | //#define IEM_INSTR_IMPL_A64__FRSQRTS_asisdsamefp16_only(Rd, Rn, Rm)
|
---|
3066 |
|
---|
3067 |
|
---|
3068 | /* FCMGE <Hd>, <Hn>, <Hm> (ffe0fc00/7e402400) */
|
---|
3069 | //#define IEM_INSTR_IMPL_A64__FCMGE_asisdsamefp16_only(Rd, Rn, ac, Rm, E)
|
---|
3070 |
|
---|
3071 |
|
---|
3072 | /* FACGE <Hd>, <Hn>, <Hm> (ffe0fc00/7e402c00) */
|
---|
3073 | //#define IEM_INSTR_IMPL_A64__FACGE_asisdsamefp16_only(Rd, Rn, ac, Rm, E)
|
---|
3074 |
|
---|
3075 |
|
---|
3076 | /* FABD <Hd>, <Hn>, <Hm> (ffe0fc00/7ec01400) */
|
---|
3077 | //#define IEM_INSTR_IMPL_A64__FABD_asisdsamefp16_only(Rd, Rn, Rm)
|
---|
3078 |
|
---|
3079 |
|
---|
3080 | /* FCMGT <Hd>, <Hn>, <Hm> (ffe0fc00/7ec02400) */
|
---|
3081 | //#define IEM_INSTR_IMPL_A64__FCMGT_asisdsamefp16_only(Rd, Rn, ac, Rm, E)
|
---|
3082 |
|
---|
3083 |
|
---|
3084 | /* FACGT <Hd>, <Hn>, <Hm> (ffe0fc00/7ec02c00) */
|
---|
3085 | //#define IEM_INSTR_IMPL_A64__FACGT_asisdsamefp16_only(Rd, Rn, ac, Rm, E)
|
---|
3086 |
|
---|
3087 |
|
---|
3088 |
|
---|
3089 | /*
|
---|
3090 | *
|
---|
3091 | * Instruction Set & Groups: asisdshf / simd_dp / A64
|
---|
3092 | *
|
---|
3093 | */
|
---|
3094 |
|
---|
3095 | /* SSHR D<d>, D<n>, #<shift> (ff80fc00/5f000400) */
|
---|
3096 | //#define IEM_INSTR_IMPL_A64__SSHR_asisdshf_R(Rd, Rn, o0, o1, immb, immh)
|
---|
3097 |
|
---|
3098 |
|
---|
3099 | /* SSRA D<d>, D<n>, #<shift> (ff80fc00/5f001400) */
|
---|
3100 | //#define IEM_INSTR_IMPL_A64__SSRA_asisdshf_R(Rd, Rn, o0, o1, immb, immh)
|
---|
3101 |
|
---|
3102 |
|
---|
3103 | /* SRSHR D<d>, D<n>, #<shift> (ff80fc00/5f002400) */
|
---|
3104 | //#define IEM_INSTR_IMPL_A64__SRSHR_asisdshf_R(Rd, Rn, o0, o1, immb, immh)
|
---|
3105 |
|
---|
3106 |
|
---|
3107 | /* SRSRA D<d>, D<n>, #<shift> (ff80fc00/5f003400) */
|
---|
3108 | //#define IEM_INSTR_IMPL_A64__SRSRA_asisdshf_R(Rd, Rn, o0, o1, immb, immh)
|
---|
3109 |
|
---|
3110 |
|
---|
3111 | /* SHL D<d>, D<n>, #<shift> (ff80fc00/5f005400) */
|
---|
3112 | //#define IEM_INSTR_IMPL_A64__SHL_asisdshf_R(Rd, Rn, immb, immh)
|
---|
3113 |
|
---|
3114 |
|
---|
3115 | /* SQSHL <V><d>, <V><n>, #<shift> (ff80fc00/5f007400) */
|
---|
3116 | //#define IEM_INSTR_IMPL_A64__SQSHL_asisdshf_R(Rd, Rn, op, immb, immh)
|
---|
3117 |
|
---|
3118 |
|
---|
3119 | /* SQSHRN <Vb><d>, <Va><n>, #<shift> (ff80fc00/5f009400) */
|
---|
3120 | //#define IEM_INSTR_IMPL_A64__SQSHRN_asisdshf_N(Rd, Rn, op, immb, immh)
|
---|
3121 |
|
---|
3122 |
|
---|
3123 | /* SQRSHRN <Vb><d>, <Va><n>, #<shift> (ff80fc00/5f009c00) */
|
---|
3124 | //#define IEM_INSTR_IMPL_A64__SQRSHRN_asisdshf_N(Rd, Rn, op, immb, immh)
|
---|
3125 |
|
---|
3126 |
|
---|
3127 | /* SCVTF <V><d>, <V><n>, #<fbits> (ff80fc00/5f00e400) */
|
---|
3128 | //#define IEM_INSTR_IMPL_A64__SCVTF_asisdshf_C(Rd, Rn, immb, immh)
|
---|
3129 |
|
---|
3130 |
|
---|
3131 | /* FCVTZS <V><d>, <V><n>, #<fbits> (ff80fc00/5f00fc00) */
|
---|
3132 | //#define IEM_INSTR_IMPL_A64__FCVTZS_asisdshf_C(Rd, Rn, immb, immh)
|
---|
3133 |
|
---|
3134 |
|
---|
3135 | /* USHR D<d>, D<n>, #<shift> (ff80fc00/7f000400) */
|
---|
3136 | //#define IEM_INSTR_IMPL_A64__USHR_asisdshf_R(Rd, Rn, o0, o1, immb, immh)
|
---|
3137 |
|
---|
3138 |
|
---|
3139 | /* USRA D<d>, D<n>, #<shift> (ff80fc00/7f001400) */
|
---|
3140 | //#define IEM_INSTR_IMPL_A64__USRA_asisdshf_R(Rd, Rn, o0, o1, immb, immh)
|
---|
3141 |
|
---|
3142 |
|
---|
3143 | /* URSHR D<d>, D<n>, #<shift> (ff80fc00/7f002400) */
|
---|
3144 | //#define IEM_INSTR_IMPL_A64__URSHR_asisdshf_R(Rd, Rn, o0, o1, immb, immh)
|
---|
3145 |
|
---|
3146 |
|
---|
3147 | /* URSRA D<d>, D<n>, #<shift> (ff80fc00/7f003400) */
|
---|
3148 | //#define IEM_INSTR_IMPL_A64__URSRA_asisdshf_R(Rd, Rn, o0, o1, immb, immh)
|
---|
3149 |
|
---|
3150 |
|
---|
3151 | /* SRI D<d>, D<n>, #<shift> (ff80fc00/7f004400) */
|
---|
3152 | //#define IEM_INSTR_IMPL_A64__SRI_asisdshf_R(Rd, Rn, immb, immh)
|
---|
3153 |
|
---|
3154 |
|
---|
3155 | /* SLI D<d>, D<n>, #<shift> (ff80fc00/7f005400) */
|
---|
3156 | //#define IEM_INSTR_IMPL_A64__SLI_asisdshf_R(Rd, Rn, immb, immh)
|
---|
3157 |
|
---|
3158 |
|
---|
3159 | /* SQSHLU <V><d>, <V><n>, #<shift> (ff80fc00/7f006400) */
|
---|
3160 | //#define IEM_INSTR_IMPL_A64__SQSHLU_asisdshf_R(Rd, Rn, op, immb, immh)
|
---|
3161 |
|
---|
3162 |
|
---|
3163 | /* UQSHL <V><d>, <V><n>, #<shift> (ff80fc00/7f007400) */
|
---|
3164 | //#define IEM_INSTR_IMPL_A64__UQSHL_asisdshf_R(Rd, Rn, op, immb, immh)
|
---|
3165 |
|
---|
3166 |
|
---|
3167 | /* SQSHRUN <Vb><d>, <Va><n>, #<shift> (ff80fc00/7f008400) */
|
---|
3168 | //#define IEM_INSTR_IMPL_A64__SQSHRUN_asisdshf_N(Rd, Rn, op, immb, immh)
|
---|
3169 |
|
---|
3170 |
|
---|
3171 | /* SQRSHRUN <Vb><d>, <Va><n>, #<shift> (ff80fc00/7f008c00) */
|
---|
3172 | //#define IEM_INSTR_IMPL_A64__SQRSHRUN_asisdshf_N(Rd, Rn, op, immb, immh)
|
---|
3173 |
|
---|
3174 |
|
---|
3175 | /* UQSHRN <Vb><d>, <Va><n>, #<shift> (ff80fc00/7f009400) */
|
---|
3176 | //#define IEM_INSTR_IMPL_A64__UQSHRN_asisdshf_N(Rd, Rn, op, immb, immh)
|
---|
3177 |
|
---|
3178 |
|
---|
3179 | /* UQRSHRN <Vb><d>, <Va><n>, #<shift> (ff80fc00/7f009c00) */
|
---|
3180 | //#define IEM_INSTR_IMPL_A64__UQRSHRN_asisdshf_N(Rd, Rn, op, immb, immh)
|
---|
3181 |
|
---|
3182 |
|
---|
3183 | /* UCVTF <V><d>, <V><n>, #<fbits> (ff80fc00/7f00e400) */
|
---|
3184 | //#define IEM_INSTR_IMPL_A64__UCVTF_asisdshf_C(Rd, Rn, immb, immh)
|
---|
3185 |
|
---|
3186 |
|
---|
3187 | /* FCVTZU <V><d>, <V><n>, #<fbits> (ff80fc00/7f00fc00) */
|
---|
3188 | //#define IEM_INSTR_IMPL_A64__FCVTZU_asisdshf_C(Rd, Rn, immb, immh)
|
---|
3189 |
|
---|
3190 |
|
---|
3191 |
|
---|
3192 | /*
|
---|
3193 | *
|
---|
3194 | * Instruction Set & Groups: barriers / control / A64
|
---|
3195 | *
|
---|
3196 | */
|
---|
3197 |
|
---|
3198 | /* CLREX{ #<imm>} (fffff0ff/d503305f) */
|
---|
3199 | //#define IEM_INSTR_IMPL_A64__CLREX_BN_barriers(CRm)
|
---|
3200 |
|
---|
3201 |
|
---|
3202 | /* DSB {<option> | #<imm>} (fffff0ff/d503309f) */
|
---|
3203 | //#define IEM_INSTR_IMPL_A64__DSB_BO_barriers(opc, CRm)
|
---|
3204 |
|
---|
3205 |
|
---|
3206 | /* DMB {<option> | #<imm>} (fffff0ff/d50330bf) */
|
---|
3207 | //#define IEM_INSTR_IMPL_A64__DMB_BO_barriers(opc, CRm)
|
---|
3208 |
|
---|
3209 |
|
---|
3210 | /* ISB{ <option> | #<imm>} (fffff0ff/d50330df) */
|
---|
3211 | //#define IEM_INSTR_IMPL_A64__ISB_BI_barriers(opc, CRm)
|
---|
3212 |
|
---|
3213 |
|
---|
3214 | /* SB (ffffffff/d50330ff) */
|
---|
3215 | //#define IEM_INSTR_IMPL_A64__SB_only_barriers(opc)
|
---|
3216 |
|
---|
3217 |
|
---|
3218 | /* DSB <option>nXS (fffff3ff/d503323f) */
|
---|
3219 | //#define IEM_INSTR_IMPL_A64__DSB_BOn_barriers(imm2)
|
---|
3220 |
|
---|
3221 |
|
---|
3222 | /* TCOMMIT (ffffffff/d503307f) */
|
---|
3223 | //#define IEM_INSTR_IMPL_A64__TCOMMIT_only_barriers()
|
---|
3224 |
|
---|
3225 |
|
---|
3226 |
|
---|
3227 | /*
|
---|
3228 | *
|
---|
3229 | * Instruction Set & Groups: bitfield / dpimm / A64
|
---|
3230 | *
|
---|
3231 | */
|
---|
3232 |
|
---|
3233 | /* SBFM <Wd>, <Wn>, #<immr>, #<imms> (ffc00000/13000000) */
|
---|
3234 | //#define IEM_INSTR_IMPL_A64__SBFM_32M_bitfield(Rd, Rn, imms, immr)
|
---|
3235 |
|
---|
3236 |
|
---|
3237 | /* BFM <Wd>, <Wn>, #<immr>, #<imms> (ffc00000/33000000) */
|
---|
3238 | //#define IEM_INSTR_IMPL_A64__BFM_32M_bitfield(Rd, Rn, imms, immr)
|
---|
3239 |
|
---|
3240 |
|
---|
3241 | /* UBFM <Wd>, <Wn>, #<immr>, #<imms> (ffc00000/53000000) */
|
---|
3242 | //#define IEM_INSTR_IMPL_A64__UBFM_32M_bitfield(Rd, Rn, imms, immr)
|
---|
3243 |
|
---|
3244 |
|
---|
3245 | /* SBFM <Xd>, <Xn>, #<immr>, #<imms> (ffc00000/93400000) */
|
---|
3246 | //#define IEM_INSTR_IMPL_A64__SBFM_64M_bitfield(Rd, Rn, imms, immr)
|
---|
3247 |
|
---|
3248 |
|
---|
3249 | /* BFM <Xd>, <Xn>, #<immr>, #<imms> (ffc00000/b3400000) */
|
---|
3250 | //#define IEM_INSTR_IMPL_A64__BFM_64M_bitfield(Rd, Rn, imms, immr)
|
---|
3251 |
|
---|
3252 |
|
---|
3253 | /* UBFM <Xd>, <Xn>, #<immr>, #<imms> (ffc00000/d3400000) */
|
---|
3254 | //#define IEM_INSTR_IMPL_A64__UBFM_64M_bitfield(Rd, Rn, imms, immr)
|
---|
3255 |
|
---|
3256 |
|
---|
3257 |
|
---|
3258 | /*
|
---|
3259 | *
|
---|
3260 | * Instruction Set & Groups: branch_imm / control / A64
|
---|
3261 | *
|
---|
3262 | */
|
---|
3263 |
|
---|
3264 | /* B <label> (fc000000/14000000) */
|
---|
3265 | //#define IEM_INSTR_IMPL_A64__B_only_branch_imm(imm26)
|
---|
3266 |
|
---|
3267 |
|
---|
3268 | /* BL <label> (fc000000/94000000) */
|
---|
3269 | //#define IEM_INSTR_IMPL_A64__BL_only_branch_imm(imm26)
|
---|
3270 |
|
---|
3271 |
|
---|
3272 |
|
---|
3273 | /*
|
---|
3274 | *
|
---|
3275 | * Instruction Set & Groups: branch_reg / control / A64
|
---|
3276 | *
|
---|
3277 | */
|
---|
3278 |
|
---|
3279 | /* BR <Xn> (fffffc1f/d61f0000) */
|
---|
3280 | //#define IEM_INSTR_IMPL_A64__BR_64_branch_reg(Rm, Rn, M, A, op, Z)
|
---|
3281 |
|
---|
3282 |
|
---|
3283 | /* BRAAZ <Xn> (fffffc1f/d61f081f) */
|
---|
3284 | //#define IEM_INSTR_IMPL_A64__BRAAZ_64_branch_reg(Rm, Rn, M, A, op, Z)
|
---|
3285 |
|
---|
3286 |
|
---|
3287 | /* BRABZ <Xn> (fffffc1f/d61f0c1f) */
|
---|
3288 | //#define IEM_INSTR_IMPL_A64__BRABZ_64_branch_reg(Rm, Rn, M, A, op, Z)
|
---|
3289 |
|
---|
3290 |
|
---|
3291 | /* BLR <Xn> (fffffc1f/d63f0000) */
|
---|
3292 | //#define IEM_INSTR_IMPL_A64__BLR_64_branch_reg(Rm, Rn, M, A, op, Z)
|
---|
3293 |
|
---|
3294 |
|
---|
3295 | /* BLRAAZ <Xn> (fffffc1f/d63f081f) */
|
---|
3296 | //#define IEM_INSTR_IMPL_A64__BLRAAZ_64_branch_reg(Rm, Rn, M, A, op, Z)
|
---|
3297 |
|
---|
3298 |
|
---|
3299 | /* BLRABZ <Xn> (fffffc1f/d63f0c1f) */
|
---|
3300 | //#define IEM_INSTR_IMPL_A64__BLRABZ_64_branch_reg(Rm, Rn, M, A, op, Z)
|
---|
3301 |
|
---|
3302 |
|
---|
3303 | /* RET{ <Xn>} (fffffc1f/d65f0000) */
|
---|
3304 | //#define IEM_INSTR_IMPL_A64__RET_64R_branch_reg(Rm, Rn, M, A, op, Z)
|
---|
3305 |
|
---|
3306 |
|
---|
3307 | /* RETAASPPCR <Xm> (ffffffe0/d65f0be0) */
|
---|
3308 | //#define IEM_INSTR_IMPL_A64__RETAASPPCR_64M_branch_reg(Rm, M)
|
---|
3309 |
|
---|
3310 |
|
---|
3311 | /* RETAA (ffffffff/d65f0bff) */
|
---|
3312 | //#define IEM_INSTR_IMPL_A64__RETAA_64E_branch_reg(Rm, M, A, op, Z)
|
---|
3313 |
|
---|
3314 |
|
---|
3315 | /* RETABSPPCR <Xm> (ffffffe0/d65f0fe0) */
|
---|
3316 | //#define IEM_INSTR_IMPL_A64__RETABSPPCR_64M_branch_reg(Rm, M)
|
---|
3317 |
|
---|
3318 |
|
---|
3319 | /* RETAB (ffffffff/d65f0fff) */
|
---|
3320 | //#define IEM_INSTR_IMPL_A64__RETAB_64E_branch_reg(Rm, M, A, op, Z)
|
---|
3321 |
|
---|
3322 |
|
---|
3323 | /* ERET (ffffffff/d69f03e0) */
|
---|
3324 | //#define IEM_INSTR_IMPL_A64__ERET_64E_branch_reg(M, A)
|
---|
3325 |
|
---|
3326 |
|
---|
3327 | /* ERETAA (ffffffff/d69f0bff) */
|
---|
3328 | //#define IEM_INSTR_IMPL_A64__ERETAA_64E_branch_reg(M, A)
|
---|
3329 |
|
---|
3330 |
|
---|
3331 | /* ERETAB (ffffffff/d69f0fff) */
|
---|
3332 | //#define IEM_INSTR_IMPL_A64__ERETAB_64E_branch_reg(M, A)
|
---|
3333 |
|
---|
3334 |
|
---|
3335 | /* DRPS (ffffffff/d6bf03e0) */
|
---|
3336 | //#define IEM_INSTR_IMPL_A64__DRPS_64E_branch_reg()
|
---|
3337 |
|
---|
3338 |
|
---|
3339 | /* BRAA <Xn>, <Xm|SP> (fffffc00/d71f0800) */
|
---|
3340 | //#define IEM_INSTR_IMPL_A64__BRAA_64P_branch_reg(Rm, Rn, M, A, op, Z)
|
---|
3341 |
|
---|
3342 |
|
---|
3343 | /* BRAB <Xn>, <Xm|SP> (fffffc00/d71f0c00) */
|
---|
3344 | //#define IEM_INSTR_IMPL_A64__BRAB_64P_branch_reg(Rm, Rn, M, A, op, Z)
|
---|
3345 |
|
---|
3346 |
|
---|
3347 | /* BLRAA <Xn>, <Xm|SP> (fffffc00/d73f0800) */
|
---|
3348 | //#define IEM_INSTR_IMPL_A64__BLRAA_64P_branch_reg(Rm, Rn, M, A, op, Z)
|
---|
3349 |
|
---|
3350 |
|
---|
3351 | /* BLRAB <Xn>, <Xm|SP> (fffffc00/d73f0c00) */
|
---|
3352 | //#define IEM_INSTR_IMPL_A64__BLRAB_64P_branch_reg(Rm, Rn, M, A, op, Z)
|
---|
3353 |
|
---|
3354 |
|
---|
3355 |
|
---|
3356 | /*
|
---|
3357 | *
|
---|
3358 | * Instruction Set & Groups: compbranch / control / A64
|
---|
3359 | *
|
---|
3360 | */
|
---|
3361 |
|
---|
3362 | /* CBZ <Wt>, <label> (ff000000/34000000) */
|
---|
3363 | //#define IEM_INSTR_IMPL_A64__CBZ_32_compbranch(Rt, imm19)
|
---|
3364 |
|
---|
3365 |
|
---|
3366 | /* CBNZ <Wt>, <label> (ff000000/35000000) */
|
---|
3367 | //#define IEM_INSTR_IMPL_A64__CBNZ_32_compbranch(Rt, imm19)
|
---|
3368 |
|
---|
3369 |
|
---|
3370 | /* CBZ <Xt>, <label> (ff000000/b4000000) */
|
---|
3371 | //#define IEM_INSTR_IMPL_A64__CBZ_64_compbranch(Rt, imm19)
|
---|
3372 |
|
---|
3373 |
|
---|
3374 | /* CBNZ <Xt>, <label> (ff000000/b5000000) */
|
---|
3375 | //#define IEM_INSTR_IMPL_A64__CBNZ_64_compbranch(Rt, imm19)
|
---|
3376 |
|
---|
3377 |
|
---|
3378 |
|
---|
3379 | /*
|
---|
3380 | *
|
---|
3381 | * Instruction Set & Groups: compbranch_imm / control / A64
|
---|
3382 | *
|
---|
3383 | */
|
---|
3384 |
|
---|
3385 | /* CBGT <Wt>, #<imm>, <label> (ffe04000/75000000) */
|
---|
3386 | //#define IEM_INSTR_IMPL_A64__CBGT_32_imm(Rt, imm9, imm6)
|
---|
3387 |
|
---|
3388 |
|
---|
3389 | /* CBLT <Wt>, #<imm>, <label> (ffe04000/75200000) */
|
---|
3390 | //#define IEM_INSTR_IMPL_A64__CBLT_32_imm(Rt, imm9, imm6)
|
---|
3391 |
|
---|
3392 |
|
---|
3393 | /* CBHI <Wt>, #<imm>, <label> (ffe04000/75400000) */
|
---|
3394 | //#define IEM_INSTR_IMPL_A64__CBHI_32_imm(Rt, imm9, imm6)
|
---|
3395 |
|
---|
3396 |
|
---|
3397 | /* CBLO <Wt>, #<imm>, <label> (ffe04000/75600000) */
|
---|
3398 | //#define IEM_INSTR_IMPL_A64__CBLO_32_imm(Rt, imm9, imm6)
|
---|
3399 |
|
---|
3400 |
|
---|
3401 | /* CBEQ <Wt>, #<imm>, <label> (ffe04000/75c00000) */
|
---|
3402 | //#define IEM_INSTR_IMPL_A64__CBEQ_32_imm(Rt, imm9, imm6)
|
---|
3403 |
|
---|
3404 |
|
---|
3405 | /* CBNE <Wt>, #<imm>, <label> (ffe04000/75e00000) */
|
---|
3406 | //#define IEM_INSTR_IMPL_A64__CBNE_32_imm(Rt, imm9, imm6)
|
---|
3407 |
|
---|
3408 |
|
---|
3409 | /* CBGT <Xt>, #<imm>, <label> (ffe04000/f5000000) */
|
---|
3410 | //#define IEM_INSTR_IMPL_A64__CBGT_64_imm(Rt, imm9, imm6)
|
---|
3411 |
|
---|
3412 |
|
---|
3413 | /* CBLT <Xt>, #<imm>, <label> (ffe04000/f5200000) */
|
---|
3414 | //#define IEM_INSTR_IMPL_A64__CBLT_64_imm(Rt, imm9, imm6)
|
---|
3415 |
|
---|
3416 |
|
---|
3417 | /* CBHI <Xt>, #<imm>, <label> (ffe04000/f5400000) */
|
---|
3418 | //#define IEM_INSTR_IMPL_A64__CBHI_64_imm(Rt, imm9, imm6)
|
---|
3419 |
|
---|
3420 |
|
---|
3421 | /* CBLO <Xt>, #<imm>, <label> (ffe04000/f5600000) */
|
---|
3422 | //#define IEM_INSTR_IMPL_A64__CBLO_64_imm(Rt, imm9, imm6)
|
---|
3423 |
|
---|
3424 |
|
---|
3425 | /* CBEQ <Xt>, #<imm>, <label> (ffe04000/f5c00000) */
|
---|
3426 | //#define IEM_INSTR_IMPL_A64__CBEQ_64_imm(Rt, imm9, imm6)
|
---|
3427 |
|
---|
3428 |
|
---|
3429 | /* CBNE <Xt>, #<imm>, <label> (ffe04000/f5e00000) */
|
---|
3430 | //#define IEM_INSTR_IMPL_A64__CBNE_64_imm(Rt, imm9, imm6)
|
---|
3431 |
|
---|
3432 |
|
---|
3433 |
|
---|
3434 | /*
|
---|
3435 | *
|
---|
3436 | * Instruction Set & Groups: compbranch_regs / control / A64
|
---|
3437 | *
|
---|
3438 | */
|
---|
3439 |
|
---|
3440 | /* CBGT <Wt>, <Wm>, <label> (ffe0c000/74000000) */
|
---|
3441 | //#define IEM_INSTR_IMPL_A64__CBGT_32_regs(Rt, imm9, Rm)
|
---|
3442 |
|
---|
3443 |
|
---|
3444 | /* CBGE <Wt>, <Wm>, <label> (ffe0c000/74200000) */
|
---|
3445 | //#define IEM_INSTR_IMPL_A64__CBGE_32_regs(Rt, imm9, Rm)
|
---|
3446 |
|
---|
3447 |
|
---|
3448 | /* CBHI <Wt>, <Wm>, <label> (ffe0c000/74400000) */
|
---|
3449 | //#define IEM_INSTR_IMPL_A64__CBHI_32_regs(Rt, imm9, Rm)
|
---|
3450 |
|
---|
3451 |
|
---|
3452 | /* CBHS <Wt>, <Wm>, <label> (ffe0c000/74600000) */
|
---|
3453 | //#define IEM_INSTR_IMPL_A64__CBHS_32_regs(Rt, imm9, Rm)
|
---|
3454 |
|
---|
3455 |
|
---|
3456 | /* CBEQ <Wt>, <Wm>, <label> (ffe0c000/74c00000) */
|
---|
3457 | //#define IEM_INSTR_IMPL_A64__CBEQ_32_regs(Rt, imm9, Rm)
|
---|
3458 |
|
---|
3459 |
|
---|
3460 | /* CBNE <Wt>, <Wm>, <label> (ffe0c000/74e00000) */
|
---|
3461 | //#define IEM_INSTR_IMPL_A64__CBNE_32_regs(Rt, imm9, Rm)
|
---|
3462 |
|
---|
3463 |
|
---|
3464 | /* CBGT <Xt>, <Xm>, <label> (ffe0c000/f4000000) */
|
---|
3465 | //#define IEM_INSTR_IMPL_A64__CBGT_64_regs(Rt, imm9, Rm)
|
---|
3466 |
|
---|
3467 |
|
---|
3468 | /* CBGE <Xt>, <Xm>, <label> (ffe0c000/f4200000) */
|
---|
3469 | //#define IEM_INSTR_IMPL_A64__CBGE_64_regs(Rt, imm9, Rm)
|
---|
3470 |
|
---|
3471 |
|
---|
3472 | /* CBHI <Xt>, <Xm>, <label> (ffe0c000/f4400000) */
|
---|
3473 | //#define IEM_INSTR_IMPL_A64__CBHI_64_regs(Rt, imm9, Rm)
|
---|
3474 |
|
---|
3475 |
|
---|
3476 | /* CBHS <Xt>, <Xm>, <label> (ffe0c000/f4600000) */
|
---|
3477 | //#define IEM_INSTR_IMPL_A64__CBHS_64_regs(Rt, imm9, Rm)
|
---|
3478 |
|
---|
3479 |
|
---|
3480 | /* CBEQ <Xt>, <Xm>, <label> (ffe0c000/f4c00000) */
|
---|
3481 | //#define IEM_INSTR_IMPL_A64__CBEQ_64_regs(Rt, imm9, Rm)
|
---|
3482 |
|
---|
3483 |
|
---|
3484 | /* CBNE <Xt>, <Xm>, <label> (ffe0c000/f4e00000) */
|
---|
3485 | //#define IEM_INSTR_IMPL_A64__CBNE_64_regs(Rt, imm9, Rm)
|
---|
3486 |
|
---|
3487 |
|
---|
3488 |
|
---|
3489 | /*
|
---|
3490 | *
|
---|
3491 | * Instruction Set & Groups: compbranch_regs2 / control / A64
|
---|
3492 | *
|
---|
3493 | */
|
---|
3494 |
|
---|
3495 | /* CBBGT <Wt>, <Wm>, <label> (ffe0c000/74008000) */
|
---|
3496 | //#define IEM_INSTR_IMPL_A64__CBBGT_8_regs(Rt, imm9, Rm)
|
---|
3497 |
|
---|
3498 |
|
---|
3499 | /* CBBGE <Wt>, <Wm>, <label> (ffe0c000/74208000) */
|
---|
3500 | //#define IEM_INSTR_IMPL_A64__CBBGE_8_regs(Rt, imm9, Rm)
|
---|
3501 |
|
---|
3502 |
|
---|
3503 | /* CBBHI <Wt>, <Wm>, <label> (ffe0c000/74408000) */
|
---|
3504 | //#define IEM_INSTR_IMPL_A64__CBBHI_8_regs(Rt, imm9, Rm)
|
---|
3505 |
|
---|
3506 |
|
---|
3507 | /* CBBHS <Wt>, <Wm>, <label> (ffe0c000/74608000) */
|
---|
3508 | //#define IEM_INSTR_IMPL_A64__CBBHS_8_regs(Rt, imm9, Rm)
|
---|
3509 |
|
---|
3510 |
|
---|
3511 | /* CBBEQ <Wt>, <Wm>, <label> (ffe0c000/74c08000) */
|
---|
3512 | //#define IEM_INSTR_IMPL_A64__CBBEQ_8_regs(Rt, imm9, Rm)
|
---|
3513 |
|
---|
3514 |
|
---|
3515 | /* CBBNE <Wt>, <Wm>, <label> (ffe0c000/74e08000) */
|
---|
3516 | //#define IEM_INSTR_IMPL_A64__CBBNE_8_regs(Rt, imm9, Rm)
|
---|
3517 |
|
---|
3518 |
|
---|
3519 | /* CBHGT <Wt>, <Wm>, <label> (ffe0c000/7400c000) */
|
---|
3520 | //#define IEM_INSTR_IMPL_A64__CBHGT_16_regs(Rt, imm9, Rm)
|
---|
3521 |
|
---|
3522 |
|
---|
3523 | /* CBHGE <Wt>, <Wm>, <label> (ffe0c000/7420c000) */
|
---|
3524 | //#define IEM_INSTR_IMPL_A64__CBHGE_16_regs(Rt, imm9, Rm)
|
---|
3525 |
|
---|
3526 |
|
---|
3527 | /* CBHHI <Wt>, <Wm>, <label> (ffe0c000/7440c000) */
|
---|
3528 | //#define IEM_INSTR_IMPL_A64__CBHHI_16_regs(Rt, imm9, Rm)
|
---|
3529 |
|
---|
3530 |
|
---|
3531 | /* CBHHS <Wt>, <Wm>, <label> (ffe0c000/7460c000) */
|
---|
3532 | //#define IEM_INSTR_IMPL_A64__CBHHS_16_regs(Rt, imm9, Rm)
|
---|
3533 |
|
---|
3534 |
|
---|
3535 | /* CBHEQ <Wt>, <Wm>, <label> (ffe0c000/74c0c000) */
|
---|
3536 | //#define IEM_INSTR_IMPL_A64__CBHEQ_16_regs(Rt, imm9, Rm)
|
---|
3537 |
|
---|
3538 |
|
---|
3539 | /* CBHNE <Wt>, <Wm>, <label> (ffe0c000/74e0c000) */
|
---|
3540 | //#define IEM_INSTR_IMPL_A64__CBHNE_16_regs(Rt, imm9, Rm)
|
---|
3541 |
|
---|
3542 |
|
---|
3543 |
|
---|
3544 | /*
|
---|
3545 | *
|
---|
3546 | * Instruction Set & Groups: comswap / ldst / A64
|
---|
3547 | *
|
---|
3548 | */
|
---|
3549 |
|
---|
3550 | /* CASB <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/08a07c00) */
|
---|
3551 | //#define IEM_INSTR_IMPL_A64__CASB_C32_comswap(Rt, Rn, Rs)
|
---|
3552 |
|
---|
3553 |
|
---|
3554 | /* CASLB <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/08a0fc00) */
|
---|
3555 | //#define IEM_INSTR_IMPL_A64__CASLB_C32_comswap(Rt, Rn, Rs)
|
---|
3556 |
|
---|
3557 |
|
---|
3558 | /* CASAB <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/08e07c00) */
|
---|
3559 | //#define IEM_INSTR_IMPL_A64__CASAB_C32_comswap(Rt, Rn, Rs)
|
---|
3560 |
|
---|
3561 |
|
---|
3562 | /* CASALB <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/08e0fc00) */
|
---|
3563 | //#define IEM_INSTR_IMPL_A64__CASALB_C32_comswap(Rt, Rn, Rs)
|
---|
3564 |
|
---|
3565 |
|
---|
3566 | /* CASH <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/48a07c00) */
|
---|
3567 | //#define IEM_INSTR_IMPL_A64__CASH_C32_comswap(Rt, Rn, Rs)
|
---|
3568 |
|
---|
3569 |
|
---|
3570 | /* CASLH <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/48a0fc00) */
|
---|
3571 | //#define IEM_INSTR_IMPL_A64__CASLH_C32_comswap(Rt, Rn, Rs)
|
---|
3572 |
|
---|
3573 |
|
---|
3574 | /* CASAH <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/48e07c00) */
|
---|
3575 | //#define IEM_INSTR_IMPL_A64__CASAH_C32_comswap(Rt, Rn, Rs)
|
---|
3576 |
|
---|
3577 |
|
---|
3578 | /* CASALH <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/48e0fc00) */
|
---|
3579 | //#define IEM_INSTR_IMPL_A64__CASALH_C32_comswap(Rt, Rn, Rs)
|
---|
3580 |
|
---|
3581 |
|
---|
3582 | /* CAS <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/88a07c00) */
|
---|
3583 | //#define IEM_INSTR_IMPL_A64__CAS_C32_comswap(Rt, Rn, Rs)
|
---|
3584 |
|
---|
3585 |
|
---|
3586 | /* CASL <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/88a0fc00) */
|
---|
3587 | //#define IEM_INSTR_IMPL_A64__CASL_C32_comswap(Rt, Rn, Rs)
|
---|
3588 |
|
---|
3589 |
|
---|
3590 | /* CASA <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/88e07c00) */
|
---|
3591 | //#define IEM_INSTR_IMPL_A64__CASA_C32_comswap(Rt, Rn, Rs)
|
---|
3592 |
|
---|
3593 |
|
---|
3594 | /* CASAL <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/88e0fc00) */
|
---|
3595 | //#define IEM_INSTR_IMPL_A64__CASAL_C32_comswap(Rt, Rn, Rs)
|
---|
3596 |
|
---|
3597 |
|
---|
3598 | /* CAS <Xs>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c8a07c00) */
|
---|
3599 | //#define IEM_INSTR_IMPL_A64__CAS_C64_comswap(Rt, Rn, Rs)
|
---|
3600 |
|
---|
3601 |
|
---|
3602 | /* CASL <Xs>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c8a0fc00) */
|
---|
3603 | //#define IEM_INSTR_IMPL_A64__CASL_C64_comswap(Rt, Rn, Rs)
|
---|
3604 |
|
---|
3605 |
|
---|
3606 | /* CASA <Xs>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c8e07c00) */
|
---|
3607 | //#define IEM_INSTR_IMPL_A64__CASA_C64_comswap(Rt, Rn, Rs)
|
---|
3608 |
|
---|
3609 |
|
---|
3610 | /* CASAL <Xs>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c8e0fc00) */
|
---|
3611 | //#define IEM_INSTR_IMPL_A64__CASAL_C64_comswap(Rt, Rn, Rs)
|
---|
3612 |
|
---|
3613 |
|
---|
3614 |
|
---|
3615 | /*
|
---|
3616 | *
|
---|
3617 | * Instruction Set & Groups: comswap_unpriv / ldst / A64
|
---|
3618 | *
|
---|
3619 | */
|
---|
3620 |
|
---|
3621 | /* CAST <Xs>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c9807c00) */
|
---|
3622 | //#define IEM_INSTR_IMPL_A64__CAST_C64_comswap_unpriv(Rt, Rn, Rs)
|
---|
3623 |
|
---|
3624 |
|
---|
3625 | /* CASLT <Xs>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c980fc00) */
|
---|
3626 | //#define IEM_INSTR_IMPL_A64__CASLT_C64_comswap_unpriv(Rt, Rn, Rs)
|
---|
3627 |
|
---|
3628 |
|
---|
3629 | /* CASAT <Xs>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c9c07c00) */
|
---|
3630 | //#define IEM_INSTR_IMPL_A64__CASAT_C64_comswap_unpriv(Rt, Rn, Rs)
|
---|
3631 |
|
---|
3632 |
|
---|
3633 | /* CASALT <Xs>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c9c0fc00) */
|
---|
3634 | //#define IEM_INSTR_IMPL_A64__CASALT_C64_comswap_unpriv(Rt, Rn, Rs)
|
---|
3635 |
|
---|
3636 |
|
---|
3637 |
|
---|
3638 | /*
|
---|
3639 | *
|
---|
3640 | * Instruction Set & Groups: comswappr / ldst / A64
|
---|
3641 | *
|
---|
3642 | */
|
---|
3643 |
|
---|
3644 | /* CASP <Ws>, <W(s+1)>, <Wt>, <W(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/08207c00) */
|
---|
3645 | //#define IEM_INSTR_IMPL_A64__CASP_CP32_comswappr(Rt, Rn, Rs)
|
---|
3646 |
|
---|
3647 |
|
---|
3648 | /* CASPL <Ws>, <W(s+1)>, <Wt>, <W(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/0820fc00) */
|
---|
3649 | //#define IEM_INSTR_IMPL_A64__CASPL_CP32_comswappr(Rt, Rn, Rs)
|
---|
3650 |
|
---|
3651 |
|
---|
3652 | /* CASPA <Ws>, <W(s+1)>, <Wt>, <W(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/08607c00) */
|
---|
3653 | //#define IEM_INSTR_IMPL_A64__CASPA_CP32_comswappr(Rt, Rn, Rs)
|
---|
3654 |
|
---|
3655 |
|
---|
3656 | /* CASPAL <Ws>, <W(s+1)>, <Wt>, <W(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/0860fc00) */
|
---|
3657 | //#define IEM_INSTR_IMPL_A64__CASPAL_CP32_comswappr(Rt, Rn, Rs)
|
---|
3658 |
|
---|
3659 |
|
---|
3660 | /* CASP <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/48207c00) */
|
---|
3661 | //#define IEM_INSTR_IMPL_A64__CASP_CP64_comswappr(Rt, Rn, Rs)
|
---|
3662 |
|
---|
3663 |
|
---|
3664 | /* CASPL <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/4820fc00) */
|
---|
3665 | //#define IEM_INSTR_IMPL_A64__CASPL_CP64_comswappr(Rt, Rn, Rs)
|
---|
3666 |
|
---|
3667 |
|
---|
3668 | /* CASPA <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/48607c00) */
|
---|
3669 | //#define IEM_INSTR_IMPL_A64__CASPA_CP64_comswappr(Rt, Rn, Rs)
|
---|
3670 |
|
---|
3671 |
|
---|
3672 | /* CASPAL <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/4860fc00) */
|
---|
3673 | //#define IEM_INSTR_IMPL_A64__CASPAL_CP64_comswappr(Rt, Rn, Rs)
|
---|
3674 |
|
---|
3675 |
|
---|
3676 |
|
---|
3677 | /*
|
---|
3678 | *
|
---|
3679 | * Instruction Set & Groups: comswappr_unpriv / ldst / A64
|
---|
3680 | *
|
---|
3681 | */
|
---|
3682 |
|
---|
3683 | /* CASPT <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/49807c00) */
|
---|
3684 | //#define IEM_INSTR_IMPL_A64__CASPT_CP64_comswappr_unpriv(Rt, Rn, Rs)
|
---|
3685 |
|
---|
3686 |
|
---|
3687 | /* CASPLT <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/4980fc00) */
|
---|
3688 | //#define IEM_INSTR_IMPL_A64__CASPLT_CP64_comswappr_unpriv(Rt, Rn, Rs)
|
---|
3689 |
|
---|
3690 |
|
---|
3691 | /* CASPAT <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/49c07c00) */
|
---|
3692 | //#define IEM_INSTR_IMPL_A64__CASPAT_CP64_comswappr_unpriv(Rt, Rn, Rs)
|
---|
3693 |
|
---|
3694 |
|
---|
3695 | /* CASPALT <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>{, #0}] (ffe0fc00/49c0fc00) */
|
---|
3696 | //#define IEM_INSTR_IMPL_A64__CASPALT_CP64_comswappr_unpriv(Rt, Rn, Rs)
|
---|
3697 |
|
---|
3698 |
|
---|
3699 |
|
---|
3700 | /*
|
---|
3701 | *
|
---|
3702 | * Instruction Set & Groups: condbranch / control / A64
|
---|
3703 | *
|
---|
3704 | */
|
---|
3705 |
|
---|
3706 | /* B.<cond> <label> (ff000010/54000000) */
|
---|
3707 | //#define IEM_INSTR_IMPL_A64__B_only_condbranch(cond, imm19)
|
---|
3708 |
|
---|
3709 |
|
---|
3710 | /* BC.<cond> <label> (ff000010/54000010) */
|
---|
3711 | //#define IEM_INSTR_IMPL_A64__BC_only_condbranch(cond, imm19)
|
---|
3712 |
|
---|
3713 |
|
---|
3714 |
|
---|
3715 | /*
|
---|
3716 | *
|
---|
3717 | * Instruction Set & Groups: condcmp_imm / dpreg / A64
|
---|
3718 | *
|
---|
3719 | */
|
---|
3720 |
|
---|
3721 | /* CCMN <Wn>, #<imm>, #<nzcv>, <cond> (ffe00c10/3a400800) */
|
---|
3722 | //#define IEM_INSTR_IMPL_A64__CCMN_32_condcmp_imm(nzcv, Rn, cond, imm5)
|
---|
3723 |
|
---|
3724 |
|
---|
3725 | /* CCMP <Wn>, #<imm>, #<nzcv>, <cond> (ffe00c10/7a400800) */
|
---|
3726 | //#define IEM_INSTR_IMPL_A64__CCMP_32_condcmp_imm(nzcv, Rn, cond, imm5)
|
---|
3727 |
|
---|
3728 |
|
---|
3729 | /* CCMN <Xn>, #<imm>, #<nzcv>, <cond> (ffe00c10/ba400800) */
|
---|
3730 | //#define IEM_INSTR_IMPL_A64__CCMN_64_condcmp_imm(nzcv, Rn, cond, imm5)
|
---|
3731 |
|
---|
3732 |
|
---|
3733 | /* CCMP <Xn>, #<imm>, #<nzcv>, <cond> (ffe00c10/fa400800) */
|
---|
3734 | //#define IEM_INSTR_IMPL_A64__CCMP_64_condcmp_imm(nzcv, Rn, cond, imm5)
|
---|
3735 |
|
---|
3736 |
|
---|
3737 |
|
---|
3738 | /*
|
---|
3739 | *
|
---|
3740 | * Instruction Set & Groups: condcmp_reg / dpreg / A64
|
---|
3741 | *
|
---|
3742 | */
|
---|
3743 |
|
---|
3744 | /* CCMN <Wn>, <Wm>, #<nzcv>, <cond> (ffe00c10/3a400000) */
|
---|
3745 | //#define IEM_INSTR_IMPL_A64__CCMN_32_condcmp_reg(nzcv, Rn, cond, Rm)
|
---|
3746 |
|
---|
3747 |
|
---|
3748 | /* CCMP <Wn>, <Wm>, #<nzcv>, <cond> (ffe00c10/7a400000) */
|
---|
3749 | //#define IEM_INSTR_IMPL_A64__CCMP_32_condcmp_reg(nzcv, Rn, cond, Rm)
|
---|
3750 |
|
---|
3751 |
|
---|
3752 | /* CCMN <Xn>, <Xm>, #<nzcv>, <cond> (ffe00c10/ba400000) */
|
---|
3753 | //#define IEM_INSTR_IMPL_A64__CCMN_64_condcmp_reg(nzcv, Rn, cond, Rm)
|
---|
3754 |
|
---|
3755 |
|
---|
3756 | /* CCMP <Xn>, <Xm>, #<nzcv>, <cond> (ffe00c10/fa400000) */
|
---|
3757 | //#define IEM_INSTR_IMPL_A64__CCMP_64_condcmp_reg(nzcv, Rn, cond, Rm)
|
---|
3758 |
|
---|
3759 |
|
---|
3760 |
|
---|
3761 | /*
|
---|
3762 | *
|
---|
3763 | * Instruction Set & Groups: condsel / dpreg / A64
|
---|
3764 | *
|
---|
3765 | */
|
---|
3766 |
|
---|
3767 | /* CSEL <Wd>, <Wn>, <Wm>, <cond> (ffe00c00/1a800000) */
|
---|
3768 | //#define IEM_INSTR_IMPL_A64__CSEL_32_condsel(Rd, Rn, o2, cond, Rm)
|
---|
3769 |
|
---|
3770 |
|
---|
3771 | /* CSINC <Wd>, <Wn>, <Wm>, <cond> (ffe00c00/1a800400) */
|
---|
3772 | //#define IEM_INSTR_IMPL_A64__CSINC_32_condsel(Rd, Rn, o2, cond, Rm)
|
---|
3773 |
|
---|
3774 |
|
---|
3775 | /* CSINV <Wd>, <Wn>, <Wm>, <cond> (ffe00c00/5a800000) */
|
---|
3776 | //#define IEM_INSTR_IMPL_A64__CSINV_32_condsel(Rd, Rn, o2, cond, Rm)
|
---|
3777 |
|
---|
3778 |
|
---|
3779 | /* CSNEG <Wd>, <Wn>, <Wm>, <cond> (ffe00c00/5a800400) */
|
---|
3780 | //#define IEM_INSTR_IMPL_A64__CSNEG_32_condsel(Rd, Rn, o2, cond, Rm)
|
---|
3781 |
|
---|
3782 |
|
---|
3783 | /* CSEL <Xd>, <Xn>, <Xm>, <cond> (ffe00c00/9a800000) */
|
---|
3784 | //#define IEM_INSTR_IMPL_A64__CSEL_64_condsel(Rd, Rn, o2, cond, Rm)
|
---|
3785 |
|
---|
3786 |
|
---|
3787 | /* CSINC <Xd>, <Xn>, <Xm>, <cond> (ffe00c00/9a800400) */
|
---|
3788 | //#define IEM_INSTR_IMPL_A64__CSINC_64_condsel(Rd, Rn, o2, cond, Rm)
|
---|
3789 |
|
---|
3790 |
|
---|
3791 | /* CSINV <Xd>, <Xn>, <Xm>, <cond> (ffe00c00/da800000) */
|
---|
3792 | //#define IEM_INSTR_IMPL_A64__CSINV_64_condsel(Rd, Rn, o2, cond, Rm)
|
---|
3793 |
|
---|
3794 |
|
---|
3795 | /* CSNEG <Xd>, <Xn>, <Xm>, <cond> (ffe00c00/da800400) */
|
---|
3796 | //#define IEM_INSTR_IMPL_A64__CSNEG_64_condsel(Rd, Rn, o2, cond, Rm)
|
---|
3797 |
|
---|
3798 |
|
---|
3799 |
|
---|
3800 | /*
|
---|
3801 | *
|
---|
3802 | * Instruction Set & Groups: crypto3_imm2 / simd_dp / A64
|
---|
3803 | *
|
---|
3804 | */
|
---|
3805 |
|
---|
3806 | /* SM3TT1A <Vd>.4S, <Vn>.4S, <Vm>.S[<imm2>] (ffe0cc00/ce408000) */
|
---|
3807 | //#define IEM_INSTR_IMPL_A64__SM3TT1A_VVV4_crypto3_imm2(Rd, Rn, imm2, Rm)
|
---|
3808 |
|
---|
3809 |
|
---|
3810 | /* SM3TT1B <Vd>.4S, <Vn>.4S, <Vm>.S[<imm2>] (ffe0cc00/ce408400) */
|
---|
3811 | //#define IEM_INSTR_IMPL_A64__SM3TT1B_VVV4_crypto3_imm2(Rd, Rn, imm2, Rm)
|
---|
3812 |
|
---|
3813 |
|
---|
3814 | /* SM3TT2A <Vd>.4S, <Vn>.4S, <Vm>.S[<imm2>] (ffe0cc00/ce408800) */
|
---|
3815 | //#define IEM_INSTR_IMPL_A64__SM3TT2A_VVV4_crypto3_imm2(Rd, Rn, imm2, Rm)
|
---|
3816 |
|
---|
3817 |
|
---|
3818 | /* SM3TT2B <Vd>.4S, <Vn>.4S, <Vm>.S[<imm2>] (ffe0cc00/ce408c00) */
|
---|
3819 | //#define IEM_INSTR_IMPL_A64__SM3TT2B_VVV_crypto3_imm2(Rd, Rn, imm2, Rm)
|
---|
3820 |
|
---|
3821 |
|
---|
3822 |
|
---|
3823 | /*
|
---|
3824 | *
|
---|
3825 | * Instruction Set & Groups: crypto3_imm6 / simd_dp / A64
|
---|
3826 | *
|
---|
3827 | */
|
---|
3828 |
|
---|
3829 | /* XAR <Vd>.2D, <Vn>.2D, <Vm>.2D, #<imm6> (ffe00000/ce800000) */
|
---|
3830 | //#define IEM_INSTR_IMPL_A64__XAR_VVV2_crypto3_imm6(Rd, Rn, imm6, Rm)
|
---|
3831 |
|
---|
3832 |
|
---|
3833 |
|
---|
3834 | /*
|
---|
3835 | *
|
---|
3836 | * Instruction Set & Groups: crypto4 / simd_dp / A64
|
---|
3837 | *
|
---|
3838 | */
|
---|
3839 |
|
---|
3840 | /* EOR3 <Vd>.16B, <Vn>.16B, <Vm>.16B, <Va>.16B (ffe08000/ce000000) */
|
---|
3841 | //#define IEM_INSTR_IMPL_A64__EOR3_VVV16_crypto4(Rd, Rn, Ra, Rm)
|
---|
3842 |
|
---|
3843 |
|
---|
3844 | /* BCAX <Vd>.16B, <Vn>.16B, <Vm>.16B, <Va>.16B (ffe08000/ce200000) */
|
---|
3845 | //#define IEM_INSTR_IMPL_A64__BCAX_VVV16_crypto4(Rd, Rn, Ra, Rm)
|
---|
3846 |
|
---|
3847 |
|
---|
3848 | /* SM3SS1 <Vd>.4S, <Vn>.4S, <Vm>.4S, <Va>.4S (ffe08000/ce400000) */
|
---|
3849 | //#define IEM_INSTR_IMPL_A64__SM3SS1_VVV4_crypto4(Rd, Rn, Ra, Rm)
|
---|
3850 |
|
---|
3851 |
|
---|
3852 |
|
---|
3853 | /*
|
---|
3854 | *
|
---|
3855 | * Instruction Set & Groups: cryptoaes / simd_dp / A64
|
---|
3856 | *
|
---|
3857 | */
|
---|
3858 |
|
---|
3859 | /* AESE <Vd>.16B, <Vn>.16B (fffffc00/4e284800) */
|
---|
3860 | //#define IEM_INSTR_IMPL_A64__AESE_B_cryptoaes(Rd, Rn, D)
|
---|
3861 |
|
---|
3862 |
|
---|
3863 | /* AESD <Vd>.16B, <Vn>.16B (fffffc00/4e285800) */
|
---|
3864 | //#define IEM_INSTR_IMPL_A64__AESD_B_cryptoaes(Rd, Rn, D)
|
---|
3865 |
|
---|
3866 |
|
---|
3867 | /* AESMC <Vd>.16B, <Vn>.16B (fffffc00/4e286800) */
|
---|
3868 | //#define IEM_INSTR_IMPL_A64__AESMC_B_cryptoaes(Rd, Rn, D)
|
---|
3869 |
|
---|
3870 |
|
---|
3871 | /* AESIMC <Vd>.16B, <Vn>.16B (fffffc00/4e287800) */
|
---|
3872 | //#define IEM_INSTR_IMPL_A64__AESIMC_B_cryptoaes(Rd, Rn, D)
|
---|
3873 |
|
---|
3874 |
|
---|
3875 |
|
---|
3876 | /*
|
---|
3877 | *
|
---|
3878 | * Instruction Set & Groups: cryptosha2 / simd_dp / A64
|
---|
3879 | *
|
---|
3880 | */
|
---|
3881 |
|
---|
3882 | /* SHA1H <Sd>, <Sn> (fffffc00/5e280800) */
|
---|
3883 | //#define IEM_INSTR_IMPL_A64__SHA1H_SS_cryptosha2(Rd, Rn)
|
---|
3884 |
|
---|
3885 |
|
---|
3886 | /* SHA1SU1 <Vd>.4S, <Vn>.4S (fffffc00/5e281800) */
|
---|
3887 | //#define IEM_INSTR_IMPL_A64__SHA1SU1_VV_cryptosha2(Rd, Rn)
|
---|
3888 |
|
---|
3889 |
|
---|
3890 | /* SHA256SU0 <Vd>.4S, <Vn>.4S (fffffc00/5e282800) */
|
---|
3891 | //#define IEM_INSTR_IMPL_A64__SHA256SU0_VV_cryptosha2(Rd, Rn)
|
---|
3892 |
|
---|
3893 |
|
---|
3894 |
|
---|
3895 | /*
|
---|
3896 | *
|
---|
3897 | * Instruction Set & Groups: cryptosha3 / simd_dp / A64
|
---|
3898 | *
|
---|
3899 | */
|
---|
3900 |
|
---|
3901 | /* SHA1C <Qd>, <Sn>, <Vm>.4S (ffe0fc00/5e000000) */
|
---|
3902 | //#define IEM_INSTR_IMPL_A64__SHA1C_QSV_cryptosha3(Rd, Rn, Rm)
|
---|
3903 |
|
---|
3904 |
|
---|
3905 | /* SHA1P <Qd>, <Sn>, <Vm>.4S (ffe0fc00/5e001000) */
|
---|
3906 | //#define IEM_INSTR_IMPL_A64__SHA1P_QSV_cryptosha3(Rd, Rn, Rm)
|
---|
3907 |
|
---|
3908 |
|
---|
3909 | /* SHA1M <Qd>, <Sn>, <Vm>.4S (ffe0fc00/5e002000) */
|
---|
3910 | //#define IEM_INSTR_IMPL_A64__SHA1M_QSV_cryptosha3(Rd, Rn, Rm)
|
---|
3911 |
|
---|
3912 |
|
---|
3913 | /* SHA1SU0 <Vd>.4S, <Vn>.4S, <Vm>.4S (ffe0fc00/5e003000) */
|
---|
3914 | //#define IEM_INSTR_IMPL_A64__SHA1SU0_VVV_cryptosha3(Rd, Rn, Rm)
|
---|
3915 |
|
---|
3916 |
|
---|
3917 | /* SHA256H <Qd>, <Qn>, <Vm>.4S (ffe0fc00/5e004000) */
|
---|
3918 | //#define IEM_INSTR_IMPL_A64__SHA256H_QQV_cryptosha3(Rd, Rn, P, Rm)
|
---|
3919 |
|
---|
3920 |
|
---|
3921 | /* SHA256H2 <Qd>, <Qn>, <Vm>.4S (ffe0fc00/5e005000) */
|
---|
3922 | //#define IEM_INSTR_IMPL_A64__SHA256H2_QQV_cryptosha3(Rd, Rn, P, Rm)
|
---|
3923 |
|
---|
3924 |
|
---|
3925 | /* SHA256SU1 <Vd>.4S, <Vn>.4S, <Vm>.4S (ffe0fc00/5e006000) */
|
---|
3926 | //#define IEM_INSTR_IMPL_A64__SHA256SU1_VVV_cryptosha3(Rd, Rn, Rm)
|
---|
3927 |
|
---|
3928 |
|
---|
3929 |
|
---|
3930 | /*
|
---|
3931 | *
|
---|
3932 | * Instruction Set & Groups: cryptosha512_2 / simd_dp / A64
|
---|
3933 | *
|
---|
3934 | */
|
---|
3935 |
|
---|
3936 | /* SHA512SU0 <Vd>.2D, <Vn>.2D (fffffc00/cec08000) */
|
---|
3937 | //#define IEM_INSTR_IMPL_A64__SHA512SU0_VV2_cryptosha512_2(Rd, Rn)
|
---|
3938 |
|
---|
3939 |
|
---|
3940 | /* SM4E <Vd>.4S, <Vn>.4S (fffffc00/cec08400) */
|
---|
3941 | //#define IEM_INSTR_IMPL_A64__SM4E_VV4_cryptosha512_2(Rd, Rn)
|
---|
3942 |
|
---|
3943 |
|
---|
3944 |
|
---|
3945 | /*
|
---|
3946 | *
|
---|
3947 | * Instruction Set & Groups: cryptosha512_3 / simd_dp / A64
|
---|
3948 | *
|
---|
3949 | */
|
---|
3950 |
|
---|
3951 | /* SHA512H <Qd>, <Qn>, <Vm>.2D (ffe0fc00/ce608000) */
|
---|
3952 | //#define IEM_INSTR_IMPL_A64__SHA512H_QQV_cryptosha512_3(Rd, Rn, Rm)
|
---|
3953 |
|
---|
3954 |
|
---|
3955 | /* SHA512H2 <Qd>, <Qn>, <Vm>.2D (ffe0fc00/ce608400) */
|
---|
3956 | //#define IEM_INSTR_IMPL_A64__SHA512H2_QQV_cryptosha512_3(Rd, Rn, Rm)
|
---|
3957 |
|
---|
3958 |
|
---|
3959 | /* SHA512SU1 <Vd>.2D, <Vn>.2D, <Vm>.2D (ffe0fc00/ce608800) */
|
---|
3960 | //#define IEM_INSTR_IMPL_A64__SHA512SU1_VVV2_cryptosha512_3(Rd, Rn, Rm)
|
---|
3961 |
|
---|
3962 |
|
---|
3963 | /* RAX1 <Vd>.2D, <Vn>.2D, <Vm>.2D (ffe0fc00/ce608c00) */
|
---|
3964 | //#define IEM_INSTR_IMPL_A64__RAX1_VVV2_cryptosha512_3(Rd, Rn, Rm)
|
---|
3965 |
|
---|
3966 |
|
---|
3967 | /* SM3PARTW1 <Vd>.4S, <Vn>.4S, <Vm>.4S (ffe0fc00/ce60c000) */
|
---|
3968 | //#define IEM_INSTR_IMPL_A64__SM3PARTW1_VVV4_cryptosha512_3(Rd, Rn, Rm)
|
---|
3969 |
|
---|
3970 |
|
---|
3971 | /* SM3PARTW2 <Vd>.4S, <Vn>.4S, <Vm>.4S (ffe0fc00/ce60c400) */
|
---|
3972 | //#define IEM_INSTR_IMPL_A64__SM3PARTW2_VVV4_cryptosha512_3(Rd, Rn, Rm)
|
---|
3973 |
|
---|
3974 |
|
---|
3975 | /* SM4EKEY <Vd>.4S, <Vn>.4S, <Vm>.4S (ffe0fc00/ce60c800) */
|
---|
3976 | //#define IEM_INSTR_IMPL_A64__SM4EKEY_VVV4_cryptosha512_3(Rd, Rn, Rm)
|
---|
3977 |
|
---|
3978 |
|
---|
3979 |
|
---|
3980 | /*
|
---|
3981 | *
|
---|
3982 | * Instruction Set & Groups: dp_1src / dpreg / A64
|
---|
3983 | *
|
---|
3984 | */
|
---|
3985 |
|
---|
3986 | /* RBIT <Wd>, <Wn> (fffffc00/5ac00000) */
|
---|
3987 | //#define IEM_INSTR_IMPL_A64__RBIT_32_dp_1src(Rd, Rn)
|
---|
3988 |
|
---|
3989 |
|
---|
3990 | /* REV16 <Wd>, <Wn> (fffffc00/5ac00400) */
|
---|
3991 | //#define IEM_INSTR_IMPL_A64__REV16_32_dp_1src(Rd, Rn, opc)
|
---|
3992 |
|
---|
3993 |
|
---|
3994 | /* REV <Wd>, <Wn> (fffffc00/5ac00800) */
|
---|
3995 | //#define IEM_INSTR_IMPL_A64__REV_32_dp_1src(Rd, Rn, opc)
|
---|
3996 |
|
---|
3997 |
|
---|
3998 | /* CLZ <Wd>, <Wn> (fffffc00/5ac01000) */
|
---|
3999 | //#define IEM_INSTR_IMPL_A64__CLZ_32_dp_1src(Rd, Rn, op)
|
---|
4000 |
|
---|
4001 |
|
---|
4002 | /* CLS <Wd>, <Wn> (fffffc00/5ac01400) */
|
---|
4003 | //#define IEM_INSTR_IMPL_A64__CLS_32_dp_1src(Rd, Rn, op)
|
---|
4004 |
|
---|
4005 |
|
---|
4006 | /* CTZ <Wd>, <Wn> (fffffc00/5ac01800) */
|
---|
4007 | //#define IEM_INSTR_IMPL_A64__CTZ_32_dp_1src(Rd, Rn)
|
---|
4008 |
|
---|
4009 |
|
---|
4010 | /* CNT <Wd>, <Wn> (fffffc00/5ac01c00) */
|
---|
4011 | //#define IEM_INSTR_IMPL_A64__CNT_32_dp_1src(Rd, Rn)
|
---|
4012 |
|
---|
4013 |
|
---|
4014 | /* ABS <Wd>, <Wn> (fffffc00/5ac02000) */
|
---|
4015 | //#define IEM_INSTR_IMPL_A64__ABS_32_dp_1src(Rd, Rn)
|
---|
4016 |
|
---|
4017 |
|
---|
4018 | /* RBIT <Xd>, <Xn> (fffffc00/dac00000) */
|
---|
4019 | //#define IEM_INSTR_IMPL_A64__RBIT_64_dp_1src(Rd, Rn)
|
---|
4020 |
|
---|
4021 |
|
---|
4022 | /* REV16 <Xd>, <Xn> (fffffc00/dac00400) */
|
---|
4023 | //#define IEM_INSTR_IMPL_A64__REV16_64_dp_1src(Rd, Rn, opc)
|
---|
4024 |
|
---|
4025 |
|
---|
4026 | /* REV32 <Xd>, <Xn> (fffffc00/dac00800) */
|
---|
4027 | //#define IEM_INSTR_IMPL_A64__REV32_64_dp_1src(Rd, Rn, opc)
|
---|
4028 |
|
---|
4029 |
|
---|
4030 | /* REV <Xd>, <Xn> (fffffc00/dac00c00) */
|
---|
4031 | //#define IEM_INSTR_IMPL_A64__REV_64_dp_1src(Rd, Rn, opc)
|
---|
4032 |
|
---|
4033 |
|
---|
4034 | /* CLZ <Xd>, <Xn> (fffffc00/dac01000) */
|
---|
4035 | //#define IEM_INSTR_IMPL_A64__CLZ_64_dp_1src(Rd, Rn, op)
|
---|
4036 |
|
---|
4037 |
|
---|
4038 | /* CLS <Xd>, <Xn> (fffffc00/dac01400) */
|
---|
4039 | //#define IEM_INSTR_IMPL_A64__CLS_64_dp_1src(Rd, Rn, op)
|
---|
4040 |
|
---|
4041 |
|
---|
4042 | /* CTZ <Xd>, <Xn> (fffffc00/dac01800) */
|
---|
4043 | //#define IEM_INSTR_IMPL_A64__CTZ_64_dp_1src(Rd, Rn)
|
---|
4044 |
|
---|
4045 |
|
---|
4046 | /* CNT <Xd>, <Xn> (fffffc00/dac01c00) */
|
---|
4047 | //#define IEM_INSTR_IMPL_A64__CNT_64_dp_1src(Rd, Rn)
|
---|
4048 |
|
---|
4049 |
|
---|
4050 | /* ABS <Xd>, <Xn> (fffffc00/dac02000) */
|
---|
4051 | //#define IEM_INSTR_IMPL_A64__ABS_64_dp_1src(Rd, Rn)
|
---|
4052 |
|
---|
4053 |
|
---|
4054 | /* PACIA <Xd>, <Xn|SP> (fffffc00/dac10000) */
|
---|
4055 | //#define IEM_INSTR_IMPL_A64__PACIA_64P_dp_1src(Rd, Rn, Z)
|
---|
4056 |
|
---|
4057 |
|
---|
4058 | /* PACIB <Xd>, <Xn|SP> (fffffc00/dac10400) */
|
---|
4059 | //#define IEM_INSTR_IMPL_A64__PACIB_64P_dp_1src(Rd, Rn, Z)
|
---|
4060 |
|
---|
4061 |
|
---|
4062 | /* PACDA <Xd>, <Xn|SP> (fffffc00/dac10800) */
|
---|
4063 | //#define IEM_INSTR_IMPL_A64__PACDA_64P_dp_1src(Rd, Rn, Z)
|
---|
4064 |
|
---|
4065 |
|
---|
4066 | /* PACDB <Xd>, <Xn|SP> (fffffc00/dac10c00) */
|
---|
4067 | //#define IEM_INSTR_IMPL_A64__PACDB_64P_dp_1src(Rd, Rn, Z)
|
---|
4068 |
|
---|
4069 |
|
---|
4070 | /* AUTIA <Xd>, <Xn|SP> (fffffc00/dac11000) */
|
---|
4071 | //#define IEM_INSTR_IMPL_A64__AUTIA_64P_dp_1src(Rd, Rn, Z)
|
---|
4072 |
|
---|
4073 |
|
---|
4074 | /* AUTIB <Xd>, <Xn|SP> (fffffc00/dac11400) */
|
---|
4075 | //#define IEM_INSTR_IMPL_A64__AUTIB_64P_dp_1src(Rd, Rn, Z)
|
---|
4076 |
|
---|
4077 |
|
---|
4078 | /* AUTDA <Xd>, <Xn|SP> (fffffc00/dac11800) */
|
---|
4079 | //#define IEM_INSTR_IMPL_A64__AUTDA_64P_dp_1src(Rd, Rn, Z)
|
---|
4080 |
|
---|
4081 |
|
---|
4082 | /* AUTDB <Xd>, <Xn|SP> (fffffc00/dac11c00) */
|
---|
4083 | //#define IEM_INSTR_IMPL_A64__AUTDB_64P_dp_1src(Rd, Rn, Z)
|
---|
4084 |
|
---|
4085 |
|
---|
4086 | /* PACIZA <Xd> (ffffffe0/dac123e0) */
|
---|
4087 | //#define IEM_INSTR_IMPL_A64__PACIZA_64Z_dp_1src(Rd, Z)
|
---|
4088 |
|
---|
4089 |
|
---|
4090 | /* PACIZB <Xd> (ffffffe0/dac127e0) */
|
---|
4091 | //#define IEM_INSTR_IMPL_A64__PACIZB_64Z_dp_1src(Rd, Z)
|
---|
4092 |
|
---|
4093 |
|
---|
4094 | /* PACDZA <Xd> (ffffffe0/dac12be0) */
|
---|
4095 | //#define IEM_INSTR_IMPL_A64__PACDZA_64Z_dp_1src(Rd, Z)
|
---|
4096 |
|
---|
4097 |
|
---|
4098 | /* PACDZB <Xd> (ffffffe0/dac12fe0) */
|
---|
4099 | //#define IEM_INSTR_IMPL_A64__PACDZB_64Z_dp_1src(Rd, Z)
|
---|
4100 |
|
---|
4101 |
|
---|
4102 | /* AUTIZA <Xd> (ffffffe0/dac133e0) */
|
---|
4103 | //#define IEM_INSTR_IMPL_A64__AUTIZA_64Z_dp_1src(Rd, Z)
|
---|
4104 |
|
---|
4105 |
|
---|
4106 | /* AUTIZB <Xd> (ffffffe0/dac137e0) */
|
---|
4107 | //#define IEM_INSTR_IMPL_A64__AUTIZB_64Z_dp_1src(Rd, Z)
|
---|
4108 |
|
---|
4109 |
|
---|
4110 | /* AUTDZA <Xd> (ffffffe0/dac13be0) */
|
---|
4111 | //#define IEM_INSTR_IMPL_A64__AUTDZA_64Z_dp_1src(Rd, Z)
|
---|
4112 |
|
---|
4113 |
|
---|
4114 | /* AUTDZB <Xd> (ffffffe0/dac13fe0) */
|
---|
4115 | //#define IEM_INSTR_IMPL_A64__AUTDZB_64Z_dp_1src(Rd, Z)
|
---|
4116 |
|
---|
4117 |
|
---|
4118 | /* XPACI <Xd> (ffffffe0/dac143e0) */
|
---|
4119 | //#define IEM_INSTR_IMPL_A64__XPACI_64Z_dp_1src(Rd, D)
|
---|
4120 |
|
---|
4121 |
|
---|
4122 | /* XPACD <Xd> (ffffffe0/dac147e0) */
|
---|
4123 | //#define IEM_INSTR_IMPL_A64__XPACD_64Z_dp_1src(Rd, D)
|
---|
4124 |
|
---|
4125 |
|
---|
4126 | /* PACNBIASPPC (ffffffff/dac183fe) */
|
---|
4127 | //#define IEM_INSTR_IMPL_A64__PACNBIASPPC_64LR_dp_1src()
|
---|
4128 |
|
---|
4129 |
|
---|
4130 | /* PACNBIBSPPC (ffffffff/dac187fe) */
|
---|
4131 | //#define IEM_INSTR_IMPL_A64__PACNBIBSPPC_64LR_dp_1src()
|
---|
4132 |
|
---|
4133 |
|
---|
4134 | /* PACIA171615 (ffffffff/dac18bfe) */
|
---|
4135 | //#define IEM_INSTR_IMPL_A64__PACIA171615_64LR_dp_1src()
|
---|
4136 |
|
---|
4137 |
|
---|
4138 | /* PACIB171615 (ffffffff/dac18ffe) */
|
---|
4139 | //#define IEM_INSTR_IMPL_A64__PACIB171615_64LR_dp_1src()
|
---|
4140 |
|
---|
4141 |
|
---|
4142 | /* AUTIASPPCR <Xn> (fffffc1f/dac1901e) */
|
---|
4143 | //#define IEM_INSTR_IMPL_A64__AUTIASPPCR_64LRR_dp_1src(Rn)
|
---|
4144 |
|
---|
4145 |
|
---|
4146 | /* AUTIBSPPCR <Xn> (fffffc1f/dac1941e) */
|
---|
4147 | //#define IEM_INSTR_IMPL_A64__AUTIBSPPCR_64LRR_dp_1src(Rn)
|
---|
4148 |
|
---|
4149 |
|
---|
4150 | /* PACIASPPC (ffffffff/dac1a3fe) */
|
---|
4151 | //#define IEM_INSTR_IMPL_A64__PACIASPPC_64LR_dp_1src()
|
---|
4152 |
|
---|
4153 |
|
---|
4154 | /* PACIBSPPC (ffffffff/dac1a7fe) */
|
---|
4155 | //#define IEM_INSTR_IMPL_A64__PACIBSPPC_64LR_dp_1src()
|
---|
4156 |
|
---|
4157 |
|
---|
4158 | /* AUTIA171615 (ffffffff/dac1bbfe) */
|
---|
4159 | //#define IEM_INSTR_IMPL_A64__AUTIA171615_64LR_dp_1src()
|
---|
4160 |
|
---|
4161 |
|
---|
4162 | /* AUTIB171615 (ffffffff/dac1bffe) */
|
---|
4163 | //#define IEM_INSTR_IMPL_A64__AUTIB171615_64LR_dp_1src()
|
---|
4164 |
|
---|
4165 |
|
---|
4166 |
|
---|
4167 | /*
|
---|
4168 | *
|
---|
4169 | * Instruction Set & Groups: dp_1src_imm / dpimm / A64
|
---|
4170 | *
|
---|
4171 | */
|
---|
4172 |
|
---|
4173 | /* AUTIASPPC <label> (ffe0001f/f380001f) */
|
---|
4174 | //#define IEM_INSTR_IMPL_A64__AUTIASPPC_only_dp_1src_imm(imm16)
|
---|
4175 |
|
---|
4176 |
|
---|
4177 | /* AUTIBSPPC <label> (ffe0001f/f3a0001f) */
|
---|
4178 | //#define IEM_INSTR_IMPL_A64__AUTIBSPPC_only_dp_1src_imm(imm16)
|
---|
4179 |
|
---|
4180 |
|
---|
4181 |
|
---|
4182 | /*
|
---|
4183 | *
|
---|
4184 | * Instruction Set & Groups: dp_2src / dpreg / A64
|
---|
4185 | *
|
---|
4186 | */
|
---|
4187 |
|
---|
4188 | /* UDIV <Wd>, <Wn>, <Wm> (ffe0fc00/1ac00800) */
|
---|
4189 | //#define IEM_INSTR_IMPL_A64__UDIV_32_dp_2src(Rd, Rn, o1, Rm)
|
---|
4190 |
|
---|
4191 |
|
---|
4192 | /* SDIV <Wd>, <Wn>, <Wm> (ffe0fc00/1ac00c00) */
|
---|
4193 | //#define IEM_INSTR_IMPL_A64__SDIV_32_dp_2src(Rd, Rn, o1, Rm)
|
---|
4194 |
|
---|
4195 |
|
---|
4196 | /* LSLV <Wd>, <Wn>, <Wm> (ffe0fc00/1ac02000) */
|
---|
4197 | //#define IEM_INSTR_IMPL_A64__LSLV_32_dp_2src(Rd, Rn, op2, Rm)
|
---|
4198 |
|
---|
4199 |
|
---|
4200 | /* LSRV <Wd>, <Wn>, <Wm> (ffe0fc00/1ac02400) */
|
---|
4201 | //#define IEM_INSTR_IMPL_A64__LSRV_32_dp_2src(Rd, Rn, op2, Rm)
|
---|
4202 |
|
---|
4203 |
|
---|
4204 | /* ASRV <Wd>, <Wn>, <Wm> (ffe0fc00/1ac02800) */
|
---|
4205 | //#define IEM_INSTR_IMPL_A64__ASRV_32_dp_2src(Rd, Rn, op2, Rm)
|
---|
4206 |
|
---|
4207 |
|
---|
4208 | /* RORV <Wd>, <Wn>, <Wm> (ffe0fc00/1ac02c00) */
|
---|
4209 | //#define IEM_INSTR_IMPL_A64__RORV_32_dp_2src(Rd, Rn, op2, Rm)
|
---|
4210 |
|
---|
4211 |
|
---|
4212 | /* CRC32B <Wd>, <Wn>, <Wm> (ffe0fc00/1ac04000) */
|
---|
4213 | //#define IEM_INSTR_IMPL_A64__CRC32B_32C_dp_2src(Rd, Rn, sz, C, Rm)
|
---|
4214 |
|
---|
4215 |
|
---|
4216 | /* CRC32H <Wd>, <Wn>, <Wm> (ffe0fc00/1ac04400) */
|
---|
4217 | //#define IEM_INSTR_IMPL_A64__CRC32H_32C_dp_2src(Rd, Rn, sz, C, Rm)
|
---|
4218 |
|
---|
4219 |
|
---|
4220 | /* CRC32W <Wd>, <Wn>, <Wm> (ffe0fc00/1ac04800) */
|
---|
4221 | //#define IEM_INSTR_IMPL_A64__CRC32W_32C_dp_2src(Rd, Rn, sz, C, Rm)
|
---|
4222 |
|
---|
4223 |
|
---|
4224 | /* CRC32CB <Wd>, <Wn>, <Wm> (ffe0fc00/1ac05000) */
|
---|
4225 | //#define IEM_INSTR_IMPL_A64__CRC32CB_32C_dp_2src(Rd, Rn, sz, C, Rm)
|
---|
4226 |
|
---|
4227 |
|
---|
4228 | /* CRC32CH <Wd>, <Wn>, <Wm> (ffe0fc00/1ac05400) */
|
---|
4229 | //#define IEM_INSTR_IMPL_A64__CRC32CH_32C_dp_2src(Rd, Rn, sz, C, Rm)
|
---|
4230 |
|
---|
4231 |
|
---|
4232 | /* CRC32CW <Wd>, <Wn>, <Wm> (ffe0fc00/1ac05800) */
|
---|
4233 | //#define IEM_INSTR_IMPL_A64__CRC32CW_32C_dp_2src(Rd, Rn, sz, C, Rm)
|
---|
4234 |
|
---|
4235 |
|
---|
4236 | /* SMAX <Wd>, <Wn>, <Wm> (ffe0fc00/1ac06000) */
|
---|
4237 | //#define IEM_INSTR_IMPL_A64__SMAX_32_dp_2src(Rd, Rn, Rm)
|
---|
4238 |
|
---|
4239 |
|
---|
4240 | /* UMAX <Wd>, <Wn>, <Wm> (ffe0fc00/1ac06400) */
|
---|
4241 | //#define IEM_INSTR_IMPL_A64__UMAX_32_dp_2src(Rd, Rn, Rm)
|
---|
4242 |
|
---|
4243 |
|
---|
4244 | /* SMIN <Wd>, <Wn>, <Wm> (ffe0fc00/1ac06800) */
|
---|
4245 | //#define IEM_INSTR_IMPL_A64__SMIN_32_dp_2src(Rd, Rn, Rm)
|
---|
4246 |
|
---|
4247 |
|
---|
4248 | /* UMIN <Wd>, <Wn>, <Wm> (ffe0fc00/1ac06c00) */
|
---|
4249 | //#define IEM_INSTR_IMPL_A64__UMIN_32_dp_2src(Rd, Rn, Rm)
|
---|
4250 |
|
---|
4251 |
|
---|
4252 | /* SUBP <Xd>, <Xn|SP>, <Xm|SP> (ffe0fc00/9ac00000) */
|
---|
4253 | //#define IEM_INSTR_IMPL_A64__SUBP_64S_dp_2src(Rd, Rn, Rm)
|
---|
4254 |
|
---|
4255 |
|
---|
4256 | /* UDIV <Xd>, <Xn>, <Xm> (ffe0fc00/9ac00800) */
|
---|
4257 | //#define IEM_INSTR_IMPL_A64__UDIV_64_dp_2src(Rd, Rn, o1, Rm)
|
---|
4258 |
|
---|
4259 |
|
---|
4260 | /* SDIV <Xd>, <Xn>, <Xm> (ffe0fc00/9ac00c00) */
|
---|
4261 | //#define IEM_INSTR_IMPL_A64__SDIV_64_dp_2src(Rd, Rn, o1, Rm)
|
---|
4262 |
|
---|
4263 |
|
---|
4264 | /* IRG <Xd|SP>, <Xn|SP>{, <Xm>} (ffe0fc00/9ac01000) */
|
---|
4265 | //#define IEM_INSTR_IMPL_A64__IRG_64I_dp_2src(Rd, Rn, Rm)
|
---|
4266 |
|
---|
4267 |
|
---|
4268 | /* GMI <Xd>, <Xn|SP>, <Xm> (ffe0fc00/9ac01400) */
|
---|
4269 | //#define IEM_INSTR_IMPL_A64__GMI_64G_dp_2src(Rd, Rn, Rm)
|
---|
4270 |
|
---|
4271 |
|
---|
4272 | /* LSLV <Xd>, <Xn>, <Xm> (ffe0fc00/9ac02000) */
|
---|
4273 | //#define IEM_INSTR_IMPL_A64__LSLV_64_dp_2src(Rd, Rn, op2, Rm)
|
---|
4274 |
|
---|
4275 |
|
---|
4276 | /* LSRV <Xd>, <Xn>, <Xm> (ffe0fc00/9ac02400) */
|
---|
4277 | //#define IEM_INSTR_IMPL_A64__LSRV_64_dp_2src(Rd, Rn, op2, Rm)
|
---|
4278 |
|
---|
4279 |
|
---|
4280 | /* ASRV <Xd>, <Xn>, <Xm> (ffe0fc00/9ac02800) */
|
---|
4281 | //#define IEM_INSTR_IMPL_A64__ASRV_64_dp_2src(Rd, Rn, op2, Rm)
|
---|
4282 |
|
---|
4283 |
|
---|
4284 | /* RORV <Xd>, <Xn>, <Xm> (ffe0fc00/9ac02c00) */
|
---|
4285 | //#define IEM_INSTR_IMPL_A64__RORV_64_dp_2src(Rd, Rn, op2, Rm)
|
---|
4286 |
|
---|
4287 |
|
---|
4288 | /* PACGA <Xd>, <Xn>, <Xm|SP> (ffe0fc00/9ac03000) */
|
---|
4289 | //#define IEM_INSTR_IMPL_A64__PACGA_64P_dp_2src(Rd, Rn, Rm)
|
---|
4290 |
|
---|
4291 |
|
---|
4292 | /* CRC32X <Wd>, <Wn>, <Xm> (ffe0fc00/9ac04c00) */
|
---|
4293 | //#define IEM_INSTR_IMPL_A64__CRC32X_64C_dp_2src(Rd, Rn, sz, C, Rm)
|
---|
4294 |
|
---|
4295 |
|
---|
4296 | /* CRC32CX <Wd>, <Wn>, <Xm> (ffe0fc00/9ac05c00) */
|
---|
4297 | //#define IEM_INSTR_IMPL_A64__CRC32CX_64C_dp_2src(Rd, Rn, sz, C, Rm)
|
---|
4298 |
|
---|
4299 |
|
---|
4300 | /* SMAX <Xd>, <Xn>, <Xm> (ffe0fc00/9ac06000) */
|
---|
4301 | //#define IEM_INSTR_IMPL_A64__SMAX_64_dp_2src(Rd, Rn, Rm)
|
---|
4302 |
|
---|
4303 |
|
---|
4304 | /* UMAX <Xd>, <Xn>, <Xm> (ffe0fc00/9ac06400) */
|
---|
4305 | //#define IEM_INSTR_IMPL_A64__UMAX_64_dp_2src(Rd, Rn, Rm)
|
---|
4306 |
|
---|
4307 |
|
---|
4308 | /* SMIN <Xd>, <Xn>, <Xm> (ffe0fc00/9ac06800) */
|
---|
4309 | //#define IEM_INSTR_IMPL_A64__SMIN_64_dp_2src(Rd, Rn, Rm)
|
---|
4310 |
|
---|
4311 |
|
---|
4312 | /* UMIN <Xd>, <Xn>, <Xm> (ffe0fc00/9ac06c00) */
|
---|
4313 | //#define IEM_INSTR_IMPL_A64__UMIN_64_dp_2src(Rd, Rn, Rm)
|
---|
4314 |
|
---|
4315 |
|
---|
4316 | /* SUBPS <Xd>, <Xn|SP>, <Xm|SP> (ffe0fc00/bac00000) */
|
---|
4317 | //#define IEM_INSTR_IMPL_A64__SUBPS_64S_dp_2src(Rd, Rn, Rm)
|
---|
4318 |
|
---|
4319 |
|
---|
4320 |
|
---|
4321 | /*
|
---|
4322 | *
|
---|
4323 | * Instruction Set & Groups: dp_3src / dpreg / A64
|
---|
4324 | *
|
---|
4325 | */
|
---|
4326 |
|
---|
4327 | /* MADD <Wd>, <Wn>, <Wm>, <Wa> (ffe08000/1b000000) */
|
---|
4328 | //#define IEM_INSTR_IMPL_A64__MADD_32A_dp_3src(Rd, Rn, Ra, Rm)
|
---|
4329 |
|
---|
4330 |
|
---|
4331 | /* MSUB <Wd>, <Wn>, <Wm>, <Wa> (ffe08000/1b008000) */
|
---|
4332 | //#define IEM_INSTR_IMPL_A64__MSUB_32A_dp_3src(Rd, Rn, Ra, Rm)
|
---|
4333 |
|
---|
4334 |
|
---|
4335 | /* MADD <Xd>, <Xn>, <Xm>, <Xa> (ffe08000/9b000000) */
|
---|
4336 | //#define IEM_INSTR_IMPL_A64__MADD_64A_dp_3src(Rd, Rn, Ra, Rm)
|
---|
4337 |
|
---|
4338 |
|
---|
4339 | /* MSUB <Xd>, <Xn>, <Xm>, <Xa> (ffe08000/9b008000) */
|
---|
4340 | //#define IEM_INSTR_IMPL_A64__MSUB_64A_dp_3src(Rd, Rn, Ra, Rm)
|
---|
4341 |
|
---|
4342 |
|
---|
4343 | /* SMADDL <Xd>, <Wn>, <Wm>, <Xa> (ffe08000/9b200000) */
|
---|
4344 | //#define IEM_INSTR_IMPL_A64__SMADDL_64WA_dp_3src(Rd, Rn, Ra, Rm, U)
|
---|
4345 |
|
---|
4346 |
|
---|
4347 | /* SMSUBL <Xd>, <Wn>, <Wm>, <Xa> (ffe08000/9b208000) */
|
---|
4348 | //#define IEM_INSTR_IMPL_A64__SMSUBL_64WA_dp_3src(Rd, Rn, Ra, Rm, U)
|
---|
4349 |
|
---|
4350 |
|
---|
4351 | /* SMULH <Xd>, <Xn>, <Xm> (ffe0fc00/9b407c00) */
|
---|
4352 | //#define IEM_INSTR_IMPL_A64__SMULH_64_dp_3src(Rd, Rn, Rm, U)
|
---|
4353 |
|
---|
4354 |
|
---|
4355 | /* MADDPT <Xd>, <Xn>, <Xm>, <Xa> (ffe08000/9b600000) */
|
---|
4356 | //#define IEM_INSTR_IMPL_A64__MADDPT_64A_dp_3src(Rd, Rn, Ra, Rm)
|
---|
4357 |
|
---|
4358 |
|
---|
4359 | /* MSUBPT <Xd>, <Xn>, <Xm>, <Xa> (ffe08000/9b608000) */
|
---|
4360 | //#define IEM_INSTR_IMPL_A64__MSUBPT_64A_dp_3src(Rd, Rn, Ra, Rm)
|
---|
4361 |
|
---|
4362 |
|
---|
4363 | /* UMADDL <Xd>, <Wn>, <Wm>, <Xa> (ffe08000/9ba00000) */
|
---|
4364 | //#define IEM_INSTR_IMPL_A64__UMADDL_64WA_dp_3src(Rd, Rn, Ra, Rm, U)
|
---|
4365 |
|
---|
4366 |
|
---|
4367 | /* UMSUBL <Xd>, <Wn>, <Wm>, <Xa> (ffe08000/9ba08000) */
|
---|
4368 | //#define IEM_INSTR_IMPL_A64__UMSUBL_64WA_dp_3src(Rd, Rn, Ra, Rm, U)
|
---|
4369 |
|
---|
4370 |
|
---|
4371 | /* UMULH <Xd>, <Xn>, <Xm> (ffe0fc00/9bc07c00) */
|
---|
4372 | //#define IEM_INSTR_IMPL_A64__UMULH_64_dp_3src(Rd, Rn, Rm, U)
|
---|
4373 |
|
---|
4374 |
|
---|
4375 |
|
---|
4376 | /*
|
---|
4377 | *
|
---|
4378 | * Instruction Set & Groups: exception / control / A64
|
---|
4379 | *
|
---|
4380 | */
|
---|
4381 |
|
---|
4382 | /* SVC #<imm> (ffe0001f/d4000001) */
|
---|
4383 | //#define IEM_INSTR_IMPL_A64__SVC_EX_exception(imm16)
|
---|
4384 |
|
---|
4385 |
|
---|
4386 | /* HVC #<imm> (ffe0001f/d4000002) */
|
---|
4387 | //#define IEM_INSTR_IMPL_A64__HVC_EX_exception(imm16)
|
---|
4388 |
|
---|
4389 |
|
---|
4390 | /* SMC #<imm> (ffe0001f/d4000003) */
|
---|
4391 | //#define IEM_INSTR_IMPL_A64__SMC_EX_exception(imm16)
|
---|
4392 |
|
---|
4393 |
|
---|
4394 | /* BRK #<imm> (ffe0001f/d4200000) */
|
---|
4395 | //#define IEM_INSTR_IMPL_A64__BRK_EX_exception(imm16)
|
---|
4396 |
|
---|
4397 |
|
---|
4398 | /* HLT #<imm> (ffe0001f/d4400000) */
|
---|
4399 | //#define IEM_INSTR_IMPL_A64__HLT_EX_exception(imm16)
|
---|
4400 |
|
---|
4401 |
|
---|
4402 | /* TCANCEL #<imm> (ffe0001f/d4600000) */
|
---|
4403 | //#define IEM_INSTR_IMPL_A64__TCANCEL_EX_exception(imm16)
|
---|
4404 |
|
---|
4405 |
|
---|
4406 | /* DCPS1{ #<imm>} (ffe0001f/d4a00001) */
|
---|
4407 | //#define IEM_INSTR_IMPL_A64__DCPS1_DC_exception(imm16)
|
---|
4408 |
|
---|
4409 |
|
---|
4410 | /* DCPS2{ #<imm>} (ffe0001f/d4a00002) */
|
---|
4411 | //#define IEM_INSTR_IMPL_A64__DCPS2_DC_exception(imm16)
|
---|
4412 |
|
---|
4413 |
|
---|
4414 | /* DCPS3{ #<imm>} (ffe0001f/d4a00003) */
|
---|
4415 | //#define IEM_INSTR_IMPL_A64__DCPS3_DC_exception(imm16)
|
---|
4416 |
|
---|
4417 |
|
---|
4418 |
|
---|
4419 | /*
|
---|
4420 | *
|
---|
4421 | * Instruction Set & Groups: extract / dpimm / A64
|
---|
4422 | *
|
---|
4423 | */
|
---|
4424 |
|
---|
4425 | /* EXTR <Wd>, <Wn>, <Wm>, #<lsb> (ffe08000/13800000) */
|
---|
4426 | //#define IEM_INSTR_IMPL_A64__EXTR_32_extract(Rd, Rn, imms, Rm)
|
---|
4427 |
|
---|
4428 |
|
---|
4429 | /* EXTR <Xd>, <Xn>, <Xm>, #<lsb> (ffe00000/93c00000) */
|
---|
4430 | //#define IEM_INSTR_IMPL_A64__EXTR_64_extract(Rd, Rn, imms, Rm)
|
---|
4431 |
|
---|
4432 |
|
---|
4433 |
|
---|
4434 | /*
|
---|
4435 | *
|
---|
4436 | * Instruction Set & Groups: float2fix / simd_dp / A64
|
---|
4437 | *
|
---|
4438 | */
|
---|
4439 |
|
---|
4440 | /* SCVTF <Sd>, <Wn>, #<fbits> (ffff0000/1e020000) */
|
---|
4441 | //#define IEM_INSTR_IMPL_A64__SCVTF_S32_float2fix(Rd, Rn, scale)
|
---|
4442 |
|
---|
4443 |
|
---|
4444 | /* UCVTF <Sd>, <Wn>, #<fbits> (ffff0000/1e030000) */
|
---|
4445 | //#define IEM_INSTR_IMPL_A64__UCVTF_S32_float2fix(Rd, Rn, scale)
|
---|
4446 |
|
---|
4447 |
|
---|
4448 | /* FCVTZS <Wd>, <Sn>, #<fbits> (ffff0000/1e180000) */
|
---|
4449 | //#define IEM_INSTR_IMPL_A64__FCVTZS_32S_float2fix(Rd, Rn, scale)
|
---|
4450 |
|
---|
4451 |
|
---|
4452 | /* FCVTZU <Wd>, <Sn>, #<fbits> (ffff0000/1e190000) */
|
---|
4453 | //#define IEM_INSTR_IMPL_A64__FCVTZU_32S_float2fix(Rd, Rn, scale)
|
---|
4454 |
|
---|
4455 |
|
---|
4456 | /* SCVTF <Dd>, <Wn>, #<fbits> (ffff0000/1e420000) */
|
---|
4457 | //#define IEM_INSTR_IMPL_A64__SCVTF_D32_float2fix(Rd, Rn, scale)
|
---|
4458 |
|
---|
4459 |
|
---|
4460 | /* UCVTF <Dd>, <Wn>, #<fbits> (ffff0000/1e430000) */
|
---|
4461 | //#define IEM_INSTR_IMPL_A64__UCVTF_D32_float2fix(Rd, Rn, scale)
|
---|
4462 |
|
---|
4463 |
|
---|
4464 | /* FCVTZS <Wd>, <Dn>, #<fbits> (ffff0000/1e580000) */
|
---|
4465 | //#define IEM_INSTR_IMPL_A64__FCVTZS_32D_float2fix(Rd, Rn, scale)
|
---|
4466 |
|
---|
4467 |
|
---|
4468 | /* FCVTZU <Wd>, <Dn>, #<fbits> (ffff0000/1e590000) */
|
---|
4469 | //#define IEM_INSTR_IMPL_A64__FCVTZU_32D_float2fix(Rd, Rn, scale)
|
---|
4470 |
|
---|
4471 |
|
---|
4472 | /* SCVTF <Hd>, <Wn>, #<fbits> (ffff0000/1ec20000) */
|
---|
4473 | //#define IEM_INSTR_IMPL_A64__SCVTF_H32_float2fix(Rd, Rn, scale)
|
---|
4474 |
|
---|
4475 |
|
---|
4476 | /* UCVTF <Hd>, <Wn>, #<fbits> (ffff0000/1ec30000) */
|
---|
4477 | //#define IEM_INSTR_IMPL_A64__UCVTF_H32_float2fix(Rd, Rn, scale)
|
---|
4478 |
|
---|
4479 |
|
---|
4480 | /* FCVTZS <Wd>, <Hn>, #<fbits> (ffff0000/1ed80000) */
|
---|
4481 | //#define IEM_INSTR_IMPL_A64__FCVTZS_32H_float2fix(Rd, Rn, scale)
|
---|
4482 |
|
---|
4483 |
|
---|
4484 | /* FCVTZU <Wd>, <Hn>, #<fbits> (ffff0000/1ed90000) */
|
---|
4485 | //#define IEM_INSTR_IMPL_A64__FCVTZU_32H_float2fix(Rd, Rn, scale)
|
---|
4486 |
|
---|
4487 |
|
---|
4488 | /* SCVTF <Sd>, <Xn>, #<fbits> (ffff0000/9e020000) */
|
---|
4489 | //#define IEM_INSTR_IMPL_A64__SCVTF_S64_float2fix(Rd, Rn, scale)
|
---|
4490 |
|
---|
4491 |
|
---|
4492 | /* UCVTF <Sd>, <Xn>, #<fbits> (ffff0000/9e030000) */
|
---|
4493 | //#define IEM_INSTR_IMPL_A64__UCVTF_S64_float2fix(Rd, Rn, scale)
|
---|
4494 |
|
---|
4495 |
|
---|
4496 | /* FCVTZS <Xd>, <Sn>, #<fbits> (ffff0000/9e180000) */
|
---|
4497 | //#define IEM_INSTR_IMPL_A64__FCVTZS_64S_float2fix(Rd, Rn, scale)
|
---|
4498 |
|
---|
4499 |
|
---|
4500 | /* FCVTZU <Xd>, <Sn>, #<fbits> (ffff0000/9e190000) */
|
---|
4501 | //#define IEM_INSTR_IMPL_A64__FCVTZU_64S_float2fix(Rd, Rn, scale)
|
---|
4502 |
|
---|
4503 |
|
---|
4504 | /* SCVTF <Dd>, <Xn>, #<fbits> (ffff0000/9e420000) */
|
---|
4505 | //#define IEM_INSTR_IMPL_A64__SCVTF_D64_float2fix(Rd, Rn, scale)
|
---|
4506 |
|
---|
4507 |
|
---|
4508 | /* UCVTF <Dd>, <Xn>, #<fbits> (ffff0000/9e430000) */
|
---|
4509 | //#define IEM_INSTR_IMPL_A64__UCVTF_D64_float2fix(Rd, Rn, scale)
|
---|
4510 |
|
---|
4511 |
|
---|
4512 | /* FCVTZS <Xd>, <Dn>, #<fbits> (ffff0000/9e580000) */
|
---|
4513 | //#define IEM_INSTR_IMPL_A64__FCVTZS_64D_float2fix(Rd, Rn, scale)
|
---|
4514 |
|
---|
4515 |
|
---|
4516 | /* FCVTZU <Xd>, <Dn>, #<fbits> (ffff0000/9e590000) */
|
---|
4517 | //#define IEM_INSTR_IMPL_A64__FCVTZU_64D_float2fix(Rd, Rn, scale)
|
---|
4518 |
|
---|
4519 |
|
---|
4520 | /* SCVTF <Hd>, <Xn>, #<fbits> (ffff0000/9ec20000) */
|
---|
4521 | //#define IEM_INSTR_IMPL_A64__SCVTF_H64_float2fix(Rd, Rn, scale)
|
---|
4522 |
|
---|
4523 |
|
---|
4524 | /* UCVTF <Hd>, <Xn>, #<fbits> (ffff0000/9ec30000) */
|
---|
4525 | //#define IEM_INSTR_IMPL_A64__UCVTF_H64_float2fix(Rd, Rn, scale)
|
---|
4526 |
|
---|
4527 |
|
---|
4528 | /* FCVTZS <Xd>, <Hn>, #<fbits> (ffff0000/9ed80000) */
|
---|
4529 | //#define IEM_INSTR_IMPL_A64__FCVTZS_64H_float2fix(Rd, Rn, scale)
|
---|
4530 |
|
---|
4531 |
|
---|
4532 | /* FCVTZU <Xd>, <Hn>, #<fbits> (ffff0000/9ed90000) */
|
---|
4533 | //#define IEM_INSTR_IMPL_A64__FCVTZU_64H_float2fix(Rd, Rn, scale)
|
---|
4534 |
|
---|
4535 |
|
---|
4536 |
|
---|
4537 | /*
|
---|
4538 | *
|
---|
4539 | * Instruction Set & Groups: float2int / simd_dp / A64
|
---|
4540 | *
|
---|
4541 | */
|
---|
4542 |
|
---|
4543 | /* FCVTNS <Wd>, <Sn> (fffffc00/1e200000) */
|
---|
4544 | //#define IEM_INSTR_IMPL_A64__FCVTNS_32S_float2int(Rd, Rn)
|
---|
4545 |
|
---|
4546 |
|
---|
4547 | /* FCVTNU <Wd>, <Sn> (fffffc00/1e210000) */
|
---|
4548 | //#define IEM_INSTR_IMPL_A64__FCVTNU_32S_float2int(Rd, Rn)
|
---|
4549 |
|
---|
4550 |
|
---|
4551 | /* SCVTF <Sd>, <Wn> (fffffc00/1e220000) */
|
---|
4552 | //#define IEM_INSTR_IMPL_A64__SCVTF_S32_float2int(Rd, Rn)
|
---|
4553 |
|
---|
4554 |
|
---|
4555 | /* UCVTF <Sd>, <Wn> (fffffc00/1e230000) */
|
---|
4556 | //#define IEM_INSTR_IMPL_A64__UCVTF_S32_float2int(Rd, Rn)
|
---|
4557 |
|
---|
4558 |
|
---|
4559 | /* FCVTAS <Wd>, <Sn> (fffffc00/1e240000) */
|
---|
4560 | //#define IEM_INSTR_IMPL_A64__FCVTAS_32S_float2int(Rd, Rn)
|
---|
4561 |
|
---|
4562 |
|
---|
4563 | /* FCVTAU <Wd>, <Sn> (fffffc00/1e250000) */
|
---|
4564 | //#define IEM_INSTR_IMPL_A64__FCVTAU_32S_float2int(Rd, Rn)
|
---|
4565 |
|
---|
4566 |
|
---|
4567 | /* FMOV <Wd>, <Sn> (fffffc00/1e260000) */
|
---|
4568 | //#define IEM_INSTR_IMPL_A64__FMOV_32S_float2int(Rd, Rn)
|
---|
4569 |
|
---|
4570 |
|
---|
4571 | /* FMOV <Sd>, <Wn> (fffffc00/1e270000) */
|
---|
4572 | //#define IEM_INSTR_IMPL_A64__FMOV_S32_float2int(Rd, Rn)
|
---|
4573 |
|
---|
4574 |
|
---|
4575 | /* FCVTPS <Wd>, <Sn> (fffffc00/1e280000) */
|
---|
4576 | //#define IEM_INSTR_IMPL_A64__FCVTPS_32S_float2int(Rd, Rn)
|
---|
4577 |
|
---|
4578 |
|
---|
4579 | /* FCVTPU <Wd>, <Sn> (fffffc00/1e290000) */
|
---|
4580 | //#define IEM_INSTR_IMPL_A64__FCVTPU_32S_float2int(Rd, Rn)
|
---|
4581 |
|
---|
4582 |
|
---|
4583 | /* FCVTMS <Wd>, <Sn> (fffffc00/1e300000) */
|
---|
4584 | //#define IEM_INSTR_IMPL_A64__FCVTMS_32S_float2int(Rd, Rn)
|
---|
4585 |
|
---|
4586 |
|
---|
4587 | /* FCVTMU <Wd>, <Sn> (fffffc00/1e310000) */
|
---|
4588 | //#define IEM_INSTR_IMPL_A64__FCVTMU_32S_float2int(Rd, Rn)
|
---|
4589 |
|
---|
4590 |
|
---|
4591 | /* FCVTZS <Wd>, <Sn> (fffffc00/1e380000) */
|
---|
4592 | //#define IEM_INSTR_IMPL_A64__FCVTZS_32S_float2int(Rd, Rn)
|
---|
4593 |
|
---|
4594 |
|
---|
4595 | /* FCVTZU <Wd>, <Sn> (fffffc00/1e390000) */
|
---|
4596 | //#define IEM_INSTR_IMPL_A64__FCVTZU_32S_float2int(Rd, Rn)
|
---|
4597 |
|
---|
4598 |
|
---|
4599 | /* FCVTNS <Wd>, <Dn> (fffffc00/1e600000) */
|
---|
4600 | //#define IEM_INSTR_IMPL_A64__FCVTNS_32D_float2int(Rd, Rn)
|
---|
4601 |
|
---|
4602 |
|
---|
4603 | /* FCVTNU <Wd>, <Dn> (fffffc00/1e610000) */
|
---|
4604 | //#define IEM_INSTR_IMPL_A64__FCVTNU_32D_float2int(Rd, Rn)
|
---|
4605 |
|
---|
4606 |
|
---|
4607 | /* SCVTF <Dd>, <Wn> (fffffc00/1e620000) */
|
---|
4608 | //#define IEM_INSTR_IMPL_A64__SCVTF_D32_float2int(Rd, Rn)
|
---|
4609 |
|
---|
4610 |
|
---|
4611 | /* UCVTF <Dd>, <Wn> (fffffc00/1e630000) */
|
---|
4612 | //#define IEM_INSTR_IMPL_A64__UCVTF_D32_float2int(Rd, Rn)
|
---|
4613 |
|
---|
4614 |
|
---|
4615 | /* FCVTAS <Wd>, <Dn> (fffffc00/1e640000) */
|
---|
4616 | //#define IEM_INSTR_IMPL_A64__FCVTAS_32D_float2int(Rd, Rn)
|
---|
4617 |
|
---|
4618 |
|
---|
4619 | /* FCVTAU <Wd>, <Dn> (fffffc00/1e650000) */
|
---|
4620 | //#define IEM_INSTR_IMPL_A64__FCVTAU_32D_float2int(Rd, Rn)
|
---|
4621 |
|
---|
4622 |
|
---|
4623 | /* FCVTPS <Wd>, <Dn> (fffffc00/1e680000) */
|
---|
4624 | //#define IEM_INSTR_IMPL_A64__FCVTPS_32D_float2int(Rd, Rn)
|
---|
4625 |
|
---|
4626 |
|
---|
4627 | /* FCVTPU <Wd>, <Dn> (fffffc00/1e690000) */
|
---|
4628 | //#define IEM_INSTR_IMPL_A64__FCVTPU_32D_float2int(Rd, Rn)
|
---|
4629 |
|
---|
4630 |
|
---|
4631 | /* FCVTMS <Wd>, <Dn> (fffffc00/1e700000) */
|
---|
4632 | //#define IEM_INSTR_IMPL_A64__FCVTMS_32D_float2int(Rd, Rn)
|
---|
4633 |
|
---|
4634 |
|
---|
4635 | /* FCVTMU <Wd>, <Dn> (fffffc00/1e710000) */
|
---|
4636 | //#define IEM_INSTR_IMPL_A64__FCVTMU_32D_float2int(Rd, Rn)
|
---|
4637 |
|
---|
4638 |
|
---|
4639 | /* FCVTZS <Wd>, <Dn> (fffffc00/1e780000) */
|
---|
4640 | //#define IEM_INSTR_IMPL_A64__FCVTZS_32D_float2int(Rd, Rn)
|
---|
4641 |
|
---|
4642 |
|
---|
4643 | /* FCVTZU <Wd>, <Dn> (fffffc00/1e790000) */
|
---|
4644 | //#define IEM_INSTR_IMPL_A64__FCVTZU_32D_float2int(Rd, Rn)
|
---|
4645 |
|
---|
4646 |
|
---|
4647 | /* FJCVTZS <Wd>, <Dn> (fffffc00/1e7e0000) */
|
---|
4648 | //#define IEM_INSTR_IMPL_A64__FJCVTZS_32D_float2int(Rd, Rn)
|
---|
4649 |
|
---|
4650 |
|
---|
4651 | /* FCVTNS <Wd>, <Hn> (fffffc00/1ee00000) */
|
---|
4652 | //#define IEM_INSTR_IMPL_A64__FCVTNS_32H_float2int(Rd, Rn)
|
---|
4653 |
|
---|
4654 |
|
---|
4655 | /* FCVTNU <Wd>, <Hn> (fffffc00/1ee10000) */
|
---|
4656 | //#define IEM_INSTR_IMPL_A64__FCVTNU_32H_float2int(Rd, Rn)
|
---|
4657 |
|
---|
4658 |
|
---|
4659 | /* SCVTF <Hd>, <Wn> (fffffc00/1ee20000) */
|
---|
4660 | //#define IEM_INSTR_IMPL_A64__SCVTF_H32_float2int(Rd, Rn)
|
---|
4661 |
|
---|
4662 |
|
---|
4663 | /* UCVTF <Hd>, <Wn> (fffffc00/1ee30000) */
|
---|
4664 | //#define IEM_INSTR_IMPL_A64__UCVTF_H32_float2int(Rd, Rn)
|
---|
4665 |
|
---|
4666 |
|
---|
4667 | /* FCVTAS <Wd>, <Hn> (fffffc00/1ee40000) */
|
---|
4668 | //#define IEM_INSTR_IMPL_A64__FCVTAS_32H_float2int(Rd, Rn)
|
---|
4669 |
|
---|
4670 |
|
---|
4671 | /* FCVTAU <Wd>, <Hn> (fffffc00/1ee50000) */
|
---|
4672 | //#define IEM_INSTR_IMPL_A64__FCVTAU_32H_float2int(Rd, Rn)
|
---|
4673 |
|
---|
4674 |
|
---|
4675 | /* FMOV <Wd>, <Hn> (fffffc00/1ee60000) */
|
---|
4676 | //#define IEM_INSTR_IMPL_A64__FMOV_32H_float2int(Rd, Rn)
|
---|
4677 |
|
---|
4678 |
|
---|
4679 | /* FMOV <Hd>, <Wn> (fffffc00/1ee70000) */
|
---|
4680 | //#define IEM_INSTR_IMPL_A64__FMOV_H32_float2int(Rd, Rn)
|
---|
4681 |
|
---|
4682 |
|
---|
4683 | /* FCVTPS <Wd>, <Hn> (fffffc00/1ee80000) */
|
---|
4684 | //#define IEM_INSTR_IMPL_A64__FCVTPS_32H_float2int(Rd, Rn)
|
---|
4685 |
|
---|
4686 |
|
---|
4687 | /* FCVTPU <Wd>, <Hn> (fffffc00/1ee90000) */
|
---|
4688 | //#define IEM_INSTR_IMPL_A64__FCVTPU_32H_float2int(Rd, Rn)
|
---|
4689 |
|
---|
4690 |
|
---|
4691 | /* FCVTMS <Wd>, <Hn> (fffffc00/1ef00000) */
|
---|
4692 | //#define IEM_INSTR_IMPL_A64__FCVTMS_32H_float2int(Rd, Rn)
|
---|
4693 |
|
---|
4694 |
|
---|
4695 | /* FCVTMU <Wd>, <Hn> (fffffc00/1ef10000) */
|
---|
4696 | //#define IEM_INSTR_IMPL_A64__FCVTMU_32H_float2int(Rd, Rn)
|
---|
4697 |
|
---|
4698 |
|
---|
4699 | /* FCVTZS <Wd>, <Hn> (fffffc00/1ef80000) */
|
---|
4700 | //#define IEM_INSTR_IMPL_A64__FCVTZS_32H_float2int(Rd, Rn)
|
---|
4701 |
|
---|
4702 |
|
---|
4703 | /* FCVTZU <Wd>, <Hn> (fffffc00/1ef90000) */
|
---|
4704 | //#define IEM_INSTR_IMPL_A64__FCVTZU_32H_float2int(Rd, Rn)
|
---|
4705 |
|
---|
4706 |
|
---|
4707 | /* FCVTNS <Xd>, <Sn> (fffffc00/9e200000) */
|
---|
4708 | //#define IEM_INSTR_IMPL_A64__FCVTNS_64S_float2int(Rd, Rn)
|
---|
4709 |
|
---|
4710 |
|
---|
4711 | /* FCVTNU <Xd>, <Sn> (fffffc00/9e210000) */
|
---|
4712 | //#define IEM_INSTR_IMPL_A64__FCVTNU_64S_float2int(Rd, Rn)
|
---|
4713 |
|
---|
4714 |
|
---|
4715 | /* SCVTF <Sd>, <Xn> (fffffc00/9e220000) */
|
---|
4716 | //#define IEM_INSTR_IMPL_A64__SCVTF_S64_float2int(Rd, Rn)
|
---|
4717 |
|
---|
4718 |
|
---|
4719 | /* UCVTF <Sd>, <Xn> (fffffc00/9e230000) */
|
---|
4720 | //#define IEM_INSTR_IMPL_A64__UCVTF_S64_float2int(Rd, Rn)
|
---|
4721 |
|
---|
4722 |
|
---|
4723 | /* FCVTAS <Xd>, <Sn> (fffffc00/9e240000) */
|
---|
4724 | //#define IEM_INSTR_IMPL_A64__FCVTAS_64S_float2int(Rd, Rn)
|
---|
4725 |
|
---|
4726 |
|
---|
4727 | /* FCVTAU <Xd>, <Sn> (fffffc00/9e250000) */
|
---|
4728 | //#define IEM_INSTR_IMPL_A64__FCVTAU_64S_float2int(Rd, Rn)
|
---|
4729 |
|
---|
4730 |
|
---|
4731 | /* FCVTPS <Xd>, <Sn> (fffffc00/9e280000) */
|
---|
4732 | //#define IEM_INSTR_IMPL_A64__FCVTPS_64S_float2int(Rd, Rn)
|
---|
4733 |
|
---|
4734 |
|
---|
4735 | /* FCVTPU <Xd>, <Sn> (fffffc00/9e290000) */
|
---|
4736 | //#define IEM_INSTR_IMPL_A64__FCVTPU_64S_float2int(Rd, Rn)
|
---|
4737 |
|
---|
4738 |
|
---|
4739 | /* FCVTMS <Xd>, <Sn> (fffffc00/9e300000) */
|
---|
4740 | //#define IEM_INSTR_IMPL_A64__FCVTMS_64S_float2int(Rd, Rn)
|
---|
4741 |
|
---|
4742 |
|
---|
4743 | /* FCVTMU <Xd>, <Sn> (fffffc00/9e310000) */
|
---|
4744 | //#define IEM_INSTR_IMPL_A64__FCVTMU_64S_float2int(Rd, Rn)
|
---|
4745 |
|
---|
4746 |
|
---|
4747 | /* FCVTZS <Xd>, <Sn> (fffffc00/9e380000) */
|
---|
4748 | //#define IEM_INSTR_IMPL_A64__FCVTZS_64S_float2int(Rd, Rn)
|
---|
4749 |
|
---|
4750 |
|
---|
4751 | /* FCVTZU <Xd>, <Sn> (fffffc00/9e390000) */
|
---|
4752 | //#define IEM_INSTR_IMPL_A64__FCVTZU_64S_float2int(Rd, Rn)
|
---|
4753 |
|
---|
4754 |
|
---|
4755 | /* FCVTNS <Xd>, <Dn> (fffffc00/9e600000) */
|
---|
4756 | //#define IEM_INSTR_IMPL_A64__FCVTNS_64D_float2int(Rd, Rn)
|
---|
4757 |
|
---|
4758 |
|
---|
4759 | /* FCVTNU <Xd>, <Dn> (fffffc00/9e610000) */
|
---|
4760 | //#define IEM_INSTR_IMPL_A64__FCVTNU_64D_float2int(Rd, Rn)
|
---|
4761 |
|
---|
4762 |
|
---|
4763 | /* SCVTF <Dd>, <Xn> (fffffc00/9e620000) */
|
---|
4764 | //#define IEM_INSTR_IMPL_A64__SCVTF_D64_float2int(Rd, Rn)
|
---|
4765 |
|
---|
4766 |
|
---|
4767 | /* UCVTF <Dd>, <Xn> (fffffc00/9e630000) */
|
---|
4768 | //#define IEM_INSTR_IMPL_A64__UCVTF_D64_float2int(Rd, Rn)
|
---|
4769 |
|
---|
4770 |
|
---|
4771 | /* FCVTAS <Xd>, <Dn> (fffffc00/9e640000) */
|
---|
4772 | //#define IEM_INSTR_IMPL_A64__FCVTAS_64D_float2int(Rd, Rn)
|
---|
4773 |
|
---|
4774 |
|
---|
4775 | /* FCVTAU <Xd>, <Dn> (fffffc00/9e650000) */
|
---|
4776 | //#define IEM_INSTR_IMPL_A64__FCVTAU_64D_float2int(Rd, Rn)
|
---|
4777 |
|
---|
4778 |
|
---|
4779 | /* FMOV <Xd>, <Dn> (fffffc00/9e660000) */
|
---|
4780 | //#define IEM_INSTR_IMPL_A64__FMOV_64D_float2int(Rd, Rn)
|
---|
4781 |
|
---|
4782 |
|
---|
4783 | /* FMOV <Dd>, <Xn> (fffffc00/9e670000) */
|
---|
4784 | //#define IEM_INSTR_IMPL_A64__FMOV_D64_float2int(Rd, Rn)
|
---|
4785 |
|
---|
4786 |
|
---|
4787 | /* FCVTPS <Xd>, <Dn> (fffffc00/9e680000) */
|
---|
4788 | //#define IEM_INSTR_IMPL_A64__FCVTPS_64D_float2int(Rd, Rn)
|
---|
4789 |
|
---|
4790 |
|
---|
4791 | /* FCVTPU <Xd>, <Dn> (fffffc00/9e690000) */
|
---|
4792 | //#define IEM_INSTR_IMPL_A64__FCVTPU_64D_float2int(Rd, Rn)
|
---|
4793 |
|
---|
4794 |
|
---|
4795 | /* FCVTMS <Xd>, <Dn> (fffffc00/9e700000) */
|
---|
4796 | //#define IEM_INSTR_IMPL_A64__FCVTMS_64D_float2int(Rd, Rn)
|
---|
4797 |
|
---|
4798 |
|
---|
4799 | /* FCVTMU <Xd>, <Dn> (fffffc00/9e710000) */
|
---|
4800 | //#define IEM_INSTR_IMPL_A64__FCVTMU_64D_float2int(Rd, Rn)
|
---|
4801 |
|
---|
4802 |
|
---|
4803 | /* FCVTZS <Xd>, <Dn> (fffffc00/9e780000) */
|
---|
4804 | //#define IEM_INSTR_IMPL_A64__FCVTZS_64D_float2int(Rd, Rn)
|
---|
4805 |
|
---|
4806 |
|
---|
4807 | /* FCVTZU <Xd>, <Dn> (fffffc00/9e790000) */
|
---|
4808 | //#define IEM_INSTR_IMPL_A64__FCVTZU_64D_float2int(Rd, Rn)
|
---|
4809 |
|
---|
4810 |
|
---|
4811 | /* FMOV <Xd>, <Vn>.D[1] (fffffc00/9eae0000) */
|
---|
4812 | //#define IEM_INSTR_IMPL_A64__FMOV_64VX_float2int(Rd, Rn)
|
---|
4813 |
|
---|
4814 |
|
---|
4815 | /* FMOV <Vd>.D[1], <Xn> (fffffc00/9eaf0000) */
|
---|
4816 | //#define IEM_INSTR_IMPL_A64__FMOV_V64I_float2int(Rd, Rn)
|
---|
4817 |
|
---|
4818 |
|
---|
4819 | /* FCVTNS <Xd>, <Hn> (fffffc00/9ee00000) */
|
---|
4820 | //#define IEM_INSTR_IMPL_A64__FCVTNS_64H_float2int(Rd, Rn)
|
---|
4821 |
|
---|
4822 |
|
---|
4823 | /* FCVTNU <Xd>, <Hn> (fffffc00/9ee10000) */
|
---|
4824 | //#define IEM_INSTR_IMPL_A64__FCVTNU_64H_float2int(Rd, Rn)
|
---|
4825 |
|
---|
4826 |
|
---|
4827 | /* SCVTF <Hd>, <Xn> (fffffc00/9ee20000) */
|
---|
4828 | //#define IEM_INSTR_IMPL_A64__SCVTF_H64_float2int(Rd, Rn)
|
---|
4829 |
|
---|
4830 |
|
---|
4831 | /* UCVTF <Hd>, <Xn> (fffffc00/9ee30000) */
|
---|
4832 | //#define IEM_INSTR_IMPL_A64__UCVTF_H64_float2int(Rd, Rn)
|
---|
4833 |
|
---|
4834 |
|
---|
4835 | /* FCVTAS <Xd>, <Hn> (fffffc00/9ee40000) */
|
---|
4836 | //#define IEM_INSTR_IMPL_A64__FCVTAS_64H_float2int(Rd, Rn)
|
---|
4837 |
|
---|
4838 |
|
---|
4839 | /* FCVTAU <Xd>, <Hn> (fffffc00/9ee50000) */
|
---|
4840 | //#define IEM_INSTR_IMPL_A64__FCVTAU_64H_float2int(Rd, Rn)
|
---|
4841 |
|
---|
4842 |
|
---|
4843 | /* FMOV <Xd>, <Hn> (fffffc00/9ee60000) */
|
---|
4844 | //#define IEM_INSTR_IMPL_A64__FMOV_64H_float2int(Rd, Rn)
|
---|
4845 |
|
---|
4846 |
|
---|
4847 | /* FMOV <Hd>, <Xn> (fffffc00/9ee70000) */
|
---|
4848 | //#define IEM_INSTR_IMPL_A64__FMOV_H64_float2int(Rd, Rn)
|
---|
4849 |
|
---|
4850 |
|
---|
4851 | /* FCVTPS <Xd>, <Hn> (fffffc00/9ee80000) */
|
---|
4852 | //#define IEM_INSTR_IMPL_A64__FCVTPS_64H_float2int(Rd, Rn)
|
---|
4853 |
|
---|
4854 |
|
---|
4855 | /* FCVTPU <Xd>, <Hn> (fffffc00/9ee90000) */
|
---|
4856 | //#define IEM_INSTR_IMPL_A64__FCVTPU_64H_float2int(Rd, Rn)
|
---|
4857 |
|
---|
4858 |
|
---|
4859 | /* FCVTMS <Xd>, <Hn> (fffffc00/9ef00000) */
|
---|
4860 | //#define IEM_INSTR_IMPL_A64__FCVTMS_64H_float2int(Rd, Rn)
|
---|
4861 |
|
---|
4862 |
|
---|
4863 | /* FCVTMU <Xd>, <Hn> (fffffc00/9ef10000) */
|
---|
4864 | //#define IEM_INSTR_IMPL_A64__FCVTMU_64H_float2int(Rd, Rn)
|
---|
4865 |
|
---|
4866 |
|
---|
4867 | /* FCVTZS <Xd>, <Hn> (fffffc00/9ef80000) */
|
---|
4868 | //#define IEM_INSTR_IMPL_A64__FCVTZS_64H_float2int(Rd, Rn)
|
---|
4869 |
|
---|
4870 |
|
---|
4871 | /* FCVTZU <Xd>, <Hn> (fffffc00/9ef90000) */
|
---|
4872 | //#define IEM_INSTR_IMPL_A64__FCVTZU_64H_float2int(Rd, Rn)
|
---|
4873 |
|
---|
4874 |
|
---|
4875 | /* FCVTNS <Sd>, <Dn> (fffffc00/1e6a0000) */
|
---|
4876 | //#define IEM_INSTR_IMPL_A64__FCVTNS_sisd_32D(Rd, Rn)
|
---|
4877 |
|
---|
4878 |
|
---|
4879 | /* FCVTAS <Sd>, <Dn> (fffffc00/1e7a0000) */
|
---|
4880 | //#define IEM_INSTR_IMPL_A64__FCVTAS_sisd_32D(Rd, Rn)
|
---|
4881 |
|
---|
4882 |
|
---|
4883 | /* FCVTPS <Sd>, <Dn> (fffffc00/1e720000) */
|
---|
4884 | //#define IEM_INSTR_IMPL_A64__FCVTPS_sisd_32D(Rd, Rn)
|
---|
4885 |
|
---|
4886 |
|
---|
4887 | /* FCVTMS <Sd>, <Dn> (fffffc00/1e740000) */
|
---|
4888 | //#define IEM_INSTR_IMPL_A64__FCVTMS_sisd_32D(Rd, Rn)
|
---|
4889 |
|
---|
4890 |
|
---|
4891 | /* FCVTZS <Sd>, <Dn> (fffffc00/1e760000) */
|
---|
4892 | //#define IEM_INSTR_IMPL_A64__FCVTZS_sisd_32D(Rd, Rn)
|
---|
4893 |
|
---|
4894 |
|
---|
4895 | /* SCVTF <Dd>, <Sn> (fffffc00/1e7c0000) */
|
---|
4896 | //#define IEM_INSTR_IMPL_A64__SCVTF_sisd_32D(Rd, Rn)
|
---|
4897 |
|
---|
4898 |
|
---|
4899 | /* FCVTNU <Sd>, <Dn> (fffffc00/1e6b0000) */
|
---|
4900 | //#define IEM_INSTR_IMPL_A64__FCVTNU_sisd_32D(Rd, Rn)
|
---|
4901 |
|
---|
4902 |
|
---|
4903 | /* FCVTAU <Sd>, <Dn> (fffffc00/1e7b0000) */
|
---|
4904 | //#define IEM_INSTR_IMPL_A64__FCVTAU_sisd_32D(Rd, Rn)
|
---|
4905 |
|
---|
4906 |
|
---|
4907 | /* FCVTPU <Sd>, <Dn> (fffffc00/1e730000) */
|
---|
4908 | //#define IEM_INSTR_IMPL_A64__FCVTPU_sisd_32D(Rd, Rn)
|
---|
4909 |
|
---|
4910 |
|
---|
4911 | /* FCVTMU <Sd>, <Dn> (fffffc00/1e750000) */
|
---|
4912 | //#define IEM_INSTR_IMPL_A64__FCVTMU_sisd_32D(Rd, Rn)
|
---|
4913 |
|
---|
4914 |
|
---|
4915 | /* FCVTZU <Sd>, <Dn> (fffffc00/1e770000) */
|
---|
4916 | //#define IEM_INSTR_IMPL_A64__FCVTZU_sisd_32D(Rd, Rn)
|
---|
4917 |
|
---|
4918 |
|
---|
4919 | /* UCVTF <Dd>, <Sn> (fffffc00/1e7d0000) */
|
---|
4920 | //#define IEM_INSTR_IMPL_A64__UCVTF_sisd_32D(Rd, Rn)
|
---|
4921 |
|
---|
4922 |
|
---|
4923 | /* FCVTNS <Sd>, <Hn> (fffffc00/1eea0000) */
|
---|
4924 | //#define IEM_INSTR_IMPL_A64__FCVTNS_sisd_32H(Rd, Rn)
|
---|
4925 |
|
---|
4926 |
|
---|
4927 | /* FCVTAS <Sd>, <Hn> (fffffc00/1efa0000) */
|
---|
4928 | //#define IEM_INSTR_IMPL_A64__FCVTAS_sisd_32H(Rd, Rn)
|
---|
4929 |
|
---|
4930 |
|
---|
4931 | /* FCVTPS <Sd>, <Hn> (fffffc00/1ef20000) */
|
---|
4932 | //#define IEM_INSTR_IMPL_A64__FCVTPS_sisd_32H(Rd, Rn)
|
---|
4933 |
|
---|
4934 |
|
---|
4935 | /* FCVTMS <Sd>, <Hn> (fffffc00/1ef40000) */
|
---|
4936 | //#define IEM_INSTR_IMPL_A64__FCVTMS_sisd_32H(Rd, Rn)
|
---|
4937 |
|
---|
4938 |
|
---|
4939 | /* FCVTZS <Sd>, <Hn> (fffffc00/1ef60000) */
|
---|
4940 | //#define IEM_INSTR_IMPL_A64__FCVTZS_sisd_32H(Rd, Rn)
|
---|
4941 |
|
---|
4942 |
|
---|
4943 | /* SCVTF <Hd>, <Sn> (fffffc00/1efc0000) */
|
---|
4944 | //#define IEM_INSTR_IMPL_A64__SCVTF_sisd_32H(Rd, Rn)
|
---|
4945 |
|
---|
4946 |
|
---|
4947 | /* FCVTNU <Sd>, <Hn> (fffffc00/1eeb0000) */
|
---|
4948 | //#define IEM_INSTR_IMPL_A64__FCVTNU_sisd_32H(Rd, Rn)
|
---|
4949 |
|
---|
4950 |
|
---|
4951 | /* FCVTAU <Sd>, <Hn> (fffffc00/1efb0000) */
|
---|
4952 | //#define IEM_INSTR_IMPL_A64__FCVTAU_sisd_32H(Rd, Rn)
|
---|
4953 |
|
---|
4954 |
|
---|
4955 | /* FCVTPU <Sd>, <Hn> (fffffc00/1ef30000) */
|
---|
4956 | //#define IEM_INSTR_IMPL_A64__FCVTPU_sisd_32H(Rd, Rn)
|
---|
4957 |
|
---|
4958 |
|
---|
4959 | /* FCVTMU <Sd>, <Hn> (fffffc00/1ef50000) */
|
---|
4960 | //#define IEM_INSTR_IMPL_A64__FCVTMU_sisd_32H(Rd, Rn)
|
---|
4961 |
|
---|
4962 |
|
---|
4963 | /* FCVTZU <Sd>, <Hn> (fffffc00/1ef70000) */
|
---|
4964 | //#define IEM_INSTR_IMPL_A64__FCVTZU_sisd_32H(Rd, Rn)
|
---|
4965 |
|
---|
4966 |
|
---|
4967 | /* UCVTF <Hd>, <Sn> (fffffc00/1efd0000) */
|
---|
4968 | //#define IEM_INSTR_IMPL_A64__UCVTF_sisd_32H(Rd, Rn)
|
---|
4969 |
|
---|
4970 |
|
---|
4971 | /* FCVTNS <Dd>, <Hn> (fffffc00/9eea0000) */
|
---|
4972 | //#define IEM_INSTR_IMPL_A64__FCVTNS_sisd_64H(Rd, Rn)
|
---|
4973 |
|
---|
4974 |
|
---|
4975 | /* FCVTAS <Dd>, <Hn> (fffffc00/9efa0000) */
|
---|
4976 | //#define IEM_INSTR_IMPL_A64__FCVTAS_sisd_64H(Rd, Rn)
|
---|
4977 |
|
---|
4978 |
|
---|
4979 | /* FCVTPS <Dd>, <Hn> (fffffc00/9ef20000) */
|
---|
4980 | //#define IEM_INSTR_IMPL_A64__FCVTPS_sisd_64H(Rd, Rn)
|
---|
4981 |
|
---|
4982 |
|
---|
4983 | /* FCVTMS <Dd>, <Hn> (fffffc00/9ef40000) */
|
---|
4984 | //#define IEM_INSTR_IMPL_A64__FCVTMS_sisd_64H(Rd, Rn)
|
---|
4985 |
|
---|
4986 |
|
---|
4987 | /* FCVTZS <Dd>, <Hn> (fffffc00/9ef60000) */
|
---|
4988 | //#define IEM_INSTR_IMPL_A64__FCVTZS_sisd_64H(Rd, Rn)
|
---|
4989 |
|
---|
4990 |
|
---|
4991 | /* SCVTF <Hd>, <Dn> (fffffc00/9efc0000) */
|
---|
4992 | //#define IEM_INSTR_IMPL_A64__SCVTF_sisd_64H(Rd, Rn)
|
---|
4993 |
|
---|
4994 |
|
---|
4995 | /* FCVTNU <Dd>, <Hn> (fffffc00/9eeb0000) */
|
---|
4996 | //#define IEM_INSTR_IMPL_A64__FCVTNU_sisd_64H(Rd, Rn)
|
---|
4997 |
|
---|
4998 |
|
---|
4999 | /* FCVTAU <Dd>, <Hn> (fffffc00/9efb0000) */
|
---|
5000 | //#define IEM_INSTR_IMPL_A64__FCVTAU_sisd_64H(Rd, Rn)
|
---|
5001 |
|
---|
5002 |
|
---|
5003 | /* FCVTPU <Dd>, <Hn> (fffffc00/9ef30000) */
|
---|
5004 | //#define IEM_INSTR_IMPL_A64__FCVTPU_sisd_64H(Rd, Rn)
|
---|
5005 |
|
---|
5006 |
|
---|
5007 | /* FCVTMU <Dd>, <Hn> (fffffc00/9ef50000) */
|
---|
5008 | //#define IEM_INSTR_IMPL_A64__FCVTMU_sisd_64H(Rd, Rn)
|
---|
5009 |
|
---|
5010 |
|
---|
5011 | /* FCVTZU <Dd>, <Hn> (fffffc00/9ef70000) */
|
---|
5012 | //#define IEM_INSTR_IMPL_A64__FCVTZU_sisd_64H(Rd, Rn)
|
---|
5013 |
|
---|
5014 |
|
---|
5015 | /* UCVTF <Hd>, <Dn> (fffffc00/9efd0000) */
|
---|
5016 | //#define IEM_INSTR_IMPL_A64__UCVTF_sisd_64H(Rd, Rn)
|
---|
5017 |
|
---|
5018 |
|
---|
5019 | /* FCVTNS <Dd>, <Sn> (fffffc00/9e2a0000) */
|
---|
5020 | //#define IEM_INSTR_IMPL_A64__FCVTNS_sisd_64S(Rd, Rn)
|
---|
5021 |
|
---|
5022 |
|
---|
5023 | /* FCVTAS <Dd>, <Sn> (fffffc00/9e3a0000) */
|
---|
5024 | //#define IEM_INSTR_IMPL_A64__FCVTAS_sisd_64S(Rd, Rn)
|
---|
5025 |
|
---|
5026 |
|
---|
5027 | /* FCVTPS <Dd>, <Sn> (fffffc00/9e320000) */
|
---|
5028 | //#define IEM_INSTR_IMPL_A64__FCVTPS_sisd_64S(Rd, Rn)
|
---|
5029 |
|
---|
5030 |
|
---|
5031 | /* FCVTMS <Dd>, <Sn> (fffffc00/9e340000) */
|
---|
5032 | //#define IEM_INSTR_IMPL_A64__FCVTMS_sisd_64S(Rd, Rn)
|
---|
5033 |
|
---|
5034 |
|
---|
5035 | /* FCVTZS <Dd>, <Sn> (fffffc00/9e360000) */
|
---|
5036 | //#define IEM_INSTR_IMPL_A64__FCVTZS_sisd_64S(Rd, Rn)
|
---|
5037 |
|
---|
5038 |
|
---|
5039 | /* SCVTF <Sd>, <Dn> (fffffc00/9e3c0000) */
|
---|
5040 | //#define IEM_INSTR_IMPL_A64__SCVTF_sisd_64S(Rd, Rn)
|
---|
5041 |
|
---|
5042 |
|
---|
5043 | /* FCVTNU <Dd>, <Sn> (fffffc00/9e2b0000) */
|
---|
5044 | //#define IEM_INSTR_IMPL_A64__FCVTNU_sisd_64S(Rd, Rn)
|
---|
5045 |
|
---|
5046 |
|
---|
5047 | /* FCVTAU <Dd>, <Sn> (fffffc00/9e3b0000) */
|
---|
5048 | //#define IEM_INSTR_IMPL_A64__FCVTAU_sisd_64S(Rd, Rn)
|
---|
5049 |
|
---|
5050 |
|
---|
5051 | /* FCVTPU <Dd>, <Sn> (fffffc00/9e330000) */
|
---|
5052 | //#define IEM_INSTR_IMPL_A64__FCVTPU_sisd_64S(Rd, Rn)
|
---|
5053 |
|
---|
5054 |
|
---|
5055 | /* FCVTMU <Dd>, <Sn> (fffffc00/9e350000) */
|
---|
5056 | //#define IEM_INSTR_IMPL_A64__FCVTMU_sisd_64S(Rd, Rn)
|
---|
5057 |
|
---|
5058 |
|
---|
5059 | /* FCVTZU <Dd>, <Sn> (fffffc00/9e370000) */
|
---|
5060 | //#define IEM_INSTR_IMPL_A64__FCVTZU_sisd_64S(Rd, Rn)
|
---|
5061 |
|
---|
5062 |
|
---|
5063 | /* UCVTF <Sd>, <Dn> (fffffc00/9e3d0000) */
|
---|
5064 | //#define IEM_INSTR_IMPL_A64__UCVTF_sisd_64S(Rd, Rn)
|
---|
5065 |
|
---|
5066 |
|
---|
5067 |
|
---|
5068 | /*
|
---|
5069 | *
|
---|
5070 | * Instruction Set & Groups: floatccmp / simd_dp / A64
|
---|
5071 | *
|
---|
5072 | */
|
---|
5073 |
|
---|
5074 | /* FCCMP <Sn>, <Sm>, #<nzcv>, <cond> (ffe00c10/1e200400) */
|
---|
5075 | //#define IEM_INSTR_IMPL_A64__FCCMP_S_floatccmp(nzcv, Rn, cond, Rm)
|
---|
5076 |
|
---|
5077 |
|
---|
5078 | /* FCCMPE <Sn>, <Sm>, #<nzcv>, <cond> (ffe00c10/1e200410) */
|
---|
5079 | //#define IEM_INSTR_IMPL_A64__FCCMPE_S_floatccmp(nzcv, Rn, cond, Rm)
|
---|
5080 |
|
---|
5081 |
|
---|
5082 | /* FCCMP <Dn>, <Dm>, #<nzcv>, <cond> (ffe00c10/1e600400) */
|
---|
5083 | //#define IEM_INSTR_IMPL_A64__FCCMP_D_floatccmp(nzcv, Rn, cond, Rm)
|
---|
5084 |
|
---|
5085 |
|
---|
5086 | /* FCCMPE <Dn>, <Dm>, #<nzcv>, <cond> (ffe00c10/1e600410) */
|
---|
5087 | //#define IEM_INSTR_IMPL_A64__FCCMPE_D_floatccmp(nzcv, Rn, cond, Rm)
|
---|
5088 |
|
---|
5089 |
|
---|
5090 | /* FCCMP <Hn>, <Hm>, #<nzcv>, <cond> (ffe00c10/1ee00400) */
|
---|
5091 | //#define IEM_INSTR_IMPL_A64__FCCMP_H_floatccmp(nzcv, Rn, cond, Rm)
|
---|
5092 |
|
---|
5093 |
|
---|
5094 | /* FCCMPE <Hn>, <Hm>, #<nzcv>, <cond> (ffe00c10/1ee00410) */
|
---|
5095 | //#define IEM_INSTR_IMPL_A64__FCCMPE_H_floatccmp(nzcv, Rn, cond, Rm)
|
---|
5096 |
|
---|
5097 |
|
---|
5098 |
|
---|
5099 | /*
|
---|
5100 | *
|
---|
5101 | * Instruction Set & Groups: floatcmp / simd_dp / A64
|
---|
5102 | *
|
---|
5103 | */
|
---|
5104 |
|
---|
5105 | /* FCMP <Sn>, <Sm> (ffe0fc1f/1e202000) */
|
---|
5106 | //#define IEM_INSTR_IMPL_A64__FCMP_S_floatcmp(opc, Rn, Rm)
|
---|
5107 |
|
---|
5108 |
|
---|
5109 | /* FCMP <Sn>, #0.0 (fffffc1f/1e202008) */
|
---|
5110 | //#define IEM_INSTR_IMPL_A64__FCMP_SZ_floatcmp(opc, Rn)
|
---|
5111 |
|
---|
5112 |
|
---|
5113 | /* FCMPE <Sn>, <Sm> (ffe0fc1f/1e202010) */
|
---|
5114 | //#define IEM_INSTR_IMPL_A64__FCMPE_S_floatcmp(opc, Rn, Rm)
|
---|
5115 |
|
---|
5116 |
|
---|
5117 | /* FCMPE <Sn>, #0.0 (fffffc1f/1e202018) */
|
---|
5118 | //#define IEM_INSTR_IMPL_A64__FCMPE_SZ_floatcmp(opc, Rn)
|
---|
5119 |
|
---|
5120 |
|
---|
5121 | /* FCMP <Dn>, <Dm> (ffe0fc1f/1e602000) */
|
---|
5122 | //#define IEM_INSTR_IMPL_A64__FCMP_D_floatcmp(opc, Rn, Rm)
|
---|
5123 |
|
---|
5124 |
|
---|
5125 | /* FCMP <Dn>, #0.0 (fffffc1f/1e602008) */
|
---|
5126 | //#define IEM_INSTR_IMPL_A64__FCMP_DZ_floatcmp(opc, Rn)
|
---|
5127 |
|
---|
5128 |
|
---|
5129 | /* FCMPE <Dn>, <Dm> (ffe0fc1f/1e602010) */
|
---|
5130 | //#define IEM_INSTR_IMPL_A64__FCMPE_D_floatcmp(opc, Rn, Rm)
|
---|
5131 |
|
---|
5132 |
|
---|
5133 | /* FCMPE <Dn>, #0.0 (fffffc1f/1e602018) */
|
---|
5134 | //#define IEM_INSTR_IMPL_A64__FCMPE_DZ_floatcmp(opc, Rn)
|
---|
5135 |
|
---|
5136 |
|
---|
5137 | /* FCMP <Hn>, <Hm> (ffe0fc1f/1ee02000) */
|
---|
5138 | //#define IEM_INSTR_IMPL_A64__FCMP_H_floatcmp(opc, Rn, Rm)
|
---|
5139 |
|
---|
5140 |
|
---|
5141 | /* FCMP <Hn>, #0.0 (fffffc1f/1ee02008) */
|
---|
5142 | //#define IEM_INSTR_IMPL_A64__FCMP_HZ_floatcmp(opc, Rn)
|
---|
5143 |
|
---|
5144 |
|
---|
5145 | /* FCMPE <Hn>, <Hm> (ffe0fc1f/1ee02010) */
|
---|
5146 | //#define IEM_INSTR_IMPL_A64__FCMPE_H_floatcmp(opc, Rn, Rm)
|
---|
5147 |
|
---|
5148 |
|
---|
5149 | /* FCMPE <Hn>, #0.0 (fffffc1f/1ee02018) */
|
---|
5150 | //#define IEM_INSTR_IMPL_A64__FCMPE_HZ_floatcmp(opc, Rn)
|
---|
5151 |
|
---|
5152 |
|
---|
5153 |
|
---|
5154 | /*
|
---|
5155 | *
|
---|
5156 | * Instruction Set & Groups: floatdp1 / simd_dp / A64
|
---|
5157 | *
|
---|
5158 | */
|
---|
5159 |
|
---|
5160 | /* FMOV <Sd>, <Sn> (fffffc00/1e204000) */
|
---|
5161 | //#define IEM_INSTR_IMPL_A64__FMOV_S_floatdp1(Rd, Rn, opc)
|
---|
5162 |
|
---|
5163 |
|
---|
5164 | /* FABS <Sd>, <Sn> (fffffc00/1e20c000) */
|
---|
5165 | //#define IEM_INSTR_IMPL_A64__FABS_S_floatdp1(Rd, Rn, opc)
|
---|
5166 |
|
---|
5167 |
|
---|
5168 | /* FNEG <Sd>, <Sn> (fffffc00/1e214000) */
|
---|
5169 | //#define IEM_INSTR_IMPL_A64__FNEG_S_floatdp1(Rd, Rn, opc)
|
---|
5170 |
|
---|
5171 |
|
---|
5172 | /* FSQRT <Sd>, <Sn> (fffffc00/1e21c000) */
|
---|
5173 | //#define IEM_INSTR_IMPL_A64__FSQRT_S_floatdp1(Rd, Rn, opc)
|
---|
5174 |
|
---|
5175 |
|
---|
5176 | /* FCVT <Dd>, <Sn> (fffffc00/1e22c000) */
|
---|
5177 | //#define IEM_INSTR_IMPL_A64__FCVT_DS_floatdp1(Rd, Rn, opc)
|
---|
5178 |
|
---|
5179 |
|
---|
5180 | /* FCVT <Hd>, <Sn> (fffffc00/1e23c000) */
|
---|
5181 | //#define IEM_INSTR_IMPL_A64__FCVT_HS_floatdp1(Rd, Rn, opc)
|
---|
5182 |
|
---|
5183 |
|
---|
5184 | /* FRINTN <Sd>, <Sn> (fffffc00/1e244000) */
|
---|
5185 | //#define IEM_INSTR_IMPL_A64__FRINTN_S_floatdp1(Rd, Rn, rmode)
|
---|
5186 |
|
---|
5187 |
|
---|
5188 | /* FRINTP <Sd>, <Sn> (fffffc00/1e24c000) */
|
---|
5189 | //#define IEM_INSTR_IMPL_A64__FRINTP_S_floatdp1(Rd, Rn, rmode)
|
---|
5190 |
|
---|
5191 |
|
---|
5192 | /* FRINTM <Sd>, <Sn> (fffffc00/1e254000) */
|
---|
5193 | //#define IEM_INSTR_IMPL_A64__FRINTM_S_floatdp1(Rd, Rn, rmode)
|
---|
5194 |
|
---|
5195 |
|
---|
5196 | /* FRINTZ <Sd>, <Sn> (fffffc00/1e25c000) */
|
---|
5197 | //#define IEM_INSTR_IMPL_A64__FRINTZ_S_floatdp1(Rd, Rn, rmode)
|
---|
5198 |
|
---|
5199 |
|
---|
5200 | /* FRINTA <Sd>, <Sn> (fffffc00/1e264000) */
|
---|
5201 | //#define IEM_INSTR_IMPL_A64__FRINTA_S_floatdp1(Rd, Rn, rmode)
|
---|
5202 |
|
---|
5203 |
|
---|
5204 | /* FRINTX <Sd>, <Sn> (fffffc00/1e274000) */
|
---|
5205 | //#define IEM_INSTR_IMPL_A64__FRINTX_S_floatdp1(Rd, Rn, rmode)
|
---|
5206 |
|
---|
5207 |
|
---|
5208 | /* FRINTI <Sd>, <Sn> (fffffc00/1e27c000) */
|
---|
5209 | //#define IEM_INSTR_IMPL_A64__FRINTI_S_floatdp1(Rd, Rn, rmode)
|
---|
5210 |
|
---|
5211 |
|
---|
5212 | /* FRINT32Z <Sd>, <Sn> (fffffc00/1e284000) */
|
---|
5213 | //#define IEM_INSTR_IMPL_A64__FRINT32Z_S_floatdp1(Rd, Rn, op)
|
---|
5214 |
|
---|
5215 |
|
---|
5216 | /* FRINT32X <Sd>, <Sn> (fffffc00/1e28c000) */
|
---|
5217 | //#define IEM_INSTR_IMPL_A64__FRINT32X_S_floatdp1(Rd, Rn, op)
|
---|
5218 |
|
---|
5219 |
|
---|
5220 | /* FRINT64Z <Sd>, <Sn> (fffffc00/1e294000) */
|
---|
5221 | //#define IEM_INSTR_IMPL_A64__FRINT64Z_S_floatdp1(Rd, Rn, op)
|
---|
5222 |
|
---|
5223 |
|
---|
5224 | /* FRINT64X <Sd>, <Sn> (fffffc00/1e29c000) */
|
---|
5225 | //#define IEM_INSTR_IMPL_A64__FRINT64X_S_floatdp1(Rd, Rn, op)
|
---|
5226 |
|
---|
5227 |
|
---|
5228 | /* FMOV <Dd>, <Dn> (fffffc00/1e604000) */
|
---|
5229 | //#define IEM_INSTR_IMPL_A64__FMOV_D_floatdp1(Rd, Rn, opc)
|
---|
5230 |
|
---|
5231 |
|
---|
5232 | /* FABS <Dd>, <Dn> (fffffc00/1e60c000) */
|
---|
5233 | //#define IEM_INSTR_IMPL_A64__FABS_D_floatdp1(Rd, Rn, opc)
|
---|
5234 |
|
---|
5235 |
|
---|
5236 | /* FNEG <Dd>, <Dn> (fffffc00/1e614000) */
|
---|
5237 | //#define IEM_INSTR_IMPL_A64__FNEG_D_floatdp1(Rd, Rn, opc)
|
---|
5238 |
|
---|
5239 |
|
---|
5240 | /* FSQRT <Dd>, <Dn> (fffffc00/1e61c000) */
|
---|
5241 | //#define IEM_INSTR_IMPL_A64__FSQRT_D_floatdp1(Rd, Rn, opc)
|
---|
5242 |
|
---|
5243 |
|
---|
5244 | /* FCVT <Sd>, <Dn> (fffffc00/1e624000) */
|
---|
5245 | //#define IEM_INSTR_IMPL_A64__FCVT_SD_floatdp1(Rd, Rn, opc)
|
---|
5246 |
|
---|
5247 |
|
---|
5248 | /* BFCVT <Hd>, <Sn> (fffffc00/1e634000) */
|
---|
5249 | //#define IEM_INSTR_IMPL_A64__BFCVT_BS_floatdp1(Rd, Rn)
|
---|
5250 |
|
---|
5251 |
|
---|
5252 | /* FCVT <Hd>, <Dn> (fffffc00/1e63c000) */
|
---|
5253 | //#define IEM_INSTR_IMPL_A64__FCVT_HD_floatdp1(Rd, Rn, opc)
|
---|
5254 |
|
---|
5255 |
|
---|
5256 | /* FRINTN <Dd>, <Dn> (fffffc00/1e644000) */
|
---|
5257 | //#define IEM_INSTR_IMPL_A64__FRINTN_D_floatdp1(Rd, Rn, rmode)
|
---|
5258 |
|
---|
5259 |
|
---|
5260 | /* FRINTP <Dd>, <Dn> (fffffc00/1e64c000) */
|
---|
5261 | //#define IEM_INSTR_IMPL_A64__FRINTP_D_floatdp1(Rd, Rn, rmode)
|
---|
5262 |
|
---|
5263 |
|
---|
5264 | /* FRINTM <Dd>, <Dn> (fffffc00/1e654000) */
|
---|
5265 | //#define IEM_INSTR_IMPL_A64__FRINTM_D_floatdp1(Rd, Rn, rmode)
|
---|
5266 |
|
---|
5267 |
|
---|
5268 | /* FRINTZ <Dd>, <Dn> (fffffc00/1e65c000) */
|
---|
5269 | //#define IEM_INSTR_IMPL_A64__FRINTZ_D_floatdp1(Rd, Rn, rmode)
|
---|
5270 |
|
---|
5271 |
|
---|
5272 | /* FRINTA <Dd>, <Dn> (fffffc00/1e664000) */
|
---|
5273 | //#define IEM_INSTR_IMPL_A64__FRINTA_D_floatdp1(Rd, Rn, rmode)
|
---|
5274 |
|
---|
5275 |
|
---|
5276 | /* FRINTX <Dd>, <Dn> (fffffc00/1e674000) */
|
---|
5277 | //#define IEM_INSTR_IMPL_A64__FRINTX_D_floatdp1(Rd, Rn, rmode)
|
---|
5278 |
|
---|
5279 |
|
---|
5280 | /* FRINTI <Dd>, <Dn> (fffffc00/1e67c000) */
|
---|
5281 | //#define IEM_INSTR_IMPL_A64__FRINTI_D_floatdp1(Rd, Rn, rmode)
|
---|
5282 |
|
---|
5283 |
|
---|
5284 | /* FRINT32Z <Dd>, <Dn> (fffffc00/1e684000) */
|
---|
5285 | //#define IEM_INSTR_IMPL_A64__FRINT32Z_D_floatdp1(Rd, Rn, op)
|
---|
5286 |
|
---|
5287 |
|
---|
5288 | /* FRINT32X <Dd>, <Dn> (fffffc00/1e68c000) */
|
---|
5289 | //#define IEM_INSTR_IMPL_A64__FRINT32X_D_floatdp1(Rd, Rn, op)
|
---|
5290 |
|
---|
5291 |
|
---|
5292 | /* FRINT64Z <Dd>, <Dn> (fffffc00/1e694000) */
|
---|
5293 | //#define IEM_INSTR_IMPL_A64__FRINT64Z_D_floatdp1(Rd, Rn, op)
|
---|
5294 |
|
---|
5295 |
|
---|
5296 | /* FRINT64X <Dd>, <Dn> (fffffc00/1e69c000) */
|
---|
5297 | //#define IEM_INSTR_IMPL_A64__FRINT64X_D_floatdp1(Rd, Rn, op)
|
---|
5298 |
|
---|
5299 |
|
---|
5300 | /* FMOV <Hd>, <Hn> (fffffc00/1ee04000) */
|
---|
5301 | //#define IEM_INSTR_IMPL_A64__FMOV_H_floatdp1(Rd, Rn, opc)
|
---|
5302 |
|
---|
5303 |
|
---|
5304 | /* FABS <Hd>, <Hn> (fffffc00/1ee0c000) */
|
---|
5305 | //#define IEM_INSTR_IMPL_A64__FABS_H_floatdp1(Rd, Rn, opc)
|
---|
5306 |
|
---|
5307 |
|
---|
5308 | /* FNEG <Hd>, <Hn> (fffffc00/1ee14000) */
|
---|
5309 | //#define IEM_INSTR_IMPL_A64__FNEG_H_floatdp1(Rd, Rn, opc)
|
---|
5310 |
|
---|
5311 |
|
---|
5312 | /* FSQRT <Hd>, <Hn> (fffffc00/1ee1c000) */
|
---|
5313 | //#define IEM_INSTR_IMPL_A64__FSQRT_H_floatdp1(Rd, Rn, opc)
|
---|
5314 |
|
---|
5315 |
|
---|
5316 | /* FCVT <Sd>, <Hn> (fffffc00/1ee24000) */
|
---|
5317 | //#define IEM_INSTR_IMPL_A64__FCVT_SH_floatdp1(Rd, Rn, opc)
|
---|
5318 |
|
---|
5319 |
|
---|
5320 | /* FCVT <Dd>, <Hn> (fffffc00/1ee2c000) */
|
---|
5321 | //#define IEM_INSTR_IMPL_A64__FCVT_DH_floatdp1(Rd, Rn, opc)
|
---|
5322 |
|
---|
5323 |
|
---|
5324 | /* FRINTN <Hd>, <Hn> (fffffc00/1ee44000) */
|
---|
5325 | //#define IEM_INSTR_IMPL_A64__FRINTN_H_floatdp1(Rd, Rn, rmode)
|
---|
5326 |
|
---|
5327 |
|
---|
5328 | /* FRINTP <Hd>, <Hn> (fffffc00/1ee4c000) */
|
---|
5329 | //#define IEM_INSTR_IMPL_A64__FRINTP_H_floatdp1(Rd, Rn, rmode)
|
---|
5330 |
|
---|
5331 |
|
---|
5332 | /* FRINTM <Hd>, <Hn> (fffffc00/1ee54000) */
|
---|
5333 | //#define IEM_INSTR_IMPL_A64__FRINTM_H_floatdp1(Rd, Rn, rmode)
|
---|
5334 |
|
---|
5335 |
|
---|
5336 | /* FRINTZ <Hd>, <Hn> (fffffc00/1ee5c000) */
|
---|
5337 | //#define IEM_INSTR_IMPL_A64__FRINTZ_H_floatdp1(Rd, Rn, rmode)
|
---|
5338 |
|
---|
5339 |
|
---|
5340 | /* FRINTA <Hd>, <Hn> (fffffc00/1ee64000) */
|
---|
5341 | //#define IEM_INSTR_IMPL_A64__FRINTA_H_floatdp1(Rd, Rn, rmode)
|
---|
5342 |
|
---|
5343 |
|
---|
5344 | /* FRINTX <Hd>, <Hn> (fffffc00/1ee74000) */
|
---|
5345 | //#define IEM_INSTR_IMPL_A64__FRINTX_H_floatdp1(Rd, Rn, rmode)
|
---|
5346 |
|
---|
5347 |
|
---|
5348 | /* FRINTI <Hd>, <Hn> (fffffc00/1ee7c000) */
|
---|
5349 | //#define IEM_INSTR_IMPL_A64__FRINTI_H_floatdp1(Rd, Rn, rmode)
|
---|
5350 |
|
---|
5351 |
|
---|
5352 |
|
---|
5353 | /*
|
---|
5354 | *
|
---|
5355 | * Instruction Set & Groups: floatdp2 / simd_dp / A64
|
---|
5356 | *
|
---|
5357 | */
|
---|
5358 |
|
---|
5359 | /* FMUL <Sd>, <Sn>, <Sm> (ffe0fc00/1e200800) */
|
---|
5360 | //#define IEM_INSTR_IMPL_A64__FMUL_S_floatdp2(Rd, Rn, op, Rm)
|
---|
5361 |
|
---|
5362 |
|
---|
5363 | /* FDIV <Sd>, <Sn>, <Sm> (ffe0fc00/1e201800) */
|
---|
5364 | //#define IEM_INSTR_IMPL_A64__FDIV_S_floatdp2(Rd, Rn, Rm)
|
---|
5365 |
|
---|
5366 |
|
---|
5367 | /* FADD <Sd>, <Sn>, <Sm> (ffe0fc00/1e202800) */
|
---|
5368 | //#define IEM_INSTR_IMPL_A64__FADD_S_floatdp2(Rd, Rn, op, Rm)
|
---|
5369 |
|
---|
5370 |
|
---|
5371 | /* FSUB <Sd>, <Sn>, <Sm> (ffe0fc00/1e203800) */
|
---|
5372 | //#define IEM_INSTR_IMPL_A64__FSUB_S_floatdp2(Rd, Rn, op, Rm)
|
---|
5373 |
|
---|
5374 |
|
---|
5375 | /* FMAX <Sd>, <Sn>, <Sm> (ffe0fc00/1e204800) */
|
---|
5376 | //#define IEM_INSTR_IMPL_A64__FMAX_S_floatdp2(Rd, Rn, op, Rm)
|
---|
5377 |
|
---|
5378 |
|
---|
5379 | /* FMIN <Sd>, <Sn>, <Sm> (ffe0fc00/1e205800) */
|
---|
5380 | //#define IEM_INSTR_IMPL_A64__FMIN_S_floatdp2(Rd, Rn, op, Rm)
|
---|
5381 |
|
---|
5382 |
|
---|
5383 | /* FMAXNM <Sd>, <Sn>, <Sm> (ffe0fc00/1e206800) */
|
---|
5384 | //#define IEM_INSTR_IMPL_A64__FMAXNM_S_floatdp2(Rd, Rn, op, Rm)
|
---|
5385 |
|
---|
5386 |
|
---|
5387 | /* FMINNM <Sd>, <Sn>, <Sm> (ffe0fc00/1e207800) */
|
---|
5388 | //#define IEM_INSTR_IMPL_A64__FMINNM_S_floatdp2(Rd, Rn, op, Rm)
|
---|
5389 |
|
---|
5390 |
|
---|
5391 | /* FNMUL <Sd>, <Sn>, <Sm> (ffe0fc00/1e208800) */
|
---|
5392 | //#define IEM_INSTR_IMPL_A64__FNMUL_S_floatdp2(Rd, Rn, op, Rm)
|
---|
5393 |
|
---|
5394 |
|
---|
5395 | /* FMUL <Dd>, <Dn>, <Dm> (ffe0fc00/1e600800) */
|
---|
5396 | //#define IEM_INSTR_IMPL_A64__FMUL_D_floatdp2(Rd, Rn, op, Rm)
|
---|
5397 |
|
---|
5398 |
|
---|
5399 | /* FDIV <Dd>, <Dn>, <Dm> (ffe0fc00/1e601800) */
|
---|
5400 | //#define IEM_INSTR_IMPL_A64__FDIV_D_floatdp2(Rd, Rn, Rm)
|
---|
5401 |
|
---|
5402 |
|
---|
5403 | /* FADD <Dd>, <Dn>, <Dm> (ffe0fc00/1e602800) */
|
---|
5404 | //#define IEM_INSTR_IMPL_A64__FADD_D_floatdp2(Rd, Rn, op, Rm)
|
---|
5405 |
|
---|
5406 |
|
---|
5407 | /* FSUB <Dd>, <Dn>, <Dm> (ffe0fc00/1e603800) */
|
---|
5408 | //#define IEM_INSTR_IMPL_A64__FSUB_D_floatdp2(Rd, Rn, op, Rm)
|
---|
5409 |
|
---|
5410 |
|
---|
5411 | /* FMAX <Dd>, <Dn>, <Dm> (ffe0fc00/1e604800) */
|
---|
5412 | //#define IEM_INSTR_IMPL_A64__FMAX_D_floatdp2(Rd, Rn, op, Rm)
|
---|
5413 |
|
---|
5414 |
|
---|
5415 | /* FMIN <Dd>, <Dn>, <Dm> (ffe0fc00/1e605800) */
|
---|
5416 | //#define IEM_INSTR_IMPL_A64__FMIN_D_floatdp2(Rd, Rn, op, Rm)
|
---|
5417 |
|
---|
5418 |
|
---|
5419 | /* FMAXNM <Dd>, <Dn>, <Dm> (ffe0fc00/1e606800) */
|
---|
5420 | //#define IEM_INSTR_IMPL_A64__FMAXNM_D_floatdp2(Rd, Rn, op, Rm)
|
---|
5421 |
|
---|
5422 |
|
---|
5423 | /* FMINNM <Dd>, <Dn>, <Dm> (ffe0fc00/1e607800) */
|
---|
5424 | //#define IEM_INSTR_IMPL_A64__FMINNM_D_floatdp2(Rd, Rn, op, Rm)
|
---|
5425 |
|
---|
5426 |
|
---|
5427 | /* FNMUL <Dd>, <Dn>, <Dm> (ffe0fc00/1e608800) */
|
---|
5428 | //#define IEM_INSTR_IMPL_A64__FNMUL_D_floatdp2(Rd, Rn, op, Rm)
|
---|
5429 |
|
---|
5430 |
|
---|
5431 | /* FMUL <Hd>, <Hn>, <Hm> (ffe0fc00/1ee00800) */
|
---|
5432 | //#define IEM_INSTR_IMPL_A64__FMUL_H_floatdp2(Rd, Rn, op, Rm)
|
---|
5433 |
|
---|
5434 |
|
---|
5435 | /* FDIV <Hd>, <Hn>, <Hm> (ffe0fc00/1ee01800) */
|
---|
5436 | //#define IEM_INSTR_IMPL_A64__FDIV_H_floatdp2(Rd, Rn, Rm)
|
---|
5437 |
|
---|
5438 |
|
---|
5439 | /* FADD <Hd>, <Hn>, <Hm> (ffe0fc00/1ee02800) */
|
---|
5440 | //#define IEM_INSTR_IMPL_A64__FADD_H_floatdp2(Rd, Rn, op, Rm)
|
---|
5441 |
|
---|
5442 |
|
---|
5443 | /* FSUB <Hd>, <Hn>, <Hm> (ffe0fc00/1ee03800) */
|
---|
5444 | //#define IEM_INSTR_IMPL_A64__FSUB_H_floatdp2(Rd, Rn, op, Rm)
|
---|
5445 |
|
---|
5446 |
|
---|
5447 | /* FMAX <Hd>, <Hn>, <Hm> (ffe0fc00/1ee04800) */
|
---|
5448 | //#define IEM_INSTR_IMPL_A64__FMAX_H_floatdp2(Rd, Rn, op, Rm)
|
---|
5449 |
|
---|
5450 |
|
---|
5451 | /* FMIN <Hd>, <Hn>, <Hm> (ffe0fc00/1ee05800) */
|
---|
5452 | //#define IEM_INSTR_IMPL_A64__FMIN_H_floatdp2(Rd, Rn, op, Rm)
|
---|
5453 |
|
---|
5454 |
|
---|
5455 | /* FMAXNM <Hd>, <Hn>, <Hm> (ffe0fc00/1ee06800) */
|
---|
5456 | //#define IEM_INSTR_IMPL_A64__FMAXNM_H_floatdp2(Rd, Rn, op, Rm)
|
---|
5457 |
|
---|
5458 |
|
---|
5459 | /* FMINNM <Hd>, <Hn>, <Hm> (ffe0fc00/1ee07800) */
|
---|
5460 | //#define IEM_INSTR_IMPL_A64__FMINNM_H_floatdp2(Rd, Rn, op, Rm)
|
---|
5461 |
|
---|
5462 |
|
---|
5463 | /* FNMUL <Hd>, <Hn>, <Hm> (ffe0fc00/1ee08800) */
|
---|
5464 | //#define IEM_INSTR_IMPL_A64__FNMUL_H_floatdp2(Rd, Rn, op, Rm)
|
---|
5465 |
|
---|
5466 |
|
---|
5467 |
|
---|
5468 | /*
|
---|
5469 | *
|
---|
5470 | * Instruction Set & Groups: floatdp3 / simd_dp / A64
|
---|
5471 | *
|
---|
5472 | */
|
---|
5473 |
|
---|
5474 | /* FMADD <Sd>, <Sn>, <Sm>, <Sa> (ffe08000/1f000000) */
|
---|
5475 | //#define IEM_INSTR_IMPL_A64__FMADD_S_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5476 |
|
---|
5477 |
|
---|
5478 | /* FMSUB <Sd>, <Sn>, <Sm>, <Sa> (ffe08000/1f008000) */
|
---|
5479 | //#define IEM_INSTR_IMPL_A64__FMSUB_S_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5480 |
|
---|
5481 |
|
---|
5482 | /* FNMADD <Sd>, <Sn>, <Sm>, <Sa> (ffe08000/1f200000) */
|
---|
5483 | //#define IEM_INSTR_IMPL_A64__FNMADD_S_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5484 |
|
---|
5485 |
|
---|
5486 | /* FNMSUB <Sd>, <Sn>, <Sm>, <Sa> (ffe08000/1f208000) */
|
---|
5487 | //#define IEM_INSTR_IMPL_A64__FNMSUB_S_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5488 |
|
---|
5489 |
|
---|
5490 | /* FMADD <Dd>, <Dn>, <Dm>, <Da> (ffe08000/1f400000) */
|
---|
5491 | //#define IEM_INSTR_IMPL_A64__FMADD_D_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5492 |
|
---|
5493 |
|
---|
5494 | /* FMSUB <Dd>, <Dn>, <Dm>, <Da> (ffe08000/1f408000) */
|
---|
5495 | //#define IEM_INSTR_IMPL_A64__FMSUB_D_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5496 |
|
---|
5497 |
|
---|
5498 | /* FNMADD <Dd>, <Dn>, <Dm>, <Da> (ffe08000/1f600000) */
|
---|
5499 | //#define IEM_INSTR_IMPL_A64__FNMADD_D_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5500 |
|
---|
5501 |
|
---|
5502 | /* FNMSUB <Dd>, <Dn>, <Dm>, <Da> (ffe08000/1f608000) */
|
---|
5503 | //#define IEM_INSTR_IMPL_A64__FNMSUB_D_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5504 |
|
---|
5505 |
|
---|
5506 | /* FMADD <Hd>, <Hn>, <Hm>, <Ha> (ffe08000/1fc00000) */
|
---|
5507 | //#define IEM_INSTR_IMPL_A64__FMADD_H_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5508 |
|
---|
5509 |
|
---|
5510 | /* FMSUB <Hd>, <Hn>, <Hm>, <Ha> (ffe08000/1fc08000) */
|
---|
5511 | //#define IEM_INSTR_IMPL_A64__FMSUB_H_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5512 |
|
---|
5513 |
|
---|
5514 | /* FNMADD <Hd>, <Hn>, <Hm>, <Ha> (ffe08000/1fe00000) */
|
---|
5515 | //#define IEM_INSTR_IMPL_A64__FNMADD_H_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5516 |
|
---|
5517 |
|
---|
5518 | /* FNMSUB <Hd>, <Hn>, <Hm>, <Ha> (ffe08000/1fe08000) */
|
---|
5519 | //#define IEM_INSTR_IMPL_A64__FNMSUB_H_floatdp3(Rd, Rn, Ra, Rm)
|
---|
5520 |
|
---|
5521 |
|
---|
5522 |
|
---|
5523 | /*
|
---|
5524 | *
|
---|
5525 | * Instruction Set & Groups: floatimm / simd_dp / A64
|
---|
5526 | *
|
---|
5527 | */
|
---|
5528 |
|
---|
5529 | /* FMOV <Sd>, #<imm> (ffe01fe0/1e201000) */
|
---|
5530 | //#define IEM_INSTR_IMPL_A64__FMOV_S_floatimm(Rd, imm8)
|
---|
5531 |
|
---|
5532 |
|
---|
5533 | /* FMOV <Dd>, #<imm> (ffe01fe0/1e601000) */
|
---|
5534 | //#define IEM_INSTR_IMPL_A64__FMOV_D_floatimm(Rd, imm8)
|
---|
5535 |
|
---|
5536 |
|
---|
5537 | /* FMOV <Hd>, #<imm> (ffe01fe0/1ee01000) */
|
---|
5538 | //#define IEM_INSTR_IMPL_A64__FMOV_H_floatimm(Rd, imm8)
|
---|
5539 |
|
---|
5540 |
|
---|
5541 |
|
---|
5542 | /*
|
---|
5543 | *
|
---|
5544 | * Instruction Set & Groups: floatsel / simd_dp / A64
|
---|
5545 | *
|
---|
5546 | */
|
---|
5547 |
|
---|
5548 | /* FCSEL <Sd>, <Sn>, <Sm>, <cond> (ffe00c00/1e200c00) */
|
---|
5549 | //#define IEM_INSTR_IMPL_A64__FCSEL_S_floatsel(Rd, Rn, cond, Rm)
|
---|
5550 |
|
---|
5551 |
|
---|
5552 | /* FCSEL <Dd>, <Dn>, <Dm>, <cond> (ffe00c00/1e600c00) */
|
---|
5553 | //#define IEM_INSTR_IMPL_A64__FCSEL_D_floatsel(Rd, Rn, cond, Rm)
|
---|
5554 |
|
---|
5555 |
|
---|
5556 | /* FCSEL <Hd>, <Hn>, <Hm>, <cond> (ffe00c00/1ee00c00) */
|
---|
5557 | //#define IEM_INSTR_IMPL_A64__FCSEL_H_floatsel(Rd, Rn, cond, Rm)
|
---|
5558 |
|
---|
5559 |
|
---|
5560 |
|
---|
5561 | /*
|
---|
5562 | *
|
---|
5563 | * Instruction Set & Groups: hints / control / A64
|
---|
5564 | *
|
---|
5565 | */
|
---|
5566 |
|
---|
5567 | /* HINT #<imm> (fffff01f/d503201f) */
|
---|
5568 | //#define IEM_INSTR_IMPL_A64__HINT_HM_hints(op2, CRm)
|
---|
5569 |
|
---|
5570 |
|
---|
5571 | /* NOP (ffffffff/d503201f) */
|
---|
5572 | //#define IEM_INSTR_IMPL_A64__NOP_HI_hints()
|
---|
5573 |
|
---|
5574 |
|
---|
5575 | /* YIELD (ffffffff/d503203f) */
|
---|
5576 | //#define IEM_INSTR_IMPL_A64__YIELD_HI_hints()
|
---|
5577 |
|
---|
5578 |
|
---|
5579 | /* WFE (ffffffff/d503205f) */
|
---|
5580 | //#define IEM_INSTR_IMPL_A64__WFE_HI_hints()
|
---|
5581 |
|
---|
5582 |
|
---|
5583 | /* WFI (ffffffff/d503207f) */
|
---|
5584 | //#define IEM_INSTR_IMPL_A64__WFI_HI_hints()
|
---|
5585 |
|
---|
5586 |
|
---|
5587 | /* SEV (ffffffff/d503209f) */
|
---|
5588 | //#define IEM_INSTR_IMPL_A64__SEV_HI_hints()
|
---|
5589 |
|
---|
5590 |
|
---|
5591 | /* SEVL (ffffffff/d50320bf) */
|
---|
5592 | //#define IEM_INSTR_IMPL_A64__SEVL_HI_hints()
|
---|
5593 |
|
---|
5594 |
|
---|
5595 | /* DGH (ffffffff/d50320df) */
|
---|
5596 | //#define IEM_INSTR_IMPL_A64__DGH_HI_hints()
|
---|
5597 |
|
---|
5598 |
|
---|
5599 | /* XPACLRI (ffffffff/d50320ff) */
|
---|
5600 | //#define IEM_INSTR_IMPL_A64__XPACLRI_HI_hints()
|
---|
5601 |
|
---|
5602 |
|
---|
5603 | /* PACIA1716 (ffffffff/d503211f) */
|
---|
5604 | //#define IEM_INSTR_IMPL_A64__PACIA1716_HI_hints()
|
---|
5605 |
|
---|
5606 |
|
---|
5607 | /* PACIB1716 (ffffffff/d503215f) */
|
---|
5608 | //#define IEM_INSTR_IMPL_A64__PACIB1716_HI_hints()
|
---|
5609 |
|
---|
5610 |
|
---|
5611 | /* AUTIA1716 (ffffffff/d503219f) */
|
---|
5612 | //#define IEM_INSTR_IMPL_A64__AUTIA1716_HI_hints()
|
---|
5613 |
|
---|
5614 |
|
---|
5615 | /* AUTIB1716 (ffffffff/d50321df) */
|
---|
5616 | //#define IEM_INSTR_IMPL_A64__AUTIB1716_HI_hints()
|
---|
5617 |
|
---|
5618 |
|
---|
5619 | /* ESB (ffffffff/d503221f) */
|
---|
5620 | //#define IEM_INSTR_IMPL_A64__ESB_HI_hints()
|
---|
5621 |
|
---|
5622 |
|
---|
5623 | /* PSB CSYNC (ffffffff/d503223f) */
|
---|
5624 | //#define IEM_INSTR_IMPL_A64__PSB_HC_hints()
|
---|
5625 |
|
---|
5626 |
|
---|
5627 | /* TSB CSYNC (ffffffff/d503225f) */
|
---|
5628 | //#define IEM_INSTR_IMPL_A64__TSB_HC_hints()
|
---|
5629 |
|
---|
5630 |
|
---|
5631 | /* GCSB DSYNC (ffffffff/d503227f) */
|
---|
5632 | //#define IEM_INSTR_IMPL_A64__GCSB_HD_hints()
|
---|
5633 |
|
---|
5634 |
|
---|
5635 | /* CSDB (ffffffff/d503229f) */
|
---|
5636 | //#define IEM_INSTR_IMPL_A64__CSDB_HI_hints()
|
---|
5637 |
|
---|
5638 |
|
---|
5639 | /* CLRBHB (ffffffff/d50322df) */
|
---|
5640 | //#define IEM_INSTR_IMPL_A64__CLRBHB_HI_hints()
|
---|
5641 |
|
---|
5642 |
|
---|
5643 | /* PACIAZ (ffffffff/d503231f) */
|
---|
5644 | //#define IEM_INSTR_IMPL_A64__PACIAZ_HI_hints()
|
---|
5645 |
|
---|
5646 |
|
---|
5647 | /* PACIASP (ffffffff/d503233f) */
|
---|
5648 | //#define IEM_INSTR_IMPL_A64__PACIASP_HI_hints()
|
---|
5649 |
|
---|
5650 |
|
---|
5651 | /* PACIBZ (ffffffff/d503235f) */
|
---|
5652 | //#define IEM_INSTR_IMPL_A64__PACIBZ_HI_hints()
|
---|
5653 |
|
---|
5654 |
|
---|
5655 | /* PACIBSP (ffffffff/d503237f) */
|
---|
5656 | //#define IEM_INSTR_IMPL_A64__PACIBSP_HI_hints()
|
---|
5657 |
|
---|
5658 |
|
---|
5659 | /* AUTIAZ (ffffffff/d503239f) */
|
---|
5660 | //#define IEM_INSTR_IMPL_A64__AUTIAZ_HI_hints()
|
---|
5661 |
|
---|
5662 |
|
---|
5663 | /* AUTIASP (ffffffff/d50323bf) */
|
---|
5664 | //#define IEM_INSTR_IMPL_A64__AUTIASP_HI_hints()
|
---|
5665 |
|
---|
5666 |
|
---|
5667 | /* AUTIBZ (ffffffff/d50323df) */
|
---|
5668 | //#define IEM_INSTR_IMPL_A64__AUTIBZ_HI_hints()
|
---|
5669 |
|
---|
5670 |
|
---|
5671 | /* AUTIBSP (ffffffff/d50323ff) */
|
---|
5672 | //#define IEM_INSTR_IMPL_A64__AUTIBSP_HI_hints()
|
---|
5673 |
|
---|
5674 |
|
---|
5675 | /* BTI{ <targets>} (ffffff1f/d503241f) */
|
---|
5676 | //#define IEM_INSTR_IMPL_A64__BTI_HB_hints(op2)
|
---|
5677 |
|
---|
5678 |
|
---|
5679 | /* PACM (ffffffff/d50324ff) */
|
---|
5680 | //#define IEM_INSTR_IMPL_A64__PACM_HI_hints()
|
---|
5681 |
|
---|
5682 |
|
---|
5683 | /* CHKFEAT X16 (ffffffff/d503251f) */
|
---|
5684 | //#define IEM_INSTR_IMPL_A64__CHKFEAT_HF_hints()
|
---|
5685 |
|
---|
5686 |
|
---|
5687 | /* STSHH <policy> (ffffff1f/d503261f) */
|
---|
5688 | //#define IEM_INSTR_IMPL_A64__STSHH_HI_hints(op2)
|
---|
5689 |
|
---|
5690 |
|
---|
5691 |
|
---|
5692 | /*
|
---|
5693 | *
|
---|
5694 | * Instruction Set & Groups: ldapstl_simd / ldst / A64
|
---|
5695 | *
|
---|
5696 | */
|
---|
5697 |
|
---|
5698 | /* STLUR <Bt>, [<Xn|SP>{, #<simm>}] (ffe00c00/1d000800) */
|
---|
5699 | //#define IEM_INSTR_IMPL_A64__STLUR_B_ldapstl_simd(Rt, Rn, imm9)
|
---|
5700 |
|
---|
5701 |
|
---|
5702 | /* LDAPUR <Bt>, [<Xn|SP>{, #<simm>}] (ffe00c00/1d400800) */
|
---|
5703 | //#define IEM_INSTR_IMPL_A64__LDAPUR_B_ldapstl_simd(Rt, Rn, imm9)
|
---|
5704 |
|
---|
5705 |
|
---|
5706 | /* STLUR <Qt>, [<Xn|SP>{, #<simm>}] (ffe00c00/1d800800) */
|
---|
5707 | //#define IEM_INSTR_IMPL_A64__STLUR_Q_ldapstl_simd(Rt, Rn, imm9)
|
---|
5708 |
|
---|
5709 |
|
---|
5710 | /* LDAPUR <Qt>, [<Xn|SP>{, #<simm>}] (ffe00c00/1dc00800) */
|
---|
5711 | //#define IEM_INSTR_IMPL_A64__LDAPUR_Q_ldapstl_simd(Rt, Rn, imm9)
|
---|
5712 |
|
---|
5713 |
|
---|
5714 | /* STLUR <Ht>, [<Xn|SP>{, #<simm>}] (ffe00c00/5d000800) */
|
---|
5715 | //#define IEM_INSTR_IMPL_A64__STLUR_H_ldapstl_simd(Rt, Rn, imm9)
|
---|
5716 |
|
---|
5717 |
|
---|
5718 | /* LDAPUR <Ht>, [<Xn|SP>{, #<simm>}] (ffe00c00/5d400800) */
|
---|
5719 | //#define IEM_INSTR_IMPL_A64__LDAPUR_H_ldapstl_simd(Rt, Rn, imm9)
|
---|
5720 |
|
---|
5721 |
|
---|
5722 | /* STLUR <St>, [<Xn|SP>{, #<simm>}] (ffe00c00/9d000800) */
|
---|
5723 | //#define IEM_INSTR_IMPL_A64__STLUR_S_ldapstl_simd(Rt, Rn, imm9)
|
---|
5724 |
|
---|
5725 |
|
---|
5726 | /* LDAPUR <St>, [<Xn|SP>{, #<simm>}] (ffe00c00/9d400800) */
|
---|
5727 | //#define IEM_INSTR_IMPL_A64__LDAPUR_S_ldapstl_simd(Rt, Rn, imm9)
|
---|
5728 |
|
---|
5729 |
|
---|
5730 | /* STLUR <Dt>, [<Xn|SP>{, #<simm>}] (ffe00c00/dd000800) */
|
---|
5731 | //#define IEM_INSTR_IMPL_A64__STLUR_D_ldapstl_simd(Rt, Rn, imm9)
|
---|
5732 |
|
---|
5733 |
|
---|
5734 | /* LDAPUR <Dt>, [<Xn|SP>{, #<simm>}] (ffe00c00/dd400800) */
|
---|
5735 | //#define IEM_INSTR_IMPL_A64__LDAPUR_D_ldapstl_simd(Rt, Rn, imm9)
|
---|
5736 |
|
---|
5737 |
|
---|
5738 |
|
---|
5739 | /*
|
---|
5740 | *
|
---|
5741 | * Instruction Set & Groups: ldapstl_unscaled / ldst / A64
|
---|
5742 | *
|
---|
5743 | */
|
---|
5744 |
|
---|
5745 | /* STLURB <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/19000000) */
|
---|
5746 | //#define IEM_INSTR_IMPL_A64__STLURB_32_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5747 |
|
---|
5748 |
|
---|
5749 | /* LDAPURB <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/19400000) */
|
---|
5750 | //#define IEM_INSTR_IMPL_A64__LDAPURB_32_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5751 |
|
---|
5752 |
|
---|
5753 | /* LDAPURSB <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/19800000) */
|
---|
5754 | //#define IEM_INSTR_IMPL_A64__LDAPURSB_64_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5755 |
|
---|
5756 |
|
---|
5757 | /* LDAPURSB <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/19c00000) */
|
---|
5758 | //#define IEM_INSTR_IMPL_A64__LDAPURSB_32_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5759 |
|
---|
5760 |
|
---|
5761 | /* STLURH <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/59000000) */
|
---|
5762 | //#define IEM_INSTR_IMPL_A64__STLURH_32_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5763 |
|
---|
5764 |
|
---|
5765 | /* LDAPURH <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/59400000) */
|
---|
5766 | //#define IEM_INSTR_IMPL_A64__LDAPURH_32_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5767 |
|
---|
5768 |
|
---|
5769 | /* LDAPURSH <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/59800000) */
|
---|
5770 | //#define IEM_INSTR_IMPL_A64__LDAPURSH_64_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5771 |
|
---|
5772 |
|
---|
5773 | /* LDAPURSH <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/59c00000) */
|
---|
5774 | //#define IEM_INSTR_IMPL_A64__LDAPURSH_32_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5775 |
|
---|
5776 |
|
---|
5777 | /* STLUR <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/99000000) */
|
---|
5778 | //#define IEM_INSTR_IMPL_A64__STLUR_32_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5779 |
|
---|
5780 |
|
---|
5781 | /* LDAPUR <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/99400000) */
|
---|
5782 | //#define IEM_INSTR_IMPL_A64__LDAPUR_32_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5783 |
|
---|
5784 |
|
---|
5785 | /* LDAPURSW <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/99800000) */
|
---|
5786 | //#define IEM_INSTR_IMPL_A64__LDAPURSW_64_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5787 |
|
---|
5788 |
|
---|
5789 | /* STLUR <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/d9000000) */
|
---|
5790 | //#define IEM_INSTR_IMPL_A64__STLUR_64_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5791 |
|
---|
5792 |
|
---|
5793 | /* LDAPUR <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/d9400000) */
|
---|
5794 | //#define IEM_INSTR_IMPL_A64__LDAPUR_64_ldapstl_unscaled(Rt, Rn, imm9)
|
---|
5795 |
|
---|
5796 |
|
---|
5797 |
|
---|
5798 | /*
|
---|
5799 | *
|
---|
5800 | * Instruction Set & Groups: ldapstl_writeback / ldst / A64
|
---|
5801 | *
|
---|
5802 | */
|
---|
5803 |
|
---|
5804 | /* STLR <Wt>, [<Xn|SP>, #-4]! (fffffc00/99800800) */
|
---|
5805 | //#define IEM_INSTR_IMPL_A64__STLR_32S_ldapstl_writeback(Rt, Rn)
|
---|
5806 |
|
---|
5807 |
|
---|
5808 | /* LDAPR <Wt>, [<Xn|SP>], #4 (fffffc00/99c00800) */
|
---|
5809 | //#define IEM_INSTR_IMPL_A64__LDAPR_32L_ldapstl_writeback(Rt, Rn)
|
---|
5810 |
|
---|
5811 |
|
---|
5812 | /* STLR <Xt>, [<Xn|SP>, #-8]! (fffffc00/d9800800) */
|
---|
5813 | //#define IEM_INSTR_IMPL_A64__STLR_64S_ldapstl_writeback(Rt, Rn)
|
---|
5814 |
|
---|
5815 |
|
---|
5816 | /* LDAPR <Xt>, [<Xn|SP>], #8 (fffffc00/d9c00800) */
|
---|
5817 | //#define IEM_INSTR_IMPL_A64__LDAPR_64L_ldapstl_writeback(Rt, Rn)
|
---|
5818 |
|
---|
5819 |
|
---|
5820 |
|
---|
5821 | /*
|
---|
5822 | *
|
---|
5823 | * Instruction Set & Groups: ldiappstilp / ldst / A64
|
---|
5824 | *
|
---|
5825 | */
|
---|
5826 |
|
---|
5827 | /* STILP <Wt1>, <Wt2>, [<Xn|SP>, #-8]! (ffe0fc00/99000800) */
|
---|
5828 | //#define IEM_INSTR_IMPL_A64__STILP_32SE_ldiappstilp(Rt, Rn, Rt2)
|
---|
5829 |
|
---|
5830 |
|
---|
5831 | /* STILP <Wt1>, <Wt2>, [<Xn|SP>] (ffe0fc00/99001800) */
|
---|
5832 | //#define IEM_INSTR_IMPL_A64__STILP_32S_ldiappstilp(Rt, Rn, Rt2)
|
---|
5833 |
|
---|
5834 |
|
---|
5835 | /* LDIAPP <Wt1>, <Wt2>, [<Xn|SP>], #8 (ffe0fc00/99400800) */
|
---|
5836 | //#define IEM_INSTR_IMPL_A64__LDIAPP_32LE_ldiappstilp(Rt, Rn, Rt2)
|
---|
5837 |
|
---|
5838 |
|
---|
5839 | /* LDIAPP <Wt1>, <Wt2>, [<Xn|SP>] (ffe0fc00/99401800) */
|
---|
5840 | //#define IEM_INSTR_IMPL_A64__LDIAPP_32L_ldiappstilp(Rt, Rn, Rt2)
|
---|
5841 |
|
---|
5842 |
|
---|
5843 | /* STILP <Xt1>, <Xt2>, [<Xn|SP>, #-16]! (ffe0fc00/d9000800) */
|
---|
5844 | //#define IEM_INSTR_IMPL_A64__STILP_64SS_ldiappstilp(Rt, Rn, Rt2)
|
---|
5845 |
|
---|
5846 |
|
---|
5847 | /* STILP <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/d9001800) */
|
---|
5848 | //#define IEM_INSTR_IMPL_A64__STILP_64S_ldiappstilp(Rt, Rn, Rt2)
|
---|
5849 |
|
---|
5850 |
|
---|
5851 | /* LDIAPP <Xt1>, <Xt2>, [<Xn|SP>], #16 (ffe0fc00/d9400800) */
|
---|
5852 | //#define IEM_INSTR_IMPL_A64__LDIAPP_64LS_ldiappstilp(Rt, Rn, Rt2)
|
---|
5853 |
|
---|
5854 |
|
---|
5855 | /* LDIAPP <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/d9401800) */
|
---|
5856 | //#define IEM_INSTR_IMPL_A64__LDIAPP_64L_ldiappstilp(Rt, Rn, Rt2)
|
---|
5857 |
|
---|
5858 |
|
---|
5859 |
|
---|
5860 | /*
|
---|
5861 | *
|
---|
5862 | * Instruction Set & Groups: ldst_gcs / ldst / A64
|
---|
5863 | *
|
---|
5864 | */
|
---|
5865 |
|
---|
5866 | /* GCSSTR <Xt>, [<Xn|SP>] (fffffc00/d91f0c00) */
|
---|
5867 | //#define IEM_INSTR_IMPL_A64__GCSSTR_64_ldst_gcs(Rt, Rn)
|
---|
5868 |
|
---|
5869 |
|
---|
5870 | /* GCSSTTR <Xt>, [<Xn|SP>] (fffffc00/d91f1c00) */
|
---|
5871 | //#define IEM_INSTR_IMPL_A64__GCSSTTR_64_ldst_gcs(Rt, Rn)
|
---|
5872 |
|
---|
5873 |
|
---|
5874 |
|
---|
5875 | /*
|
---|
5876 | *
|
---|
5877 | * Instruction Set & Groups: ldst_immpost / ldst / A64
|
---|
5878 | *
|
---|
5879 | */
|
---|
5880 |
|
---|
5881 | /* STRB <Wt>, [<Xn|SP>], #<simm> (ffe00c00/38000400) */
|
---|
5882 | //#define IEM_INSTR_IMPL_A64__STRB_32_ldst_immpost(Rt, Rn, imm9)
|
---|
5883 |
|
---|
5884 |
|
---|
5885 | /* LDRB <Wt>, [<Xn|SP>], #<simm> (ffe00c00/38400400) */
|
---|
5886 | //#define IEM_INSTR_IMPL_A64__LDRB_32_ldst_immpost(Rt, Rn, imm9)
|
---|
5887 |
|
---|
5888 |
|
---|
5889 | /* LDRSB <Xt>, [<Xn|SP>], #<simm> (ffe00c00/38800400) */
|
---|
5890 | //#define IEM_INSTR_IMPL_A64__LDRSB_64_ldst_immpost(Rt, Rn, imm9)
|
---|
5891 |
|
---|
5892 |
|
---|
5893 | /* LDRSB <Wt>, [<Xn|SP>], #<simm> (ffe00c00/38c00400) */
|
---|
5894 | //#define IEM_INSTR_IMPL_A64__LDRSB_32_ldst_immpost(Rt, Rn, imm9)
|
---|
5895 |
|
---|
5896 |
|
---|
5897 | /* STR <Bt>, [<Xn|SP>], #<simm> (ffe00c00/3c000400) */
|
---|
5898 | //#define IEM_INSTR_IMPL_A64__STR_B_ldst_immpost(Rt, Rn, imm9)
|
---|
5899 |
|
---|
5900 |
|
---|
5901 | /* LDR <Bt>, [<Xn|SP>], #<simm> (ffe00c00/3c400400) */
|
---|
5902 | //#define IEM_INSTR_IMPL_A64__LDR_B_ldst_immpost(Rt, Rn, imm9)
|
---|
5903 |
|
---|
5904 |
|
---|
5905 | /* STR <Qt>, [<Xn|SP>], #<simm> (ffe00c00/3c800400) */
|
---|
5906 | //#define IEM_INSTR_IMPL_A64__STR_Q_ldst_immpost(Rt, Rn, imm9)
|
---|
5907 |
|
---|
5908 |
|
---|
5909 | /* LDR <Qt>, [<Xn|SP>], #<simm> (ffe00c00/3cc00400) */
|
---|
5910 | //#define IEM_INSTR_IMPL_A64__LDR_Q_ldst_immpost(Rt, Rn, imm9)
|
---|
5911 |
|
---|
5912 |
|
---|
5913 | /* STRH <Wt>, [<Xn|SP>], #<simm> (ffe00c00/78000400) */
|
---|
5914 | //#define IEM_INSTR_IMPL_A64__STRH_32_ldst_immpost(Rt, Rn, imm9)
|
---|
5915 |
|
---|
5916 |
|
---|
5917 | /* LDRH <Wt>, [<Xn|SP>], #<simm> (ffe00c00/78400400) */
|
---|
5918 | //#define IEM_INSTR_IMPL_A64__LDRH_32_ldst_immpost(Rt, Rn, imm9)
|
---|
5919 |
|
---|
5920 |
|
---|
5921 | /* LDRSH <Xt>, [<Xn|SP>], #<simm> (ffe00c00/78800400) */
|
---|
5922 | //#define IEM_INSTR_IMPL_A64__LDRSH_64_ldst_immpost(Rt, Rn, imm9)
|
---|
5923 |
|
---|
5924 |
|
---|
5925 | /* LDRSH <Wt>, [<Xn|SP>], #<simm> (ffe00c00/78c00400) */
|
---|
5926 | //#define IEM_INSTR_IMPL_A64__LDRSH_32_ldst_immpost(Rt, Rn, imm9)
|
---|
5927 |
|
---|
5928 |
|
---|
5929 | /* STR <Ht>, [<Xn|SP>], #<simm> (ffe00c00/7c000400) */
|
---|
5930 | //#define IEM_INSTR_IMPL_A64__STR_H_ldst_immpost(Rt, Rn, imm9)
|
---|
5931 |
|
---|
5932 |
|
---|
5933 | /* LDR <Ht>, [<Xn|SP>], #<simm> (ffe00c00/7c400400) */
|
---|
5934 | //#define IEM_INSTR_IMPL_A64__LDR_H_ldst_immpost(Rt, Rn, imm9)
|
---|
5935 |
|
---|
5936 |
|
---|
5937 | /* STR <Wt>, [<Xn|SP>], #<simm> (ffe00c00/b8000400) */
|
---|
5938 | //#define IEM_INSTR_IMPL_A64__STR_32_ldst_immpost(Rt, Rn, imm9)
|
---|
5939 |
|
---|
5940 |
|
---|
5941 | /* LDR <Wt>, [<Xn|SP>], #<simm> (ffe00c00/b8400400) */
|
---|
5942 | //#define IEM_INSTR_IMPL_A64__LDR_32_ldst_immpost(Rt, Rn, imm9)
|
---|
5943 |
|
---|
5944 |
|
---|
5945 | /* LDRSW <Xt>, [<Xn|SP>], #<simm> (ffe00c00/b8800400) */
|
---|
5946 | //#define IEM_INSTR_IMPL_A64__LDRSW_64_ldst_immpost(Rt, Rn, imm9)
|
---|
5947 |
|
---|
5948 |
|
---|
5949 | /* STR <St>, [<Xn|SP>], #<simm> (ffe00c00/bc000400) */
|
---|
5950 | //#define IEM_INSTR_IMPL_A64__STR_S_ldst_immpost(Rt, Rn, imm9)
|
---|
5951 |
|
---|
5952 |
|
---|
5953 | /* LDR <St>, [<Xn|SP>], #<simm> (ffe00c00/bc400400) */
|
---|
5954 | //#define IEM_INSTR_IMPL_A64__LDR_S_ldst_immpost(Rt, Rn, imm9)
|
---|
5955 |
|
---|
5956 |
|
---|
5957 | /* STR <Xt>, [<Xn|SP>], #<simm> (ffe00c00/f8000400) */
|
---|
5958 | //#define IEM_INSTR_IMPL_A64__STR_64_ldst_immpost(Rt, Rn, imm9)
|
---|
5959 |
|
---|
5960 |
|
---|
5961 | /* LDR <Xt>, [<Xn|SP>], #<simm> (ffe00c00/f8400400) */
|
---|
5962 | //#define IEM_INSTR_IMPL_A64__LDR_64_ldst_immpost(Rt, Rn, imm9)
|
---|
5963 |
|
---|
5964 |
|
---|
5965 | /* STR <Dt>, [<Xn|SP>], #<simm> (ffe00c00/fc000400) */
|
---|
5966 | //#define IEM_INSTR_IMPL_A64__STR_D_ldst_immpost(Rt, Rn, imm9)
|
---|
5967 |
|
---|
5968 |
|
---|
5969 | /* LDR <Dt>, [<Xn|SP>], #<simm> (ffe00c00/fc400400) */
|
---|
5970 | //#define IEM_INSTR_IMPL_A64__LDR_D_ldst_immpost(Rt, Rn, imm9)
|
---|
5971 |
|
---|
5972 |
|
---|
5973 |
|
---|
5974 | /*
|
---|
5975 | *
|
---|
5976 | * Instruction Set & Groups: ldst_immpre / ldst / A64
|
---|
5977 | *
|
---|
5978 | */
|
---|
5979 |
|
---|
5980 | /* STRB <Wt>, [<Xn|SP>, #<simm>]! (ffe00c00/38000c00) */
|
---|
5981 | //#define IEM_INSTR_IMPL_A64__STRB_32_ldst_immpre(Rt, Rn, imm9)
|
---|
5982 |
|
---|
5983 |
|
---|
5984 | /* LDRB <Wt>, [<Xn|SP>, #<simm>]! (ffe00c00/38400c00) */
|
---|
5985 | //#define IEM_INSTR_IMPL_A64__LDRB_32_ldst_immpre(Rt, Rn, imm9)
|
---|
5986 |
|
---|
5987 |
|
---|
5988 | /* LDRSB <Xt>, [<Xn|SP>, #<simm>]! (ffe00c00/38800c00) */
|
---|
5989 | //#define IEM_INSTR_IMPL_A64__LDRSB_64_ldst_immpre(Rt, Rn, imm9)
|
---|
5990 |
|
---|
5991 |
|
---|
5992 | /* LDRSB <Wt>, [<Xn|SP>, #<simm>]! (ffe00c00/38c00c00) */
|
---|
5993 | //#define IEM_INSTR_IMPL_A64__LDRSB_32_ldst_immpre(Rt, Rn, imm9)
|
---|
5994 |
|
---|
5995 |
|
---|
5996 | /* STR <Bt>, [<Xn|SP>, #<simm>]! (ffe00c00/3c000c00) */
|
---|
5997 | //#define IEM_INSTR_IMPL_A64__STR_B_ldst_immpre(Rt, Rn, imm9)
|
---|
5998 |
|
---|
5999 |
|
---|
6000 | /* LDR <Bt>, [<Xn|SP>, #<simm>]! (ffe00c00/3c400c00) */
|
---|
6001 | //#define IEM_INSTR_IMPL_A64__LDR_B_ldst_immpre(Rt, Rn, imm9)
|
---|
6002 |
|
---|
6003 |
|
---|
6004 | /* STR <Qt>, [<Xn|SP>, #<simm>]! (ffe00c00/3c800c00) */
|
---|
6005 | //#define IEM_INSTR_IMPL_A64__STR_Q_ldst_immpre(Rt, Rn, imm9)
|
---|
6006 |
|
---|
6007 |
|
---|
6008 | /* LDR <Qt>, [<Xn|SP>, #<simm>]! (ffe00c00/3cc00c00) */
|
---|
6009 | //#define IEM_INSTR_IMPL_A64__LDR_Q_ldst_immpre(Rt, Rn, imm9)
|
---|
6010 |
|
---|
6011 |
|
---|
6012 | /* STRH <Wt>, [<Xn|SP>, #<simm>]! (ffe00c00/78000c00) */
|
---|
6013 | //#define IEM_INSTR_IMPL_A64__STRH_32_ldst_immpre(Rt, Rn, imm9)
|
---|
6014 |
|
---|
6015 |
|
---|
6016 | /* LDRH <Wt>, [<Xn|SP>, #<simm>]! (ffe00c00/78400c00) */
|
---|
6017 | //#define IEM_INSTR_IMPL_A64__LDRH_32_ldst_immpre(Rt, Rn, imm9)
|
---|
6018 |
|
---|
6019 |
|
---|
6020 | /* LDRSH <Xt>, [<Xn|SP>, #<simm>]! (ffe00c00/78800c00) */
|
---|
6021 | //#define IEM_INSTR_IMPL_A64__LDRSH_64_ldst_immpre(Rt, Rn, imm9)
|
---|
6022 |
|
---|
6023 |
|
---|
6024 | /* LDRSH <Wt>, [<Xn|SP>, #<simm>]! (ffe00c00/78c00c00) */
|
---|
6025 | //#define IEM_INSTR_IMPL_A64__LDRSH_32_ldst_immpre(Rt, Rn, imm9)
|
---|
6026 |
|
---|
6027 |
|
---|
6028 | /* STR <Ht>, [<Xn|SP>, #<simm>]! (ffe00c00/7c000c00) */
|
---|
6029 | //#define IEM_INSTR_IMPL_A64__STR_H_ldst_immpre(Rt, Rn, imm9)
|
---|
6030 |
|
---|
6031 |
|
---|
6032 | /* LDR <Ht>, [<Xn|SP>, #<simm>]! (ffe00c00/7c400c00) */
|
---|
6033 | //#define IEM_INSTR_IMPL_A64__LDR_H_ldst_immpre(Rt, Rn, imm9)
|
---|
6034 |
|
---|
6035 |
|
---|
6036 | /* STR <Wt>, [<Xn|SP>, #<simm>]! (ffe00c00/b8000c00) */
|
---|
6037 | //#define IEM_INSTR_IMPL_A64__STR_32_ldst_immpre(Rt, Rn, imm9)
|
---|
6038 |
|
---|
6039 |
|
---|
6040 | /* LDR <Wt>, [<Xn|SP>, #<simm>]! (ffe00c00/b8400c00) */
|
---|
6041 | //#define IEM_INSTR_IMPL_A64__LDR_32_ldst_immpre(Rt, Rn, imm9)
|
---|
6042 |
|
---|
6043 |
|
---|
6044 | /* LDRSW <Xt>, [<Xn|SP>, #<simm>]! (ffe00c00/b8800c00) */
|
---|
6045 | //#define IEM_INSTR_IMPL_A64__LDRSW_64_ldst_immpre(Rt, Rn, imm9)
|
---|
6046 |
|
---|
6047 |
|
---|
6048 | /* STR <St>, [<Xn|SP>, #<simm>]! (ffe00c00/bc000c00) */
|
---|
6049 | //#define IEM_INSTR_IMPL_A64__STR_S_ldst_immpre(Rt, Rn, imm9)
|
---|
6050 |
|
---|
6051 |
|
---|
6052 | /* LDR <St>, [<Xn|SP>, #<simm>]! (ffe00c00/bc400c00) */
|
---|
6053 | //#define IEM_INSTR_IMPL_A64__LDR_S_ldst_immpre(Rt, Rn, imm9)
|
---|
6054 |
|
---|
6055 |
|
---|
6056 | /* STR <Xt>, [<Xn|SP>, #<simm>]! (ffe00c00/f8000c00) */
|
---|
6057 | //#define IEM_INSTR_IMPL_A64__STR_64_ldst_immpre(Rt, Rn, imm9)
|
---|
6058 |
|
---|
6059 |
|
---|
6060 | /* LDR <Xt>, [<Xn|SP>, #<simm>]! (ffe00c00/f8400c00) */
|
---|
6061 | //#define IEM_INSTR_IMPL_A64__LDR_64_ldst_immpre(Rt, Rn, imm9)
|
---|
6062 |
|
---|
6063 |
|
---|
6064 | /* STR <Dt>, [<Xn|SP>, #<simm>]! (ffe00c00/fc000c00) */
|
---|
6065 | //#define IEM_INSTR_IMPL_A64__STR_D_ldst_immpre(Rt, Rn, imm9)
|
---|
6066 |
|
---|
6067 |
|
---|
6068 | /* LDR <Dt>, [<Xn|SP>, #<simm>]! (ffe00c00/fc400c00) */
|
---|
6069 | //#define IEM_INSTR_IMPL_A64__LDR_D_ldst_immpre(Rt, Rn, imm9)
|
---|
6070 |
|
---|
6071 |
|
---|
6072 |
|
---|
6073 | /*
|
---|
6074 | *
|
---|
6075 | * Instruction Set & Groups: ldst_pac / ldst / A64
|
---|
6076 | *
|
---|
6077 | */
|
---|
6078 |
|
---|
6079 | /* LDRAA <Xt>, [<Xn|SP>{, #<simm>}] (ffa00c00/f8200400) */
|
---|
6080 | //#define IEM_INSTR_IMPL_A64__LDRAA_64_ldst_pac(Rt, Rn, imm9, S)
|
---|
6081 |
|
---|
6082 |
|
---|
6083 | /* LDRAA <Xt>, [<Xn|SP>{, #<simm>}]! (ffa00c00/f8200c00) */
|
---|
6084 | //#define IEM_INSTR_IMPL_A64__LDRAA_64W_ldst_pac(Rt, Rn, imm9, S)
|
---|
6085 |
|
---|
6086 |
|
---|
6087 | /* LDRAB <Xt>, [<Xn|SP>{, #<simm>}] (ffa00c00/f8a00400) */
|
---|
6088 | //#define IEM_INSTR_IMPL_A64__LDRAB_64_ldst_pac(Rt, Rn, imm9, S)
|
---|
6089 |
|
---|
6090 |
|
---|
6091 | /* LDRAB <Xt>, [<Xn|SP>{, #<simm>}]! (ffa00c00/f8a00c00) */
|
---|
6092 | //#define IEM_INSTR_IMPL_A64__LDRAB_64W_ldst_pac(Rt, Rn, imm9, S)
|
---|
6093 |
|
---|
6094 |
|
---|
6095 |
|
---|
6096 | /*
|
---|
6097 | *
|
---|
6098 | * Instruction Set & Groups: ldst_pos / ldst / A64
|
---|
6099 | *
|
---|
6100 | */
|
---|
6101 |
|
---|
6102 | /* STRB <Wt>, [<Xn|SP>{, #<pimm>}] (ffc00000/39000000) */
|
---|
6103 | //#define IEM_INSTR_IMPL_A64__STRB_32_ldst_pos(Rt, Rn, imm12)
|
---|
6104 |
|
---|
6105 |
|
---|
6106 | /* LDRB <Wt>, [<Xn|SP>{, #<pimm>}] (ffc00000/39400000) */
|
---|
6107 | //#define IEM_INSTR_IMPL_A64__LDRB_32_ldst_pos(Rt, Rn, imm12)
|
---|
6108 |
|
---|
6109 |
|
---|
6110 | /* LDRSB <Xt>, [<Xn|SP>{, #<pimm>}] (ffc00000/39800000) */
|
---|
6111 | //#define IEM_INSTR_IMPL_A64__LDRSB_64_ldst_pos(Rt, Rn, imm12)
|
---|
6112 |
|
---|
6113 |
|
---|
6114 | /* LDRSB <Wt>, [<Xn|SP>{, #<pimm>}] (ffc00000/39c00000) */
|
---|
6115 | //#define IEM_INSTR_IMPL_A64__LDRSB_32_ldst_pos(Rt, Rn, imm12)
|
---|
6116 |
|
---|
6117 |
|
---|
6118 | /* STR <Bt>, [<Xn|SP>{, #<pimm>}] (ffc00000/3d000000) */
|
---|
6119 | //#define IEM_INSTR_IMPL_A64__STR_B_ldst_pos(Rt, Rn, imm12)
|
---|
6120 |
|
---|
6121 |
|
---|
6122 | /* LDR <Bt>, [<Xn|SP>{, #<pimm>}] (ffc00000/3d400000) */
|
---|
6123 | //#define IEM_INSTR_IMPL_A64__LDR_B_ldst_pos(Rt, Rn, imm12)
|
---|
6124 |
|
---|
6125 |
|
---|
6126 | /* STR <Qt>, [<Xn|SP>{, #<pimm>}] (ffc00000/3d800000) */
|
---|
6127 | //#define IEM_INSTR_IMPL_A64__STR_Q_ldst_pos(Rt, Rn, imm12)
|
---|
6128 |
|
---|
6129 |
|
---|
6130 | /* LDR <Qt>, [<Xn|SP>{, #<pimm>}] (ffc00000/3dc00000) */
|
---|
6131 | //#define IEM_INSTR_IMPL_A64__LDR_Q_ldst_pos(Rt, Rn, imm12)
|
---|
6132 |
|
---|
6133 |
|
---|
6134 | /* STRH <Wt>, [<Xn|SP>{, #<pimm>}] (ffc00000/79000000) */
|
---|
6135 | //#define IEM_INSTR_IMPL_A64__STRH_32_ldst_pos(Rt, Rn, imm12)
|
---|
6136 |
|
---|
6137 |
|
---|
6138 | /* LDRH <Wt>, [<Xn|SP>{, #<pimm>}] (ffc00000/79400000) */
|
---|
6139 | //#define IEM_INSTR_IMPL_A64__LDRH_32_ldst_pos(Rt, Rn, imm12)
|
---|
6140 |
|
---|
6141 |
|
---|
6142 | /* LDRSH <Xt>, [<Xn|SP>{, #<pimm>}] (ffc00000/79800000) */
|
---|
6143 | //#define IEM_INSTR_IMPL_A64__LDRSH_64_ldst_pos(Rt, Rn, imm12)
|
---|
6144 |
|
---|
6145 |
|
---|
6146 | /* LDRSH <Wt>, [<Xn|SP>{, #<pimm>}] (ffc00000/79c00000) */
|
---|
6147 | //#define IEM_INSTR_IMPL_A64__LDRSH_32_ldst_pos(Rt, Rn, imm12)
|
---|
6148 |
|
---|
6149 |
|
---|
6150 | /* STR <Ht>, [<Xn|SP>{, #<pimm>}] (ffc00000/7d000000) */
|
---|
6151 | //#define IEM_INSTR_IMPL_A64__STR_H_ldst_pos(Rt, Rn, imm12)
|
---|
6152 |
|
---|
6153 |
|
---|
6154 | /* LDR <Ht>, [<Xn|SP>{, #<pimm>}] (ffc00000/7d400000) */
|
---|
6155 | //#define IEM_INSTR_IMPL_A64__LDR_H_ldst_pos(Rt, Rn, imm12)
|
---|
6156 |
|
---|
6157 |
|
---|
6158 | /* STR <Wt>, [<Xn|SP>{, #<pimm>}] (ffc00000/b9000000) */
|
---|
6159 | //#define IEM_INSTR_IMPL_A64__STR_32_ldst_pos(Rt, Rn, imm12)
|
---|
6160 |
|
---|
6161 |
|
---|
6162 | /* LDR <Wt>, [<Xn|SP>{, #<pimm>}] (ffc00000/b9400000) */
|
---|
6163 | //#define IEM_INSTR_IMPL_A64__LDR_32_ldst_pos(Rt, Rn, imm12)
|
---|
6164 |
|
---|
6165 |
|
---|
6166 | /* LDRSW <Xt>, [<Xn|SP>{, #<pimm>}] (ffc00000/b9800000) */
|
---|
6167 | //#define IEM_INSTR_IMPL_A64__LDRSW_64_ldst_pos(Rt, Rn, imm12)
|
---|
6168 |
|
---|
6169 |
|
---|
6170 | /* STR <St>, [<Xn|SP>{, #<pimm>}] (ffc00000/bd000000) */
|
---|
6171 | //#define IEM_INSTR_IMPL_A64__STR_S_ldst_pos(Rt, Rn, imm12)
|
---|
6172 |
|
---|
6173 |
|
---|
6174 | /* LDR <St>, [<Xn|SP>{, #<pimm>}] (ffc00000/bd400000) */
|
---|
6175 | //#define IEM_INSTR_IMPL_A64__LDR_S_ldst_pos(Rt, Rn, imm12)
|
---|
6176 |
|
---|
6177 |
|
---|
6178 | /* STR <Xt>, [<Xn|SP>{, #<pimm>}] (ffc00000/f9000000) */
|
---|
6179 | //#define IEM_INSTR_IMPL_A64__STR_64_ldst_pos(Rt, Rn, imm12)
|
---|
6180 |
|
---|
6181 |
|
---|
6182 | /* LDR <Xt>, [<Xn|SP>{, #<pimm>}] (ffc00000/f9400000) */
|
---|
6183 | //#define IEM_INSTR_IMPL_A64__LDR_64_ldst_pos(Rt, Rn, imm12)
|
---|
6184 |
|
---|
6185 |
|
---|
6186 | /* PRFM {<prfop> | #<imm5>}, [<Xn|SP>{, #<pimm>}] (ffc00000/f9800000) */
|
---|
6187 | //#define IEM_INSTR_IMPL_A64__PRFM_P_ldst_pos(Rt, Rn, imm12)
|
---|
6188 |
|
---|
6189 |
|
---|
6190 | /* STR <Dt>, [<Xn|SP>{, #<pimm>}] (ffc00000/fd000000) */
|
---|
6191 | //#define IEM_INSTR_IMPL_A64__STR_D_ldst_pos(Rt, Rn, imm12)
|
---|
6192 |
|
---|
6193 |
|
---|
6194 | /* LDR <Dt>, [<Xn|SP>{, #<pimm>}] (ffc00000/fd400000) */
|
---|
6195 | //#define IEM_INSTR_IMPL_A64__LDR_D_ldst_pos(Rt, Rn, imm12)
|
---|
6196 |
|
---|
6197 |
|
---|
6198 |
|
---|
6199 | /*
|
---|
6200 | *
|
---|
6201 | * Instruction Set & Groups: ldst_regoff / ldst / A64
|
---|
6202 | *
|
---|
6203 | */
|
---|
6204 |
|
---|
6205 | /* STRB <Wt>, [<Xn|SP>, {<Wm> | <Xm>}, <extend>{ <amount>}] (ffe00c00/38200800) */
|
---|
6206 | //#define IEM_INSTR_IMPL_A64__STRB_32B_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6207 |
|
---|
6208 |
|
---|
6209 | /* STRB <Wt>, [<Xn|SP>, <Xm>{, LSL <amount>}] (ffe0ec00/38206800) */
|
---|
6210 | //#define IEM_INSTR_IMPL_A64__STRB_32BL_ldst_regoff(Rt, Rn, S, Rm)
|
---|
6211 |
|
---|
6212 |
|
---|
6213 | /* LDRB <Wt>, [<Xn|SP>, {<Wm> | <Xm>}, <extend>{ <amount>}] (ffe00c00/38600800) */
|
---|
6214 | //#define IEM_INSTR_IMPL_A64__LDRB_32B_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6215 |
|
---|
6216 |
|
---|
6217 | /* LDRB <Wt>, [<Xn|SP>, <Xm>{, LSL <amount>}] (ffe0ec00/38606800) */
|
---|
6218 | //#define IEM_INSTR_IMPL_A64__LDRB_32BL_ldst_regoff(Rt, Rn, S, Rm)
|
---|
6219 |
|
---|
6220 |
|
---|
6221 | /* LDRSB <Xt>, [<Xn|SP>, {<Wm> | <Xm>}, <extend>{ <amount>}] (ffe00c00/38a00800) */
|
---|
6222 | //#define IEM_INSTR_IMPL_A64__LDRSB_64B_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6223 |
|
---|
6224 |
|
---|
6225 | /* LDRSB <Xt>, [<Xn|SP>, <Xm>{, LSL <amount>}] (ffe0ec00/38a06800) */
|
---|
6226 | //#define IEM_INSTR_IMPL_A64__LDRSB_64BL_ldst_regoff(Rt, Rn, S, Rm)
|
---|
6227 |
|
---|
6228 |
|
---|
6229 | /* LDRSB <Wt>, [<Xn|SP>, {<Wm> | <Xm>}, <extend>{ <amount>}] (ffe00c00/38e00800) */
|
---|
6230 | //#define IEM_INSTR_IMPL_A64__LDRSB_32B_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6231 |
|
---|
6232 |
|
---|
6233 | /* LDRSB <Wt>, [<Xn|SP>, <Xm>{, LSL <amount>}] (ffe0ec00/38e06800) */
|
---|
6234 | //#define IEM_INSTR_IMPL_A64__LDRSB_32BL_ldst_regoff(Rt, Rn, S, Rm)
|
---|
6235 |
|
---|
6236 |
|
---|
6237 | /* STR <Bt>, [<Xn|SP>, {<Wm> | <Xm>}, <extend>{ <amount>}] (ffe00c00/3c200800) */
|
---|
6238 | //#define IEM_INSTR_IMPL_A64__STR_B_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6239 |
|
---|
6240 |
|
---|
6241 | /* STR <Bt>, [<Xn|SP>, <Xm>{, LSL <amount>}] (ffe0ec00/3c206800) */
|
---|
6242 | //#define IEM_INSTR_IMPL_A64__STR_BL_ldst_regoff(Rt, Rn, S, Rm)
|
---|
6243 |
|
---|
6244 |
|
---|
6245 | /* LDR <Bt>, [<Xn|SP>, {<Wm> | <Xm>}, <extend>{ <amount>}] (ffe00c00/3c600800) */
|
---|
6246 | //#define IEM_INSTR_IMPL_A64__LDR_B_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6247 |
|
---|
6248 |
|
---|
6249 | /* LDR <Bt>, [<Xn|SP>, <Xm>{, LSL <amount>}] (ffe0ec00/3c606800) */
|
---|
6250 | //#define IEM_INSTR_IMPL_A64__LDR_BL_ldst_regoff(Rt, Rn, S, Rm)
|
---|
6251 |
|
---|
6252 |
|
---|
6253 | /* STR <Qt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/3ca00800) */
|
---|
6254 | //#define IEM_INSTR_IMPL_A64__STR_Q_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6255 |
|
---|
6256 |
|
---|
6257 | /* LDR <Qt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/3ce00800) */
|
---|
6258 | //#define IEM_INSTR_IMPL_A64__LDR_Q_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6259 |
|
---|
6260 |
|
---|
6261 | /* STRH <Wt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/78200800) */
|
---|
6262 | //#define IEM_INSTR_IMPL_A64__STRH_32_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6263 |
|
---|
6264 |
|
---|
6265 | /* LDRH <Wt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/78600800) */
|
---|
6266 | //#define IEM_INSTR_IMPL_A64__LDRH_32_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6267 |
|
---|
6268 |
|
---|
6269 | /* LDRSH <Xt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/78a00800) */
|
---|
6270 | //#define IEM_INSTR_IMPL_A64__LDRSH_64_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6271 |
|
---|
6272 |
|
---|
6273 | /* LDRSH <Wt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/78e00800) */
|
---|
6274 | //#define IEM_INSTR_IMPL_A64__LDRSH_32_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6275 |
|
---|
6276 |
|
---|
6277 | /* STR <Ht>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/7c200800) */
|
---|
6278 | //#define IEM_INSTR_IMPL_A64__STR_H_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6279 |
|
---|
6280 |
|
---|
6281 | /* LDR <Ht>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/7c600800) */
|
---|
6282 | //#define IEM_INSTR_IMPL_A64__LDR_H_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6283 |
|
---|
6284 |
|
---|
6285 | /* STR <Wt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/b8200800) */
|
---|
6286 | //#define IEM_INSTR_IMPL_A64__STR_32_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6287 |
|
---|
6288 |
|
---|
6289 | /* LDR <Wt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/b8600800) */
|
---|
6290 | //#define IEM_INSTR_IMPL_A64__LDR_32_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6291 |
|
---|
6292 |
|
---|
6293 | /* LDRSW <Xt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/b8a00800) */
|
---|
6294 | //#define IEM_INSTR_IMPL_A64__LDRSW_64_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6295 |
|
---|
6296 |
|
---|
6297 | /* STR <St>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/bc200800) */
|
---|
6298 | //#define IEM_INSTR_IMPL_A64__STR_S_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6299 |
|
---|
6300 |
|
---|
6301 | /* LDR <St>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/bc600800) */
|
---|
6302 | //#define IEM_INSTR_IMPL_A64__LDR_S_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6303 |
|
---|
6304 |
|
---|
6305 | /* STR <Xt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/f8200800) */
|
---|
6306 | //#define IEM_INSTR_IMPL_A64__STR_64_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6307 |
|
---|
6308 |
|
---|
6309 | /* LDR <Xt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/f8600800) */
|
---|
6310 | //#define IEM_INSTR_IMPL_A64__LDR_64_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6311 |
|
---|
6312 |
|
---|
6313 | /* PRFM {<prfop> | #<imm5>}, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/f8a00800) */
|
---|
6314 | //#define IEM_INSTR_IMPL_A64__PRFM_P_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6315 |
|
---|
6316 |
|
---|
6317 | /* RPRFM {<rprfop> | #<imm6>}, <Xm>, [<Xn|SP>] (ffe00c00/f8a00800) */
|
---|
6318 | //#define IEM_INSTR_IMPL_A64__RPRFM_R_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6319 |
|
---|
6320 |
|
---|
6321 | /* STR <Dt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/fc200800) */
|
---|
6322 | //#define IEM_INSTR_IMPL_A64__STR_D_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6323 |
|
---|
6324 |
|
---|
6325 | /* LDR <Dt>, [<Xn|SP>, {<Wm> | <Xm>}{, <extend>{ <amount>}}] (ffe00c00/fc600800) */
|
---|
6326 | //#define IEM_INSTR_IMPL_A64__LDR_D_ldst_regoff(Rt, Rn, S, option, Rm)
|
---|
6327 |
|
---|
6328 |
|
---|
6329 |
|
---|
6330 | /*
|
---|
6331 | *
|
---|
6332 | * Instruction Set & Groups: ldst_unpriv / ldst / A64
|
---|
6333 | *
|
---|
6334 | */
|
---|
6335 |
|
---|
6336 | /* STTRB <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/38000800) */
|
---|
6337 | //#define IEM_INSTR_IMPL_A64__STTRB_32_ldst_unpriv(Rt, Rn, imm9)
|
---|
6338 |
|
---|
6339 |
|
---|
6340 | /* LDTRB <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/38400800) */
|
---|
6341 | //#define IEM_INSTR_IMPL_A64__LDTRB_32_ldst_unpriv(Rt, Rn, imm9)
|
---|
6342 |
|
---|
6343 |
|
---|
6344 | /* LDTRSB <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/38800800) */
|
---|
6345 | //#define IEM_INSTR_IMPL_A64__LDTRSB_64_ldst_unpriv(Rt, Rn, imm9)
|
---|
6346 |
|
---|
6347 |
|
---|
6348 | /* LDTRSB <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/38c00800) */
|
---|
6349 | //#define IEM_INSTR_IMPL_A64__LDTRSB_32_ldst_unpriv(Rt, Rn, imm9)
|
---|
6350 |
|
---|
6351 |
|
---|
6352 | /* STTRH <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/78000800) */
|
---|
6353 | //#define IEM_INSTR_IMPL_A64__STTRH_32_ldst_unpriv(Rt, Rn, imm9)
|
---|
6354 |
|
---|
6355 |
|
---|
6356 | /* LDTRH <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/78400800) */
|
---|
6357 | //#define IEM_INSTR_IMPL_A64__LDTRH_32_ldst_unpriv(Rt, Rn, imm9)
|
---|
6358 |
|
---|
6359 |
|
---|
6360 | /* LDTRSH <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/78800800) */
|
---|
6361 | //#define IEM_INSTR_IMPL_A64__LDTRSH_64_ldst_unpriv(Rt, Rn, imm9)
|
---|
6362 |
|
---|
6363 |
|
---|
6364 | /* LDTRSH <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/78c00800) */
|
---|
6365 | //#define IEM_INSTR_IMPL_A64__LDTRSH_32_ldst_unpriv(Rt, Rn, imm9)
|
---|
6366 |
|
---|
6367 |
|
---|
6368 | /* STTR <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/b8000800) */
|
---|
6369 | //#define IEM_INSTR_IMPL_A64__STTR_32_ldst_unpriv(Rt, Rn, imm9)
|
---|
6370 |
|
---|
6371 |
|
---|
6372 | /* LDTR <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/b8400800) */
|
---|
6373 | //#define IEM_INSTR_IMPL_A64__LDTR_32_ldst_unpriv(Rt, Rn, imm9)
|
---|
6374 |
|
---|
6375 |
|
---|
6376 | /* LDTRSW <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/b8800800) */
|
---|
6377 | //#define IEM_INSTR_IMPL_A64__LDTRSW_64_ldst_unpriv(Rt, Rn, imm9)
|
---|
6378 |
|
---|
6379 |
|
---|
6380 | /* STTR <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/f8000800) */
|
---|
6381 | //#define IEM_INSTR_IMPL_A64__STTR_64_ldst_unpriv(Rt, Rn, imm9)
|
---|
6382 |
|
---|
6383 |
|
---|
6384 | /* LDTR <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/f8400800) */
|
---|
6385 | //#define IEM_INSTR_IMPL_A64__LDTR_64_ldst_unpriv(Rt, Rn, imm9)
|
---|
6386 |
|
---|
6387 |
|
---|
6388 |
|
---|
6389 | /*
|
---|
6390 | *
|
---|
6391 | * Instruction Set & Groups: ldst_unscaled / ldst / A64
|
---|
6392 | *
|
---|
6393 | */
|
---|
6394 |
|
---|
6395 | /* STURB <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/38000000) */
|
---|
6396 | //#define IEM_INSTR_IMPL_A64__STURB_32_ldst_unscaled(Rt, Rn, imm9)
|
---|
6397 |
|
---|
6398 |
|
---|
6399 | /* LDURB <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/38400000) */
|
---|
6400 | //#define IEM_INSTR_IMPL_A64__LDURB_32_ldst_unscaled(Rt, Rn, imm9)
|
---|
6401 |
|
---|
6402 |
|
---|
6403 | /* LDURSB <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/38800000) */
|
---|
6404 | //#define IEM_INSTR_IMPL_A64__LDURSB_64_ldst_unscaled(Rt, Rn, imm9)
|
---|
6405 |
|
---|
6406 |
|
---|
6407 | /* LDURSB <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/38c00000) */
|
---|
6408 | //#define IEM_INSTR_IMPL_A64__LDURSB_32_ldst_unscaled(Rt, Rn, imm9)
|
---|
6409 |
|
---|
6410 |
|
---|
6411 | /* STUR <Bt>, [<Xn|SP>{, #<simm>}] (ffe00c00/3c000000) */
|
---|
6412 | //#define IEM_INSTR_IMPL_A64__STUR_B_ldst_unscaled(Rt, Rn, imm9)
|
---|
6413 |
|
---|
6414 |
|
---|
6415 | /* LDUR <Bt>, [<Xn|SP>{, #<simm>}] (ffe00c00/3c400000) */
|
---|
6416 | //#define IEM_INSTR_IMPL_A64__LDUR_B_ldst_unscaled(Rt, Rn, imm9)
|
---|
6417 |
|
---|
6418 |
|
---|
6419 | /* STUR <Qt>, [<Xn|SP>{, #<simm>}] (ffe00c00/3c800000) */
|
---|
6420 | //#define IEM_INSTR_IMPL_A64__STUR_Q_ldst_unscaled(Rt, Rn, imm9)
|
---|
6421 |
|
---|
6422 |
|
---|
6423 | /* LDUR <Qt>, [<Xn|SP>{, #<simm>}] (ffe00c00/3cc00000) */
|
---|
6424 | //#define IEM_INSTR_IMPL_A64__LDUR_Q_ldst_unscaled(Rt, Rn, imm9)
|
---|
6425 |
|
---|
6426 |
|
---|
6427 | /* STURH <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/78000000) */
|
---|
6428 | //#define IEM_INSTR_IMPL_A64__STURH_32_ldst_unscaled(Rt, Rn, imm9)
|
---|
6429 |
|
---|
6430 |
|
---|
6431 | /* LDURH <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/78400000) */
|
---|
6432 | //#define IEM_INSTR_IMPL_A64__LDURH_32_ldst_unscaled(Rt, Rn, imm9)
|
---|
6433 |
|
---|
6434 |
|
---|
6435 | /* LDURSH <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/78800000) */
|
---|
6436 | //#define IEM_INSTR_IMPL_A64__LDURSH_64_ldst_unscaled(Rt, Rn, imm9)
|
---|
6437 |
|
---|
6438 |
|
---|
6439 | /* LDURSH <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/78c00000) */
|
---|
6440 | //#define IEM_INSTR_IMPL_A64__LDURSH_32_ldst_unscaled(Rt, Rn, imm9)
|
---|
6441 |
|
---|
6442 |
|
---|
6443 | /* STUR <Ht>, [<Xn|SP>{, #<simm>}] (ffe00c00/7c000000) */
|
---|
6444 | //#define IEM_INSTR_IMPL_A64__STUR_H_ldst_unscaled(Rt, Rn, imm9)
|
---|
6445 |
|
---|
6446 |
|
---|
6447 | /* LDUR <Ht>, [<Xn|SP>{, #<simm>}] (ffe00c00/7c400000) */
|
---|
6448 | //#define IEM_INSTR_IMPL_A64__LDUR_H_ldst_unscaled(Rt, Rn, imm9)
|
---|
6449 |
|
---|
6450 |
|
---|
6451 | /* STUR <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/b8000000) */
|
---|
6452 | //#define IEM_INSTR_IMPL_A64__STUR_32_ldst_unscaled(Rt, Rn, imm9)
|
---|
6453 |
|
---|
6454 |
|
---|
6455 | /* LDUR <Wt>, [<Xn|SP>{, #<simm>}] (ffe00c00/b8400000) */
|
---|
6456 | //#define IEM_INSTR_IMPL_A64__LDUR_32_ldst_unscaled(Rt, Rn, imm9)
|
---|
6457 |
|
---|
6458 |
|
---|
6459 | /* LDURSW <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/b8800000) */
|
---|
6460 | //#define IEM_INSTR_IMPL_A64__LDURSW_64_ldst_unscaled(Rt, Rn, imm9)
|
---|
6461 |
|
---|
6462 |
|
---|
6463 | /* STUR <St>, [<Xn|SP>{, #<simm>}] (ffe00c00/bc000000) */
|
---|
6464 | //#define IEM_INSTR_IMPL_A64__STUR_S_ldst_unscaled(Rt, Rn, imm9)
|
---|
6465 |
|
---|
6466 |
|
---|
6467 | /* LDUR <St>, [<Xn|SP>{, #<simm>}] (ffe00c00/bc400000) */
|
---|
6468 | //#define IEM_INSTR_IMPL_A64__LDUR_S_ldst_unscaled(Rt, Rn, imm9)
|
---|
6469 |
|
---|
6470 |
|
---|
6471 | /* STUR <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/f8000000) */
|
---|
6472 | //#define IEM_INSTR_IMPL_A64__STUR_64_ldst_unscaled(Rt, Rn, imm9)
|
---|
6473 |
|
---|
6474 |
|
---|
6475 | /* LDUR <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/f8400000) */
|
---|
6476 | //#define IEM_INSTR_IMPL_A64__LDUR_64_ldst_unscaled(Rt, Rn, imm9)
|
---|
6477 |
|
---|
6478 |
|
---|
6479 | /* PRFUM {<prfop> | #<imm5>}, [<Xn|SP>{, #<simm>}] (ffe00c00/f8800000) */
|
---|
6480 | //#define IEM_INSTR_IMPL_A64__PRFUM_P_ldst_unscaled(Rt, Rn, imm9)
|
---|
6481 |
|
---|
6482 |
|
---|
6483 | /* STUR <Dt>, [<Xn|SP>{, #<simm>}] (ffe00c00/fc000000) */
|
---|
6484 | //#define IEM_INSTR_IMPL_A64__STUR_D_ldst_unscaled(Rt, Rn, imm9)
|
---|
6485 |
|
---|
6486 |
|
---|
6487 | /* LDUR <Dt>, [<Xn|SP>{, #<simm>}] (ffe00c00/fc400000) */
|
---|
6488 | //#define IEM_INSTR_IMPL_A64__LDUR_D_ldst_unscaled(Rt, Rn, imm9)
|
---|
6489 |
|
---|
6490 |
|
---|
6491 |
|
---|
6492 | /*
|
---|
6493 | *
|
---|
6494 | * Instruction Set & Groups: ldstexclp / ldst / A64
|
---|
6495 | *
|
---|
6496 | */
|
---|
6497 |
|
---|
6498 | /* STXP <Ws>, <Wt1>, <Wt2>, [<Xn|SP>{, #0}] (ffe08000/88200000) */
|
---|
6499 | //#define IEM_INSTR_IMPL_A64__STXP_SP32_ldstexclp(Rt, Rn, Rt2, Rs)
|
---|
6500 |
|
---|
6501 |
|
---|
6502 | /* STLXP <Ws>, <Wt1>, <Wt2>, [<Xn|SP>{, #0}] (ffe08000/88208000) */
|
---|
6503 | //#define IEM_INSTR_IMPL_A64__STLXP_SP32_ldstexclp(Rt, Rn, Rt2, Rs)
|
---|
6504 |
|
---|
6505 |
|
---|
6506 | /* LDXP <Wt1>, <Wt2>, [<Xn|SP>{, #0}] (ffff8000/887f0000) */
|
---|
6507 | //#define IEM_INSTR_IMPL_A64__LDXP_LP32_ldstexclp(Rt, Rn, Rt2)
|
---|
6508 |
|
---|
6509 |
|
---|
6510 | /* LDAXP <Wt1>, <Wt2>, [<Xn|SP>{, #0}] (ffff8000/887f8000) */
|
---|
6511 | //#define IEM_INSTR_IMPL_A64__LDAXP_LP32_ldstexclp(Rt, Rn, Rt2)
|
---|
6512 |
|
---|
6513 |
|
---|
6514 | /* STXP <Ws>, <Xt1>, <Xt2>, [<Xn|SP>{, #0}] (ffe08000/c8200000) */
|
---|
6515 | //#define IEM_INSTR_IMPL_A64__STXP_SP64_ldstexclp(Rt, Rn, Rt2, Rs)
|
---|
6516 |
|
---|
6517 |
|
---|
6518 | /* STLXP <Ws>, <Xt1>, <Xt2>, [<Xn|SP>{, #0}] (ffe08000/c8208000) */
|
---|
6519 | //#define IEM_INSTR_IMPL_A64__STLXP_SP64_ldstexclp(Rt, Rn, Rt2, Rs)
|
---|
6520 |
|
---|
6521 |
|
---|
6522 | /* LDXP <Xt1>, <Xt2>, [<Xn|SP>{, #0}] (ffff8000/c87f0000) */
|
---|
6523 | //#define IEM_INSTR_IMPL_A64__LDXP_LP64_ldstexclp(Rt, Rn, Rt2)
|
---|
6524 |
|
---|
6525 |
|
---|
6526 | /* LDAXP <Xt1>, <Xt2>, [<Xn|SP>{, #0}] (ffff8000/c87f8000) */
|
---|
6527 | //#define IEM_INSTR_IMPL_A64__LDAXP_LP64_ldstexclp(Rt, Rn, Rt2)
|
---|
6528 |
|
---|
6529 |
|
---|
6530 |
|
---|
6531 | /*
|
---|
6532 | *
|
---|
6533 | * Instruction Set & Groups: ldstexclr / ldst / A64
|
---|
6534 | *
|
---|
6535 | */
|
---|
6536 |
|
---|
6537 | /* STXRB <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/08007c00) */
|
---|
6538 | //#define IEM_INSTR_IMPL_A64__STXRB_SR32_ldstexclr(Rt, Rn, Rs)
|
---|
6539 |
|
---|
6540 |
|
---|
6541 | /* STLXRB <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/0800fc00) */
|
---|
6542 | //#define IEM_INSTR_IMPL_A64__STLXRB_SR32_ldstexclr(Rt, Rn, Rs)
|
---|
6543 |
|
---|
6544 |
|
---|
6545 | /* LDXRB <Wt>, [<Xn|SP>{, #0}] (fffffc00/085f7c00) */
|
---|
6546 | //#define IEM_INSTR_IMPL_A64__LDXRB_LR32_ldstexclr(Rt, Rn)
|
---|
6547 |
|
---|
6548 |
|
---|
6549 | /* LDAXRB <Wt>, [<Xn|SP>{, #0}] (fffffc00/085ffc00) */
|
---|
6550 | //#define IEM_INSTR_IMPL_A64__LDAXRB_LR32_ldstexclr(Rt, Rn)
|
---|
6551 |
|
---|
6552 |
|
---|
6553 | /* STXRH <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/48007c00) */
|
---|
6554 | //#define IEM_INSTR_IMPL_A64__STXRH_SR32_ldstexclr(Rt, Rn, Rs)
|
---|
6555 |
|
---|
6556 |
|
---|
6557 | /* STLXRH <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/4800fc00) */
|
---|
6558 | //#define IEM_INSTR_IMPL_A64__STLXRH_SR32_ldstexclr(Rt, Rn, Rs)
|
---|
6559 |
|
---|
6560 |
|
---|
6561 | /* LDXRH <Wt>, [<Xn|SP>{, #0}] (fffffc00/485f7c00) */
|
---|
6562 | //#define IEM_INSTR_IMPL_A64__LDXRH_LR32_ldstexclr(Rt, Rn)
|
---|
6563 |
|
---|
6564 |
|
---|
6565 | /* LDAXRH <Wt>, [<Xn|SP>{, #0}] (fffffc00/485ffc00) */
|
---|
6566 | //#define IEM_INSTR_IMPL_A64__LDAXRH_LR32_ldstexclr(Rt, Rn)
|
---|
6567 |
|
---|
6568 |
|
---|
6569 | /* STXR <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/88007c00) */
|
---|
6570 | //#define IEM_INSTR_IMPL_A64__STXR_SR32_ldstexclr(Rt, Rn, Rs)
|
---|
6571 |
|
---|
6572 |
|
---|
6573 | /* STLXR <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/8800fc00) */
|
---|
6574 | //#define IEM_INSTR_IMPL_A64__STLXR_SR32_ldstexclr(Rt, Rn, Rs)
|
---|
6575 |
|
---|
6576 |
|
---|
6577 | /* LDXR <Wt>, [<Xn|SP>{, #0}] (fffffc00/885f7c00) */
|
---|
6578 | //#define IEM_INSTR_IMPL_A64__LDXR_LR32_ldstexclr(Rt, Rn)
|
---|
6579 |
|
---|
6580 |
|
---|
6581 | /* LDAXR <Wt>, [<Xn|SP>{, #0}] (fffffc00/885ffc00) */
|
---|
6582 | //#define IEM_INSTR_IMPL_A64__LDAXR_LR32_ldstexclr(Rt, Rn)
|
---|
6583 |
|
---|
6584 |
|
---|
6585 | /* STXR <Ws>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c8007c00) */
|
---|
6586 | //#define IEM_INSTR_IMPL_A64__STXR_SR64_ldstexclr(Rt, Rn, Rs)
|
---|
6587 |
|
---|
6588 |
|
---|
6589 | /* STLXR <Ws>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c800fc00) */
|
---|
6590 | //#define IEM_INSTR_IMPL_A64__STLXR_SR64_ldstexclr(Rt, Rn, Rs)
|
---|
6591 |
|
---|
6592 |
|
---|
6593 | /* LDXR <Xt>, [<Xn|SP>{, #0}] (fffffc00/c85f7c00) */
|
---|
6594 | //#define IEM_INSTR_IMPL_A64__LDXR_LR64_ldstexclr(Rt, Rn)
|
---|
6595 |
|
---|
6596 |
|
---|
6597 | /* LDAXR <Xt>, [<Xn|SP>{, #0}] (fffffc00/c85ffc00) */
|
---|
6598 | //#define IEM_INSTR_IMPL_A64__LDAXR_LR64_ldstexclr(Rt, Rn)
|
---|
6599 |
|
---|
6600 |
|
---|
6601 |
|
---|
6602 | /*
|
---|
6603 | *
|
---|
6604 | * Instruction Set & Groups: ldstexclr_unpriv / ldst / A64
|
---|
6605 | *
|
---|
6606 | */
|
---|
6607 |
|
---|
6608 | /* STTXR <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/89007c00) */
|
---|
6609 | //#define IEM_INSTR_IMPL_A64__STTXR_SR32_ldstexclr_unpriv(Rt, Rn, Rs)
|
---|
6610 |
|
---|
6611 |
|
---|
6612 | /* STLTXR <Ws>, <Wt>, [<Xn|SP>{, #0}] (ffe0fc00/8900fc00) */
|
---|
6613 | //#define IEM_INSTR_IMPL_A64__STLTXR_SR32_ldstexclr_unpriv(Rt, Rn, Rs)
|
---|
6614 |
|
---|
6615 |
|
---|
6616 | /* LDTXR <Wt>, [<Xn|SP>{, #0}] (fffffc00/895f7c00) */
|
---|
6617 | //#define IEM_INSTR_IMPL_A64__LDTXR_LR32_ldstexclr_unpriv(Rt, Rn)
|
---|
6618 |
|
---|
6619 |
|
---|
6620 | /* LDATXR <Wt>, [<Xn|SP>{, #0}] (fffffc00/895ffc00) */
|
---|
6621 | //#define IEM_INSTR_IMPL_A64__LDATXR_LR32_ldstexclr_unpriv(Rt, Rn)
|
---|
6622 |
|
---|
6623 |
|
---|
6624 | /* STTXR <Ws>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c9007c00) */
|
---|
6625 | //#define IEM_INSTR_IMPL_A64__STTXR_SR64_ldstexclr_unpriv(Rt, Rn, Rs)
|
---|
6626 |
|
---|
6627 |
|
---|
6628 | /* STLTXR <Ws>, <Xt>, [<Xn|SP>{, #0}] (ffe0fc00/c900fc00) */
|
---|
6629 | //#define IEM_INSTR_IMPL_A64__STLTXR_SR64_ldstexclr_unpriv(Rt, Rn, Rs)
|
---|
6630 |
|
---|
6631 |
|
---|
6632 | /* LDTXR <Xt>, [<Xn|SP>{, #0}] (fffffc00/c95f7c00) */
|
---|
6633 | //#define IEM_INSTR_IMPL_A64__LDTXR_LR64_ldstexclr_unpriv(Rt, Rn)
|
---|
6634 |
|
---|
6635 |
|
---|
6636 | /* LDATXR <Xt>, [<Xn|SP>{, #0}] (fffffc00/c95ffc00) */
|
---|
6637 | //#define IEM_INSTR_IMPL_A64__LDATXR_LR64_ldstexclr_unpriv(Rt, Rn)
|
---|
6638 |
|
---|
6639 |
|
---|
6640 |
|
---|
6641 | /*
|
---|
6642 | *
|
---|
6643 | * Instruction Set & Groups: ldstnapair_offs / ldst / A64
|
---|
6644 | *
|
---|
6645 | */
|
---|
6646 |
|
---|
6647 | /* STNP <Wt1>, <Wt2>, [<Xn|SP>{, #<imm>}] (ffc00000/28000000) */
|
---|
6648 | //#define IEM_INSTR_IMPL_A64__STNP_32_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6649 |
|
---|
6650 |
|
---|
6651 | /* LDNP <Wt1>, <Wt2>, [<Xn|SP>{, #<imm>}] (ffc00000/28400000) */
|
---|
6652 | //#define IEM_INSTR_IMPL_A64__LDNP_32_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6653 |
|
---|
6654 |
|
---|
6655 | /* STNP <St1>, <St2>, [<Xn|SP>{, #<imm>}] (ffc00000/2c000000) */
|
---|
6656 | //#define IEM_INSTR_IMPL_A64__STNP_S_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6657 |
|
---|
6658 |
|
---|
6659 | /* LDNP <St1>, <St2>, [<Xn|SP>{, #<imm>}] (ffc00000/2c400000) */
|
---|
6660 | //#define IEM_INSTR_IMPL_A64__LDNP_S_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6661 |
|
---|
6662 |
|
---|
6663 | /* STNP <Dt1>, <Dt2>, [<Xn|SP>{, #<imm>}] (ffc00000/6c000000) */
|
---|
6664 | //#define IEM_INSTR_IMPL_A64__STNP_D_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6665 |
|
---|
6666 |
|
---|
6667 | /* LDNP <Dt1>, <Dt2>, [<Xn|SP>{, #<imm>}] (ffc00000/6c400000) */
|
---|
6668 | //#define IEM_INSTR_IMPL_A64__LDNP_D_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6669 |
|
---|
6670 |
|
---|
6671 | /* STNP <Xt1>, <Xt2>, [<Xn|SP>{, #<imm>}] (ffc00000/a8000000) */
|
---|
6672 | //#define IEM_INSTR_IMPL_A64__STNP_64_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6673 |
|
---|
6674 |
|
---|
6675 | /* LDNP <Xt1>, <Xt2>, [<Xn|SP>{, #<imm>}] (ffc00000/a8400000) */
|
---|
6676 | //#define IEM_INSTR_IMPL_A64__LDNP_64_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6677 |
|
---|
6678 |
|
---|
6679 | /* STNP <Qt1>, <Qt2>, [<Xn|SP>{, #<imm>}] (ffc00000/ac000000) */
|
---|
6680 | //#define IEM_INSTR_IMPL_A64__STNP_Q_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6681 |
|
---|
6682 |
|
---|
6683 | /* LDNP <Qt1>, <Qt2>, [<Xn|SP>{, #<imm>}] (ffc00000/ac400000) */
|
---|
6684 | //#define IEM_INSTR_IMPL_A64__LDNP_Q_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6685 |
|
---|
6686 |
|
---|
6687 | /* STTNP <Xt1>, <Xt2>, [<Xn|SP>{, #<imm>}] (ffc00000/e8000000) */
|
---|
6688 | //#define IEM_INSTR_IMPL_A64__STTNP_64_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6689 |
|
---|
6690 |
|
---|
6691 | /* LDTNP <Xt1>, <Xt2>, [<Xn|SP>{, #<imm>}] (ffc00000/e8400000) */
|
---|
6692 | //#define IEM_INSTR_IMPL_A64__LDTNP_64_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6693 |
|
---|
6694 |
|
---|
6695 | /* STTNP <Qt1>, <Qt2>, [<Xn|SP>{, #<imm>}] (ffc00000/ec000000) */
|
---|
6696 | //#define IEM_INSTR_IMPL_A64__STTNP_Q_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6697 |
|
---|
6698 |
|
---|
6699 | /* LDTNP <Qt1>, <Qt2>, [<Xn|SP>{, #<imm>}] (ffc00000/ec400000) */
|
---|
6700 | //#define IEM_INSTR_IMPL_A64__LDTNP_Q_ldstnapair_offs(Rt, Rn, Rt2, imm7)
|
---|
6701 |
|
---|
6702 |
|
---|
6703 |
|
---|
6704 | /*
|
---|
6705 | *
|
---|
6706 | * Instruction Set & Groups: ldstord / ldst / A64
|
---|
6707 | *
|
---|
6708 | */
|
---|
6709 |
|
---|
6710 | /* STLLRB <Wt>, [<Xn|SP>{, #0}] (fffffc00/089f7c00) */
|
---|
6711 | //#define IEM_INSTR_IMPL_A64__STLLRB_SL32_ldstord(Rt, Rn)
|
---|
6712 |
|
---|
6713 |
|
---|
6714 | /* STLRB <Wt>, [<Xn|SP>{, #0}] (fffffc00/089ffc00) */
|
---|
6715 | //#define IEM_INSTR_IMPL_A64__STLRB_SL32_ldstord(Rt, Rn)
|
---|
6716 |
|
---|
6717 |
|
---|
6718 | /* LDLARB <Wt>, [<Xn|SP>{, #0}] (fffffc00/08df7c00) */
|
---|
6719 | //#define IEM_INSTR_IMPL_A64__LDLARB_LR32_ldstord(Rt, Rn)
|
---|
6720 |
|
---|
6721 |
|
---|
6722 | /* LDARB <Wt>, [<Xn|SP>{, #0}] (fffffc00/08dffc00) */
|
---|
6723 | //#define IEM_INSTR_IMPL_A64__LDARB_LR32_ldstord(Rt, Rn)
|
---|
6724 |
|
---|
6725 |
|
---|
6726 | /* STLLRH <Wt>, [<Xn|SP>{, #0}] (fffffc00/489f7c00) */
|
---|
6727 | //#define IEM_INSTR_IMPL_A64__STLLRH_SL32_ldstord(Rt, Rn)
|
---|
6728 |
|
---|
6729 |
|
---|
6730 | /* STLRH <Wt>, [<Xn|SP>{, #0}] (fffffc00/489ffc00) */
|
---|
6731 | //#define IEM_INSTR_IMPL_A64__STLRH_SL32_ldstord(Rt, Rn)
|
---|
6732 |
|
---|
6733 |
|
---|
6734 | /* LDLARH <Wt>, [<Xn|SP>{, #0}] (fffffc00/48df7c00) */
|
---|
6735 | //#define IEM_INSTR_IMPL_A64__LDLARH_LR32_ldstord(Rt, Rn)
|
---|
6736 |
|
---|
6737 |
|
---|
6738 | /* LDARH <Wt>, [<Xn|SP>{, #0}] (fffffc00/48dffc00) */
|
---|
6739 | //#define IEM_INSTR_IMPL_A64__LDARH_LR32_ldstord(Rt, Rn)
|
---|
6740 |
|
---|
6741 |
|
---|
6742 | /* STLLR <Wt>, [<Xn|SP>{, #0}] (fffffc00/889f7c00) */
|
---|
6743 | //#define IEM_INSTR_IMPL_A64__STLLR_SL32_ldstord(Rt, Rn)
|
---|
6744 |
|
---|
6745 |
|
---|
6746 | /* STLR <Wt>, [<Xn|SP>{, #0}] (fffffc00/889ffc00) */
|
---|
6747 | //#define IEM_INSTR_IMPL_A64__STLR_SL32_ldstord(Rt, Rn)
|
---|
6748 |
|
---|
6749 |
|
---|
6750 | /* LDLAR <Wt>, [<Xn|SP>{, #0}] (fffffc00/88df7c00) */
|
---|
6751 | //#define IEM_INSTR_IMPL_A64__LDLAR_LR32_ldstord(Rt, Rn)
|
---|
6752 |
|
---|
6753 |
|
---|
6754 | /* LDAR <Wt>, [<Xn|SP>{, #0}] (fffffc00/88dffc00) */
|
---|
6755 | //#define IEM_INSTR_IMPL_A64__LDAR_LR32_ldstord(Rt, Rn)
|
---|
6756 |
|
---|
6757 |
|
---|
6758 | /* STLLR <Xt>, [<Xn|SP>{, #0}] (fffffc00/c89f7c00) */
|
---|
6759 | //#define IEM_INSTR_IMPL_A64__STLLR_SL64_ldstord(Rt, Rn)
|
---|
6760 |
|
---|
6761 |
|
---|
6762 | /* STLR <Xt>, [<Xn|SP>{, #0}] (fffffc00/c89ffc00) */
|
---|
6763 | //#define IEM_INSTR_IMPL_A64__STLR_SL64_ldstord(Rt, Rn)
|
---|
6764 |
|
---|
6765 |
|
---|
6766 | /* LDLAR <Xt>, [<Xn|SP>{, #0}] (fffffc00/c8df7c00) */
|
---|
6767 | //#define IEM_INSTR_IMPL_A64__LDLAR_LR64_ldstord(Rt, Rn)
|
---|
6768 |
|
---|
6769 |
|
---|
6770 | /* LDAR <Xt>, [<Xn|SP>{, #0}] (fffffc00/c8dffc00) */
|
---|
6771 | //#define IEM_INSTR_IMPL_A64__LDAR_LR64_ldstord(Rt, Rn)
|
---|
6772 |
|
---|
6773 |
|
---|
6774 |
|
---|
6775 | /*
|
---|
6776 | *
|
---|
6777 | * Instruction Set & Groups: ldstpair_off / ldst / A64
|
---|
6778 | *
|
---|
6779 | */
|
---|
6780 |
|
---|
6781 | /* STP <Wt1>, <Wt2>, [<Xn|SP>{, #<imm>}] (ffc00000/29000000) */
|
---|
6782 | //#define IEM_INSTR_IMPL_A64__STP_32_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6783 |
|
---|
6784 |
|
---|
6785 | /* LDP <Wt1>, <Wt2>, [<Xn|SP>{, #<imm>}] (ffc00000/29400000) */
|
---|
6786 | //#define IEM_INSTR_IMPL_A64__LDP_32_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6787 |
|
---|
6788 |
|
---|
6789 | /* STP <St1>, <St2>, [<Xn|SP>{, #<imm>}] (ffc00000/2d000000) */
|
---|
6790 | //#define IEM_INSTR_IMPL_A64__STP_S_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6791 |
|
---|
6792 |
|
---|
6793 | /* LDP <St1>, <St2>, [<Xn|SP>{, #<imm>}] (ffc00000/2d400000) */
|
---|
6794 | //#define IEM_INSTR_IMPL_A64__LDP_S_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6795 |
|
---|
6796 |
|
---|
6797 | /* STGP <Xt1>, <Xt2>, [<Xn|SP>{, #<imm>}] (ffc00000/69000000) */
|
---|
6798 | //#define IEM_INSTR_IMPL_A64__STGP_64_ldstpair_off(Rt, Rn, Rt2, simm7)
|
---|
6799 |
|
---|
6800 |
|
---|
6801 | /* LDPSW <Xt1>, <Xt2>, [<Xn|SP>{, #<imm>}] (ffc00000/69400000) */
|
---|
6802 | //#define IEM_INSTR_IMPL_A64__LDPSW_64_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6803 |
|
---|
6804 |
|
---|
6805 | /* STP <Dt1>, <Dt2>, [<Xn|SP>{, #<imm>}] (ffc00000/6d000000) */
|
---|
6806 | //#define IEM_INSTR_IMPL_A64__STP_D_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6807 |
|
---|
6808 |
|
---|
6809 | /* LDP <Dt1>, <Dt2>, [<Xn|SP>{, #<imm>}] (ffc00000/6d400000) */
|
---|
6810 | //#define IEM_INSTR_IMPL_A64__LDP_D_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6811 |
|
---|
6812 |
|
---|
6813 | /* STP <Xt1>, <Xt2>, [<Xn|SP>{, #<imm>}] (ffc00000/a9000000) */
|
---|
6814 | //#define IEM_INSTR_IMPL_A64__STP_64_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6815 |
|
---|
6816 |
|
---|
6817 | /* LDP <Xt1>, <Xt2>, [<Xn|SP>{, #<imm>}] (ffc00000/a9400000) */
|
---|
6818 | //#define IEM_INSTR_IMPL_A64__LDP_64_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6819 |
|
---|
6820 |
|
---|
6821 | /* STP <Qt1>, <Qt2>, [<Xn|SP>{, #<imm>}] (ffc00000/ad000000) */
|
---|
6822 | //#define IEM_INSTR_IMPL_A64__STP_Q_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6823 |
|
---|
6824 |
|
---|
6825 | /* LDP <Qt1>, <Qt2>, [<Xn|SP>{, #<imm>}] (ffc00000/ad400000) */
|
---|
6826 | //#define IEM_INSTR_IMPL_A64__LDP_Q_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6827 |
|
---|
6828 |
|
---|
6829 | /* STTP <Xt1>, <Xt2>, [<Xn|SP>{, #<imm>}] (ffc00000/e9000000) */
|
---|
6830 | //#define IEM_INSTR_IMPL_A64__STTP_64_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6831 |
|
---|
6832 |
|
---|
6833 | /* LDTP <Xt1>, <Xt2>, [<Xn|SP>{, #<imm>}] (ffc00000/e9400000) */
|
---|
6834 | //#define IEM_INSTR_IMPL_A64__LDTP_64_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6835 |
|
---|
6836 |
|
---|
6837 | /* STTP <Qt1>, <Qt2>, [<Xn|SP>{, #<imm>}] (ffc00000/ed000000) */
|
---|
6838 | //#define IEM_INSTR_IMPL_A64__STTP_Q_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6839 |
|
---|
6840 |
|
---|
6841 | /* LDTP <Qt1>, <Qt2>, [<Xn|SP>{, #<imm>}] (ffc00000/ed400000) */
|
---|
6842 | //#define IEM_INSTR_IMPL_A64__LDTP_Q_ldstpair_off(Rt, Rn, Rt2, imm7)
|
---|
6843 |
|
---|
6844 |
|
---|
6845 |
|
---|
6846 | /*
|
---|
6847 | *
|
---|
6848 | * Instruction Set & Groups: ldstpair_post / ldst / A64
|
---|
6849 | *
|
---|
6850 | */
|
---|
6851 |
|
---|
6852 | /* STP <Wt1>, <Wt2>, [<Xn|SP>], #<imm> (ffc00000/28800000) */
|
---|
6853 | //#define IEM_INSTR_IMPL_A64__STP_32_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6854 |
|
---|
6855 |
|
---|
6856 | /* LDP <Wt1>, <Wt2>, [<Xn|SP>], #<imm> (ffc00000/28c00000) */
|
---|
6857 | //#define IEM_INSTR_IMPL_A64__LDP_32_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6858 |
|
---|
6859 |
|
---|
6860 | /* STP <St1>, <St2>, [<Xn|SP>], #<imm> (ffc00000/2c800000) */
|
---|
6861 | //#define IEM_INSTR_IMPL_A64__STP_S_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6862 |
|
---|
6863 |
|
---|
6864 | /* LDP <St1>, <St2>, [<Xn|SP>], #<imm> (ffc00000/2cc00000) */
|
---|
6865 | //#define IEM_INSTR_IMPL_A64__LDP_S_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6866 |
|
---|
6867 |
|
---|
6868 | /* STGP <Xt1>, <Xt2>, [<Xn|SP>], #<imm> (ffc00000/68800000) */
|
---|
6869 | //#define IEM_INSTR_IMPL_A64__STGP_64_ldstpair_post(Rt, Rn, Rt2, simm7)
|
---|
6870 |
|
---|
6871 |
|
---|
6872 | /* LDPSW <Xt1>, <Xt2>, [<Xn|SP>], #<imm> (ffc00000/68c00000) */
|
---|
6873 | //#define IEM_INSTR_IMPL_A64__LDPSW_64_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6874 |
|
---|
6875 |
|
---|
6876 | /* STP <Dt1>, <Dt2>, [<Xn|SP>], #<imm> (ffc00000/6c800000) */
|
---|
6877 | //#define IEM_INSTR_IMPL_A64__STP_D_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6878 |
|
---|
6879 |
|
---|
6880 | /* LDP <Dt1>, <Dt2>, [<Xn|SP>], #<imm> (ffc00000/6cc00000) */
|
---|
6881 | //#define IEM_INSTR_IMPL_A64__LDP_D_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6882 |
|
---|
6883 |
|
---|
6884 | /* STP <Xt1>, <Xt2>, [<Xn|SP>], #<imm> (ffc00000/a8800000) */
|
---|
6885 | //#define IEM_INSTR_IMPL_A64__STP_64_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6886 |
|
---|
6887 |
|
---|
6888 | /* LDP <Xt1>, <Xt2>, [<Xn|SP>], #<imm> (ffc00000/a8c00000) */
|
---|
6889 | //#define IEM_INSTR_IMPL_A64__LDP_64_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6890 |
|
---|
6891 |
|
---|
6892 | /* STP <Qt1>, <Qt2>, [<Xn|SP>], #<imm> (ffc00000/ac800000) */
|
---|
6893 | //#define IEM_INSTR_IMPL_A64__STP_Q_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6894 |
|
---|
6895 |
|
---|
6896 | /* LDP <Qt1>, <Qt2>, [<Xn|SP>], #<imm> (ffc00000/acc00000) */
|
---|
6897 | //#define IEM_INSTR_IMPL_A64__LDP_Q_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6898 |
|
---|
6899 |
|
---|
6900 | /* STTP <Xt1>, <Xt2>, [<Xn|SP>], #<imm> (ffc00000/e8800000) */
|
---|
6901 | //#define IEM_INSTR_IMPL_A64__STTP_64_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6902 |
|
---|
6903 |
|
---|
6904 | /* LDTP <Xt1>, <Xt2>, [<Xn|SP>], #<imm> (ffc00000/e8c00000) */
|
---|
6905 | //#define IEM_INSTR_IMPL_A64__LDTP_64_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6906 |
|
---|
6907 |
|
---|
6908 | /* STTP <Qt1>, <Qt2>, [<Xn|SP>], #<imm> (ffc00000/ec800000) */
|
---|
6909 | //#define IEM_INSTR_IMPL_A64__STTP_Q_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6910 |
|
---|
6911 |
|
---|
6912 | /* LDTP <Qt1>, <Qt2>, [<Xn|SP>], #<imm> (ffc00000/ecc00000) */
|
---|
6913 | //#define IEM_INSTR_IMPL_A64__LDTP_Q_ldstpair_post(Rt, Rn, Rt2, imm7)
|
---|
6914 |
|
---|
6915 |
|
---|
6916 |
|
---|
6917 | /*
|
---|
6918 | *
|
---|
6919 | * Instruction Set & Groups: ldstpair_pre / ldst / A64
|
---|
6920 | *
|
---|
6921 | */
|
---|
6922 |
|
---|
6923 | /* STP <Wt1>, <Wt2>, [<Xn|SP>, #<imm>]! (ffc00000/29800000) */
|
---|
6924 | //#define IEM_INSTR_IMPL_A64__STP_32_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6925 |
|
---|
6926 |
|
---|
6927 | /* LDP <Wt1>, <Wt2>, [<Xn|SP>, #<imm>]! (ffc00000/29c00000) */
|
---|
6928 | //#define IEM_INSTR_IMPL_A64__LDP_32_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6929 |
|
---|
6930 |
|
---|
6931 | /* STP <St1>, <St2>, [<Xn|SP>, #<imm>]! (ffc00000/2d800000) */
|
---|
6932 | //#define IEM_INSTR_IMPL_A64__STP_S_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6933 |
|
---|
6934 |
|
---|
6935 | /* LDP <St1>, <St2>, [<Xn|SP>, #<imm>]! (ffc00000/2dc00000) */
|
---|
6936 | //#define IEM_INSTR_IMPL_A64__LDP_S_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6937 |
|
---|
6938 |
|
---|
6939 | /* STGP <Xt1>, <Xt2>, [<Xn|SP>, #<imm>]! (ffc00000/69800000) */
|
---|
6940 | //#define IEM_INSTR_IMPL_A64__STGP_64_ldstpair_pre(Rt, Rn, Rt2, simm7)
|
---|
6941 |
|
---|
6942 |
|
---|
6943 | /* LDPSW <Xt1>, <Xt2>, [<Xn|SP>, #<imm>]! (ffc00000/69c00000) */
|
---|
6944 | //#define IEM_INSTR_IMPL_A64__LDPSW_64_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6945 |
|
---|
6946 |
|
---|
6947 | /* STP <Dt1>, <Dt2>, [<Xn|SP>, #<imm>]! (ffc00000/6d800000) */
|
---|
6948 | //#define IEM_INSTR_IMPL_A64__STP_D_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6949 |
|
---|
6950 |
|
---|
6951 | /* LDP <Dt1>, <Dt2>, [<Xn|SP>, #<imm>]! (ffc00000/6dc00000) */
|
---|
6952 | //#define IEM_INSTR_IMPL_A64__LDP_D_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6953 |
|
---|
6954 |
|
---|
6955 | /* STP <Xt1>, <Xt2>, [<Xn|SP>, #<imm>]! (ffc00000/a9800000) */
|
---|
6956 | //#define IEM_INSTR_IMPL_A64__STP_64_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6957 |
|
---|
6958 |
|
---|
6959 | /* LDP <Xt1>, <Xt2>, [<Xn|SP>, #<imm>]! (ffc00000/a9c00000) */
|
---|
6960 | //#define IEM_INSTR_IMPL_A64__LDP_64_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6961 |
|
---|
6962 |
|
---|
6963 | /* STP <Qt1>, <Qt2>, [<Xn|SP>, #<imm>]! (ffc00000/ad800000) */
|
---|
6964 | //#define IEM_INSTR_IMPL_A64__STP_Q_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6965 |
|
---|
6966 |
|
---|
6967 | /* LDP <Qt1>, <Qt2>, [<Xn|SP>, #<imm>]! (ffc00000/adc00000) */
|
---|
6968 | //#define IEM_INSTR_IMPL_A64__LDP_Q_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6969 |
|
---|
6970 |
|
---|
6971 | /* STTP <Xt1>, <Xt2>, [<Xn|SP>, #<imm>]! (ffc00000/e9800000) */
|
---|
6972 | //#define IEM_INSTR_IMPL_A64__STTP_64_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6973 |
|
---|
6974 |
|
---|
6975 | /* LDTP <Xt1>, <Xt2>, [<Xn|SP>, #<imm>]! (ffc00000/e9c00000) */
|
---|
6976 | //#define IEM_INSTR_IMPL_A64__LDTP_64_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6977 |
|
---|
6978 |
|
---|
6979 | /* STTP <Qt1>, <Qt2>, [<Xn|SP>, #<imm>]! (ffc00000/ed800000) */
|
---|
6980 | //#define IEM_INSTR_IMPL_A64__STTP_Q_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6981 |
|
---|
6982 |
|
---|
6983 | /* LDTP <Qt1>, <Qt2>, [<Xn|SP>, #<imm>]! (ffc00000/edc00000) */
|
---|
6984 | //#define IEM_INSTR_IMPL_A64__LDTP_Q_ldstpair_pre(Rt, Rn, Rt2, imm7)
|
---|
6985 |
|
---|
6986 |
|
---|
6987 |
|
---|
6988 | /*
|
---|
6989 | *
|
---|
6990 | * Instruction Set & Groups: ldsttags / ldst / A64
|
---|
6991 | *
|
---|
6992 | */
|
---|
6993 |
|
---|
6994 | /* STG <Xt|SP>, [<Xn|SP>], #<simm> (ffe00c00/d9200400) */
|
---|
6995 | //#define IEM_INSTR_IMPL_A64__STG_64Spost_ldsttags(Rt, Rn, imm9)
|
---|
6996 |
|
---|
6997 |
|
---|
6998 | /* STG <Xt|SP>, [<Xn|SP>{, #<simm>}] (ffe00c00/d9200800) */
|
---|
6999 | //#define IEM_INSTR_IMPL_A64__STG_64Soffset_ldsttags(Rt, Rn, imm9)
|
---|
7000 |
|
---|
7001 |
|
---|
7002 | /* STG <Xt|SP>, [<Xn|SP>, #<simm>]! (ffe00c00/d9200c00) */
|
---|
7003 | //#define IEM_INSTR_IMPL_A64__STG_64Spre_ldsttags(Rt, Rn, imm9)
|
---|
7004 |
|
---|
7005 |
|
---|
7006 | /* STZGM <Xt>, [<Xn|SP>] (fffffc00/d9200000) */
|
---|
7007 | //#define IEM_INSTR_IMPL_A64__STZGM_64bulk_ldsttags(Rt, Rn)
|
---|
7008 |
|
---|
7009 |
|
---|
7010 | /* LDG <Xt>, [<Xn|SP>{, #<simm>}] (ffe00c00/d9600000) */
|
---|
7011 | //#define IEM_INSTR_IMPL_A64__LDG_64Loffset_ldsttags(Rt, Rn, imm9)
|
---|
7012 |
|
---|
7013 |
|
---|
7014 | /* STZG <Xt|SP>, [<Xn|SP>], #<simm> (ffe00c00/d9600400) */
|
---|
7015 | //#define IEM_INSTR_IMPL_A64__STZG_64Spost_ldsttags(Rt, Rn, imm9)
|
---|
7016 |
|
---|
7017 |
|
---|
7018 | /* STZG <Xt|SP>, [<Xn|SP>{, #<simm>}] (ffe00c00/d9600800) */
|
---|
7019 | //#define IEM_INSTR_IMPL_A64__STZG_64Soffset_ldsttags(Rt, Rn, imm9)
|
---|
7020 |
|
---|
7021 |
|
---|
7022 | /* STZG <Xt|SP>, [<Xn|SP>, #<simm>]! (ffe00c00/d9600c00) */
|
---|
7023 | //#define IEM_INSTR_IMPL_A64__STZG_64Spre_ldsttags(Rt, Rn, imm9)
|
---|
7024 |
|
---|
7025 |
|
---|
7026 | /* ST2G <Xt|SP>, [<Xn|SP>], #<simm> (ffe00c00/d9a00400) */
|
---|
7027 | //#define IEM_INSTR_IMPL_A64__ST2G_64Spost_ldsttags(Rt, Rn, imm9)
|
---|
7028 |
|
---|
7029 |
|
---|
7030 | /* ST2G <Xt|SP>, [<Xn|SP>{, #<simm>}] (ffe00c00/d9a00800) */
|
---|
7031 | //#define IEM_INSTR_IMPL_A64__ST2G_64Soffset_ldsttags(Rt, Rn, imm9)
|
---|
7032 |
|
---|
7033 |
|
---|
7034 | /* ST2G <Xt|SP>, [<Xn|SP>, #<simm>]! (ffe00c00/d9a00c00) */
|
---|
7035 | //#define IEM_INSTR_IMPL_A64__ST2G_64Spre_ldsttags(Rt, Rn, imm9)
|
---|
7036 |
|
---|
7037 |
|
---|
7038 | /* STGM <Xt>, [<Xn|SP>] (fffffc00/d9a00000) */
|
---|
7039 | //#define IEM_INSTR_IMPL_A64__STGM_64bulk_ldsttags(Rt, Rn)
|
---|
7040 |
|
---|
7041 |
|
---|
7042 | /* STZ2G <Xt|SP>, [<Xn|SP>], #<simm> (ffe00c00/d9e00400) */
|
---|
7043 | //#define IEM_INSTR_IMPL_A64__STZ2G_64Spost_ldsttags(Rt, Rn, imm9)
|
---|
7044 |
|
---|
7045 |
|
---|
7046 | /* STZ2G <Xt|SP>, [<Xn|SP>{, #<simm>}] (ffe00c00/d9e00800) */
|
---|
7047 | //#define IEM_INSTR_IMPL_A64__STZ2G_64Soffset_ldsttags(Rt, Rn, imm9)
|
---|
7048 |
|
---|
7049 |
|
---|
7050 | /* STZ2G <Xt|SP>, [<Xn|SP>, #<simm>]! (ffe00c00/d9e00c00) */
|
---|
7051 | //#define IEM_INSTR_IMPL_A64__STZ2G_64Spre_ldsttags(Rt, Rn, imm9)
|
---|
7052 |
|
---|
7053 |
|
---|
7054 | /* LDGM <Xt>, [<Xn|SP>] (fffffc00/d9e00000) */
|
---|
7055 | //#define IEM_INSTR_IMPL_A64__LDGM_64bulk_ldsttags(Rt, Rn)
|
---|
7056 |
|
---|
7057 |
|
---|
7058 |
|
---|
7059 | /*
|
---|
7060 | *
|
---|
7061 | * Instruction Set & Groups: loadlit / ldst / A64
|
---|
7062 | *
|
---|
7063 | */
|
---|
7064 |
|
---|
7065 | /* LDR <Wt>, <label> (ff000000/18000000) */
|
---|
7066 | //#define IEM_INSTR_IMPL_A64__LDR_32_loadlit(Rt, imm19)
|
---|
7067 |
|
---|
7068 |
|
---|
7069 | /* LDR <St>, <label> (ff000000/1c000000) */
|
---|
7070 | //#define IEM_INSTR_IMPL_A64__LDR_S_loadlit(Rt, imm19)
|
---|
7071 |
|
---|
7072 |
|
---|
7073 | /* LDR <Xt>, <label> (ff000000/58000000) */
|
---|
7074 | //#define IEM_INSTR_IMPL_A64__LDR_64_loadlit(Rt, imm19)
|
---|
7075 |
|
---|
7076 |
|
---|
7077 | /* LDR <Dt>, <label> (ff000000/5c000000) */
|
---|
7078 | //#define IEM_INSTR_IMPL_A64__LDR_D_loadlit(Rt, imm19)
|
---|
7079 |
|
---|
7080 |
|
---|
7081 | /* LDRSW <Xt>, <label> (ff000000/98000000) */
|
---|
7082 | //#define IEM_INSTR_IMPL_A64__LDRSW_64_loadlit(Rt, imm19)
|
---|
7083 |
|
---|
7084 |
|
---|
7085 | /* LDR <Qt>, <label> (ff000000/9c000000) */
|
---|
7086 | //#define IEM_INSTR_IMPL_A64__LDR_Q_loadlit(Rt, imm19)
|
---|
7087 |
|
---|
7088 |
|
---|
7089 | /* PRFM {<prfop> | #<imm5>}, <label> (ff000000/d8000000) */
|
---|
7090 | //#define IEM_INSTR_IMPL_A64__PRFM_P_loadlit(Rt, imm19)
|
---|
7091 |
|
---|
7092 |
|
---|
7093 |
|
---|
7094 | /*
|
---|
7095 | *
|
---|
7096 | * Instruction Set & Groups: log_imm / dpimm / A64
|
---|
7097 | *
|
---|
7098 | */
|
---|
7099 |
|
---|
7100 | /* AND <Wd|WSP>, <Wn>, #<imm> (ffc00000/12000000) */
|
---|
7101 | //#define IEM_INSTR_IMPL_A64__AND_32_log_imm(Rd, Rn, imms, immr)
|
---|
7102 |
|
---|
7103 |
|
---|
7104 | /* ORR <Wd|WSP>, <Wn>, #<imm> (ffc00000/32000000) */
|
---|
7105 | //#define IEM_INSTR_IMPL_A64__ORR_32_log_imm(Rd, Rn, imms, immr)
|
---|
7106 |
|
---|
7107 |
|
---|
7108 | /* EOR <Wd|WSP>, <Wn>, #<imm> (ffc00000/52000000) */
|
---|
7109 | //#define IEM_INSTR_IMPL_A64__EOR_32_log_imm(Rd, Rn, imms, immr)
|
---|
7110 |
|
---|
7111 |
|
---|
7112 | /* ANDS <Wd>, <Wn>, #<imm> (ffc00000/72000000) */
|
---|
7113 | //#define IEM_INSTR_IMPL_A64__ANDS_32S_log_imm(Rd, Rn, imms, immr)
|
---|
7114 |
|
---|
7115 |
|
---|
7116 | /* AND <Xd|SP>, <Xn>, #<imm> (ff800000/92000000) */
|
---|
7117 | //#define IEM_INSTR_IMPL_A64__AND_64_log_imm(Rd, Rn, imms, immr, N)
|
---|
7118 |
|
---|
7119 |
|
---|
7120 | /* ORR <Xd|SP>, <Xn>, #<imm> (ff800000/b2000000) */
|
---|
7121 | //#define IEM_INSTR_IMPL_A64__ORR_64_log_imm(Rd, Rn, imms, immr, N)
|
---|
7122 |
|
---|
7123 |
|
---|
7124 | /* EOR <Xd|SP>, <Xn>, #<imm> (ff800000/d2000000) */
|
---|
7125 | //#define IEM_INSTR_IMPL_A64__EOR_64_log_imm(Rd, Rn, imms, immr, N)
|
---|
7126 |
|
---|
7127 |
|
---|
7128 | /* ANDS <Xd>, <Xn>, #<imm> (ff800000/f2000000) */
|
---|
7129 | //#define IEM_INSTR_IMPL_A64__ANDS_64S_log_imm(Rd, Rn, imms, immr, N)
|
---|
7130 |
|
---|
7131 |
|
---|
7132 |
|
---|
7133 | /*
|
---|
7134 | *
|
---|
7135 | * Instruction Set & Groups: log_shift / dpreg / A64
|
---|
7136 | *
|
---|
7137 | */
|
---|
7138 |
|
---|
7139 | /* AND <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/0a000000) */
|
---|
7140 | //#define IEM_INSTR_IMPL_A64__AND_32_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7141 |
|
---|
7142 |
|
---|
7143 | /* BIC <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/0a200000) */
|
---|
7144 | //#define IEM_INSTR_IMPL_A64__BIC_32_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7145 |
|
---|
7146 |
|
---|
7147 | /* ORR <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/2a000000) */
|
---|
7148 | //#define IEM_INSTR_IMPL_A64__ORR_32_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7149 |
|
---|
7150 |
|
---|
7151 | /* ORN <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/2a200000) */
|
---|
7152 | //#define IEM_INSTR_IMPL_A64__ORN_32_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7153 |
|
---|
7154 |
|
---|
7155 | /* EOR <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/4a000000) */
|
---|
7156 | //#define IEM_INSTR_IMPL_A64__EOR_32_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7157 |
|
---|
7158 |
|
---|
7159 | /* EON <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/4a200000) */
|
---|
7160 | //#define IEM_INSTR_IMPL_A64__EON_32_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7161 |
|
---|
7162 |
|
---|
7163 | /* ANDS <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/6a000000) */
|
---|
7164 | //#define IEM_INSTR_IMPL_A64__ANDS_32_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7165 |
|
---|
7166 |
|
---|
7167 | /* BICS <Wd>, <Wn>, <Wm>{, <shift> #<amount>} (ff200000/6a200000) */
|
---|
7168 | //#define IEM_INSTR_IMPL_A64__BICS_32_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7169 |
|
---|
7170 |
|
---|
7171 | /* AND <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/8a000000) */
|
---|
7172 | //#define IEM_INSTR_IMPL_A64__AND_64_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7173 |
|
---|
7174 |
|
---|
7175 | /* BIC <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/8a200000) */
|
---|
7176 | //#define IEM_INSTR_IMPL_A64__BIC_64_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7177 |
|
---|
7178 |
|
---|
7179 | /* ORR <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/aa000000) */
|
---|
7180 | //#define IEM_INSTR_IMPL_A64__ORR_64_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7181 |
|
---|
7182 |
|
---|
7183 | /* ORN <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/aa200000) */
|
---|
7184 | //#define IEM_INSTR_IMPL_A64__ORN_64_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7185 |
|
---|
7186 |
|
---|
7187 | /* EOR <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/ca000000) */
|
---|
7188 | //#define IEM_INSTR_IMPL_A64__EOR_64_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7189 |
|
---|
7190 |
|
---|
7191 | /* EON <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/ca200000) */
|
---|
7192 | //#define IEM_INSTR_IMPL_A64__EON_64_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7193 |
|
---|
7194 |
|
---|
7195 | /* ANDS <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/ea000000) */
|
---|
7196 | //#define IEM_INSTR_IMPL_A64__ANDS_64_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7197 |
|
---|
7198 |
|
---|
7199 | /* BICS <Xd>, <Xn>, <Xm>{, <shift> #<amount>} (ff200000/ea200000) */
|
---|
7200 | //#define IEM_INSTR_IMPL_A64__BICS_64_log_shift(Rd, Rn, imm6, Rm, shift)
|
---|
7201 |
|
---|
7202 |
|
---|
7203 |
|
---|
7204 | /*
|
---|
7205 | *
|
---|
7206 | * Instruction Set & Groups: memcms / ldst / A64
|
---|
7207 | *
|
---|
7208 | */
|
---|
7209 |
|
---|
7210 | /* CPYFP [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19000400) */
|
---|
7211 | //#define IEM_INSTR_IMPL_A64__CPYFP_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7212 |
|
---|
7213 |
|
---|
7214 | /* CPYFPWT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19001400) */
|
---|
7215 | //#define IEM_INSTR_IMPL_A64__CPYFPWT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7216 |
|
---|
7217 |
|
---|
7218 | /* CPYFPRT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19002400) */
|
---|
7219 | //#define IEM_INSTR_IMPL_A64__CPYFPRT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7220 |
|
---|
7221 |
|
---|
7222 | /* CPYFPT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19003400) */
|
---|
7223 | //#define IEM_INSTR_IMPL_A64__CPYFPT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7224 |
|
---|
7225 |
|
---|
7226 | /* CPYFPWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19004400) */
|
---|
7227 | //#define IEM_INSTR_IMPL_A64__CPYFPWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7228 |
|
---|
7229 |
|
---|
7230 | /* CPYFPWTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19005400) */
|
---|
7231 | //#define IEM_INSTR_IMPL_A64__CPYFPWTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7232 |
|
---|
7233 |
|
---|
7234 | /* CPYFPRTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19006400) */
|
---|
7235 | //#define IEM_INSTR_IMPL_A64__CPYFPRTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7236 |
|
---|
7237 |
|
---|
7238 | /* CPYFPTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19007400) */
|
---|
7239 | //#define IEM_INSTR_IMPL_A64__CPYFPTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7240 |
|
---|
7241 |
|
---|
7242 | /* CPYFPRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19008400) */
|
---|
7243 | //#define IEM_INSTR_IMPL_A64__CPYFPRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7244 |
|
---|
7245 |
|
---|
7246 | /* CPYFPWTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19009400) */
|
---|
7247 | //#define IEM_INSTR_IMPL_A64__CPYFPWTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7248 |
|
---|
7249 |
|
---|
7250 | /* CPYFPRTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1900a400) */
|
---|
7251 | //#define IEM_INSTR_IMPL_A64__CPYFPRTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7252 |
|
---|
7253 |
|
---|
7254 | /* CPYFPTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1900b400) */
|
---|
7255 | //#define IEM_INSTR_IMPL_A64__CPYFPTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7256 |
|
---|
7257 |
|
---|
7258 | /* CPYFPN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1900c400) */
|
---|
7259 | //#define IEM_INSTR_IMPL_A64__CPYFPN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7260 |
|
---|
7261 |
|
---|
7262 | /* CPYFPWTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1900d400) */
|
---|
7263 | //#define IEM_INSTR_IMPL_A64__CPYFPWTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7264 |
|
---|
7265 |
|
---|
7266 | /* CPYFPRTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1900e400) */
|
---|
7267 | //#define IEM_INSTR_IMPL_A64__CPYFPRTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7268 |
|
---|
7269 |
|
---|
7270 | /* CPYFPTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1900f400) */
|
---|
7271 | //#define IEM_INSTR_IMPL_A64__CPYFPTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7272 |
|
---|
7273 |
|
---|
7274 | /* CPYFM [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19400400) */
|
---|
7275 | //#define IEM_INSTR_IMPL_A64__CPYFM_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7276 |
|
---|
7277 |
|
---|
7278 | /* CPYFMWT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19401400) */
|
---|
7279 | //#define IEM_INSTR_IMPL_A64__CPYFMWT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7280 |
|
---|
7281 |
|
---|
7282 | /* CPYFMRT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19402400) */
|
---|
7283 | //#define IEM_INSTR_IMPL_A64__CPYFMRT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7284 |
|
---|
7285 |
|
---|
7286 | /* CPYFMT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19403400) */
|
---|
7287 | //#define IEM_INSTR_IMPL_A64__CPYFMT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7288 |
|
---|
7289 |
|
---|
7290 | /* CPYFMWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19404400) */
|
---|
7291 | //#define IEM_INSTR_IMPL_A64__CPYFMWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7292 |
|
---|
7293 |
|
---|
7294 | /* CPYFMWTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19405400) */
|
---|
7295 | //#define IEM_INSTR_IMPL_A64__CPYFMWTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7296 |
|
---|
7297 |
|
---|
7298 | /* CPYFMRTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19406400) */
|
---|
7299 | //#define IEM_INSTR_IMPL_A64__CPYFMRTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7300 |
|
---|
7301 |
|
---|
7302 | /* CPYFMTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19407400) */
|
---|
7303 | //#define IEM_INSTR_IMPL_A64__CPYFMTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7304 |
|
---|
7305 |
|
---|
7306 | /* CPYFMRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19408400) */
|
---|
7307 | //#define IEM_INSTR_IMPL_A64__CPYFMRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7308 |
|
---|
7309 |
|
---|
7310 | /* CPYFMWTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19409400) */
|
---|
7311 | //#define IEM_INSTR_IMPL_A64__CPYFMWTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7312 |
|
---|
7313 |
|
---|
7314 | /* CPYFMRTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1940a400) */
|
---|
7315 | //#define IEM_INSTR_IMPL_A64__CPYFMRTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7316 |
|
---|
7317 |
|
---|
7318 | /* CPYFMTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1940b400) */
|
---|
7319 | //#define IEM_INSTR_IMPL_A64__CPYFMTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7320 |
|
---|
7321 |
|
---|
7322 | /* CPYFMN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1940c400) */
|
---|
7323 | //#define IEM_INSTR_IMPL_A64__CPYFMN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7324 |
|
---|
7325 |
|
---|
7326 | /* CPYFMWTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1940d400) */
|
---|
7327 | //#define IEM_INSTR_IMPL_A64__CPYFMWTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7328 |
|
---|
7329 |
|
---|
7330 | /* CPYFMRTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1940e400) */
|
---|
7331 | //#define IEM_INSTR_IMPL_A64__CPYFMRTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7332 |
|
---|
7333 |
|
---|
7334 | /* CPYFMTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1940f400) */
|
---|
7335 | //#define IEM_INSTR_IMPL_A64__CPYFMTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7336 |
|
---|
7337 |
|
---|
7338 | /* CPYFE [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19800400) */
|
---|
7339 | //#define IEM_INSTR_IMPL_A64__CPYFE_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7340 |
|
---|
7341 |
|
---|
7342 | /* CPYFEWT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19801400) */
|
---|
7343 | //#define IEM_INSTR_IMPL_A64__CPYFEWT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7344 |
|
---|
7345 |
|
---|
7346 | /* CPYFERT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19802400) */
|
---|
7347 | //#define IEM_INSTR_IMPL_A64__CPYFERT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7348 |
|
---|
7349 |
|
---|
7350 | /* CPYFET [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19803400) */
|
---|
7351 | //#define IEM_INSTR_IMPL_A64__CPYFET_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7352 |
|
---|
7353 |
|
---|
7354 | /* CPYFEWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19804400) */
|
---|
7355 | //#define IEM_INSTR_IMPL_A64__CPYFEWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7356 |
|
---|
7357 |
|
---|
7358 | /* CPYFEWTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19805400) */
|
---|
7359 | //#define IEM_INSTR_IMPL_A64__CPYFEWTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7360 |
|
---|
7361 |
|
---|
7362 | /* CPYFERTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19806400) */
|
---|
7363 | //#define IEM_INSTR_IMPL_A64__CPYFERTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7364 |
|
---|
7365 |
|
---|
7366 | /* CPYFETWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19807400) */
|
---|
7367 | //#define IEM_INSTR_IMPL_A64__CPYFETWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7368 |
|
---|
7369 |
|
---|
7370 | /* CPYFERN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19808400) */
|
---|
7371 | //#define IEM_INSTR_IMPL_A64__CPYFERN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7372 |
|
---|
7373 |
|
---|
7374 | /* CPYFEWTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/19809400) */
|
---|
7375 | //#define IEM_INSTR_IMPL_A64__CPYFEWTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7376 |
|
---|
7377 |
|
---|
7378 | /* CPYFERTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1980a400) */
|
---|
7379 | //#define IEM_INSTR_IMPL_A64__CPYFERTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7380 |
|
---|
7381 |
|
---|
7382 | /* CPYFETRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1980b400) */
|
---|
7383 | //#define IEM_INSTR_IMPL_A64__CPYFETRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7384 |
|
---|
7385 |
|
---|
7386 | /* CPYFEN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1980c400) */
|
---|
7387 | //#define IEM_INSTR_IMPL_A64__CPYFEN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7388 |
|
---|
7389 |
|
---|
7390 | /* CPYFEWTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1980d400) */
|
---|
7391 | //#define IEM_INSTR_IMPL_A64__CPYFEWTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7392 |
|
---|
7393 |
|
---|
7394 | /* CPYFERTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1980e400) */
|
---|
7395 | //#define IEM_INSTR_IMPL_A64__CPYFERTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7396 |
|
---|
7397 |
|
---|
7398 | /* CPYFETN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1980f400) */
|
---|
7399 | //#define IEM_INSTR_IMPL_A64__CPYFETN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7400 |
|
---|
7401 |
|
---|
7402 | /* SETP [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c00400) */
|
---|
7403 | //#define IEM_INSTR_IMPL_A64__SETP_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7404 |
|
---|
7405 |
|
---|
7406 | /* SETPT [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c01400) */
|
---|
7407 | //#define IEM_INSTR_IMPL_A64__SETPT_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7408 |
|
---|
7409 |
|
---|
7410 | /* SETPN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c02400) */
|
---|
7411 | //#define IEM_INSTR_IMPL_A64__SETPN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7412 |
|
---|
7413 |
|
---|
7414 | /* SETPTN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c03400) */
|
---|
7415 | //#define IEM_INSTR_IMPL_A64__SETPTN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7416 |
|
---|
7417 |
|
---|
7418 | /* SETM [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c04400) */
|
---|
7419 | //#define IEM_INSTR_IMPL_A64__SETM_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7420 |
|
---|
7421 |
|
---|
7422 | /* SETMT [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c05400) */
|
---|
7423 | //#define IEM_INSTR_IMPL_A64__SETMT_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7424 |
|
---|
7425 |
|
---|
7426 | /* SETMN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c06400) */
|
---|
7427 | //#define IEM_INSTR_IMPL_A64__SETMN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7428 |
|
---|
7429 |
|
---|
7430 | /* SETMTN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c07400) */
|
---|
7431 | //#define IEM_INSTR_IMPL_A64__SETMTN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7432 |
|
---|
7433 |
|
---|
7434 | /* SETE [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c08400) */
|
---|
7435 | //#define IEM_INSTR_IMPL_A64__SETE_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7436 |
|
---|
7437 |
|
---|
7438 | /* SETET [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c09400) */
|
---|
7439 | //#define IEM_INSTR_IMPL_A64__SETET_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7440 |
|
---|
7441 |
|
---|
7442 | /* SETEN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c0a400) */
|
---|
7443 | //#define IEM_INSTR_IMPL_A64__SETEN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7444 |
|
---|
7445 |
|
---|
7446 | /* SETETN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/19c0b400) */
|
---|
7447 | //#define IEM_INSTR_IMPL_A64__SETETN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7448 |
|
---|
7449 |
|
---|
7450 | /* CPYP [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d000400) */
|
---|
7451 | //#define IEM_INSTR_IMPL_A64__CPYP_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7452 |
|
---|
7453 |
|
---|
7454 | /* CPYPWT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d001400) */
|
---|
7455 | //#define IEM_INSTR_IMPL_A64__CPYPWT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7456 |
|
---|
7457 |
|
---|
7458 | /* CPYPRT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d002400) */
|
---|
7459 | //#define IEM_INSTR_IMPL_A64__CPYPRT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7460 |
|
---|
7461 |
|
---|
7462 | /* CPYPT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d003400) */
|
---|
7463 | //#define IEM_INSTR_IMPL_A64__CPYPT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7464 |
|
---|
7465 |
|
---|
7466 | /* CPYPWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d004400) */
|
---|
7467 | //#define IEM_INSTR_IMPL_A64__CPYPWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7468 |
|
---|
7469 |
|
---|
7470 | /* CPYPWTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d005400) */
|
---|
7471 | //#define IEM_INSTR_IMPL_A64__CPYPWTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7472 |
|
---|
7473 |
|
---|
7474 | /* CPYPRTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d006400) */
|
---|
7475 | //#define IEM_INSTR_IMPL_A64__CPYPRTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7476 |
|
---|
7477 |
|
---|
7478 | /* CPYPTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d007400) */
|
---|
7479 | //#define IEM_INSTR_IMPL_A64__CPYPTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7480 |
|
---|
7481 |
|
---|
7482 | /* CPYPRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d008400) */
|
---|
7483 | //#define IEM_INSTR_IMPL_A64__CPYPRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7484 |
|
---|
7485 |
|
---|
7486 | /* CPYPWTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d009400) */
|
---|
7487 | //#define IEM_INSTR_IMPL_A64__CPYPWTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7488 |
|
---|
7489 |
|
---|
7490 | /* CPYPRTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d00a400) */
|
---|
7491 | //#define IEM_INSTR_IMPL_A64__CPYPRTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7492 |
|
---|
7493 |
|
---|
7494 | /* CPYPTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d00b400) */
|
---|
7495 | //#define IEM_INSTR_IMPL_A64__CPYPTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7496 |
|
---|
7497 |
|
---|
7498 | /* CPYPN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d00c400) */
|
---|
7499 | //#define IEM_INSTR_IMPL_A64__CPYPN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7500 |
|
---|
7501 |
|
---|
7502 | /* CPYPWTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d00d400) */
|
---|
7503 | //#define IEM_INSTR_IMPL_A64__CPYPWTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7504 |
|
---|
7505 |
|
---|
7506 | /* CPYPRTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d00e400) */
|
---|
7507 | //#define IEM_INSTR_IMPL_A64__CPYPRTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7508 |
|
---|
7509 |
|
---|
7510 | /* CPYPTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d00f400) */
|
---|
7511 | //#define IEM_INSTR_IMPL_A64__CPYPTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7512 |
|
---|
7513 |
|
---|
7514 | /* CPYM [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d400400) */
|
---|
7515 | //#define IEM_INSTR_IMPL_A64__CPYM_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7516 |
|
---|
7517 |
|
---|
7518 | /* CPYMWT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d401400) */
|
---|
7519 | //#define IEM_INSTR_IMPL_A64__CPYMWT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7520 |
|
---|
7521 |
|
---|
7522 | /* CPYMRT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d402400) */
|
---|
7523 | //#define IEM_INSTR_IMPL_A64__CPYMRT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7524 |
|
---|
7525 |
|
---|
7526 | /* CPYMT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d403400) */
|
---|
7527 | //#define IEM_INSTR_IMPL_A64__CPYMT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7528 |
|
---|
7529 |
|
---|
7530 | /* CPYMWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d404400) */
|
---|
7531 | //#define IEM_INSTR_IMPL_A64__CPYMWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7532 |
|
---|
7533 |
|
---|
7534 | /* CPYMWTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d405400) */
|
---|
7535 | //#define IEM_INSTR_IMPL_A64__CPYMWTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7536 |
|
---|
7537 |
|
---|
7538 | /* CPYMRTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d406400) */
|
---|
7539 | //#define IEM_INSTR_IMPL_A64__CPYMRTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7540 |
|
---|
7541 |
|
---|
7542 | /* CPYMTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d407400) */
|
---|
7543 | //#define IEM_INSTR_IMPL_A64__CPYMTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7544 |
|
---|
7545 |
|
---|
7546 | /* CPYMRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d408400) */
|
---|
7547 | //#define IEM_INSTR_IMPL_A64__CPYMRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7548 |
|
---|
7549 |
|
---|
7550 | /* CPYMWTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d409400) */
|
---|
7551 | //#define IEM_INSTR_IMPL_A64__CPYMWTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7552 |
|
---|
7553 |
|
---|
7554 | /* CPYMRTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d40a400) */
|
---|
7555 | //#define IEM_INSTR_IMPL_A64__CPYMRTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7556 |
|
---|
7557 |
|
---|
7558 | /* CPYMTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d40b400) */
|
---|
7559 | //#define IEM_INSTR_IMPL_A64__CPYMTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7560 |
|
---|
7561 |
|
---|
7562 | /* CPYMN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d40c400) */
|
---|
7563 | //#define IEM_INSTR_IMPL_A64__CPYMN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7564 |
|
---|
7565 |
|
---|
7566 | /* CPYMWTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d40d400) */
|
---|
7567 | //#define IEM_INSTR_IMPL_A64__CPYMWTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7568 |
|
---|
7569 |
|
---|
7570 | /* CPYMRTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d40e400) */
|
---|
7571 | //#define IEM_INSTR_IMPL_A64__CPYMRTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7572 |
|
---|
7573 |
|
---|
7574 | /* CPYMTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d40f400) */
|
---|
7575 | //#define IEM_INSTR_IMPL_A64__CPYMTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7576 |
|
---|
7577 |
|
---|
7578 | /* CPYE [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d800400) */
|
---|
7579 | //#define IEM_INSTR_IMPL_A64__CPYE_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7580 |
|
---|
7581 |
|
---|
7582 | /* CPYEWT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d801400) */
|
---|
7583 | //#define IEM_INSTR_IMPL_A64__CPYEWT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7584 |
|
---|
7585 |
|
---|
7586 | /* CPYERT [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d802400) */
|
---|
7587 | //#define IEM_INSTR_IMPL_A64__CPYERT_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7588 |
|
---|
7589 |
|
---|
7590 | /* CPYET [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d803400) */
|
---|
7591 | //#define IEM_INSTR_IMPL_A64__CPYET_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7592 |
|
---|
7593 |
|
---|
7594 | /* CPYEWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d804400) */
|
---|
7595 | //#define IEM_INSTR_IMPL_A64__CPYEWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7596 |
|
---|
7597 |
|
---|
7598 | /* CPYEWTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d805400) */
|
---|
7599 | //#define IEM_INSTR_IMPL_A64__CPYEWTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7600 |
|
---|
7601 |
|
---|
7602 | /* CPYERTWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d806400) */
|
---|
7603 | //#define IEM_INSTR_IMPL_A64__CPYERTWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7604 |
|
---|
7605 |
|
---|
7606 | /* CPYETWN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d807400) */
|
---|
7607 | //#define IEM_INSTR_IMPL_A64__CPYETWN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7608 |
|
---|
7609 |
|
---|
7610 | /* CPYERN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d808400) */
|
---|
7611 | //#define IEM_INSTR_IMPL_A64__CPYERN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7612 |
|
---|
7613 |
|
---|
7614 | /* CPYEWTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d809400) */
|
---|
7615 | //#define IEM_INSTR_IMPL_A64__CPYEWTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7616 |
|
---|
7617 |
|
---|
7618 | /* CPYERTRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d80a400) */
|
---|
7619 | //#define IEM_INSTR_IMPL_A64__CPYERTRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7620 |
|
---|
7621 |
|
---|
7622 | /* CPYETRN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d80b400) */
|
---|
7623 | //#define IEM_INSTR_IMPL_A64__CPYETRN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7624 |
|
---|
7625 |
|
---|
7626 | /* CPYEN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d80c400) */
|
---|
7627 | //#define IEM_INSTR_IMPL_A64__CPYEN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7628 |
|
---|
7629 |
|
---|
7630 | /* CPYEWTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d80d400) */
|
---|
7631 | //#define IEM_INSTR_IMPL_A64__CPYEWTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7632 |
|
---|
7633 |
|
---|
7634 | /* CPYERTN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d80e400) */
|
---|
7635 | //#define IEM_INSTR_IMPL_A64__CPYERTN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7636 |
|
---|
7637 |
|
---|
7638 | /* CPYETN [<Xd>]!, [<Xs>]!, <Xn>! (3fe0fc00/1d80f400) */
|
---|
7639 | //#define IEM_INSTR_IMPL_A64__CPYETN_CPY_memcms(Rd, Rn, Rs, sz)
|
---|
7640 |
|
---|
7641 |
|
---|
7642 | /* SETGP [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc00400) */
|
---|
7643 | //#define IEM_INSTR_IMPL_A64__SETGP_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7644 |
|
---|
7645 |
|
---|
7646 | /* SETGPT [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc01400) */
|
---|
7647 | //#define IEM_INSTR_IMPL_A64__SETGPT_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7648 |
|
---|
7649 |
|
---|
7650 | /* SETGPN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc02400) */
|
---|
7651 | //#define IEM_INSTR_IMPL_A64__SETGPN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7652 |
|
---|
7653 |
|
---|
7654 | /* SETGPTN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc03400) */
|
---|
7655 | //#define IEM_INSTR_IMPL_A64__SETGPTN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7656 |
|
---|
7657 |
|
---|
7658 | /* SETGM [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc04400) */
|
---|
7659 | //#define IEM_INSTR_IMPL_A64__SETGM_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7660 |
|
---|
7661 |
|
---|
7662 | /* SETGMT [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc05400) */
|
---|
7663 | //#define IEM_INSTR_IMPL_A64__SETGMT_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7664 |
|
---|
7665 |
|
---|
7666 | /* SETGMN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc06400) */
|
---|
7667 | //#define IEM_INSTR_IMPL_A64__SETGMN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7668 |
|
---|
7669 |
|
---|
7670 | /* SETGMTN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc07400) */
|
---|
7671 | //#define IEM_INSTR_IMPL_A64__SETGMTN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7672 |
|
---|
7673 |
|
---|
7674 | /* SETGE [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc08400) */
|
---|
7675 | //#define IEM_INSTR_IMPL_A64__SETGE_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7676 |
|
---|
7677 |
|
---|
7678 | /* SETGET [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc09400) */
|
---|
7679 | //#define IEM_INSTR_IMPL_A64__SETGET_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7680 |
|
---|
7681 |
|
---|
7682 | /* SETGEN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc0a400) */
|
---|
7683 | //#define IEM_INSTR_IMPL_A64__SETGEN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7684 |
|
---|
7685 |
|
---|
7686 | /* SETGETN [<Xd>]!, <Xn>!, <Xs> (3fe0fc00/1dc0b400) */
|
---|
7687 | //#define IEM_INSTR_IMPL_A64__SETGETN_SET_memcms(Rd, Rn, Rs, sz)
|
---|
7688 |
|
---|
7689 |
|
---|
7690 |
|
---|
7691 | /*
|
---|
7692 | *
|
---|
7693 | * Instruction Set & Groups: memop / ldst / A64
|
---|
7694 | *
|
---|
7695 | */
|
---|
7696 |
|
---|
7697 | /* LDADDB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38200000) */
|
---|
7698 | //#define IEM_INSTR_IMPL_A64__LDADDB_32_memop(Rt, Rn, Rs)
|
---|
7699 |
|
---|
7700 |
|
---|
7701 | /* LDCLRB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38201000) */
|
---|
7702 | //#define IEM_INSTR_IMPL_A64__LDCLRB_32_memop(Rt, Rn, Rs)
|
---|
7703 |
|
---|
7704 |
|
---|
7705 | /* LDEORB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38202000) */
|
---|
7706 | //#define IEM_INSTR_IMPL_A64__LDEORB_32_memop(Rt, Rn, Rs)
|
---|
7707 |
|
---|
7708 |
|
---|
7709 | /* LDSETB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38203000) */
|
---|
7710 | //#define IEM_INSTR_IMPL_A64__LDSETB_32_memop(Rt, Rn, Rs)
|
---|
7711 |
|
---|
7712 |
|
---|
7713 | /* LDSMAXB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38204000) */
|
---|
7714 | //#define IEM_INSTR_IMPL_A64__LDSMAXB_32_memop(Rt, Rn, Rs)
|
---|
7715 |
|
---|
7716 |
|
---|
7717 | /* LDSMINB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38205000) */
|
---|
7718 | //#define IEM_INSTR_IMPL_A64__LDSMINB_32_memop(Rt, Rn, Rs)
|
---|
7719 |
|
---|
7720 |
|
---|
7721 | /* LDUMAXB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38206000) */
|
---|
7722 | //#define IEM_INSTR_IMPL_A64__LDUMAXB_32_memop(Rt, Rn, Rs)
|
---|
7723 |
|
---|
7724 |
|
---|
7725 | /* LDUMINB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38207000) */
|
---|
7726 | //#define IEM_INSTR_IMPL_A64__LDUMINB_32_memop(Rt, Rn, Rs)
|
---|
7727 |
|
---|
7728 |
|
---|
7729 | /* SWPB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38208000) */
|
---|
7730 | //#define IEM_INSTR_IMPL_A64__SWPB_32_memop(Rt, Rn, Rs)
|
---|
7731 |
|
---|
7732 |
|
---|
7733 | /* RCWCLR <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/38209000) */
|
---|
7734 | //#define IEM_INSTR_IMPL_A64__RCWCLR_64_memop(Rt, Rn, Rs, S)
|
---|
7735 |
|
---|
7736 |
|
---|
7737 | /* RCWSWP <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/3820a000) */
|
---|
7738 | //#define IEM_INSTR_IMPL_A64__RCWSWP_64_memop(Rt, Rn, Rs, S)
|
---|
7739 |
|
---|
7740 |
|
---|
7741 | /* RCWSET <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/3820b000) */
|
---|
7742 | //#define IEM_INSTR_IMPL_A64__RCWSET_64_memop(Rt, Rn, Rs, S)
|
---|
7743 |
|
---|
7744 |
|
---|
7745 | /* LDADDLB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38600000) */
|
---|
7746 | //#define IEM_INSTR_IMPL_A64__LDADDLB_32_memop(Rt, Rn, Rs)
|
---|
7747 |
|
---|
7748 |
|
---|
7749 | /* LDCLRLB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38601000) */
|
---|
7750 | //#define IEM_INSTR_IMPL_A64__LDCLRLB_32_memop(Rt, Rn, Rs)
|
---|
7751 |
|
---|
7752 |
|
---|
7753 | /* LDEORLB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38602000) */
|
---|
7754 | //#define IEM_INSTR_IMPL_A64__LDEORLB_32_memop(Rt, Rn, Rs)
|
---|
7755 |
|
---|
7756 |
|
---|
7757 | /* LDSETLB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38603000) */
|
---|
7758 | //#define IEM_INSTR_IMPL_A64__LDSETLB_32_memop(Rt, Rn, Rs)
|
---|
7759 |
|
---|
7760 |
|
---|
7761 | /* LDSMAXLB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38604000) */
|
---|
7762 | //#define IEM_INSTR_IMPL_A64__LDSMAXLB_32_memop(Rt, Rn, Rs)
|
---|
7763 |
|
---|
7764 |
|
---|
7765 | /* LDSMINLB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38605000) */
|
---|
7766 | //#define IEM_INSTR_IMPL_A64__LDSMINLB_32_memop(Rt, Rn, Rs)
|
---|
7767 |
|
---|
7768 |
|
---|
7769 | /* LDUMAXLB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38606000) */
|
---|
7770 | //#define IEM_INSTR_IMPL_A64__LDUMAXLB_32_memop(Rt, Rn, Rs)
|
---|
7771 |
|
---|
7772 |
|
---|
7773 | /* LDUMINLB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38607000) */
|
---|
7774 | //#define IEM_INSTR_IMPL_A64__LDUMINLB_32_memop(Rt, Rn, Rs)
|
---|
7775 |
|
---|
7776 |
|
---|
7777 | /* SWPLB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38608000) */
|
---|
7778 | //#define IEM_INSTR_IMPL_A64__SWPLB_32_memop(Rt, Rn, Rs)
|
---|
7779 |
|
---|
7780 |
|
---|
7781 | /* RCWCLRL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/38609000) */
|
---|
7782 | //#define IEM_INSTR_IMPL_A64__RCWCLRL_64_memop(Rt, Rn, Rs, S)
|
---|
7783 |
|
---|
7784 |
|
---|
7785 | /* RCWSWPL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/3860a000) */
|
---|
7786 | //#define IEM_INSTR_IMPL_A64__RCWSWPL_64_memop(Rt, Rn, Rs, S)
|
---|
7787 |
|
---|
7788 |
|
---|
7789 | /* RCWSETL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/3860b000) */
|
---|
7790 | //#define IEM_INSTR_IMPL_A64__RCWSETL_64_memop(Rt, Rn, Rs, S)
|
---|
7791 |
|
---|
7792 |
|
---|
7793 | /* LDADDAB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38a00000) */
|
---|
7794 | //#define IEM_INSTR_IMPL_A64__LDADDAB_32_memop(Rt, Rn, Rs)
|
---|
7795 |
|
---|
7796 |
|
---|
7797 | /* LDCLRAB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38a01000) */
|
---|
7798 | //#define IEM_INSTR_IMPL_A64__LDCLRAB_32_memop(Rt, Rn, Rs)
|
---|
7799 |
|
---|
7800 |
|
---|
7801 | /* LDEORAB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38a02000) */
|
---|
7802 | //#define IEM_INSTR_IMPL_A64__LDEORAB_32_memop(Rt, Rn, Rs)
|
---|
7803 |
|
---|
7804 |
|
---|
7805 | /* LDSETAB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38a03000) */
|
---|
7806 | //#define IEM_INSTR_IMPL_A64__LDSETAB_32_memop(Rt, Rn, Rs)
|
---|
7807 |
|
---|
7808 |
|
---|
7809 | /* LDSMAXAB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38a04000) */
|
---|
7810 | //#define IEM_INSTR_IMPL_A64__LDSMAXAB_32_memop(Rt, Rn, Rs)
|
---|
7811 |
|
---|
7812 |
|
---|
7813 | /* LDSMINAB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38a05000) */
|
---|
7814 | //#define IEM_INSTR_IMPL_A64__LDSMINAB_32_memop(Rt, Rn, Rs)
|
---|
7815 |
|
---|
7816 |
|
---|
7817 | /* LDUMAXAB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38a06000) */
|
---|
7818 | //#define IEM_INSTR_IMPL_A64__LDUMAXAB_32_memop(Rt, Rn, Rs)
|
---|
7819 |
|
---|
7820 |
|
---|
7821 | /* LDUMINAB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38a07000) */
|
---|
7822 | //#define IEM_INSTR_IMPL_A64__LDUMINAB_32_memop(Rt, Rn, Rs)
|
---|
7823 |
|
---|
7824 |
|
---|
7825 | /* SWPAB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38a08000) */
|
---|
7826 | //#define IEM_INSTR_IMPL_A64__SWPAB_32_memop(Rt, Rn, Rs)
|
---|
7827 |
|
---|
7828 |
|
---|
7829 | /* RCWCLRA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/38a09000) */
|
---|
7830 | //#define IEM_INSTR_IMPL_A64__RCWCLRA_64_memop(Rt, Rn, Rs, S)
|
---|
7831 |
|
---|
7832 |
|
---|
7833 | /* RCWSWPA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/38a0a000) */
|
---|
7834 | //#define IEM_INSTR_IMPL_A64__RCWSWPA_64_memop(Rt, Rn, Rs, S)
|
---|
7835 |
|
---|
7836 |
|
---|
7837 | /* RCWSETA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/38a0b000) */
|
---|
7838 | //#define IEM_INSTR_IMPL_A64__RCWSETA_64_memop(Rt, Rn, Rs, S)
|
---|
7839 |
|
---|
7840 |
|
---|
7841 | /* LDAPRB <Wt>, [<Xn|SP>{ , #0}] (fffffc00/38bfc000) */
|
---|
7842 | //#define IEM_INSTR_IMPL_A64__LDAPRB_32L_memop(Rt, Rn)
|
---|
7843 |
|
---|
7844 |
|
---|
7845 | /* LDADDALB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38e00000) */
|
---|
7846 | //#define IEM_INSTR_IMPL_A64__LDADDALB_32_memop(Rt, Rn, Rs)
|
---|
7847 |
|
---|
7848 |
|
---|
7849 | /* LDCLRALB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38e01000) */
|
---|
7850 | //#define IEM_INSTR_IMPL_A64__LDCLRALB_32_memop(Rt, Rn, Rs)
|
---|
7851 |
|
---|
7852 |
|
---|
7853 | /* LDEORALB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38e02000) */
|
---|
7854 | //#define IEM_INSTR_IMPL_A64__LDEORALB_32_memop(Rt, Rn, Rs)
|
---|
7855 |
|
---|
7856 |
|
---|
7857 | /* LDSETALB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38e03000) */
|
---|
7858 | //#define IEM_INSTR_IMPL_A64__LDSETALB_32_memop(Rt, Rn, Rs)
|
---|
7859 |
|
---|
7860 |
|
---|
7861 | /* LDSMAXALB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38e04000) */
|
---|
7862 | //#define IEM_INSTR_IMPL_A64__LDSMAXALB_32_memop(Rt, Rn, Rs)
|
---|
7863 |
|
---|
7864 |
|
---|
7865 | /* LDSMINALB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38e05000) */
|
---|
7866 | //#define IEM_INSTR_IMPL_A64__LDSMINALB_32_memop(Rt, Rn, Rs)
|
---|
7867 |
|
---|
7868 |
|
---|
7869 | /* LDUMAXALB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38e06000) */
|
---|
7870 | //#define IEM_INSTR_IMPL_A64__LDUMAXALB_32_memop(Rt, Rn, Rs)
|
---|
7871 |
|
---|
7872 |
|
---|
7873 | /* LDUMINALB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38e07000) */
|
---|
7874 | //#define IEM_INSTR_IMPL_A64__LDUMINALB_32_memop(Rt, Rn, Rs)
|
---|
7875 |
|
---|
7876 |
|
---|
7877 | /* SWPALB <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/38e08000) */
|
---|
7878 | //#define IEM_INSTR_IMPL_A64__SWPALB_32_memop(Rt, Rn, Rs)
|
---|
7879 |
|
---|
7880 |
|
---|
7881 | /* RCWCLRAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/38e09000) */
|
---|
7882 | //#define IEM_INSTR_IMPL_A64__RCWCLRAL_64_memop(Rt, Rn, Rs, S)
|
---|
7883 |
|
---|
7884 |
|
---|
7885 | /* RCWSWPAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/38e0a000) */
|
---|
7886 | //#define IEM_INSTR_IMPL_A64__RCWSWPAL_64_memop(Rt, Rn, Rs, S)
|
---|
7887 |
|
---|
7888 |
|
---|
7889 | /* RCWSETAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/38e0b000) */
|
---|
7890 | //#define IEM_INSTR_IMPL_A64__RCWSETAL_64_memop(Rt, Rn, Rs, S)
|
---|
7891 |
|
---|
7892 |
|
---|
7893 | /* LDADDH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78200000) */
|
---|
7894 | //#define IEM_INSTR_IMPL_A64__LDADDH_32_memop(Rt, Rn, Rs)
|
---|
7895 |
|
---|
7896 |
|
---|
7897 | /* LDCLRH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78201000) */
|
---|
7898 | //#define IEM_INSTR_IMPL_A64__LDCLRH_32_memop(Rt, Rn, Rs)
|
---|
7899 |
|
---|
7900 |
|
---|
7901 | /* LDEORH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78202000) */
|
---|
7902 | //#define IEM_INSTR_IMPL_A64__LDEORH_32_memop(Rt, Rn, Rs)
|
---|
7903 |
|
---|
7904 |
|
---|
7905 | /* LDSETH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78203000) */
|
---|
7906 | //#define IEM_INSTR_IMPL_A64__LDSETH_32_memop(Rt, Rn, Rs)
|
---|
7907 |
|
---|
7908 |
|
---|
7909 | /* LDSMAXH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78204000) */
|
---|
7910 | //#define IEM_INSTR_IMPL_A64__LDSMAXH_32_memop(Rt, Rn, Rs)
|
---|
7911 |
|
---|
7912 |
|
---|
7913 | /* LDSMINH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78205000) */
|
---|
7914 | //#define IEM_INSTR_IMPL_A64__LDSMINH_32_memop(Rt, Rn, Rs)
|
---|
7915 |
|
---|
7916 |
|
---|
7917 | /* LDUMAXH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78206000) */
|
---|
7918 | //#define IEM_INSTR_IMPL_A64__LDUMAXH_32_memop(Rt, Rn, Rs)
|
---|
7919 |
|
---|
7920 |
|
---|
7921 | /* LDUMINH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78207000) */
|
---|
7922 | //#define IEM_INSTR_IMPL_A64__LDUMINH_32_memop(Rt, Rn, Rs)
|
---|
7923 |
|
---|
7924 |
|
---|
7925 | /* SWPH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78208000) */
|
---|
7926 | //#define IEM_INSTR_IMPL_A64__SWPH_32_memop(Rt, Rn, Rs)
|
---|
7927 |
|
---|
7928 |
|
---|
7929 | /* RCWSCLR <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/78209000) */
|
---|
7930 | //#define IEM_INSTR_IMPL_A64__RCWSCLR_64_memop(Rt, Rn, Rs, S)
|
---|
7931 |
|
---|
7932 |
|
---|
7933 | /* RCWSSWP <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/7820a000) */
|
---|
7934 | //#define IEM_INSTR_IMPL_A64__RCWSSWP_64_memop(Rt, Rn, Rs, S)
|
---|
7935 |
|
---|
7936 |
|
---|
7937 | /* RCWSSET <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/7820b000) */
|
---|
7938 | //#define IEM_INSTR_IMPL_A64__RCWSSET_64_memop(Rt, Rn, Rs, S)
|
---|
7939 |
|
---|
7940 |
|
---|
7941 | /* LDADDLH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78600000) */
|
---|
7942 | //#define IEM_INSTR_IMPL_A64__LDADDLH_32_memop(Rt, Rn, Rs)
|
---|
7943 |
|
---|
7944 |
|
---|
7945 | /* LDCLRLH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78601000) */
|
---|
7946 | //#define IEM_INSTR_IMPL_A64__LDCLRLH_32_memop(Rt, Rn, Rs)
|
---|
7947 |
|
---|
7948 |
|
---|
7949 | /* LDEORLH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78602000) */
|
---|
7950 | //#define IEM_INSTR_IMPL_A64__LDEORLH_32_memop(Rt, Rn, Rs)
|
---|
7951 |
|
---|
7952 |
|
---|
7953 | /* LDSETLH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78603000) */
|
---|
7954 | //#define IEM_INSTR_IMPL_A64__LDSETLH_32_memop(Rt, Rn, Rs)
|
---|
7955 |
|
---|
7956 |
|
---|
7957 | /* LDSMAXLH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78604000) */
|
---|
7958 | //#define IEM_INSTR_IMPL_A64__LDSMAXLH_32_memop(Rt, Rn, Rs)
|
---|
7959 |
|
---|
7960 |
|
---|
7961 | /* LDSMINLH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78605000) */
|
---|
7962 | //#define IEM_INSTR_IMPL_A64__LDSMINLH_32_memop(Rt, Rn, Rs)
|
---|
7963 |
|
---|
7964 |
|
---|
7965 | /* LDUMAXLH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78606000) */
|
---|
7966 | //#define IEM_INSTR_IMPL_A64__LDUMAXLH_32_memop(Rt, Rn, Rs)
|
---|
7967 |
|
---|
7968 |
|
---|
7969 | /* LDUMINLH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78607000) */
|
---|
7970 | //#define IEM_INSTR_IMPL_A64__LDUMINLH_32_memop(Rt, Rn, Rs)
|
---|
7971 |
|
---|
7972 |
|
---|
7973 | /* SWPLH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78608000) */
|
---|
7974 | //#define IEM_INSTR_IMPL_A64__SWPLH_32_memop(Rt, Rn, Rs)
|
---|
7975 |
|
---|
7976 |
|
---|
7977 | /* RCWSCLRL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/78609000) */
|
---|
7978 | //#define IEM_INSTR_IMPL_A64__RCWSCLRL_64_memop(Rt, Rn, Rs, S)
|
---|
7979 |
|
---|
7980 |
|
---|
7981 | /* RCWSSWPL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/7860a000) */
|
---|
7982 | //#define IEM_INSTR_IMPL_A64__RCWSSWPL_64_memop(Rt, Rn, Rs, S)
|
---|
7983 |
|
---|
7984 |
|
---|
7985 | /* RCWSSETL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/7860b000) */
|
---|
7986 | //#define IEM_INSTR_IMPL_A64__RCWSSETL_64_memop(Rt, Rn, Rs, S)
|
---|
7987 |
|
---|
7988 |
|
---|
7989 | /* LDADDAH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78a00000) */
|
---|
7990 | //#define IEM_INSTR_IMPL_A64__LDADDAH_32_memop(Rt, Rn, Rs)
|
---|
7991 |
|
---|
7992 |
|
---|
7993 | /* LDCLRAH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78a01000) */
|
---|
7994 | //#define IEM_INSTR_IMPL_A64__LDCLRAH_32_memop(Rt, Rn, Rs)
|
---|
7995 |
|
---|
7996 |
|
---|
7997 | /* LDEORAH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78a02000) */
|
---|
7998 | //#define IEM_INSTR_IMPL_A64__LDEORAH_32_memop(Rt, Rn, Rs)
|
---|
7999 |
|
---|
8000 |
|
---|
8001 | /* LDSETAH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78a03000) */
|
---|
8002 | //#define IEM_INSTR_IMPL_A64__LDSETAH_32_memop(Rt, Rn, Rs)
|
---|
8003 |
|
---|
8004 |
|
---|
8005 | /* LDSMAXAH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78a04000) */
|
---|
8006 | //#define IEM_INSTR_IMPL_A64__LDSMAXAH_32_memop(Rt, Rn, Rs)
|
---|
8007 |
|
---|
8008 |
|
---|
8009 | /* LDSMINAH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78a05000) */
|
---|
8010 | //#define IEM_INSTR_IMPL_A64__LDSMINAH_32_memop(Rt, Rn, Rs)
|
---|
8011 |
|
---|
8012 |
|
---|
8013 | /* LDUMAXAH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78a06000) */
|
---|
8014 | //#define IEM_INSTR_IMPL_A64__LDUMAXAH_32_memop(Rt, Rn, Rs)
|
---|
8015 |
|
---|
8016 |
|
---|
8017 | /* LDUMINAH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78a07000) */
|
---|
8018 | //#define IEM_INSTR_IMPL_A64__LDUMINAH_32_memop(Rt, Rn, Rs)
|
---|
8019 |
|
---|
8020 |
|
---|
8021 | /* SWPAH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78a08000) */
|
---|
8022 | //#define IEM_INSTR_IMPL_A64__SWPAH_32_memop(Rt, Rn, Rs)
|
---|
8023 |
|
---|
8024 |
|
---|
8025 | /* RCWSCLRA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/78a09000) */
|
---|
8026 | //#define IEM_INSTR_IMPL_A64__RCWSCLRA_64_memop(Rt, Rn, Rs, S)
|
---|
8027 |
|
---|
8028 |
|
---|
8029 | /* RCWSSWPA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/78a0a000) */
|
---|
8030 | //#define IEM_INSTR_IMPL_A64__RCWSSWPA_64_memop(Rt, Rn, Rs, S)
|
---|
8031 |
|
---|
8032 |
|
---|
8033 | /* RCWSSETA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/78a0b000) */
|
---|
8034 | //#define IEM_INSTR_IMPL_A64__RCWSSETA_64_memop(Rt, Rn, Rs, S)
|
---|
8035 |
|
---|
8036 |
|
---|
8037 | /* LDAPRH <Wt>, [<Xn|SP>{ , #0}] (fffffc00/78bfc000) */
|
---|
8038 | //#define IEM_INSTR_IMPL_A64__LDAPRH_32L_memop(Rt, Rn)
|
---|
8039 |
|
---|
8040 |
|
---|
8041 | /* LDADDALH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78e00000) */
|
---|
8042 | //#define IEM_INSTR_IMPL_A64__LDADDALH_32_memop(Rt, Rn, Rs)
|
---|
8043 |
|
---|
8044 |
|
---|
8045 | /* LDCLRALH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78e01000) */
|
---|
8046 | //#define IEM_INSTR_IMPL_A64__LDCLRALH_32_memop(Rt, Rn, Rs)
|
---|
8047 |
|
---|
8048 |
|
---|
8049 | /* LDEORALH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78e02000) */
|
---|
8050 | //#define IEM_INSTR_IMPL_A64__LDEORALH_32_memop(Rt, Rn, Rs)
|
---|
8051 |
|
---|
8052 |
|
---|
8053 | /* LDSETALH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78e03000) */
|
---|
8054 | //#define IEM_INSTR_IMPL_A64__LDSETALH_32_memop(Rt, Rn, Rs)
|
---|
8055 |
|
---|
8056 |
|
---|
8057 | /* LDSMAXALH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78e04000) */
|
---|
8058 | //#define IEM_INSTR_IMPL_A64__LDSMAXALH_32_memop(Rt, Rn, Rs)
|
---|
8059 |
|
---|
8060 |
|
---|
8061 | /* LDSMINALH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78e05000) */
|
---|
8062 | //#define IEM_INSTR_IMPL_A64__LDSMINALH_32_memop(Rt, Rn, Rs)
|
---|
8063 |
|
---|
8064 |
|
---|
8065 | /* LDUMAXALH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78e06000) */
|
---|
8066 | //#define IEM_INSTR_IMPL_A64__LDUMAXALH_32_memop(Rt, Rn, Rs)
|
---|
8067 |
|
---|
8068 |
|
---|
8069 | /* LDUMINALH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78e07000) */
|
---|
8070 | //#define IEM_INSTR_IMPL_A64__LDUMINALH_32_memop(Rt, Rn, Rs)
|
---|
8071 |
|
---|
8072 |
|
---|
8073 | /* SWPALH <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/78e08000) */
|
---|
8074 | //#define IEM_INSTR_IMPL_A64__SWPALH_32_memop(Rt, Rn, Rs)
|
---|
8075 |
|
---|
8076 |
|
---|
8077 | /* RCWSCLRAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/78e09000) */
|
---|
8078 | //#define IEM_INSTR_IMPL_A64__RCWSCLRAL_64_memop(Rt, Rn, Rs, S)
|
---|
8079 |
|
---|
8080 |
|
---|
8081 | /* RCWSSWPAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/78e0a000) */
|
---|
8082 | //#define IEM_INSTR_IMPL_A64__RCWSSWPAL_64_memop(Rt, Rn, Rs, S)
|
---|
8083 |
|
---|
8084 |
|
---|
8085 | /* RCWSSETAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/78e0b000) */
|
---|
8086 | //#define IEM_INSTR_IMPL_A64__RCWSSETAL_64_memop(Rt, Rn, Rs, S)
|
---|
8087 |
|
---|
8088 |
|
---|
8089 | /* LDADD <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8200000) */
|
---|
8090 | //#define IEM_INSTR_IMPL_A64__LDADD_32_memop(Rt, Rn, Rs)
|
---|
8091 |
|
---|
8092 |
|
---|
8093 | /* LDCLR <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8201000) */
|
---|
8094 | //#define IEM_INSTR_IMPL_A64__LDCLR_32_memop(Rt, Rn, Rs)
|
---|
8095 |
|
---|
8096 |
|
---|
8097 | /* LDEOR <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8202000) */
|
---|
8098 | //#define IEM_INSTR_IMPL_A64__LDEOR_32_memop(Rt, Rn, Rs)
|
---|
8099 |
|
---|
8100 |
|
---|
8101 | /* LDSET <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8203000) */
|
---|
8102 | //#define IEM_INSTR_IMPL_A64__LDSET_32_memop(Rt, Rn, Rs)
|
---|
8103 |
|
---|
8104 |
|
---|
8105 | /* LDSMAX <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8204000) */
|
---|
8106 | //#define IEM_INSTR_IMPL_A64__LDSMAX_32_memop(Rt, Rn, Rs)
|
---|
8107 |
|
---|
8108 |
|
---|
8109 | /* LDSMIN <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8205000) */
|
---|
8110 | //#define IEM_INSTR_IMPL_A64__LDSMIN_32_memop(Rt, Rn, Rs)
|
---|
8111 |
|
---|
8112 |
|
---|
8113 | /* LDUMAX <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8206000) */
|
---|
8114 | //#define IEM_INSTR_IMPL_A64__LDUMAX_32_memop(Rt, Rn, Rs)
|
---|
8115 |
|
---|
8116 |
|
---|
8117 | /* LDUMIN <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8207000) */
|
---|
8118 | //#define IEM_INSTR_IMPL_A64__LDUMIN_32_memop(Rt, Rn, Rs)
|
---|
8119 |
|
---|
8120 |
|
---|
8121 | /* SWP <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8208000) */
|
---|
8122 | //#define IEM_INSTR_IMPL_A64__SWP_32_memop(Rt, Rn, Rs)
|
---|
8123 |
|
---|
8124 |
|
---|
8125 | /* LDADDL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8600000) */
|
---|
8126 | //#define IEM_INSTR_IMPL_A64__LDADDL_32_memop(Rt, Rn, Rs)
|
---|
8127 |
|
---|
8128 |
|
---|
8129 | /* LDCLRL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8601000) */
|
---|
8130 | //#define IEM_INSTR_IMPL_A64__LDCLRL_32_memop(Rt, Rn, Rs)
|
---|
8131 |
|
---|
8132 |
|
---|
8133 | /* LDEORL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8602000) */
|
---|
8134 | //#define IEM_INSTR_IMPL_A64__LDEORL_32_memop(Rt, Rn, Rs)
|
---|
8135 |
|
---|
8136 |
|
---|
8137 | /* LDSETL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8603000) */
|
---|
8138 | //#define IEM_INSTR_IMPL_A64__LDSETL_32_memop(Rt, Rn, Rs)
|
---|
8139 |
|
---|
8140 |
|
---|
8141 | /* LDSMAXL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8604000) */
|
---|
8142 | //#define IEM_INSTR_IMPL_A64__LDSMAXL_32_memop(Rt, Rn, Rs)
|
---|
8143 |
|
---|
8144 |
|
---|
8145 | /* LDSMINL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8605000) */
|
---|
8146 | //#define IEM_INSTR_IMPL_A64__LDSMINL_32_memop(Rt, Rn, Rs)
|
---|
8147 |
|
---|
8148 |
|
---|
8149 | /* LDUMAXL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8606000) */
|
---|
8150 | //#define IEM_INSTR_IMPL_A64__LDUMAXL_32_memop(Rt, Rn, Rs)
|
---|
8151 |
|
---|
8152 |
|
---|
8153 | /* LDUMINL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8607000) */
|
---|
8154 | //#define IEM_INSTR_IMPL_A64__LDUMINL_32_memop(Rt, Rn, Rs)
|
---|
8155 |
|
---|
8156 |
|
---|
8157 | /* SWPL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8608000) */
|
---|
8158 | //#define IEM_INSTR_IMPL_A64__SWPL_32_memop(Rt, Rn, Rs)
|
---|
8159 |
|
---|
8160 |
|
---|
8161 | /* LDADDA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8a00000) */
|
---|
8162 | //#define IEM_INSTR_IMPL_A64__LDADDA_32_memop(Rt, Rn, Rs)
|
---|
8163 |
|
---|
8164 |
|
---|
8165 | /* LDCLRA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8a01000) */
|
---|
8166 | //#define IEM_INSTR_IMPL_A64__LDCLRA_32_memop(Rt, Rn, Rs)
|
---|
8167 |
|
---|
8168 |
|
---|
8169 | /* LDEORA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8a02000) */
|
---|
8170 | //#define IEM_INSTR_IMPL_A64__LDEORA_32_memop(Rt, Rn, Rs)
|
---|
8171 |
|
---|
8172 |
|
---|
8173 | /* LDSETA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8a03000) */
|
---|
8174 | //#define IEM_INSTR_IMPL_A64__LDSETA_32_memop(Rt, Rn, Rs)
|
---|
8175 |
|
---|
8176 |
|
---|
8177 | /* LDSMAXA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8a04000) */
|
---|
8178 | //#define IEM_INSTR_IMPL_A64__LDSMAXA_32_memop(Rt, Rn, Rs)
|
---|
8179 |
|
---|
8180 |
|
---|
8181 | /* LDSMINA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8a05000) */
|
---|
8182 | //#define IEM_INSTR_IMPL_A64__LDSMINA_32_memop(Rt, Rn, Rs)
|
---|
8183 |
|
---|
8184 |
|
---|
8185 | /* LDUMAXA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8a06000) */
|
---|
8186 | //#define IEM_INSTR_IMPL_A64__LDUMAXA_32_memop(Rt, Rn, Rs)
|
---|
8187 |
|
---|
8188 |
|
---|
8189 | /* LDUMINA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8a07000) */
|
---|
8190 | //#define IEM_INSTR_IMPL_A64__LDUMINA_32_memop(Rt, Rn, Rs)
|
---|
8191 |
|
---|
8192 |
|
---|
8193 | /* SWPA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8a08000) */
|
---|
8194 | //#define IEM_INSTR_IMPL_A64__SWPA_32_memop(Rt, Rn, Rs)
|
---|
8195 |
|
---|
8196 |
|
---|
8197 | /* LDAPR <Wt>, [<Xn|SP>{ , #0}] (fffffc00/b8bfc000) */
|
---|
8198 | //#define IEM_INSTR_IMPL_A64__LDAPR_32L_memop(Rt, Rn)
|
---|
8199 |
|
---|
8200 |
|
---|
8201 | /* LDADDAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8e00000) */
|
---|
8202 | //#define IEM_INSTR_IMPL_A64__LDADDAL_32_memop(Rt, Rn, Rs)
|
---|
8203 |
|
---|
8204 |
|
---|
8205 | /* LDCLRAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8e01000) */
|
---|
8206 | //#define IEM_INSTR_IMPL_A64__LDCLRAL_32_memop(Rt, Rn, Rs)
|
---|
8207 |
|
---|
8208 |
|
---|
8209 | /* LDEORAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8e02000) */
|
---|
8210 | //#define IEM_INSTR_IMPL_A64__LDEORAL_32_memop(Rt, Rn, Rs)
|
---|
8211 |
|
---|
8212 |
|
---|
8213 | /* LDSETAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8e03000) */
|
---|
8214 | //#define IEM_INSTR_IMPL_A64__LDSETAL_32_memop(Rt, Rn, Rs)
|
---|
8215 |
|
---|
8216 |
|
---|
8217 | /* LDSMAXAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8e04000) */
|
---|
8218 | //#define IEM_INSTR_IMPL_A64__LDSMAXAL_32_memop(Rt, Rn, Rs)
|
---|
8219 |
|
---|
8220 |
|
---|
8221 | /* LDSMINAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8e05000) */
|
---|
8222 | //#define IEM_INSTR_IMPL_A64__LDSMINAL_32_memop(Rt, Rn, Rs)
|
---|
8223 |
|
---|
8224 |
|
---|
8225 | /* LDUMAXAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8e06000) */
|
---|
8226 | //#define IEM_INSTR_IMPL_A64__LDUMAXAL_32_memop(Rt, Rn, Rs)
|
---|
8227 |
|
---|
8228 |
|
---|
8229 | /* LDUMINAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8e07000) */
|
---|
8230 | //#define IEM_INSTR_IMPL_A64__LDUMINAL_32_memop(Rt, Rn, Rs)
|
---|
8231 |
|
---|
8232 |
|
---|
8233 | /* SWPAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/b8e08000) */
|
---|
8234 | //#define IEM_INSTR_IMPL_A64__SWPAL_32_memop(Rt, Rn, Rs)
|
---|
8235 |
|
---|
8236 |
|
---|
8237 | /* LDADD <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8200000) */
|
---|
8238 | //#define IEM_INSTR_IMPL_A64__LDADD_64_memop(Rt, Rn, Rs)
|
---|
8239 |
|
---|
8240 |
|
---|
8241 | /* LDCLR <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8201000) */
|
---|
8242 | //#define IEM_INSTR_IMPL_A64__LDCLR_64_memop(Rt, Rn, Rs)
|
---|
8243 |
|
---|
8244 |
|
---|
8245 | /* LDEOR <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8202000) */
|
---|
8246 | //#define IEM_INSTR_IMPL_A64__LDEOR_64_memop(Rt, Rn, Rs)
|
---|
8247 |
|
---|
8248 |
|
---|
8249 | /* LDSET <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8203000) */
|
---|
8250 | //#define IEM_INSTR_IMPL_A64__LDSET_64_memop(Rt, Rn, Rs)
|
---|
8251 |
|
---|
8252 |
|
---|
8253 | /* LDSMAX <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8204000) */
|
---|
8254 | //#define IEM_INSTR_IMPL_A64__LDSMAX_64_memop(Rt, Rn, Rs)
|
---|
8255 |
|
---|
8256 |
|
---|
8257 | /* LDSMIN <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8205000) */
|
---|
8258 | //#define IEM_INSTR_IMPL_A64__LDSMIN_64_memop(Rt, Rn, Rs)
|
---|
8259 |
|
---|
8260 |
|
---|
8261 | /* LDUMAX <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8206000) */
|
---|
8262 | //#define IEM_INSTR_IMPL_A64__LDUMAX_64_memop(Rt, Rn, Rs)
|
---|
8263 |
|
---|
8264 |
|
---|
8265 | /* LDUMIN <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8207000) */
|
---|
8266 | //#define IEM_INSTR_IMPL_A64__LDUMIN_64_memop(Rt, Rn, Rs)
|
---|
8267 |
|
---|
8268 |
|
---|
8269 | /* SWP <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8208000) */
|
---|
8270 | //#define IEM_INSTR_IMPL_A64__SWP_64_memop(Rt, Rn, Rs)
|
---|
8271 |
|
---|
8272 |
|
---|
8273 | /* ST64BV0 <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f820a000) */
|
---|
8274 | //#define IEM_INSTR_IMPL_A64__ST64BV0_64_memop(Rt, Rn, Rs)
|
---|
8275 |
|
---|
8276 |
|
---|
8277 | /* ST64BV <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f820b000) */
|
---|
8278 | //#define IEM_INSTR_IMPL_A64__ST64BV_64_memop(Rt, Rn, Rs)
|
---|
8279 |
|
---|
8280 |
|
---|
8281 | /* ST64B <Xt>, [<Xn|SP>{ , #0}] (fffffc00/f83f9000) */
|
---|
8282 | //#define IEM_INSTR_IMPL_A64__ST64B_64L_memop(Rt, Rn)
|
---|
8283 |
|
---|
8284 |
|
---|
8285 | /* LD64B <Xt>, [<Xn|SP>{ , #0}] (fffffc00/f83fd000) */
|
---|
8286 | //#define IEM_INSTR_IMPL_A64__LD64B_64L_memop(Rt, Rn)
|
---|
8287 |
|
---|
8288 |
|
---|
8289 | /* LDADDL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8600000) */
|
---|
8290 | //#define IEM_INSTR_IMPL_A64__LDADDL_64_memop(Rt, Rn, Rs)
|
---|
8291 |
|
---|
8292 |
|
---|
8293 | /* LDCLRL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8601000) */
|
---|
8294 | //#define IEM_INSTR_IMPL_A64__LDCLRL_64_memop(Rt, Rn, Rs)
|
---|
8295 |
|
---|
8296 |
|
---|
8297 | /* LDEORL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8602000) */
|
---|
8298 | //#define IEM_INSTR_IMPL_A64__LDEORL_64_memop(Rt, Rn, Rs)
|
---|
8299 |
|
---|
8300 |
|
---|
8301 | /* LDSETL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8603000) */
|
---|
8302 | //#define IEM_INSTR_IMPL_A64__LDSETL_64_memop(Rt, Rn, Rs)
|
---|
8303 |
|
---|
8304 |
|
---|
8305 | /* LDSMAXL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8604000) */
|
---|
8306 | //#define IEM_INSTR_IMPL_A64__LDSMAXL_64_memop(Rt, Rn, Rs)
|
---|
8307 |
|
---|
8308 |
|
---|
8309 | /* LDSMINL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8605000) */
|
---|
8310 | //#define IEM_INSTR_IMPL_A64__LDSMINL_64_memop(Rt, Rn, Rs)
|
---|
8311 |
|
---|
8312 |
|
---|
8313 | /* LDUMAXL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8606000) */
|
---|
8314 | //#define IEM_INSTR_IMPL_A64__LDUMAXL_64_memop(Rt, Rn, Rs)
|
---|
8315 |
|
---|
8316 |
|
---|
8317 | /* LDUMINL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8607000) */
|
---|
8318 | //#define IEM_INSTR_IMPL_A64__LDUMINL_64_memop(Rt, Rn, Rs)
|
---|
8319 |
|
---|
8320 |
|
---|
8321 | /* SWPL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8608000) */
|
---|
8322 | //#define IEM_INSTR_IMPL_A64__SWPL_64_memop(Rt, Rn, Rs)
|
---|
8323 |
|
---|
8324 |
|
---|
8325 | /* LDADDA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8a00000) */
|
---|
8326 | //#define IEM_INSTR_IMPL_A64__LDADDA_64_memop(Rt, Rn, Rs)
|
---|
8327 |
|
---|
8328 |
|
---|
8329 | /* LDCLRA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8a01000) */
|
---|
8330 | //#define IEM_INSTR_IMPL_A64__LDCLRA_64_memop(Rt, Rn, Rs)
|
---|
8331 |
|
---|
8332 |
|
---|
8333 | /* LDEORA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8a02000) */
|
---|
8334 | //#define IEM_INSTR_IMPL_A64__LDEORA_64_memop(Rt, Rn, Rs)
|
---|
8335 |
|
---|
8336 |
|
---|
8337 | /* LDSETA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8a03000) */
|
---|
8338 | //#define IEM_INSTR_IMPL_A64__LDSETA_64_memop(Rt, Rn, Rs)
|
---|
8339 |
|
---|
8340 |
|
---|
8341 | /* LDSMAXA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8a04000) */
|
---|
8342 | //#define IEM_INSTR_IMPL_A64__LDSMAXA_64_memop(Rt, Rn, Rs)
|
---|
8343 |
|
---|
8344 |
|
---|
8345 | /* LDSMINA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8a05000) */
|
---|
8346 | //#define IEM_INSTR_IMPL_A64__LDSMINA_64_memop(Rt, Rn, Rs)
|
---|
8347 |
|
---|
8348 |
|
---|
8349 | /* LDUMAXA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8a06000) */
|
---|
8350 | //#define IEM_INSTR_IMPL_A64__LDUMAXA_64_memop(Rt, Rn, Rs)
|
---|
8351 |
|
---|
8352 |
|
---|
8353 | /* LDUMINA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8a07000) */
|
---|
8354 | //#define IEM_INSTR_IMPL_A64__LDUMINA_64_memop(Rt, Rn, Rs)
|
---|
8355 |
|
---|
8356 |
|
---|
8357 | /* SWPA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8a08000) */
|
---|
8358 | //#define IEM_INSTR_IMPL_A64__SWPA_64_memop(Rt, Rn, Rs)
|
---|
8359 |
|
---|
8360 |
|
---|
8361 | /* LDAPR <Xt>, [<Xn|SP>{ , #0}] (fffffc00/f8bfc000) */
|
---|
8362 | //#define IEM_INSTR_IMPL_A64__LDAPR_64L_memop(Rt, Rn)
|
---|
8363 |
|
---|
8364 |
|
---|
8365 | /* LDADDAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8e00000) */
|
---|
8366 | //#define IEM_INSTR_IMPL_A64__LDADDAL_64_memop(Rt, Rn, Rs)
|
---|
8367 |
|
---|
8368 |
|
---|
8369 | /* LDCLRAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8e01000) */
|
---|
8370 | //#define IEM_INSTR_IMPL_A64__LDCLRAL_64_memop(Rt, Rn, Rs)
|
---|
8371 |
|
---|
8372 |
|
---|
8373 | /* LDEORAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8e02000) */
|
---|
8374 | //#define IEM_INSTR_IMPL_A64__LDEORAL_64_memop(Rt, Rn, Rs)
|
---|
8375 |
|
---|
8376 |
|
---|
8377 | /* LDSETAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8e03000) */
|
---|
8378 | //#define IEM_INSTR_IMPL_A64__LDSETAL_64_memop(Rt, Rn, Rs)
|
---|
8379 |
|
---|
8380 |
|
---|
8381 | /* LDSMAXAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8e04000) */
|
---|
8382 | //#define IEM_INSTR_IMPL_A64__LDSMAXAL_64_memop(Rt, Rn, Rs)
|
---|
8383 |
|
---|
8384 |
|
---|
8385 | /* LDSMINAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8e05000) */
|
---|
8386 | //#define IEM_INSTR_IMPL_A64__LDSMINAL_64_memop(Rt, Rn, Rs)
|
---|
8387 |
|
---|
8388 |
|
---|
8389 | /* LDUMAXAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8e06000) */
|
---|
8390 | //#define IEM_INSTR_IMPL_A64__LDUMAXAL_64_memop(Rt, Rn, Rs)
|
---|
8391 |
|
---|
8392 |
|
---|
8393 | /* LDUMINAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8e07000) */
|
---|
8394 | //#define IEM_INSTR_IMPL_A64__LDUMINAL_64_memop(Rt, Rn, Rs)
|
---|
8395 |
|
---|
8396 |
|
---|
8397 | /* SWPAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/f8e08000) */
|
---|
8398 | //#define IEM_INSTR_IMPL_A64__SWPAL_64_memop(Rt, Rn, Rs)
|
---|
8399 |
|
---|
8400 |
|
---|
8401 | /* LDBFADD <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3c200000) */
|
---|
8402 | //#define IEM_INSTR_IMPL_A64__LDBFADD_16(Rt, Rn, Rs)
|
---|
8403 |
|
---|
8404 |
|
---|
8405 | /* LDBFMAX <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3c204000) */
|
---|
8406 | //#define IEM_INSTR_IMPL_A64__LDBFMAX_16(Rt, Rn, Rs)
|
---|
8407 |
|
---|
8408 |
|
---|
8409 | /* LDBFMIN <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3c205000) */
|
---|
8410 | //#define IEM_INSTR_IMPL_A64__LDBFMIN_16(Rt, Rn, Rs)
|
---|
8411 |
|
---|
8412 |
|
---|
8413 | /* LDBFMAXNM <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3c206000) */
|
---|
8414 | //#define IEM_INSTR_IMPL_A64__LDBFMAXNM_16(Rt, Rn, Rs)
|
---|
8415 |
|
---|
8416 |
|
---|
8417 | /* LDBFMINNM <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3c207000) */
|
---|
8418 | //#define IEM_INSTR_IMPL_A64__LDBFMINNM_16(Rt, Rn, Rs)
|
---|
8419 |
|
---|
8420 |
|
---|
8421 | /* STBFADD <Hs>, [<Xn|SP>] (ffe0fc1f/3c20801f) */
|
---|
8422 | //#define IEM_INSTR_IMPL_A64__STBFADD_16(Rn, Rs)
|
---|
8423 |
|
---|
8424 |
|
---|
8425 | /* STBFMAX <Hs>, [<Xn|SP>] (ffe0fc1f/3c20c01f) */
|
---|
8426 | //#define IEM_INSTR_IMPL_A64__STBFMAX_16(Rn, Rs)
|
---|
8427 |
|
---|
8428 |
|
---|
8429 | /* STBFMIN <Hs>, [<Xn|SP>] (ffe0fc1f/3c20d01f) */
|
---|
8430 | //#define IEM_INSTR_IMPL_A64__STBFMIN_16(Rn, Rs)
|
---|
8431 |
|
---|
8432 |
|
---|
8433 | /* STBFMAXNM <Hs>, [<Xn|SP>] (ffe0fc1f/3c20e01f) */
|
---|
8434 | //#define IEM_INSTR_IMPL_A64__STBFMAXNM_16(Rn, Rs)
|
---|
8435 |
|
---|
8436 |
|
---|
8437 | /* STBFMINNM <Hs>, [<Xn|SP>] (ffe0fc1f/3c20f01f) */
|
---|
8438 | //#define IEM_INSTR_IMPL_A64__STBFMINNM_16(Rn, Rs)
|
---|
8439 |
|
---|
8440 |
|
---|
8441 | /* STBFADDL <Hs>, [<Xn|SP>] (ffe0fc1f/3c60801f) */
|
---|
8442 | //#define IEM_INSTR_IMPL_A64__STBFADDL_16(Rn, Rs)
|
---|
8443 |
|
---|
8444 |
|
---|
8445 | /* STBFMAXL <Hs>, [<Xn|SP>] (ffe0fc1f/3c60c01f) */
|
---|
8446 | //#define IEM_INSTR_IMPL_A64__STBFMAXL_16(Rn, Rs)
|
---|
8447 |
|
---|
8448 |
|
---|
8449 | /* STBFMINL <Hs>, [<Xn|SP>] (ffe0fc1f/3c60d01f) */
|
---|
8450 | //#define IEM_INSTR_IMPL_A64__STBFMINL_16(Rn, Rs)
|
---|
8451 |
|
---|
8452 |
|
---|
8453 | /* STBFMAXNML <Hs>, [<Xn|SP>] (ffe0fc1f/3c60e01f) */
|
---|
8454 | //#define IEM_INSTR_IMPL_A64__STBFMAXNML_16(Rn, Rs)
|
---|
8455 |
|
---|
8456 |
|
---|
8457 | /* STBFMINNML <Hs>, [<Xn|SP>] (ffe0fc1f/3c60f01f) */
|
---|
8458 | //#define IEM_INSTR_IMPL_A64__STBFMINNML_16(Rn, Rs)
|
---|
8459 |
|
---|
8460 |
|
---|
8461 | /* LDBFADDL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3c600000) */
|
---|
8462 | //#define IEM_INSTR_IMPL_A64__LDBFADDL_16(Rt, Rn, Rs)
|
---|
8463 |
|
---|
8464 |
|
---|
8465 | /* LDBFMAXL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3c604000) */
|
---|
8466 | //#define IEM_INSTR_IMPL_A64__LDBFMAXL_16(Rt, Rn, Rs)
|
---|
8467 |
|
---|
8468 |
|
---|
8469 | /* LDBFMINL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3c605000) */
|
---|
8470 | //#define IEM_INSTR_IMPL_A64__LDBFMINL_16(Rt, Rn, Rs)
|
---|
8471 |
|
---|
8472 |
|
---|
8473 | /* LDBFMAXNML <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3c606000) */
|
---|
8474 | //#define IEM_INSTR_IMPL_A64__LDBFMAXNML_16(Rt, Rn, Rs)
|
---|
8475 |
|
---|
8476 |
|
---|
8477 | /* LDBFMINNML <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3c607000) */
|
---|
8478 | //#define IEM_INSTR_IMPL_A64__LDBFMINNML_16(Rt, Rn, Rs)
|
---|
8479 |
|
---|
8480 |
|
---|
8481 | /* LDBFADDA <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3ca00000) */
|
---|
8482 | //#define IEM_INSTR_IMPL_A64__LDBFADDA_16(Rt, Rn, Rs)
|
---|
8483 |
|
---|
8484 |
|
---|
8485 | /* LDBFMAXA <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3ca04000) */
|
---|
8486 | //#define IEM_INSTR_IMPL_A64__LDBFMAXA_16(Rt, Rn, Rs)
|
---|
8487 |
|
---|
8488 |
|
---|
8489 | /* LDBFMINA <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3ca05000) */
|
---|
8490 | //#define IEM_INSTR_IMPL_A64__LDBFMINA_16(Rt, Rn, Rs)
|
---|
8491 |
|
---|
8492 |
|
---|
8493 | /* LDBFMAXNMA <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3ca06000) */
|
---|
8494 | //#define IEM_INSTR_IMPL_A64__LDBFMAXNMA_16(Rt, Rn, Rs)
|
---|
8495 |
|
---|
8496 |
|
---|
8497 | /* LDBFMINNMA <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3ca07000) */
|
---|
8498 | //#define IEM_INSTR_IMPL_A64__LDBFMINNMA_16(Rt, Rn, Rs)
|
---|
8499 |
|
---|
8500 |
|
---|
8501 | /* LDBFADDAL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3ce00000) */
|
---|
8502 | //#define IEM_INSTR_IMPL_A64__LDBFADDAL_16(Rt, Rn, Rs)
|
---|
8503 |
|
---|
8504 |
|
---|
8505 | /* LDBFMAXAL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3ce04000) */
|
---|
8506 | //#define IEM_INSTR_IMPL_A64__LDBFMAXAL_16(Rt, Rn, Rs)
|
---|
8507 |
|
---|
8508 |
|
---|
8509 | /* LDBFMINAL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3ce05000) */
|
---|
8510 | //#define IEM_INSTR_IMPL_A64__LDBFMINAL_16(Rt, Rn, Rs)
|
---|
8511 |
|
---|
8512 |
|
---|
8513 | /* LDBFMAXNMAL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3ce06000) */
|
---|
8514 | //#define IEM_INSTR_IMPL_A64__LDBFMAXNMAL_16(Rt, Rn, Rs)
|
---|
8515 |
|
---|
8516 |
|
---|
8517 | /* LDBFMINNMAL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/3ce07000) */
|
---|
8518 | //#define IEM_INSTR_IMPL_A64__LDBFMINNMAL_16(Rt, Rn, Rs)
|
---|
8519 |
|
---|
8520 |
|
---|
8521 | /* LDFADD <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7c200000) */
|
---|
8522 | //#define IEM_INSTR_IMPL_A64__LDFADD_16(Rt, Rn, Rs)
|
---|
8523 |
|
---|
8524 |
|
---|
8525 | /* LDFMAX <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7c204000) */
|
---|
8526 | //#define IEM_INSTR_IMPL_A64__LDFMAX_16(Rt, Rn, Rs)
|
---|
8527 |
|
---|
8528 |
|
---|
8529 | /* LDFMIN <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7c205000) */
|
---|
8530 | //#define IEM_INSTR_IMPL_A64__LDFMIN_16(Rt, Rn, Rs)
|
---|
8531 |
|
---|
8532 |
|
---|
8533 | /* LDFMAXNM <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7c206000) */
|
---|
8534 | //#define IEM_INSTR_IMPL_A64__LDFMAXNM_16(Rt, Rn, Rs)
|
---|
8535 |
|
---|
8536 |
|
---|
8537 | /* LDFMINNM <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7c207000) */
|
---|
8538 | //#define IEM_INSTR_IMPL_A64__LDFMINNM_16(Rt, Rn, Rs)
|
---|
8539 |
|
---|
8540 |
|
---|
8541 | /* STFADD <Hs>, [<Xn|SP>] (ffe0fc1f/7c20801f) */
|
---|
8542 | //#define IEM_INSTR_IMPL_A64__STFADD_16(Rn, Rs)
|
---|
8543 |
|
---|
8544 |
|
---|
8545 | /* STFMAX <Hs>, [<Xn|SP>] (ffe0fc1f/7c20c01f) */
|
---|
8546 | //#define IEM_INSTR_IMPL_A64__STFMAX_16(Rn, Rs)
|
---|
8547 |
|
---|
8548 |
|
---|
8549 | /* STFMIN <Hs>, [<Xn|SP>] (ffe0fc1f/7c20d01f) */
|
---|
8550 | //#define IEM_INSTR_IMPL_A64__STFMIN_16(Rn, Rs)
|
---|
8551 |
|
---|
8552 |
|
---|
8553 | /* STFMAXNM <Hs>, [<Xn|SP>] (ffe0fc1f/7c20e01f) */
|
---|
8554 | //#define IEM_INSTR_IMPL_A64__STFMAXNM_16(Rn, Rs)
|
---|
8555 |
|
---|
8556 |
|
---|
8557 | /* STFMINNM <Hs>, [<Xn|SP>] (ffe0fc1f/7c20f01f) */
|
---|
8558 | //#define IEM_INSTR_IMPL_A64__STFMINNM_16(Rn, Rs)
|
---|
8559 |
|
---|
8560 |
|
---|
8561 | /* STFADDL <Hs>, [<Xn|SP>] (ffe0fc1f/7c60801f) */
|
---|
8562 | //#define IEM_INSTR_IMPL_A64__STFADDL_16(Rn, Rs)
|
---|
8563 |
|
---|
8564 |
|
---|
8565 | /* STFMAXL <Hs>, [<Xn|SP>] (ffe0fc1f/7c60c01f) */
|
---|
8566 | //#define IEM_INSTR_IMPL_A64__STFMAXL_16(Rn, Rs)
|
---|
8567 |
|
---|
8568 |
|
---|
8569 | /* STFMINL <Hs>, [<Xn|SP>] (ffe0fc1f/7c60d01f) */
|
---|
8570 | //#define IEM_INSTR_IMPL_A64__STFMINL_16(Rn, Rs)
|
---|
8571 |
|
---|
8572 |
|
---|
8573 | /* STFMAXNML <Hs>, [<Xn|SP>] (ffe0fc1f/7c60e01f) */
|
---|
8574 | //#define IEM_INSTR_IMPL_A64__STFMAXNML_16(Rn, Rs)
|
---|
8575 |
|
---|
8576 |
|
---|
8577 | /* STFMINNML <Hs>, [<Xn|SP>] (ffe0fc1f/7c60f01f) */
|
---|
8578 | //#define IEM_INSTR_IMPL_A64__STFMINNML_16(Rn, Rs)
|
---|
8579 |
|
---|
8580 |
|
---|
8581 | /* LDFADDL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7c600000) */
|
---|
8582 | //#define IEM_INSTR_IMPL_A64__LDFADDL_16(Rt, Rn, Rs)
|
---|
8583 |
|
---|
8584 |
|
---|
8585 | /* LDFMAXL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7c604000) */
|
---|
8586 | //#define IEM_INSTR_IMPL_A64__LDFMAXL_16(Rt, Rn, Rs)
|
---|
8587 |
|
---|
8588 |
|
---|
8589 | /* LDFMINL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7c605000) */
|
---|
8590 | //#define IEM_INSTR_IMPL_A64__LDFMINL_16(Rt, Rn, Rs)
|
---|
8591 |
|
---|
8592 |
|
---|
8593 | /* LDFMAXNML <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7c606000) */
|
---|
8594 | //#define IEM_INSTR_IMPL_A64__LDFMAXNML_16(Rt, Rn, Rs)
|
---|
8595 |
|
---|
8596 |
|
---|
8597 | /* LDFMINNML <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7c607000) */
|
---|
8598 | //#define IEM_INSTR_IMPL_A64__LDFMINNML_16(Rt, Rn, Rs)
|
---|
8599 |
|
---|
8600 |
|
---|
8601 | /* LDFADDA <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7ca00000) */
|
---|
8602 | //#define IEM_INSTR_IMPL_A64__LDFADDA_16(Rt, Rn, Rs)
|
---|
8603 |
|
---|
8604 |
|
---|
8605 | /* LDFMAXA <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7ca04000) */
|
---|
8606 | //#define IEM_INSTR_IMPL_A64__LDFMAXA_16(Rt, Rn, Rs)
|
---|
8607 |
|
---|
8608 |
|
---|
8609 | /* LDFMINA <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7ca05000) */
|
---|
8610 | //#define IEM_INSTR_IMPL_A64__LDFMINA_16(Rt, Rn, Rs)
|
---|
8611 |
|
---|
8612 |
|
---|
8613 | /* LDFMAXNMA <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7ca06000) */
|
---|
8614 | //#define IEM_INSTR_IMPL_A64__LDFMAXNMA_16(Rt, Rn, Rs)
|
---|
8615 |
|
---|
8616 |
|
---|
8617 | /* LDFMINNMA <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7ca07000) */
|
---|
8618 | //#define IEM_INSTR_IMPL_A64__LDFMINNMA_16(Rt, Rn, Rs)
|
---|
8619 |
|
---|
8620 |
|
---|
8621 | /* LDFADDAL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7ce00000) */
|
---|
8622 | //#define IEM_INSTR_IMPL_A64__LDFADDAL_16(Rt, Rn, Rs)
|
---|
8623 |
|
---|
8624 |
|
---|
8625 | /* LDFMAXAL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7ce04000) */
|
---|
8626 | //#define IEM_INSTR_IMPL_A64__LDFMAXAL_16(Rt, Rn, Rs)
|
---|
8627 |
|
---|
8628 |
|
---|
8629 | /* LDFMINAL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7ce05000) */
|
---|
8630 | //#define IEM_INSTR_IMPL_A64__LDFMINAL_16(Rt, Rn, Rs)
|
---|
8631 |
|
---|
8632 |
|
---|
8633 | /* LDFMAXNMAL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7ce06000) */
|
---|
8634 | //#define IEM_INSTR_IMPL_A64__LDFMAXNMAL_16(Rt, Rn, Rs)
|
---|
8635 |
|
---|
8636 |
|
---|
8637 | /* LDFMINNMAL <Hs>, <Ht>, [<Xn|SP>] (ffe0fc00/7ce07000) */
|
---|
8638 | //#define IEM_INSTR_IMPL_A64__LDFMINNMAL_16(Rt, Rn, Rs)
|
---|
8639 |
|
---|
8640 |
|
---|
8641 | /* LDFADD <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bc200000) */
|
---|
8642 | //#define IEM_INSTR_IMPL_A64__LDFADD_32(Rt, Rn, Rs)
|
---|
8643 |
|
---|
8644 |
|
---|
8645 | /* LDFMAX <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bc204000) */
|
---|
8646 | //#define IEM_INSTR_IMPL_A64__LDFMAX_32(Rt, Rn, Rs)
|
---|
8647 |
|
---|
8648 |
|
---|
8649 | /* LDFMIN <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bc205000) */
|
---|
8650 | //#define IEM_INSTR_IMPL_A64__LDFMIN_32(Rt, Rn, Rs)
|
---|
8651 |
|
---|
8652 |
|
---|
8653 | /* LDFMAXNM <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bc206000) */
|
---|
8654 | //#define IEM_INSTR_IMPL_A64__LDFMAXNM_32(Rt, Rn, Rs)
|
---|
8655 |
|
---|
8656 |
|
---|
8657 | /* LDFMINNM <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bc207000) */
|
---|
8658 | //#define IEM_INSTR_IMPL_A64__LDFMINNM_32(Rt, Rn, Rs)
|
---|
8659 |
|
---|
8660 |
|
---|
8661 | /* STFADD <Ss>, [<Xn|SP>] (ffe0fc1f/bc20801f) */
|
---|
8662 | //#define IEM_INSTR_IMPL_A64__STFADD_32(Rn, Rs)
|
---|
8663 |
|
---|
8664 |
|
---|
8665 | /* STFMAX <Ss>, [<Xn|SP>] (ffe0fc1f/bc20c01f) */
|
---|
8666 | //#define IEM_INSTR_IMPL_A64__STFMAX_32(Rn, Rs)
|
---|
8667 |
|
---|
8668 |
|
---|
8669 | /* STFMIN <Ss>, [<Xn|SP>] (ffe0fc1f/bc20d01f) */
|
---|
8670 | //#define IEM_INSTR_IMPL_A64__STFMIN_32(Rn, Rs)
|
---|
8671 |
|
---|
8672 |
|
---|
8673 | /* STFMAXNM <Ss>, [<Xn|SP>] (ffe0fc1f/bc20e01f) */
|
---|
8674 | //#define IEM_INSTR_IMPL_A64__STFMAXNM_32(Rn, Rs)
|
---|
8675 |
|
---|
8676 |
|
---|
8677 | /* STFMINNM <Ss>, [<Xn|SP>] (ffe0fc1f/bc20f01f) */
|
---|
8678 | //#define IEM_INSTR_IMPL_A64__STFMINNM_32(Rn, Rs)
|
---|
8679 |
|
---|
8680 |
|
---|
8681 | /* STFADDL <Ss>, [<Xn|SP>] (ffe0fc1f/bc60801f) */
|
---|
8682 | //#define IEM_INSTR_IMPL_A64__STFADDL_32(Rn, Rs)
|
---|
8683 |
|
---|
8684 |
|
---|
8685 | /* STFMAXL <Ss>, [<Xn|SP>] (ffe0fc1f/bc60c01f) */
|
---|
8686 | //#define IEM_INSTR_IMPL_A64__STFMAXL_32(Rn, Rs)
|
---|
8687 |
|
---|
8688 |
|
---|
8689 | /* STFMINL <Ss>, [<Xn|SP>] (ffe0fc1f/bc60d01f) */
|
---|
8690 | //#define IEM_INSTR_IMPL_A64__STFMINL_32(Rn, Rs)
|
---|
8691 |
|
---|
8692 |
|
---|
8693 | /* STFMAXNML <Ss>, [<Xn|SP>] (ffe0fc1f/bc60e01f) */
|
---|
8694 | //#define IEM_INSTR_IMPL_A64__STFMAXNML_32(Rn, Rs)
|
---|
8695 |
|
---|
8696 |
|
---|
8697 | /* STFMINNML <Ss>, [<Xn|SP>] (ffe0fc1f/bc60f01f) */
|
---|
8698 | //#define IEM_INSTR_IMPL_A64__STFMINNML_32(Rn, Rs)
|
---|
8699 |
|
---|
8700 |
|
---|
8701 | /* LDFADDL <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bc600000) */
|
---|
8702 | //#define IEM_INSTR_IMPL_A64__LDFADDL_32(Rt, Rn, Rs)
|
---|
8703 |
|
---|
8704 |
|
---|
8705 | /* LDFMAXL <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bc604000) */
|
---|
8706 | //#define IEM_INSTR_IMPL_A64__LDFMAXL_32(Rt, Rn, Rs)
|
---|
8707 |
|
---|
8708 |
|
---|
8709 | /* LDFMINL <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bc605000) */
|
---|
8710 | //#define IEM_INSTR_IMPL_A64__LDFMINL_32(Rt, Rn, Rs)
|
---|
8711 |
|
---|
8712 |
|
---|
8713 | /* LDFMAXNML <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bc606000) */
|
---|
8714 | //#define IEM_INSTR_IMPL_A64__LDFMAXNML_32(Rt, Rn, Rs)
|
---|
8715 |
|
---|
8716 |
|
---|
8717 | /* LDFMINNML <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bc607000) */
|
---|
8718 | //#define IEM_INSTR_IMPL_A64__LDFMINNML_32(Rt, Rn, Rs)
|
---|
8719 |
|
---|
8720 |
|
---|
8721 | /* LDFADDA <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bca00000) */
|
---|
8722 | //#define IEM_INSTR_IMPL_A64__LDFADDA_32(Rt, Rn, Rs)
|
---|
8723 |
|
---|
8724 |
|
---|
8725 | /* LDFMAXA <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bca04000) */
|
---|
8726 | //#define IEM_INSTR_IMPL_A64__LDFMAXA_32(Rt, Rn, Rs)
|
---|
8727 |
|
---|
8728 |
|
---|
8729 | /* LDFMINA <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bca05000) */
|
---|
8730 | //#define IEM_INSTR_IMPL_A64__LDFMINA_32(Rt, Rn, Rs)
|
---|
8731 |
|
---|
8732 |
|
---|
8733 | /* LDFMAXNMA <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bca06000) */
|
---|
8734 | //#define IEM_INSTR_IMPL_A64__LDFMAXNMA_32(Rt, Rn, Rs)
|
---|
8735 |
|
---|
8736 |
|
---|
8737 | /* LDFMINNMA <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bca07000) */
|
---|
8738 | //#define IEM_INSTR_IMPL_A64__LDFMINNMA_32(Rt, Rn, Rs)
|
---|
8739 |
|
---|
8740 |
|
---|
8741 | /* LDFADDAL <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bce00000) */
|
---|
8742 | //#define IEM_INSTR_IMPL_A64__LDFADDAL_32(Rt, Rn, Rs)
|
---|
8743 |
|
---|
8744 |
|
---|
8745 | /* LDFMAXAL <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bce04000) */
|
---|
8746 | //#define IEM_INSTR_IMPL_A64__LDFMAXAL_32(Rt, Rn, Rs)
|
---|
8747 |
|
---|
8748 |
|
---|
8749 | /* LDFMINAL <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bce05000) */
|
---|
8750 | //#define IEM_INSTR_IMPL_A64__LDFMINAL_32(Rt, Rn, Rs)
|
---|
8751 |
|
---|
8752 |
|
---|
8753 | /* LDFMAXNMAL <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bce06000) */
|
---|
8754 | //#define IEM_INSTR_IMPL_A64__LDFMAXNMAL_32(Rt, Rn, Rs)
|
---|
8755 |
|
---|
8756 |
|
---|
8757 | /* LDFMINNMAL <Ss>, <St>, [<Xn|SP>] (ffe0fc00/bce07000) */
|
---|
8758 | //#define IEM_INSTR_IMPL_A64__LDFMINNMAL_32(Rt, Rn, Rs)
|
---|
8759 |
|
---|
8760 |
|
---|
8761 | /* LDFADD <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fc200000) */
|
---|
8762 | //#define IEM_INSTR_IMPL_A64__LDFADD_64(Rt, Rn, Rs)
|
---|
8763 |
|
---|
8764 |
|
---|
8765 | /* LDFMAX <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fc204000) */
|
---|
8766 | //#define IEM_INSTR_IMPL_A64__LDFMAX_64(Rt, Rn, Rs)
|
---|
8767 |
|
---|
8768 |
|
---|
8769 | /* LDFMIN <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fc205000) */
|
---|
8770 | //#define IEM_INSTR_IMPL_A64__LDFMIN_64(Rt, Rn, Rs)
|
---|
8771 |
|
---|
8772 |
|
---|
8773 | /* LDFMAXNM <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fc206000) */
|
---|
8774 | //#define IEM_INSTR_IMPL_A64__LDFMAXNM_64(Rt, Rn, Rs)
|
---|
8775 |
|
---|
8776 |
|
---|
8777 | /* LDFMINNM <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fc207000) */
|
---|
8778 | //#define IEM_INSTR_IMPL_A64__LDFMINNM_64(Rt, Rn, Rs)
|
---|
8779 |
|
---|
8780 |
|
---|
8781 | /* STFADD <Ds>, [<Xn|SP>] (ffe0fc1f/fc20801f) */
|
---|
8782 | //#define IEM_INSTR_IMPL_A64__STFADD_64(Rn, Rs)
|
---|
8783 |
|
---|
8784 |
|
---|
8785 | /* STFMAX <Ds>, [<Xn|SP>] (ffe0fc1f/fc20c01f) */
|
---|
8786 | //#define IEM_INSTR_IMPL_A64__STFMAX_64(Rn, Rs)
|
---|
8787 |
|
---|
8788 |
|
---|
8789 | /* STFMIN <Ds>, [<Xn|SP>] (ffe0fc1f/fc20d01f) */
|
---|
8790 | //#define IEM_INSTR_IMPL_A64__STFMIN_64(Rn, Rs)
|
---|
8791 |
|
---|
8792 |
|
---|
8793 | /* STFMAXNM <Ds>, [<Xn|SP>] (ffe0fc1f/fc20e01f) */
|
---|
8794 | //#define IEM_INSTR_IMPL_A64__STFMAXNM_64(Rn, Rs)
|
---|
8795 |
|
---|
8796 |
|
---|
8797 | /* STFMINNM <Ds>, [<Xn|SP>] (ffe0fc1f/fc20f01f) */
|
---|
8798 | //#define IEM_INSTR_IMPL_A64__STFMINNM_64(Rn, Rs)
|
---|
8799 |
|
---|
8800 |
|
---|
8801 | /* STFADDL <Ds>, [<Xn|SP>] (ffe0fc1f/fc60801f) */
|
---|
8802 | //#define IEM_INSTR_IMPL_A64__STFADDL_64(Rn, Rs)
|
---|
8803 |
|
---|
8804 |
|
---|
8805 | /* STFMAXL <Ds>, [<Xn|SP>] (ffe0fc1f/fc60c01f) */
|
---|
8806 | //#define IEM_INSTR_IMPL_A64__STFMAXL_64(Rn, Rs)
|
---|
8807 |
|
---|
8808 |
|
---|
8809 | /* STFMINL <Ds>, [<Xn|SP>] (ffe0fc1f/fc60d01f) */
|
---|
8810 | //#define IEM_INSTR_IMPL_A64__STFMINL_64(Rn, Rs)
|
---|
8811 |
|
---|
8812 |
|
---|
8813 | /* STFMAXNML <Ds>, [<Xn|SP>] (ffe0fc1f/fc60e01f) */
|
---|
8814 | //#define IEM_INSTR_IMPL_A64__STFMAXNML_64(Rn, Rs)
|
---|
8815 |
|
---|
8816 |
|
---|
8817 | /* STFMINNML <Ds>, [<Xn|SP>] (ffe0fc1f/fc60f01f) */
|
---|
8818 | //#define IEM_INSTR_IMPL_A64__STFMINNML_64(Rn, Rs)
|
---|
8819 |
|
---|
8820 |
|
---|
8821 | /* LDFADDL <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fc600000) */
|
---|
8822 | //#define IEM_INSTR_IMPL_A64__LDFADDL_64(Rt, Rn, Rs)
|
---|
8823 |
|
---|
8824 |
|
---|
8825 | /* LDFMAXL <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fc604000) */
|
---|
8826 | //#define IEM_INSTR_IMPL_A64__LDFMAXL_64(Rt, Rn, Rs)
|
---|
8827 |
|
---|
8828 |
|
---|
8829 | /* LDFMINL <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fc605000) */
|
---|
8830 | //#define IEM_INSTR_IMPL_A64__LDFMINL_64(Rt, Rn, Rs)
|
---|
8831 |
|
---|
8832 |
|
---|
8833 | /* LDFMAXNML <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fc606000) */
|
---|
8834 | //#define IEM_INSTR_IMPL_A64__LDFMAXNML_64(Rt, Rn, Rs)
|
---|
8835 |
|
---|
8836 |
|
---|
8837 | /* LDFMINNML <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fc607000) */
|
---|
8838 | //#define IEM_INSTR_IMPL_A64__LDFMINNML_64(Rt, Rn, Rs)
|
---|
8839 |
|
---|
8840 |
|
---|
8841 | /* LDFADDA <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fca00000) */
|
---|
8842 | //#define IEM_INSTR_IMPL_A64__LDFADDA_64(Rt, Rn, Rs)
|
---|
8843 |
|
---|
8844 |
|
---|
8845 | /* LDFMAXA <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fca04000) */
|
---|
8846 | //#define IEM_INSTR_IMPL_A64__LDFMAXA_64(Rt, Rn, Rs)
|
---|
8847 |
|
---|
8848 |
|
---|
8849 | /* LDFMINA <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fca05000) */
|
---|
8850 | //#define IEM_INSTR_IMPL_A64__LDFMINA_64(Rt, Rn, Rs)
|
---|
8851 |
|
---|
8852 |
|
---|
8853 | /* LDFMAXNMA <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fca06000) */
|
---|
8854 | //#define IEM_INSTR_IMPL_A64__LDFMAXNMA_64(Rt, Rn, Rs)
|
---|
8855 |
|
---|
8856 |
|
---|
8857 | /* LDFMINNMA <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fca07000) */
|
---|
8858 | //#define IEM_INSTR_IMPL_A64__LDFMINNMA_64(Rt, Rn, Rs)
|
---|
8859 |
|
---|
8860 |
|
---|
8861 | /* LDFADDAL <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fce00000) */
|
---|
8862 | //#define IEM_INSTR_IMPL_A64__LDFADDAL_64(Rt, Rn, Rs)
|
---|
8863 |
|
---|
8864 |
|
---|
8865 | /* LDFMAXAL <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fce04000) */
|
---|
8866 | //#define IEM_INSTR_IMPL_A64__LDFMAXAL_64(Rt, Rn, Rs)
|
---|
8867 |
|
---|
8868 |
|
---|
8869 | /* LDFMINAL <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fce05000) */
|
---|
8870 | //#define IEM_INSTR_IMPL_A64__LDFMINAL_64(Rt, Rn, Rs)
|
---|
8871 |
|
---|
8872 |
|
---|
8873 | /* LDFMAXNMAL <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fce06000) */
|
---|
8874 | //#define IEM_INSTR_IMPL_A64__LDFMAXNMAL_64(Rt, Rn, Rs)
|
---|
8875 |
|
---|
8876 |
|
---|
8877 | /* LDFMINNMAL <Ds>, <Dt>, [<Xn|SP>] (ffe0fc00/fce07000) */
|
---|
8878 | //#define IEM_INSTR_IMPL_A64__LDFMINNMAL_64(Rt, Rn, Rs)
|
---|
8879 |
|
---|
8880 |
|
---|
8881 |
|
---|
8882 | /*
|
---|
8883 | *
|
---|
8884 | * Instruction Set & Groups: memop_128 / ldst / A64
|
---|
8885 | *
|
---|
8886 | */
|
---|
8887 |
|
---|
8888 | /* LDCLRP <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19201000) */
|
---|
8889 | //#define IEM_INSTR_IMPL_A64__LDCLRP_128_memop_128(Rt, Rn, Rt2)
|
---|
8890 |
|
---|
8891 |
|
---|
8892 | /* LDSETP <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19203000) */
|
---|
8893 | //#define IEM_INSTR_IMPL_A64__LDSETP_128_memop_128(Rt, Rn, Rt2)
|
---|
8894 |
|
---|
8895 |
|
---|
8896 | /* SWPP <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19208000) */
|
---|
8897 | //#define IEM_INSTR_IMPL_A64__SWPP_128_memop_128(Rt, Rn, Rt2)
|
---|
8898 |
|
---|
8899 |
|
---|
8900 | /* RCWCLRP <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19209000) */
|
---|
8901 | //#define IEM_INSTR_IMPL_A64__RCWCLRP_128_memop_128(Rt, Rn, Rt2)
|
---|
8902 |
|
---|
8903 |
|
---|
8904 | /* RCWSWPP <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/1920a000) */
|
---|
8905 | //#define IEM_INSTR_IMPL_A64__RCWSWPP_128_memop_128(Rt, Rn, Rt2)
|
---|
8906 |
|
---|
8907 |
|
---|
8908 | /* RCWSETP <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/1920b000) */
|
---|
8909 | //#define IEM_INSTR_IMPL_A64__RCWSETP_128_memop_128(Rt, Rn, Rt2)
|
---|
8910 |
|
---|
8911 |
|
---|
8912 | /* LDCLRPL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19601000) */
|
---|
8913 | //#define IEM_INSTR_IMPL_A64__LDCLRPL_128_memop_128(Rt, Rn, Rt2)
|
---|
8914 |
|
---|
8915 |
|
---|
8916 | /* LDSETPL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19603000) */
|
---|
8917 | //#define IEM_INSTR_IMPL_A64__LDSETPL_128_memop_128(Rt, Rn, Rt2)
|
---|
8918 |
|
---|
8919 |
|
---|
8920 | /* SWPPL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19608000) */
|
---|
8921 | //#define IEM_INSTR_IMPL_A64__SWPPL_128_memop_128(Rt, Rn, Rt2)
|
---|
8922 |
|
---|
8923 |
|
---|
8924 | /* RCWCLRPL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19609000) */
|
---|
8925 | //#define IEM_INSTR_IMPL_A64__RCWCLRPL_128_memop_128(Rt, Rn, Rt2)
|
---|
8926 |
|
---|
8927 |
|
---|
8928 | /* RCWSWPPL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/1960a000) */
|
---|
8929 | //#define IEM_INSTR_IMPL_A64__RCWSWPPL_128_memop_128(Rt, Rn, Rt2)
|
---|
8930 |
|
---|
8931 |
|
---|
8932 | /* RCWSETPL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/1960b000) */
|
---|
8933 | //#define IEM_INSTR_IMPL_A64__RCWSETPL_128_memop_128(Rt, Rn, Rt2)
|
---|
8934 |
|
---|
8935 |
|
---|
8936 | /* LDCLRPA <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19a01000) */
|
---|
8937 | //#define IEM_INSTR_IMPL_A64__LDCLRPA_128_memop_128(Rt, Rn, Rt2)
|
---|
8938 |
|
---|
8939 |
|
---|
8940 | /* LDSETPA <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19a03000) */
|
---|
8941 | //#define IEM_INSTR_IMPL_A64__LDSETPA_128_memop_128(Rt, Rn, Rt2)
|
---|
8942 |
|
---|
8943 |
|
---|
8944 | /* SWPPA <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19a08000) */
|
---|
8945 | //#define IEM_INSTR_IMPL_A64__SWPPA_128_memop_128(Rt, Rn, Rt2)
|
---|
8946 |
|
---|
8947 |
|
---|
8948 | /* RCWCLRPA <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19a09000) */
|
---|
8949 | //#define IEM_INSTR_IMPL_A64__RCWCLRPA_128_memop_128(Rt, Rn, Rt2)
|
---|
8950 |
|
---|
8951 |
|
---|
8952 | /* RCWSWPPA <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19a0a000) */
|
---|
8953 | //#define IEM_INSTR_IMPL_A64__RCWSWPPA_128_memop_128(Rt, Rn, Rt2)
|
---|
8954 |
|
---|
8955 |
|
---|
8956 | /* RCWSETPA <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19a0b000) */
|
---|
8957 | //#define IEM_INSTR_IMPL_A64__RCWSETPA_128_memop_128(Rt, Rn, Rt2)
|
---|
8958 |
|
---|
8959 |
|
---|
8960 | /* LDCLRPAL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19e01000) */
|
---|
8961 | //#define IEM_INSTR_IMPL_A64__LDCLRPAL_128_memop_128(Rt, Rn, Rt2)
|
---|
8962 |
|
---|
8963 |
|
---|
8964 | /* LDSETPAL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19e03000) */
|
---|
8965 | //#define IEM_INSTR_IMPL_A64__LDSETPAL_128_memop_128(Rt, Rn, Rt2)
|
---|
8966 |
|
---|
8967 |
|
---|
8968 | /* SWPPAL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19e08000) */
|
---|
8969 | //#define IEM_INSTR_IMPL_A64__SWPPAL_128_memop_128(Rt, Rn, Rt2)
|
---|
8970 |
|
---|
8971 |
|
---|
8972 | /* RCWCLRPAL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19e09000) */
|
---|
8973 | //#define IEM_INSTR_IMPL_A64__RCWCLRPAL_128_memop_128(Rt, Rn, Rt2)
|
---|
8974 |
|
---|
8975 |
|
---|
8976 | /* RCWSWPPAL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19e0a000) */
|
---|
8977 | //#define IEM_INSTR_IMPL_A64__RCWSWPPAL_128_memop_128(Rt, Rn, Rt2)
|
---|
8978 |
|
---|
8979 |
|
---|
8980 | /* RCWSETPAL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/19e0b000) */
|
---|
8981 | //#define IEM_INSTR_IMPL_A64__RCWSETPAL_128_memop_128(Rt, Rn, Rt2)
|
---|
8982 |
|
---|
8983 |
|
---|
8984 | /* RCWSCLRP <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/59209000) */
|
---|
8985 | //#define IEM_INSTR_IMPL_A64__RCWSCLRP_128_memop_128(Rt, Rn, Rt2)
|
---|
8986 |
|
---|
8987 |
|
---|
8988 | /* RCWSSWPP <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/5920a000) */
|
---|
8989 | //#define IEM_INSTR_IMPL_A64__RCWSSWPP_128_memop_128(Rt, Rn, Rt2)
|
---|
8990 |
|
---|
8991 |
|
---|
8992 | /* RCWSSETP <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/5920b000) */
|
---|
8993 | //#define IEM_INSTR_IMPL_A64__RCWSSETP_128_memop_128(Rt, Rn, Rt2)
|
---|
8994 |
|
---|
8995 |
|
---|
8996 | /* RCWSCLRPL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/59609000) */
|
---|
8997 | //#define IEM_INSTR_IMPL_A64__RCWSCLRPL_128_memop_128(Rt, Rn, Rt2)
|
---|
8998 |
|
---|
8999 |
|
---|
9000 | /* RCWSSWPPL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/5960a000) */
|
---|
9001 | //#define IEM_INSTR_IMPL_A64__RCWSSWPPL_128_memop_128(Rt, Rn, Rt2)
|
---|
9002 |
|
---|
9003 |
|
---|
9004 | /* RCWSSETPL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/5960b000) */
|
---|
9005 | //#define IEM_INSTR_IMPL_A64__RCWSSETPL_128_memop_128(Rt, Rn, Rt2)
|
---|
9006 |
|
---|
9007 |
|
---|
9008 | /* RCWSCLRPA <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/59a09000) */
|
---|
9009 | //#define IEM_INSTR_IMPL_A64__RCWSCLRPA_128_memop_128(Rt, Rn, Rt2)
|
---|
9010 |
|
---|
9011 |
|
---|
9012 | /* RCWSSWPPA <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/59a0a000) */
|
---|
9013 | //#define IEM_INSTR_IMPL_A64__RCWSSWPPA_128_memop_128(Rt, Rn, Rt2)
|
---|
9014 |
|
---|
9015 |
|
---|
9016 | /* RCWSSETPA <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/59a0b000) */
|
---|
9017 | //#define IEM_INSTR_IMPL_A64__RCWSSETPA_128_memop_128(Rt, Rn, Rt2)
|
---|
9018 |
|
---|
9019 |
|
---|
9020 | /* RCWSCLRPAL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/59e09000) */
|
---|
9021 | //#define IEM_INSTR_IMPL_A64__RCWSCLRPAL_128_memop_128(Rt, Rn, Rt2)
|
---|
9022 |
|
---|
9023 |
|
---|
9024 | /* RCWSSWPPAL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/59e0a000) */
|
---|
9025 | //#define IEM_INSTR_IMPL_A64__RCWSSWPPAL_128_memop_128(Rt, Rn, Rt2)
|
---|
9026 |
|
---|
9027 |
|
---|
9028 | /* RCWSSETPAL <Xt1>, <Xt2>, [<Xn|SP>] (ffe0fc00/59e0b000) */
|
---|
9029 | //#define IEM_INSTR_IMPL_A64__RCWSSETPAL_128_memop_128(Rt, Rn, Rt2)
|
---|
9030 |
|
---|
9031 |
|
---|
9032 |
|
---|
9033 | /*
|
---|
9034 | *
|
---|
9035 | * Instruction Set & Groups: memop_unpriv / ldst / A64
|
---|
9036 | *
|
---|
9037 | */
|
---|
9038 |
|
---|
9039 | /* LDTADD <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19200400) */
|
---|
9040 | //#define IEM_INSTR_IMPL_A64__LDTADD_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9041 |
|
---|
9042 |
|
---|
9043 | /* LDTCLR <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19201400) */
|
---|
9044 | //#define IEM_INSTR_IMPL_A64__LDTCLR_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9045 |
|
---|
9046 |
|
---|
9047 | /* LDTSET <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19203400) */
|
---|
9048 | //#define IEM_INSTR_IMPL_A64__LDTSET_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9049 |
|
---|
9050 |
|
---|
9051 | /* SWPT <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19208400) */
|
---|
9052 | //#define IEM_INSTR_IMPL_A64__SWPT_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9053 |
|
---|
9054 |
|
---|
9055 | /* LDTADDL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19600400) */
|
---|
9056 | //#define IEM_INSTR_IMPL_A64__LDTADDL_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9057 |
|
---|
9058 |
|
---|
9059 | /* LDTCLRL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19601400) */
|
---|
9060 | //#define IEM_INSTR_IMPL_A64__LDTCLRL_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9061 |
|
---|
9062 |
|
---|
9063 | /* LDTSETL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19603400) */
|
---|
9064 | //#define IEM_INSTR_IMPL_A64__LDTSETL_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9065 |
|
---|
9066 |
|
---|
9067 | /* SWPTL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19608400) */
|
---|
9068 | //#define IEM_INSTR_IMPL_A64__SWPTL_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9069 |
|
---|
9070 |
|
---|
9071 | /* LDTADDA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19a00400) */
|
---|
9072 | //#define IEM_INSTR_IMPL_A64__LDTADDA_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9073 |
|
---|
9074 |
|
---|
9075 | /* LDTCLRA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19a01400) */
|
---|
9076 | //#define IEM_INSTR_IMPL_A64__LDTCLRA_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9077 |
|
---|
9078 |
|
---|
9079 | /* LDTSETA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19a03400) */
|
---|
9080 | //#define IEM_INSTR_IMPL_A64__LDTSETA_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9081 |
|
---|
9082 |
|
---|
9083 | /* SWPTA <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19a08400) */
|
---|
9084 | //#define IEM_INSTR_IMPL_A64__SWPTA_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9085 |
|
---|
9086 |
|
---|
9087 | /* LDTADDAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19e00400) */
|
---|
9088 | //#define IEM_INSTR_IMPL_A64__LDTADDAL_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9089 |
|
---|
9090 |
|
---|
9091 | /* LDTCLRAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19e01400) */
|
---|
9092 | //#define IEM_INSTR_IMPL_A64__LDTCLRAL_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9093 |
|
---|
9094 |
|
---|
9095 | /* LDTSETAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19e03400) */
|
---|
9096 | //#define IEM_INSTR_IMPL_A64__LDTSETAL_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9097 |
|
---|
9098 |
|
---|
9099 | /* SWPTAL <Ws>, <Wt>, [<Xn|SP>] (ffe0fc00/19e08400) */
|
---|
9100 | //#define IEM_INSTR_IMPL_A64__SWPTAL_32_memop_unpriv(Rt, Rn, Rs)
|
---|
9101 |
|
---|
9102 |
|
---|
9103 | /* LDTADD <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59200400) */
|
---|
9104 | //#define IEM_INSTR_IMPL_A64__LDTADD_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9105 |
|
---|
9106 |
|
---|
9107 | /* LDTCLR <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59201400) */
|
---|
9108 | //#define IEM_INSTR_IMPL_A64__LDTCLR_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9109 |
|
---|
9110 |
|
---|
9111 | /* LDTSET <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59203400) */
|
---|
9112 | //#define IEM_INSTR_IMPL_A64__LDTSET_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9113 |
|
---|
9114 |
|
---|
9115 | /* SWPT <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59208400) */
|
---|
9116 | //#define IEM_INSTR_IMPL_A64__SWPT_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9117 |
|
---|
9118 |
|
---|
9119 | /* LDTADDL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59600400) */
|
---|
9120 | //#define IEM_INSTR_IMPL_A64__LDTADDL_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9121 |
|
---|
9122 |
|
---|
9123 | /* LDTCLRL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59601400) */
|
---|
9124 | //#define IEM_INSTR_IMPL_A64__LDTCLRL_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9125 |
|
---|
9126 |
|
---|
9127 | /* LDTSETL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59603400) */
|
---|
9128 | //#define IEM_INSTR_IMPL_A64__LDTSETL_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9129 |
|
---|
9130 |
|
---|
9131 | /* SWPTL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59608400) */
|
---|
9132 | //#define IEM_INSTR_IMPL_A64__SWPTL_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9133 |
|
---|
9134 |
|
---|
9135 | /* LDTADDA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59a00400) */
|
---|
9136 | //#define IEM_INSTR_IMPL_A64__LDTADDA_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9137 |
|
---|
9138 |
|
---|
9139 | /* LDTCLRA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59a01400) */
|
---|
9140 | //#define IEM_INSTR_IMPL_A64__LDTCLRA_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9141 |
|
---|
9142 |
|
---|
9143 | /* LDTSETA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59a03400) */
|
---|
9144 | //#define IEM_INSTR_IMPL_A64__LDTSETA_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9145 |
|
---|
9146 |
|
---|
9147 | /* SWPTA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59a08400) */
|
---|
9148 | //#define IEM_INSTR_IMPL_A64__SWPTA_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9149 |
|
---|
9150 |
|
---|
9151 | /* LDTADDAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59e00400) */
|
---|
9152 | //#define IEM_INSTR_IMPL_A64__LDTADDAL_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9153 |
|
---|
9154 |
|
---|
9155 | /* LDTCLRAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59e01400) */
|
---|
9156 | //#define IEM_INSTR_IMPL_A64__LDTCLRAL_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9157 |
|
---|
9158 |
|
---|
9159 | /* LDTSETAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59e03400) */
|
---|
9160 | //#define IEM_INSTR_IMPL_A64__LDTSETAL_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9161 |
|
---|
9162 |
|
---|
9163 | /* SWPTAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59e08400) */
|
---|
9164 | //#define IEM_INSTR_IMPL_A64__SWPTAL_64_memop_unpriv(Rt, Rn, Rs)
|
---|
9165 |
|
---|
9166 |
|
---|
9167 |
|
---|
9168 | /*
|
---|
9169 | *
|
---|
9170 | * Instruction Set & Groups: minmax_imm / dpimm / A64
|
---|
9171 | *
|
---|
9172 | */
|
---|
9173 |
|
---|
9174 | /* SMAX <Wd>, <Wn>, #<simm> (fffc0000/11c00000) */
|
---|
9175 | //#define IEM_INSTR_IMPL_A64__SMAX_32_minmax_imm(Rd, Rn, imm8)
|
---|
9176 |
|
---|
9177 |
|
---|
9178 | /* UMAX <Wd>, <Wn>, #<uimm> (fffc0000/11c40000) */
|
---|
9179 | //#define IEM_INSTR_IMPL_A64__UMAX_32U_minmax_imm(Rd, Rn, imm8)
|
---|
9180 |
|
---|
9181 |
|
---|
9182 | /* SMIN <Wd>, <Wn>, #<simm> (fffc0000/11c80000) */
|
---|
9183 | //#define IEM_INSTR_IMPL_A64__SMIN_32_minmax_imm(Rd, Rn, imm8)
|
---|
9184 |
|
---|
9185 |
|
---|
9186 | /* UMIN <Wd>, <Wn>, #<uimm> (fffc0000/11cc0000) */
|
---|
9187 | //#define IEM_INSTR_IMPL_A64__UMIN_32U_minmax_imm(Rd, Rn, imm8)
|
---|
9188 |
|
---|
9189 |
|
---|
9190 | /* SMAX <Xd>, <Xn>, #<simm> (fffc0000/91c00000) */
|
---|
9191 | //#define IEM_INSTR_IMPL_A64__SMAX_64_minmax_imm(Rd, Rn, imm8)
|
---|
9192 |
|
---|
9193 |
|
---|
9194 | /* UMAX <Xd>, <Xn>, #<uimm> (fffc0000/91c40000) */
|
---|
9195 | //#define IEM_INSTR_IMPL_A64__UMAX_64U_minmax_imm(Rd, Rn, imm8)
|
---|
9196 |
|
---|
9197 |
|
---|
9198 | /* SMIN <Xd>, <Xn>, #<simm> (fffc0000/91c80000) */
|
---|
9199 | //#define IEM_INSTR_IMPL_A64__SMIN_64_minmax_imm(Rd, Rn, imm8)
|
---|
9200 |
|
---|
9201 |
|
---|
9202 | /* UMIN <Xd>, <Xn>, #<uimm> (fffc0000/91cc0000) */
|
---|
9203 | //#define IEM_INSTR_IMPL_A64__UMIN_64U_minmax_imm(Rd, Rn, imm8)
|
---|
9204 |
|
---|
9205 |
|
---|
9206 |
|
---|
9207 | /*
|
---|
9208 | *
|
---|
9209 | * Instruction Set & Groups: miscbranch / control / A64
|
---|
9210 | *
|
---|
9211 | */
|
---|
9212 |
|
---|
9213 | /* RETAASPPC <label> (ffe0001f/5500001f) */
|
---|
9214 | //#define IEM_INSTR_IMPL_A64__RETAASPPC_only_miscbranch(imm16)
|
---|
9215 |
|
---|
9216 |
|
---|
9217 | /* RETABSPPC <label> (ffe0001f/5520001f) */
|
---|
9218 | //#define IEM_INSTR_IMPL_A64__RETABSPPC_only_miscbranch(imm16)
|
---|
9219 |
|
---|
9220 |
|
---|
9221 |
|
---|
9222 | /*
|
---|
9223 | *
|
---|
9224 | * Instruction Set & Groups: mortlach_addhv / mortlach_hvadd / sme / A64
|
---|
9225 | *
|
---|
9226 | */
|
---|
9227 |
|
---|
9228 | /* ADDHA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.S (ffff001c/c0900000) */
|
---|
9229 | //#define IEM_INSTR_IMPL_A64__addha_za_pp_z_32(ZAda, Zn, Pn, Pm)
|
---|
9230 |
|
---|
9231 |
|
---|
9232 | /* ADDHA <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.D (ffff0018/c0d00000) */
|
---|
9233 | //#define IEM_INSTR_IMPL_A64__addha_za_pp_z_64(ZAda, Zn, Pn, Pm)
|
---|
9234 |
|
---|
9235 |
|
---|
9236 | /* ADDVA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.S (ffff001c/c0910000) */
|
---|
9237 | //#define IEM_INSTR_IMPL_A64__addva_za_pp_z_32(ZAda, Zn, Pn, Pm)
|
---|
9238 |
|
---|
9239 |
|
---|
9240 | /* ADDVA <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.D (ffff0018/c0d10000) */
|
---|
9241 | //#define IEM_INSTR_IMPL_A64__addva_za_pp_z_64(ZAda, Zn, Pn, Pm)
|
---|
9242 |
|
---|
9243 |
|
---|
9244 |
|
---|
9245 | /*
|
---|
9246 | *
|
---|
9247 | * Instruction Set & Groups: mortlach_b16b16_1in2ss_prod / mortlach2_ss_prod / sme / A64
|
---|
9248 | *
|
---|
9249 | */
|
---|
9250 |
|
---|
9251 | /* BFTMOPA <ZAda>.H, { <Zn1>.H-<Zn2>.H }, <Zm>.H, <Zk>[<index>] (ffe0e00e/81600008) */
|
---|
9252 | //#define IEM_INSTR_IMPL_A64__bftmopa_za_zzzi_h2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
9253 |
|
---|
9254 |
|
---|
9255 |
|
---|
9256 | /*
|
---|
9257 | *
|
---|
9258 | * Instruction Set & Groups: mortlach_b16b16_prod / mortlach2_misc_prod / sme / A64
|
---|
9259 | *
|
---|
9260 | */
|
---|
9261 |
|
---|
9262 | /* BFMOPA <ZAda>.H, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001e/81a00008) */
|
---|
9263 | //#define IEM_INSTR_IMPL_A64__bfmopa_za_pp_zz_16(ZAda, Zn, Pn, Pm, Zm)
|
---|
9264 |
|
---|
9265 |
|
---|
9266 | /* BFMOPS <ZAda>.H, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001e/81a00018) */
|
---|
9267 | //#define IEM_INSTR_IMPL_A64__bfmops_za_pp_zz_16(ZAda, Zn, Pn, Pm, Zm)
|
---|
9268 |
|
---|
9269 |
|
---|
9270 |
|
---|
9271 | /*
|
---|
9272 | *
|
---|
9273 | * Instruction Set & Groups: mortlach_b16b16_prod4 / mortlach2_prod4 / sme / A64
|
---|
9274 | *
|
---|
9275 | */
|
---|
9276 |
|
---|
9277 | /* BFMOP4A <ZAda>.H, <Zn>.H, <Zm>.H (fff1fe3e/81200008) */
|
---|
9278 | //#define IEM_INSTR_IMPL_A64__bfmop4a_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
9279 |
|
---|
9280 |
|
---|
9281 | /* BFMOP4S <ZAda>.H, <Zn>.H, <Zm>.H (fff1fe3e/81200018) */
|
---|
9282 | //#define IEM_INSTR_IMPL_A64__bfmop4s_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
9283 |
|
---|
9284 |
|
---|
9285 | /* BFMOP4A <ZAda>.H, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3e/81300008) */
|
---|
9286 | //#define IEM_INSTR_IMPL_A64__bfmop4a_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
9287 |
|
---|
9288 |
|
---|
9289 | /* BFMOP4S <ZAda>.H, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3e/81300018) */
|
---|
9290 | //#define IEM_INSTR_IMPL_A64__bfmop4s_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
9291 |
|
---|
9292 |
|
---|
9293 | /* BFMOP4A <ZAda>.H, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3e/81200208) */
|
---|
9294 | //#define IEM_INSTR_IMPL_A64__bfmop4a_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
9295 |
|
---|
9296 |
|
---|
9297 | /* BFMOP4S <ZAda>.H, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3e/81200218) */
|
---|
9298 | //#define IEM_INSTR_IMPL_A64__bfmop4s_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
9299 |
|
---|
9300 |
|
---|
9301 | /* BFMOP4A <ZAda>.H, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3e/81300208) */
|
---|
9302 | //#define IEM_INSTR_IMPL_A64__bfmop4a_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
9303 |
|
---|
9304 |
|
---|
9305 | /* BFMOP4S <ZAda>.H, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3e/81300218) */
|
---|
9306 | //#define IEM_INSTR_IMPL_A64__bfmop4s_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
9307 |
|
---|
9308 |
|
---|
9309 |
|
---|
9310 | /*
|
---|
9311 | *
|
---|
9312 | * Instruction Set & Groups: mortlach_b16f32_2in4ss_prod / mortlach2_ss_prod / sme / A64
|
---|
9313 | *
|
---|
9314 | */
|
---|
9315 |
|
---|
9316 | /* BFTMOPA <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H, <Zk>[<index>] (ffe0e00c/81400000) */
|
---|
9317 | //#define IEM_INSTR_IMPL_A64__bftmopa_za32_zzzi_h2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
9318 |
|
---|
9319 |
|
---|
9320 |
|
---|
9321 | /*
|
---|
9322 | *
|
---|
9323 | * Instruction Set & Groups: mortlach_b16f32_prod / mortlach_32bit_fp_prod / sme / A64
|
---|
9324 | *
|
---|
9325 | */
|
---|
9326 |
|
---|
9327 | /* BFMOPA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001c/81800000) */
|
---|
9328 | //#define IEM_INSTR_IMPL_A64__bfmopa_za32_pp_zz(ZAda, Zn, Pn, Pm, Zm)
|
---|
9329 |
|
---|
9330 |
|
---|
9331 | /* BFMOPS <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001c/81800010) */
|
---|
9332 | //#define IEM_INSTR_IMPL_A64__bfmops_za32_pp_zz(ZAda, Zn, Pn, Pm, Zm)
|
---|
9333 |
|
---|
9334 |
|
---|
9335 |
|
---|
9336 | /*
|
---|
9337 | *
|
---|
9338 | * Instruction Set & Groups: mortlach_b16f32_prod4 / mortlach2_prod4 / sme / A64
|
---|
9339 | *
|
---|
9340 | */
|
---|
9341 |
|
---|
9342 | /* BFMOP4A <ZAda>.S, <Zn>.H, <Zm>.H (fff1fe3c/81000000) */
|
---|
9343 | //#define IEM_INSTR_IMPL_A64__bfmop4a_za32_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
9344 |
|
---|
9345 |
|
---|
9346 | /* BFMOP4S <ZAda>.S, <Zn>.H, <Zm>.H (fff1fe3c/81000010) */
|
---|
9347 | //#define IEM_INSTR_IMPL_A64__bfmop4s_za32_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
9348 |
|
---|
9349 |
|
---|
9350 | /* BFMOP4A <ZAda>.S, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81100000) */
|
---|
9351 | //#define IEM_INSTR_IMPL_A64__bfmop4a_za32_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
9352 |
|
---|
9353 |
|
---|
9354 | /* BFMOP4S <ZAda>.S, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81100010) */
|
---|
9355 | //#define IEM_INSTR_IMPL_A64__bfmop4s_za32_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
9356 |
|
---|
9357 |
|
---|
9358 | /* BFMOP4A <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3c/81000200) */
|
---|
9359 | //#define IEM_INSTR_IMPL_A64__bfmop4a_za32_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
9360 |
|
---|
9361 |
|
---|
9362 | /* BFMOP4S <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3c/81000210) */
|
---|
9363 | //#define IEM_INSTR_IMPL_A64__bfmop4s_za32_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
9364 |
|
---|
9365 |
|
---|
9366 | /* BFMOP4A <ZAda>.S, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81100200) */
|
---|
9367 | //#define IEM_INSTR_IMPL_A64__bfmop4a_za32_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
9368 |
|
---|
9369 |
|
---|
9370 | /* BFMOP4S <ZAda>.S, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81100210) */
|
---|
9371 | //#define IEM_INSTR_IMPL_A64__bfmop4s_za32_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
9372 |
|
---|
9373 |
|
---|
9374 |
|
---|
9375 | /*
|
---|
9376 | *
|
---|
9377 | * Instruction Set & Groups: mortlach_bini32_prod / mortlach2_misc_prod / sme / A64
|
---|
9378 | *
|
---|
9379 | */
|
---|
9380 |
|
---|
9381 | /* BMOPA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.S, <Zm>.S (ffe0001c/80800008) */
|
---|
9382 | //#define IEM_INSTR_IMPL_A64__bmopa_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
9383 |
|
---|
9384 |
|
---|
9385 | /* BMOPS <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.S, <Zm>.S (ffe0001c/80800018) */
|
---|
9386 | //#define IEM_INSTR_IMPL_A64__bmops_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
9387 |
|
---|
9388 |
|
---|
9389 |
|
---|
9390 | /*
|
---|
9391 | *
|
---|
9392 | * Instruction Set & Groups: mortlach_contig_load / mortlach_mem / sme / A64
|
---|
9393 | *
|
---|
9394 | */
|
---|
9395 |
|
---|
9396 | /* LD1B { ZA0<HV>.B[<Ws>, <offs>] }, <Pg>/Z, [<Xn|SP>{, <Xm>}] (ffe00010/e0000000) */
|
---|
9397 | //#define IEM_INSTR_IMPL_A64__ld1b_za_p_rrr(off4, Rn, Pg, Rs, V, Rm)
|
---|
9398 |
|
---|
9399 |
|
---|
9400 | /* LD1H { <ZAt><HV>.H[<Ws>, <offs>] }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #1}] (ffe00010/e0400000) */
|
---|
9401 | //#define IEM_INSTR_IMPL_A64__ld1h_za_p_rrr(off3, ZAt, Rn, Pg, Rs, V, Rm)
|
---|
9402 |
|
---|
9403 |
|
---|
9404 | /* LD1W { <ZAt><HV>.S[<Ws>, <offs>] }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #2}] (ffe00010/e0800000) */
|
---|
9405 | //#define IEM_INSTR_IMPL_A64__ld1w_za_p_rrr(off2, ZAt, Rn, Pg, Rs, V, Rm)
|
---|
9406 |
|
---|
9407 |
|
---|
9408 | /* LD1D { <ZAt><HV>.D[<Ws>, <offs>] }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #3}] (ffe00010/e0c00000) */
|
---|
9409 | //#define IEM_INSTR_IMPL_A64__ld1d_za_p_rrr(o1, ZAt, Rn, Pg, Rs, V, Rm)
|
---|
9410 |
|
---|
9411 |
|
---|
9412 |
|
---|
9413 | /*
|
---|
9414 | *
|
---|
9415 | * Instruction Set & Groups: mortlach_contig_qload / mortlach_mem / sme / A64
|
---|
9416 | *
|
---|
9417 | */
|
---|
9418 |
|
---|
9419 | /* LD1Q { <ZAt><HV>.Q[<Ws>, <offs>] }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #4}] (ffe00010/e1c00000) */
|
---|
9420 | //#define IEM_INSTR_IMPL_A64__ld1q_za_p_rrr(ZAt, Rn, Pg, Rs, V, Rm)
|
---|
9421 |
|
---|
9422 |
|
---|
9423 |
|
---|
9424 | /*
|
---|
9425 | *
|
---|
9426 | * Instruction Set & Groups: mortlach_contig_qstore / mortlach_mem / sme / A64
|
---|
9427 | *
|
---|
9428 | */
|
---|
9429 |
|
---|
9430 | /* ST1Q { <ZAt><HV>.Q[<Ws>, <offs>] }, <Pg>, [<Xn|SP>{, <Xm>, LSL #4}] (ffe00010/e1e00000) */
|
---|
9431 | //#define IEM_INSTR_IMPL_A64__st1q_za_p_rrr(ZAt, Rn, Pg, Rs, V, Rm)
|
---|
9432 |
|
---|
9433 |
|
---|
9434 |
|
---|
9435 | /*
|
---|
9436 | *
|
---|
9437 | * Instruction Set & Groups: mortlach_contig_store / mortlach_mem / sme / A64
|
---|
9438 | *
|
---|
9439 | */
|
---|
9440 |
|
---|
9441 | /* ST1B { ZA0<HV>.B[<Ws>, <offs>] }, <Pg>, [<Xn|SP>{, <Xm>}] (ffe00010/e0200000) */
|
---|
9442 | //#define IEM_INSTR_IMPL_A64__st1b_za_p_rrr(off4, Rn, Pg, Rs, V, Rm)
|
---|
9443 |
|
---|
9444 |
|
---|
9445 | /* ST1H { <ZAt><HV>.H[<Ws>, <offs>] }, <Pg>, [<Xn|SP>{, <Xm>, LSL #1}] (ffe00010/e0600000) */
|
---|
9446 | //#define IEM_INSTR_IMPL_A64__st1h_za_p_rrr(off3, ZAt, Rn, Pg, Rs, V, Rm)
|
---|
9447 |
|
---|
9448 |
|
---|
9449 | /* ST1W { <ZAt><HV>.S[<Ws>, <offs>] }, <Pg>, [<Xn|SP>{, <Xm>, LSL #2}] (ffe00010/e0a00000) */
|
---|
9450 | //#define IEM_INSTR_IMPL_A64__st1w_za_p_rrr(off2, ZAt, Rn, Pg, Rs, V, Rm)
|
---|
9451 |
|
---|
9452 |
|
---|
9453 | /* ST1D { <ZAt><HV>.D[<Ws>, <offs>] }, <Pg>, [<Xn|SP>{, <Xm>, LSL #3}] (ffe00010/e0e00000) */
|
---|
9454 | //#define IEM_INSTR_IMPL_A64__st1d_za_p_rrr(o1, ZAt, Rn, Pg, Rs, V, Rm)
|
---|
9455 |
|
---|
9456 |
|
---|
9457 |
|
---|
9458 | /*
|
---|
9459 | *
|
---|
9460 | * Instruction Set & Groups: mortlach_ctxt_ldst / mortlach_mem / sme / A64
|
---|
9461 | *
|
---|
9462 | */
|
---|
9463 |
|
---|
9464 | /* LDR ZA[<Wv>, <offs>], [<Xn|SP>{, #<offs>, MUL VL}] (ffff9c10/e1000000) */
|
---|
9465 | //#define IEM_INSTR_IMPL_A64__ldr_za_ri(off4, Rn, Rv)
|
---|
9466 |
|
---|
9467 |
|
---|
9468 | /* STR ZA[<Wv>, <offs>], [<Xn|SP>{, #<offs>, MUL VL}] (ffff9c10/e1200000) */
|
---|
9469 | //#define IEM_INSTR_IMPL_A64__str_za_ri(off4, Rn, Rv)
|
---|
9470 |
|
---|
9471 |
|
---|
9472 |
|
---|
9473 | /*
|
---|
9474 | *
|
---|
9475 | * Instruction Set & Groups: mortlach_expand_1dst / mortlach_zt_expand_ctg / sme / A64
|
---|
9476 | *
|
---|
9477 | */
|
---|
9478 |
|
---|
9479 | /* LUTI2 <Zd>.<T>, ZT0, <Zn>[<index>] (fffc0c00/c0cc0000) */
|
---|
9480 | //#define IEM_INSTR_IMPL_A64__luti2_z_ztz(Zd, Zn, size, i4)
|
---|
9481 |
|
---|
9482 |
|
---|
9483 | /* LUTI4 <Zd>.<T>, ZT0, <Zn>[<index>] (fffe0c00/c0ca0000) */
|
---|
9484 | //#define IEM_INSTR_IMPL_A64__luti4_z_ztz(Zd, Zn, size, i3)
|
---|
9485 |
|
---|
9486 |
|
---|
9487 |
|
---|
9488 | /*
|
---|
9489 | *
|
---|
9490 | * Instruction Set & Groups: mortlach_expand_2dst_ctg / mortlach_zt_expand_ctg / sme / A64
|
---|
9491 | *
|
---|
9492 | */
|
---|
9493 |
|
---|
9494 | /* LUTI2 { <Zd1>.<T>-<Zd2>.<T> }, ZT0, <Zn>[<index>] (fffc4c01/c08c4000) */
|
---|
9495 | //#define IEM_INSTR_IMPL_A64__luti2_mz2_ztz_1(Zd, Zn, size, i3)
|
---|
9496 |
|
---|
9497 |
|
---|
9498 | /* LUTI4 { <Zd1>.<T>-<Zd2>.<T> }, ZT0, <Zn>[<index>] (fffe4c01/c08a4000) */
|
---|
9499 | //#define IEM_INSTR_IMPL_A64__luti4_mz2_ztz_1(Zd, Zn, size, i2)
|
---|
9500 |
|
---|
9501 |
|
---|
9502 |
|
---|
9503 | /*
|
---|
9504 | *
|
---|
9505 | * Instruction Set & Groups: mortlach_expand_2dst_nctg / mortlach_zt_expand_nctg / sme / A64
|
---|
9506 | *
|
---|
9507 | */
|
---|
9508 |
|
---|
9509 | /* LUTI2 { <Zd1>.<T>, <Zd2>.<T> }, ZT0, <Zn>[<index>] (fffc4c08/c09c4000) */
|
---|
9510 | //#define IEM_INSTR_IMPL_A64__luti2_mz2_ztz_8(Zd, D, Zn, size, i3)
|
---|
9511 |
|
---|
9512 |
|
---|
9513 | /* LUTI4 { <Zd1>.<T>, <Zd2>.<T> }, ZT0, <Zn>[<index>] (fffe4c08/c09a4000) */
|
---|
9514 | //#define IEM_INSTR_IMPL_A64__luti4_mz2_ztz_8(Zd, D, Zn, size, i2)
|
---|
9515 |
|
---|
9516 |
|
---|
9517 |
|
---|
9518 | /*
|
---|
9519 | *
|
---|
9520 | * Instruction Set & Groups: mortlach_expand_4dst2src_ctg / mortlach_zt_expand_ctg / sme / A64
|
---|
9521 | *
|
---|
9522 | */
|
---|
9523 |
|
---|
9524 | /* LUTI4 { <Zd1>.B-<Zd4>.B }, ZT0, { <Zn1>-<Zn2> } (ffffcc23/c08b0000) */
|
---|
9525 | //#define IEM_INSTR_IMPL_A64__luti4_mz4_ztmz2_1(Zd, Zn, size)
|
---|
9526 |
|
---|
9527 |
|
---|
9528 |
|
---|
9529 | /*
|
---|
9530 | *
|
---|
9531 | * Instruction Set & Groups: mortlach_expand_4dst2src_nctg / mortlach_zt_expand_nctg / sme / A64
|
---|
9532 | *
|
---|
9533 | */
|
---|
9534 |
|
---|
9535 | /* LUTI4 { <Zd1>.B, <Zd2>.B, <Zd3>.B, <Zd4>.B }, ZT0, { <Zn1>-<Zn2> } (ffffcc2c/c09b0000) */
|
---|
9536 | //#define IEM_INSTR_IMPL_A64__luti4_mz4_ztmz2_4(Zd, D, Zn, size)
|
---|
9537 |
|
---|
9538 |
|
---|
9539 |
|
---|
9540 | /*
|
---|
9541 | *
|
---|
9542 | * Instruction Set & Groups: mortlach_expand_4dst_ctg / mortlach_zt_expand_ctg / sme / A64
|
---|
9543 | *
|
---|
9544 | */
|
---|
9545 |
|
---|
9546 | /* LUTI2 { <Zd1>.<T>-<Zd4>.<T> }, ZT0, <Zn>[<index>] (fffccc03/c08c8000) */
|
---|
9547 | //#define IEM_INSTR_IMPL_A64__luti2_mz4_ztz_1(Zd, Zn, size, i2)
|
---|
9548 |
|
---|
9549 |
|
---|
9550 | /* LUTI4 { <Zd1>.<T>-<Zd4>.<T> }, ZT0, <Zn>[<index>] (fffecc03/c08a8000) */
|
---|
9551 | //#define IEM_INSTR_IMPL_A64__luti4_mz4_ztz_1(Zd, Zn, size, i1)
|
---|
9552 |
|
---|
9553 |
|
---|
9554 |
|
---|
9555 | /*
|
---|
9556 | *
|
---|
9557 | * Instruction Set & Groups: mortlach_expand_4dst_nctg / mortlach_zt_expand_nctg / sme / A64
|
---|
9558 | *
|
---|
9559 | */
|
---|
9560 |
|
---|
9561 | /* LUTI2 { <Zd1>.<T>, <Zd2>.<T>, <Zd3>.<T>, <Zd4>.<T> }, ZT0, <Zn>[<index>] (fffccc0c/c09c8000) */
|
---|
9562 | //#define IEM_INSTR_IMPL_A64__luti2_mz4_ztz_4(Zd, D, Zn, size, i2)
|
---|
9563 |
|
---|
9564 |
|
---|
9565 | /* LUTI4 { <Zd1>.H, <Zd2>.H, <Zd3>.H, <Zd4>.H }, ZT0, <Zn>[<index>] (fffecc0c/c09a8000) */
|
---|
9566 | //#define IEM_INSTR_IMPL_A64__luti4_mz4_ztz_4(Zd, D, Zn, size, i1)
|
---|
9567 |
|
---|
9568 |
|
---|
9569 |
|
---|
9570 | /*
|
---|
9571 | *
|
---|
9572 | * Instruction Set & Groups: mortlach_extract_pred / mortlach_ext / sme / A64
|
---|
9573 | *
|
---|
9574 | */
|
---|
9575 |
|
---|
9576 | /* MOVA <Zd>.B, <Pg>/M, ZA0<HV>.B[<Ws>, <offs>] (ffff0200/c0020000) */
|
---|
9577 | //#define IEM_INSTR_IMPL_A64__mova_z_p_rza_b(Zd, off4, Pg, Rs, V)
|
---|
9578 |
|
---|
9579 |
|
---|
9580 | /* MOVA <Zd>.H, <Pg>/M, <ZAn><HV>.H[<Ws>, <offs>] (ffff0200/c0420000) */
|
---|
9581 | //#define IEM_INSTR_IMPL_A64__mova_z_p_rza_h(Zd, off3, ZAn, Pg, Rs, V)
|
---|
9582 |
|
---|
9583 |
|
---|
9584 | /* MOVA <Zd>.S, <Pg>/M, <ZAn><HV>.S[<Ws>, <offs>] (ffff0200/c0820000) */
|
---|
9585 | //#define IEM_INSTR_IMPL_A64__mova_z_p_rza_w(Zd, off2, ZAn, Pg, Rs, V)
|
---|
9586 |
|
---|
9587 |
|
---|
9588 | /* MOVA <Zd>.D, <Pg>/M, <ZAn><HV>.D[<Ws>, <offs>] (ffff0200/c0c20000) */
|
---|
9589 | //#define IEM_INSTR_IMPL_A64__mova_z_p_rza_d(Zd, o1, ZAn, Pg, Rs, V)
|
---|
9590 |
|
---|
9591 |
|
---|
9592 | /* MOVA <Zd>.Q, <Pg>/M, <ZAn><HV>.Q[<Ws>, <offs>] (ffff0200/c0c30000) */
|
---|
9593 | //#define IEM_INSTR_IMPL_A64__mova_z_p_rza_q(Zd, ZAn, Pg, Rs, V)
|
---|
9594 |
|
---|
9595 |
|
---|
9596 |
|
---|
9597 | /*
|
---|
9598 | *
|
---|
9599 | * Instruction Set & Groups: mortlach_extract_zero / mortlach_ext / sme / A64
|
---|
9600 | *
|
---|
9601 | */
|
---|
9602 |
|
---|
9603 | /* MOVAZ <Zd>.B, ZA0<HV>.B[<Ws>, <offs>] (ffff1e00/c0020200) */
|
---|
9604 | //#define IEM_INSTR_IMPL_A64__movaz_z_rza_b(Zd, off4, Rs, V)
|
---|
9605 |
|
---|
9606 |
|
---|
9607 | /* MOVAZ <Zd>.H, <ZAn><HV>.H[<Ws>, <offs>] (ffff1e00/c0420200) */
|
---|
9608 | //#define IEM_INSTR_IMPL_A64__movaz_z_rza_h(Zd, off3, ZAn, Rs, V)
|
---|
9609 |
|
---|
9610 |
|
---|
9611 | /* MOVAZ <Zd>.S, <ZAn><HV>.S[<Ws>, <offs>] (ffff1e00/c0820200) */
|
---|
9612 | //#define IEM_INSTR_IMPL_A64__movaz_z_rza_w(Zd, off2, ZAn, Rs, V)
|
---|
9613 |
|
---|
9614 |
|
---|
9615 | /* MOVAZ <Zd>.D, <ZAn><HV>.D[<Ws>, <offs>] (ffff1e00/c0c20200) */
|
---|
9616 | //#define IEM_INSTR_IMPL_A64__movaz_z_rza_d(Zd, o1, ZAn, Rs, V)
|
---|
9617 |
|
---|
9618 |
|
---|
9619 | /* MOVAZ <Zd>.Q, <ZAn><HV>.Q[<Ws>, <offs>] (ffff1e00/c0c30200) */
|
---|
9620 | //#define IEM_INSTR_IMPL_A64__movaz_z_rza_q(Zd, ZAn, Rs, V)
|
---|
9621 |
|
---|
9622 |
|
---|
9623 |
|
---|
9624 | /*
|
---|
9625 | *
|
---|
9626 | * Instruction Set & Groups: mortlach_extract_zt / mortlach_mov_zt / sme / A64
|
---|
9627 | *
|
---|
9628 | */
|
---|
9629 |
|
---|
9630 | /* MOVT <Xt>, ZT0[<offs>] (ffff8fe0/c04c03e0) */
|
---|
9631 | //#define IEM_INSTR_IMPL_A64__movt_r_zt(Rt, off3)
|
---|
9632 |
|
---|
9633 |
|
---|
9634 |
|
---|
9635 | /*
|
---|
9636 | *
|
---|
9637 | * Instruction Set & Groups: mortlach_f16f16_1in2ss_prod / mortlach2_ss_prod / sme / A64
|
---|
9638 | *
|
---|
9639 | */
|
---|
9640 |
|
---|
9641 | /* FTMOPA <ZAda>.H, { <Zn1>.H-<Zn2>.H }, <Zm>.H, <Zk>[<index>] (ffe0e00e/81400008) */
|
---|
9642 | //#define IEM_INSTR_IMPL_A64__ftmopa_za_zzzi_h2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
9643 |
|
---|
9644 |
|
---|
9645 |
|
---|
9646 | /*
|
---|
9647 | *
|
---|
9648 | * Instruction Set & Groups: mortlach_f16f16_prod / mortlach2_misc_prod / sme / A64
|
---|
9649 | *
|
---|
9650 | */
|
---|
9651 |
|
---|
9652 | /* FMOPA <ZAda>.H, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001e/81800008) */
|
---|
9653 | //#define IEM_INSTR_IMPL_A64__fmopa_za_pp_zz_16(ZAda, Zn, Pn, Pm, Zm)
|
---|
9654 |
|
---|
9655 |
|
---|
9656 | /* FMOPS <ZAda>.H, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001e/81800018) */
|
---|
9657 | //#define IEM_INSTR_IMPL_A64__fmops_za_pp_zz_16(ZAda, Zn, Pn, Pm, Zm)
|
---|
9658 |
|
---|
9659 |
|
---|
9660 |
|
---|
9661 | /*
|
---|
9662 | *
|
---|
9663 | * Instruction Set & Groups: mortlach_f16f16_prod4 / mortlach2_prod4 / sme / A64
|
---|
9664 | *
|
---|
9665 | */
|
---|
9666 |
|
---|
9667 | /* FMOP4A <ZAda>.H, <Zn>.H, <Zm>.H (fff1fe3e/81000008) */
|
---|
9668 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
9669 |
|
---|
9670 |
|
---|
9671 | /* FMOP4S <ZAda>.H, <Zn>.H, <Zm>.H (fff1fe3e/81000018) */
|
---|
9672 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
9673 |
|
---|
9674 |
|
---|
9675 | /* FMOP4A <ZAda>.H, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3e/81100008) */
|
---|
9676 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
9677 |
|
---|
9678 |
|
---|
9679 | /* FMOP4S <ZAda>.H, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3e/81100018) */
|
---|
9680 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
9681 |
|
---|
9682 |
|
---|
9683 | /* FMOP4A <ZAda>.H, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3e/81000208) */
|
---|
9684 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
9685 |
|
---|
9686 |
|
---|
9687 | /* FMOP4S <ZAda>.H, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3e/81000218) */
|
---|
9688 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
9689 |
|
---|
9690 |
|
---|
9691 | /* FMOP4A <ZAda>.H, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3e/81100208) */
|
---|
9692 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
9693 |
|
---|
9694 |
|
---|
9695 | /* FMOP4S <ZAda>.H, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3e/81100218) */
|
---|
9696 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
9697 |
|
---|
9698 |
|
---|
9699 |
|
---|
9700 | /*
|
---|
9701 | *
|
---|
9702 | * Instruction Set & Groups: mortlach_f16f32_2in4ss_prod / mortlach2_ss_prod / sme / A64
|
---|
9703 | *
|
---|
9704 | */
|
---|
9705 |
|
---|
9706 | /* FTMOPA <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H, <Zk>[<index>] (ffe0e00c/81600000) */
|
---|
9707 | //#define IEM_INSTR_IMPL_A64__ftmopa_za32_zzzi_h2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
9708 |
|
---|
9709 |
|
---|
9710 |
|
---|
9711 | /*
|
---|
9712 | *
|
---|
9713 | * Instruction Set & Groups: mortlach_f16f32_prod / mortlach_32bit_fp_prod / sme / A64
|
---|
9714 | *
|
---|
9715 | */
|
---|
9716 |
|
---|
9717 | /* FMOPA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001c/81a00000) */
|
---|
9718 | //#define IEM_INSTR_IMPL_A64__fmopa_za32_pp_zz_16(ZAda, Zn, Pn, Pm, Zm)
|
---|
9719 |
|
---|
9720 |
|
---|
9721 | /* FMOPS <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001c/81a00010) */
|
---|
9722 | //#define IEM_INSTR_IMPL_A64__fmops_za32_pp_zz_16(ZAda, Zn, Pn, Pm, Zm)
|
---|
9723 |
|
---|
9724 |
|
---|
9725 |
|
---|
9726 | /*
|
---|
9727 | *
|
---|
9728 | * Instruction Set & Groups: mortlach_f16f32_prod4 / mortlach2_prod4 / sme / A64
|
---|
9729 | *
|
---|
9730 | */
|
---|
9731 |
|
---|
9732 | /* FMOP4A <ZAda>.S, <Zn>.H, <Zm>.H (fff1fe3c/81200000) */
|
---|
9733 | //#define IEM_INSTR_IMPL_A64__fmop4a_za32_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
9734 |
|
---|
9735 |
|
---|
9736 | /* FMOP4S <ZAda>.S, <Zn>.H, <Zm>.H (fff1fe3c/81200010) */
|
---|
9737 | //#define IEM_INSTR_IMPL_A64__fmop4s_za32_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
9738 |
|
---|
9739 |
|
---|
9740 | /* FMOP4A <ZAda>.S, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81300000) */
|
---|
9741 | //#define IEM_INSTR_IMPL_A64__fmop4a_za32_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
9742 |
|
---|
9743 |
|
---|
9744 | /* FMOP4S <ZAda>.S, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81300010) */
|
---|
9745 | //#define IEM_INSTR_IMPL_A64__fmop4s_za32_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
9746 |
|
---|
9747 |
|
---|
9748 | /* FMOP4A <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3c/81200200) */
|
---|
9749 | //#define IEM_INSTR_IMPL_A64__fmop4a_za32_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
9750 |
|
---|
9751 |
|
---|
9752 | /* FMOP4S <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3c/81200210) */
|
---|
9753 | //#define IEM_INSTR_IMPL_A64__fmop4s_za32_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
9754 |
|
---|
9755 |
|
---|
9756 | /* FMOP4A <ZAda>.S, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81300200) */
|
---|
9757 | //#define IEM_INSTR_IMPL_A64__fmop4a_za32_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
9758 |
|
---|
9759 |
|
---|
9760 | /* FMOP4S <ZAda>.S, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81300210) */
|
---|
9761 | //#define IEM_INSTR_IMPL_A64__fmop4s_za32_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
9762 |
|
---|
9763 |
|
---|
9764 |
|
---|
9765 | /*
|
---|
9766 | *
|
---|
9767 | * Instruction Set & Groups: mortlach_f32f32_1in2ss_prod / mortlach2_ss_prod / sme / A64
|
---|
9768 | *
|
---|
9769 | */
|
---|
9770 |
|
---|
9771 | /* FTMOPA <ZAda>.S, { <Zn1>.S-<Zn2>.S }, <Zm>.S, <Zk>[<index>] (ffe0e00c/80400000) */
|
---|
9772 | //#define IEM_INSTR_IMPL_A64__ftmopa_za_zzzi_s2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
9773 |
|
---|
9774 |
|
---|
9775 |
|
---|
9776 | /*
|
---|
9777 | *
|
---|
9778 | * Instruction Set & Groups: mortlach_f32f32_prod / mortlach_32bit_fp_prod / sme / A64
|
---|
9779 | *
|
---|
9780 | */
|
---|
9781 |
|
---|
9782 | /* FMOPA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.S, <Zm>.S (ffe0001c/80800000) */
|
---|
9783 | //#define IEM_INSTR_IMPL_A64__fmopa_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
9784 |
|
---|
9785 |
|
---|
9786 | /* FMOPS <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.S, <Zm>.S (ffe0001c/80800010) */
|
---|
9787 | //#define IEM_INSTR_IMPL_A64__fmops_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
9788 |
|
---|
9789 |
|
---|
9790 |
|
---|
9791 | /*
|
---|
9792 | *
|
---|
9793 | * Instruction Set & Groups: mortlach_f32f32_prod4 / mortlach2_prod4 / sme / A64
|
---|
9794 | *
|
---|
9795 | */
|
---|
9796 |
|
---|
9797 | /* FMOP4A <ZAda>.S, <Zn>.S, <Zm>.S (fff1fe3c/80000000) */
|
---|
9798 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_s1x1(ZAda, Zn, N, Zm, M)
|
---|
9799 |
|
---|
9800 |
|
---|
9801 | /* FMOP4S <ZAda>.S, <Zn>.S, <Zm>.S (fff1fe3c/80000010) */
|
---|
9802 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_s1x1(ZAda, Zn, N, Zm, M)
|
---|
9803 |
|
---|
9804 |
|
---|
9805 | /* FMOP4A <ZAda>.S, <Zn>.S, { <Zm1>.S-<Zm2>.S } (fff1fe3c/80100000) */
|
---|
9806 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_s1x2(ZAda, Zn, N, Zm, M)
|
---|
9807 |
|
---|
9808 |
|
---|
9809 | /* FMOP4S <ZAda>.S, <Zn>.S, { <Zm1>.S-<Zm2>.S } (fff1fe3c/80100010) */
|
---|
9810 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_s1x2(ZAda, Zn, N, Zm, M)
|
---|
9811 |
|
---|
9812 |
|
---|
9813 | /* FMOP4A <ZAda>.S, { <Zn1>.S-<Zn2>.S }, <Zm>.S (fff1fe3c/80000200) */
|
---|
9814 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_s2x1(ZAda, Zn, N, Zm, M)
|
---|
9815 |
|
---|
9816 |
|
---|
9817 | /* FMOP4S <ZAda>.S, { <Zn1>.S-<Zn2>.S }, <Zm>.S (fff1fe3c/80000210) */
|
---|
9818 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_s2x1(ZAda, Zn, N, Zm, M)
|
---|
9819 |
|
---|
9820 |
|
---|
9821 | /* FMOP4A <ZAda>.S, { <Zn1>.S-<Zn2>.S }, { <Zm1>.S-<Zm2>.S } (fff1fe3c/80100200) */
|
---|
9822 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_s2x2(ZAda, Zn, N, Zm, M)
|
---|
9823 |
|
---|
9824 |
|
---|
9825 | /* FMOP4S <ZAda>.S, { <Zn1>.S-<Zn2>.S }, { <Zm1>.S-<Zm2>.S } (fff1fe3c/80100210) */
|
---|
9826 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_s2x2(ZAda, Zn, N, Zm, M)
|
---|
9827 |
|
---|
9828 |
|
---|
9829 |
|
---|
9830 | /*
|
---|
9831 | *
|
---|
9832 | * Instruction Set & Groups: mortlach_f64f64_prod / mortlach_64bit_prod / sme / A64
|
---|
9833 | *
|
---|
9834 | */
|
---|
9835 |
|
---|
9836 | /* FMOPA <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.D, <Zm>.D (ffe00018/80c00000) */
|
---|
9837 | //#define IEM_INSTR_IMPL_A64__fmopa_za_pp_zz_64(ZAda, Zn, Pn, Pm, Zm)
|
---|
9838 |
|
---|
9839 |
|
---|
9840 | /* FMOPS <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.D, <Zm>.D (ffe00018/80c00010) */
|
---|
9841 | //#define IEM_INSTR_IMPL_A64__fmops_za_pp_zz_64(ZAda, Zn, Pn, Pm, Zm)
|
---|
9842 |
|
---|
9843 |
|
---|
9844 |
|
---|
9845 | /*
|
---|
9846 | *
|
---|
9847 | * Instruction Set & Groups: mortlach_f64f64_prod4 / mortlach2_64bit_prod4 / sme / A64
|
---|
9848 | *
|
---|
9849 | */
|
---|
9850 |
|
---|
9851 | /* FMOP4A <ZAda>.D, <Zn>.D, <Zm>.D (fff1fe38/80c00008) */
|
---|
9852 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_d1x1(ZAda, Zn, N, Zm, M)
|
---|
9853 |
|
---|
9854 |
|
---|
9855 | /* FMOP4S <ZAda>.D, <Zn>.D, <Zm>.D (fff1fe38/80c00018) */
|
---|
9856 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_d1x1(ZAda, Zn, N, Zm, M)
|
---|
9857 |
|
---|
9858 |
|
---|
9859 | /* FMOP4A <ZAda>.D, <Zn>.D, { <Zm1>.D-<Zm2>.D } (fff1fe38/80d00008) */
|
---|
9860 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_d1x2(ZAda, Zn, N, Zm, M)
|
---|
9861 |
|
---|
9862 |
|
---|
9863 | /* FMOP4S <ZAda>.D, <Zn>.D, { <Zm1>.D-<Zm2>.D } (fff1fe38/80d00018) */
|
---|
9864 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_d1x2(ZAda, Zn, N, Zm, M)
|
---|
9865 |
|
---|
9866 |
|
---|
9867 | /* FMOP4A <ZAda>.D, { <Zn1>.D-<Zn2>.D }, <Zm>.D (fff1fe38/80c00208) */
|
---|
9868 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_d2x1(ZAda, Zn, N, Zm, M)
|
---|
9869 |
|
---|
9870 |
|
---|
9871 | /* FMOP4S <ZAda>.D, { <Zn1>.D-<Zn2>.D }, <Zm>.D (fff1fe38/80c00218) */
|
---|
9872 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_d2x1(ZAda, Zn, N, Zm, M)
|
---|
9873 |
|
---|
9874 |
|
---|
9875 | /* FMOP4A <ZAda>.D, { <Zn1>.D-<Zn2>.D }, { <Zm1>.D-<Zm2>.D } (fff1fe38/80d00208) */
|
---|
9876 | //#define IEM_INSTR_IMPL_A64__fmop4a_za_zz_d2x2(ZAda, Zn, N, Zm, M)
|
---|
9877 |
|
---|
9878 |
|
---|
9879 | /* FMOP4S <ZAda>.D, { <Zn1>.D-<Zn2>.D }, { <Zm1>.D-<Zm2>.D } (fff1fe38/80d00218) */
|
---|
9880 | //#define IEM_INSTR_IMPL_A64__fmop4s_za_zz_d2x2(ZAda, Zn, N, Zm, M)
|
---|
9881 |
|
---|
9882 |
|
---|
9883 |
|
---|
9884 | /*
|
---|
9885 | *
|
---|
9886 | * Instruction Set & Groups: mortlach_f8f16_2in4ss_prod / mortlach2_ss_prod / sme / A64
|
---|
9887 | *
|
---|
9888 | */
|
---|
9889 |
|
---|
9890 | /* FTMOPA <ZAda>.H, { <Zn1>.B-<Zn2>.B }, <Zm>.B, <Zk>[<index>] (ffe0e00e/80600008) */
|
---|
9891 | //#define IEM_INSTR_IMPL_A64__ftmopa_za16_z8z8zi_b2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
9892 |
|
---|
9893 |
|
---|
9894 |
|
---|
9895 | /*
|
---|
9896 | *
|
---|
9897 | * Instruction Set & Groups: mortlach_f8f16_prod / mortlach2_misc_prod / sme / A64
|
---|
9898 | *
|
---|
9899 | */
|
---|
9900 |
|
---|
9901 | /* FMOPA <ZAda>.H, <Pn>/M, <Pm>/M, <Zn>.B, <Zm>.B (ffe0001e/80a00008) */
|
---|
9902 | //#define IEM_INSTR_IMPL_A64__fmopa_za16_pp_z8z8_8(ZAda, Zn, Pn, Pm, Zm)
|
---|
9903 |
|
---|
9904 |
|
---|
9905 |
|
---|
9906 | /*
|
---|
9907 | *
|
---|
9908 | * Instruction Set & Groups: mortlach_f8f16_prod4 / mortlach2_prod4 / sme / A64
|
---|
9909 | *
|
---|
9910 | */
|
---|
9911 |
|
---|
9912 | /* FMOP4A <ZAda>.H, <Zn>.B, <Zm>.B (fff1fe3e/80200008) */
|
---|
9913 | //#define IEM_INSTR_IMPL_A64__fmop4a_za16_z8z8_b1x1(ZAda, Zn, N, Zm, M)
|
---|
9914 |
|
---|
9915 |
|
---|
9916 | /* FMOP4A <ZAda>.H, <Zn>.B, { <Zm1>.B-<Zm2>.B } (fff1fe3e/80300008) */
|
---|
9917 | //#define IEM_INSTR_IMPL_A64__fmop4a_za16_z8z8_b1x2(ZAda, Zn, N, Zm, M)
|
---|
9918 |
|
---|
9919 |
|
---|
9920 | /* FMOP4A <ZAda>.H, { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff1fe3e/80200208) */
|
---|
9921 | //#define IEM_INSTR_IMPL_A64__fmop4a_za16_z8z8_b2x1(ZAda, Zn, N, Zm, M)
|
---|
9922 |
|
---|
9923 |
|
---|
9924 | /* FMOP4A <ZAda>.H, { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (fff1fe3e/80300208) */
|
---|
9925 | //#define IEM_INSTR_IMPL_A64__fmop4a_za16_z8z8_b2x2(ZAda, Zn, N, Zm, M)
|
---|
9926 |
|
---|
9927 |
|
---|
9928 |
|
---|
9929 | /*
|
---|
9930 | *
|
---|
9931 | * Instruction Set & Groups: mortlach_f8f32_2in4ss_prod / mortlach2_ss_prod / sme / A64
|
---|
9932 | *
|
---|
9933 | */
|
---|
9934 |
|
---|
9935 | /* FTMOPA <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B, <Zk>[<index>] (ffe0e00c/80600000) */
|
---|
9936 | //#define IEM_INSTR_IMPL_A64__ftmopa_za32_z8z8zi_b2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
9937 |
|
---|
9938 |
|
---|
9939 |
|
---|
9940 | /*
|
---|
9941 | *
|
---|
9942 | * Instruction Set & Groups: mortlach_f8f32_prod / mortlach_32bit_fp_prod / sme / A64
|
---|
9943 | *
|
---|
9944 | */
|
---|
9945 |
|
---|
9946 | /* FMOPA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.B, <Zm>.B (ffe0001c/80a00000) */
|
---|
9947 | //#define IEM_INSTR_IMPL_A64__fmopa_za32_pp_z8z8_8(ZAda, Zn, Pn, Pm, Zm)
|
---|
9948 |
|
---|
9949 |
|
---|
9950 |
|
---|
9951 | /*
|
---|
9952 | *
|
---|
9953 | * Instruction Set & Groups: mortlach_f8f32_prod4 / mortlach2_prod4 / sme / A64
|
---|
9954 | *
|
---|
9955 | */
|
---|
9956 |
|
---|
9957 | /* FMOP4A <ZAda>.S, <Zn>.B, <Zm>.B (fff1fe3c/80200000) */
|
---|
9958 | //#define IEM_INSTR_IMPL_A64__fmop4a_za32_z8z8_b1x1(ZAda, Zn, N, Zm, M)
|
---|
9959 |
|
---|
9960 |
|
---|
9961 | /* FMOP4A <ZAda>.S, <Zn>.B, { <Zm1>.B-<Zm2>.B } (fff1fe3c/80300000) */
|
---|
9962 | //#define IEM_INSTR_IMPL_A64__fmop4a_za32_z8z8_b1x2(ZAda, Zn, N, Zm, M)
|
---|
9963 |
|
---|
9964 |
|
---|
9965 | /* FMOP4A <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff1fe3c/80200200) */
|
---|
9966 | //#define IEM_INSTR_IMPL_A64__fmop4a_za32_z8z8_b2x1(ZAda, Zn, N, Zm, M)
|
---|
9967 |
|
---|
9968 |
|
---|
9969 | /* FMOP4A <ZAda>.S, { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (fff1fe3c/80300200) */
|
---|
9970 | //#define IEM_INSTR_IMPL_A64__fmop4a_za32_z8z8_b2x2(ZAda, Zn, N, Zm, M)
|
---|
9971 |
|
---|
9972 |
|
---|
9973 |
|
---|
9974 | /*
|
---|
9975 | *
|
---|
9976 | * Instruction Set & Groups: mortlach_i16i32_2in4ss_prod / mortlach2_ss_prod / sme / A64
|
---|
9977 | *
|
---|
9978 | */
|
---|
9979 |
|
---|
9980 | /* STMOPA <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H, <Zk>[<index>] (ffe0e00c/80408008) */
|
---|
9981 | //#define IEM_INSTR_IMPL_A64__stmopa_za32_zzzi_h2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
9982 |
|
---|
9983 |
|
---|
9984 | /* UTMOPA <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H, <Zk>[<index>] (ffe0e00c/81408008) */
|
---|
9985 | //#define IEM_INSTR_IMPL_A64__utmopa_za32_zzzi_h2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
9986 |
|
---|
9987 |
|
---|
9988 |
|
---|
9989 | /*
|
---|
9990 | *
|
---|
9991 | * Instruction Set & Groups: mortlach_i16i32_prod / mortlach_32bit_int_prod / sme / A64
|
---|
9992 | *
|
---|
9993 | */
|
---|
9994 |
|
---|
9995 | /* SMOPA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001c/a0800008) */
|
---|
9996 | //#define IEM_INSTR_IMPL_A64__smopa_za32_pp_zz_16(ZAda, Zn, Pn, Pm, Zm)
|
---|
9997 |
|
---|
9998 |
|
---|
9999 | /* UMOPA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001c/a1800008) */
|
---|
10000 | //#define IEM_INSTR_IMPL_A64__umopa_za32_pp_zz_16(ZAda, Zn, Pn, Pm, Zm)
|
---|
10001 |
|
---|
10002 |
|
---|
10003 | /* SMOPS <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001c/a0800018) */
|
---|
10004 | //#define IEM_INSTR_IMPL_A64__smops_za32_pp_zz_16(ZAda, Zn, Pn, Pm, Zm)
|
---|
10005 |
|
---|
10006 |
|
---|
10007 | /* UMOPS <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe0001c/a1800018) */
|
---|
10008 | //#define IEM_INSTR_IMPL_A64__umops_za32_pp_zz_16(ZAda, Zn, Pn, Pm, Zm)
|
---|
10009 |
|
---|
10010 |
|
---|
10011 |
|
---|
10012 | /*
|
---|
10013 | *
|
---|
10014 | * Instruction Set & Groups: mortlach_i16i32_prod4 / mortlach2_prod4 / sme / A64
|
---|
10015 | *
|
---|
10016 | */
|
---|
10017 |
|
---|
10018 | /* SMOP4A <ZAda>.S, <Zn>.H, <Zm>.H (fff1fe3c/80008008) */
|
---|
10019 | //#define IEM_INSTR_IMPL_A64__smop4a_za32_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10020 |
|
---|
10021 |
|
---|
10022 | /* UMOP4A <ZAda>.S, <Zn>.H, <Zm>.H (fff1fe3c/81008008) */
|
---|
10023 | //#define IEM_INSTR_IMPL_A64__umop4a_za32_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10024 |
|
---|
10025 |
|
---|
10026 | /* SMOP4S <ZAda>.S, <Zn>.H, <Zm>.H (fff1fe3c/80008018) */
|
---|
10027 | //#define IEM_INSTR_IMPL_A64__smop4s_za32_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10028 |
|
---|
10029 |
|
---|
10030 | /* UMOP4S <ZAda>.S, <Zn>.H, <Zm>.H (fff1fe3c/81008018) */
|
---|
10031 | //#define IEM_INSTR_IMPL_A64__umop4s_za32_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10032 |
|
---|
10033 |
|
---|
10034 | /* SMOP4A <ZAda>.S, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3c/80108008) */
|
---|
10035 | //#define IEM_INSTR_IMPL_A64__smop4a_za32_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10036 |
|
---|
10037 |
|
---|
10038 | /* UMOP4A <ZAda>.S, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81108008) */
|
---|
10039 | //#define IEM_INSTR_IMPL_A64__umop4a_za32_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10040 |
|
---|
10041 |
|
---|
10042 | /* SMOP4S <ZAda>.S, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3c/80108018) */
|
---|
10043 | //#define IEM_INSTR_IMPL_A64__smop4s_za32_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10044 |
|
---|
10045 |
|
---|
10046 | /* UMOP4S <ZAda>.S, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81108018) */
|
---|
10047 | //#define IEM_INSTR_IMPL_A64__umop4s_za32_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10048 |
|
---|
10049 |
|
---|
10050 | /* SMOP4A <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3c/80008208) */
|
---|
10051 | //#define IEM_INSTR_IMPL_A64__smop4a_za32_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10052 |
|
---|
10053 |
|
---|
10054 | /* UMOP4A <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3c/81008208) */
|
---|
10055 | //#define IEM_INSTR_IMPL_A64__umop4a_za32_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10056 |
|
---|
10057 |
|
---|
10058 | /* SMOP4S <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3c/80008218) */
|
---|
10059 | //#define IEM_INSTR_IMPL_A64__smop4s_za32_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10060 |
|
---|
10061 |
|
---|
10062 | /* UMOP4S <ZAda>.S, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe3c/81008218) */
|
---|
10063 | //#define IEM_INSTR_IMPL_A64__umop4s_za32_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10064 |
|
---|
10065 |
|
---|
10066 | /* SMOP4A <ZAda>.S, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3c/80108208) */
|
---|
10067 | //#define IEM_INSTR_IMPL_A64__smop4a_za32_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10068 |
|
---|
10069 |
|
---|
10070 | /* UMOP4A <ZAda>.S, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81108208) */
|
---|
10071 | //#define IEM_INSTR_IMPL_A64__umop4a_za32_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10072 |
|
---|
10073 |
|
---|
10074 | /* SMOP4S <ZAda>.S, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3c/80108218) */
|
---|
10075 | //#define IEM_INSTR_IMPL_A64__smop4s_za32_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10076 |
|
---|
10077 |
|
---|
10078 | /* UMOP4S <ZAda>.S, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe3c/81108218) */
|
---|
10079 | //#define IEM_INSTR_IMPL_A64__umop4s_za32_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10080 |
|
---|
10081 |
|
---|
10082 |
|
---|
10083 | /*
|
---|
10084 | *
|
---|
10085 | * Instruction Set & Groups: mortlach_i16i64_prod / mortlach_64bit_prod / sme / A64
|
---|
10086 | *
|
---|
10087 | */
|
---|
10088 |
|
---|
10089 | /* SMOPA <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe00018/a0c00000) */
|
---|
10090 | //#define IEM_INSTR_IMPL_A64__smopa_za_pp_zz_64(ZAda, Zn, Pn, Pm, Zm)
|
---|
10091 |
|
---|
10092 |
|
---|
10093 | /* SUMOPA <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe00018/a0e00000) */
|
---|
10094 | //#define IEM_INSTR_IMPL_A64__sumopa_za_pp_zz_64(ZAda, Zn, Pn, Pm, Zm)
|
---|
10095 |
|
---|
10096 |
|
---|
10097 | /* USMOPA <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe00018/a1c00000) */
|
---|
10098 | //#define IEM_INSTR_IMPL_A64__usmopa_za_pp_zz_64(ZAda, Zn, Pn, Pm, Zm)
|
---|
10099 |
|
---|
10100 |
|
---|
10101 | /* UMOPA <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe00018/a1e00000) */
|
---|
10102 | //#define IEM_INSTR_IMPL_A64__umopa_za_pp_zz_64(ZAda, Zn, Pn, Pm, Zm)
|
---|
10103 |
|
---|
10104 |
|
---|
10105 | /* SMOPS <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe00018/a0c00010) */
|
---|
10106 | //#define IEM_INSTR_IMPL_A64__smops_za_pp_zz_64(ZAda, Zn, Pn, Pm, Zm)
|
---|
10107 |
|
---|
10108 |
|
---|
10109 | /* SUMOPS <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe00018/a0e00010) */
|
---|
10110 | //#define IEM_INSTR_IMPL_A64__sumops_za_pp_zz_64(ZAda, Zn, Pn, Pm, Zm)
|
---|
10111 |
|
---|
10112 |
|
---|
10113 | /* USMOPS <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe00018/a1c00010) */
|
---|
10114 | //#define IEM_INSTR_IMPL_A64__usmops_za_pp_zz_64(ZAda, Zn, Pn, Pm, Zm)
|
---|
10115 |
|
---|
10116 |
|
---|
10117 | /* UMOPS <ZAda>.D, <Pn>/M, <Pm>/M, <Zn>.H, <Zm>.H (ffe00018/a1e00010) */
|
---|
10118 | //#define IEM_INSTR_IMPL_A64__umops_za_pp_zz_64(ZAda, Zn, Pn, Pm, Zm)
|
---|
10119 |
|
---|
10120 |
|
---|
10121 |
|
---|
10122 | /*
|
---|
10123 | *
|
---|
10124 | * Instruction Set & Groups: mortlach_i16i64_prod4 / mortlach2_64bit_prod4 / sme / A64
|
---|
10125 | *
|
---|
10126 | */
|
---|
10127 |
|
---|
10128 | /* SMOP4A <ZAda>.D, <Zn>.H, <Zm>.H (fff1fe38/a0c00008) */
|
---|
10129 | //#define IEM_INSTR_IMPL_A64__smop4a_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10130 |
|
---|
10131 |
|
---|
10132 | /* SUMOP4A <ZAda>.D, <Zn>.H, <Zm>.H (fff1fe38/a0e00008) */
|
---|
10133 | //#define IEM_INSTR_IMPL_A64__sumop4a_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10134 |
|
---|
10135 |
|
---|
10136 | /* USMOP4A <ZAda>.D, <Zn>.H, <Zm>.H (fff1fe38/a1c00008) */
|
---|
10137 | //#define IEM_INSTR_IMPL_A64__usmop4a_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10138 |
|
---|
10139 |
|
---|
10140 | /* UMOP4A <ZAda>.D, <Zn>.H, <Zm>.H (fff1fe38/a1e00008) */
|
---|
10141 | //#define IEM_INSTR_IMPL_A64__umop4a_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10142 |
|
---|
10143 |
|
---|
10144 | /* SMOP4S <ZAda>.D, <Zn>.H, <Zm>.H (fff1fe38/a0c00018) */
|
---|
10145 | //#define IEM_INSTR_IMPL_A64__smop4s_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10146 |
|
---|
10147 |
|
---|
10148 | /* SUMOP4S <ZAda>.D, <Zn>.H, <Zm>.H (fff1fe38/a0e00018) */
|
---|
10149 | //#define IEM_INSTR_IMPL_A64__sumop4s_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10150 |
|
---|
10151 |
|
---|
10152 | /* USMOP4S <ZAda>.D, <Zn>.H, <Zm>.H (fff1fe38/a1c00018) */
|
---|
10153 | //#define IEM_INSTR_IMPL_A64__usmop4s_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10154 |
|
---|
10155 |
|
---|
10156 | /* UMOP4S <ZAda>.D, <Zn>.H, <Zm>.H (fff1fe38/a1e00018) */
|
---|
10157 | //#define IEM_INSTR_IMPL_A64__umop4s_za_zz_h1x1(ZAda, Zn, N, Zm, M)
|
---|
10158 |
|
---|
10159 |
|
---|
10160 | /* SMOP4A <ZAda>.D, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe38/a0d00008) */
|
---|
10161 | //#define IEM_INSTR_IMPL_A64__smop4a_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10162 |
|
---|
10163 |
|
---|
10164 | /* SUMOP4A <ZAda>.D, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe38/a0f00008) */
|
---|
10165 | //#define IEM_INSTR_IMPL_A64__sumop4a_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10166 |
|
---|
10167 |
|
---|
10168 | /* USMOP4A <ZAda>.D, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe38/a1d00008) */
|
---|
10169 | //#define IEM_INSTR_IMPL_A64__usmop4a_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10170 |
|
---|
10171 |
|
---|
10172 | /* UMOP4A <ZAda>.D, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe38/a1f00008) */
|
---|
10173 | //#define IEM_INSTR_IMPL_A64__umop4a_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10174 |
|
---|
10175 |
|
---|
10176 | /* SMOP4S <ZAda>.D, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe38/a0d00018) */
|
---|
10177 | //#define IEM_INSTR_IMPL_A64__smop4s_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10178 |
|
---|
10179 |
|
---|
10180 | /* SUMOP4S <ZAda>.D, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe38/a0f00018) */
|
---|
10181 | //#define IEM_INSTR_IMPL_A64__sumop4s_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10182 |
|
---|
10183 |
|
---|
10184 | /* USMOP4S <ZAda>.D, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe38/a1d00018) */
|
---|
10185 | //#define IEM_INSTR_IMPL_A64__usmop4s_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10186 |
|
---|
10187 |
|
---|
10188 | /* UMOP4S <ZAda>.D, <Zn>.H, { <Zm1>.H-<Zm2>.H } (fff1fe38/a1f00018) */
|
---|
10189 | //#define IEM_INSTR_IMPL_A64__umop4s_za_zz_h1x2(ZAda, Zn, N, Zm, M)
|
---|
10190 |
|
---|
10191 |
|
---|
10192 | /* SMOP4A <ZAda>.D, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe38/a0c00208) */
|
---|
10193 | //#define IEM_INSTR_IMPL_A64__smop4a_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10194 |
|
---|
10195 |
|
---|
10196 | /* SUMOP4A <ZAda>.D, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe38/a0e00208) */
|
---|
10197 | //#define IEM_INSTR_IMPL_A64__sumop4a_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10198 |
|
---|
10199 |
|
---|
10200 | /* USMOP4A <ZAda>.D, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe38/a1c00208) */
|
---|
10201 | //#define IEM_INSTR_IMPL_A64__usmop4a_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10202 |
|
---|
10203 |
|
---|
10204 | /* UMOP4A <ZAda>.D, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe38/a1e00208) */
|
---|
10205 | //#define IEM_INSTR_IMPL_A64__umop4a_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10206 |
|
---|
10207 |
|
---|
10208 | /* SMOP4S <ZAda>.D, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe38/a0c00218) */
|
---|
10209 | //#define IEM_INSTR_IMPL_A64__smop4s_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10210 |
|
---|
10211 |
|
---|
10212 | /* SUMOP4S <ZAda>.D, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe38/a0e00218) */
|
---|
10213 | //#define IEM_INSTR_IMPL_A64__sumop4s_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10214 |
|
---|
10215 |
|
---|
10216 | /* USMOP4S <ZAda>.D, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe38/a1c00218) */
|
---|
10217 | //#define IEM_INSTR_IMPL_A64__usmop4s_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10218 |
|
---|
10219 |
|
---|
10220 | /* UMOP4S <ZAda>.D, { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff1fe38/a1e00218) */
|
---|
10221 | //#define IEM_INSTR_IMPL_A64__umop4s_za_zz_h2x1(ZAda, Zn, N, Zm, M)
|
---|
10222 |
|
---|
10223 |
|
---|
10224 | /* SMOP4A <ZAda>.D, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe38/a0d00208) */
|
---|
10225 | //#define IEM_INSTR_IMPL_A64__smop4a_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10226 |
|
---|
10227 |
|
---|
10228 | /* SUMOP4A <ZAda>.D, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe38/a0f00208) */
|
---|
10229 | //#define IEM_INSTR_IMPL_A64__sumop4a_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10230 |
|
---|
10231 |
|
---|
10232 | /* USMOP4A <ZAda>.D, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe38/a1d00208) */
|
---|
10233 | //#define IEM_INSTR_IMPL_A64__usmop4a_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10234 |
|
---|
10235 |
|
---|
10236 | /* UMOP4A <ZAda>.D, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe38/a1f00208) */
|
---|
10237 | //#define IEM_INSTR_IMPL_A64__umop4a_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10238 |
|
---|
10239 |
|
---|
10240 | /* SMOP4S <ZAda>.D, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe38/a0d00218) */
|
---|
10241 | //#define IEM_INSTR_IMPL_A64__smop4s_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10242 |
|
---|
10243 |
|
---|
10244 | /* SUMOP4S <ZAda>.D, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe38/a0f00218) */
|
---|
10245 | //#define IEM_INSTR_IMPL_A64__sumop4s_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10246 |
|
---|
10247 |
|
---|
10248 | /* USMOP4S <ZAda>.D, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe38/a1d00218) */
|
---|
10249 | //#define IEM_INSTR_IMPL_A64__usmop4s_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10250 |
|
---|
10251 |
|
---|
10252 | /* UMOP4S <ZAda>.D, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (fff1fe38/a1f00218) */
|
---|
10253 | //#define IEM_INSTR_IMPL_A64__umop4s_za_zz_h2x2(ZAda, Zn, N, Zm, M)
|
---|
10254 |
|
---|
10255 |
|
---|
10256 |
|
---|
10257 | /*
|
---|
10258 | *
|
---|
10259 | * Instruction Set & Groups: mortlach_i8i32_2in4ss_prod / mortlach2_ss_prod / sme / A64
|
---|
10260 | *
|
---|
10261 | */
|
---|
10262 |
|
---|
10263 | /* STMOPA <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B, <Zk>[<index>] (ffe0e00c/80408000) */
|
---|
10264 | //#define IEM_INSTR_IMPL_A64__stmopa_za_zzzi_b2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
10265 |
|
---|
10266 |
|
---|
10267 | /* SUTMOPA <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B, <Zk>[<index>] (ffe0e00c/80608000) */
|
---|
10268 | //#define IEM_INSTR_IMPL_A64__sutmopa_za_zzzi_b2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
10269 |
|
---|
10270 |
|
---|
10271 | /* USTMOPA <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B, <Zk>[<index>] (ffe0e00c/81408000) */
|
---|
10272 | //#define IEM_INSTR_IMPL_A64__ustmopa_za_zzzi_b2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
10273 |
|
---|
10274 |
|
---|
10275 | /* UTMOPA <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B, <Zk>[<index>] (ffe0e00c/81608000) */
|
---|
10276 | //#define IEM_INSTR_IMPL_A64__utmopa_za_zzzi_b2x1(ZAda, i2, Zn, Zk, K, Zm)
|
---|
10277 |
|
---|
10278 |
|
---|
10279 |
|
---|
10280 | /*
|
---|
10281 | *
|
---|
10282 | * Instruction Set & Groups: mortlach_i8i32_prod / mortlach_32bit_int_prod / sme / A64
|
---|
10283 | *
|
---|
10284 | */
|
---|
10285 |
|
---|
10286 | /* SMOPA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.B, <Zm>.B (ffe0001c/a0800000) */
|
---|
10287 | //#define IEM_INSTR_IMPL_A64__smopa_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
10288 |
|
---|
10289 |
|
---|
10290 | /* SUMOPA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.B, <Zm>.B (ffe0001c/a0a00000) */
|
---|
10291 | //#define IEM_INSTR_IMPL_A64__sumopa_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
10292 |
|
---|
10293 |
|
---|
10294 | /* USMOPA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.B, <Zm>.B (ffe0001c/a1800000) */
|
---|
10295 | //#define IEM_INSTR_IMPL_A64__usmopa_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
10296 |
|
---|
10297 |
|
---|
10298 | /* UMOPA <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.B, <Zm>.B (ffe0001c/a1a00000) */
|
---|
10299 | //#define IEM_INSTR_IMPL_A64__umopa_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
10300 |
|
---|
10301 |
|
---|
10302 | /* SMOPS <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.B, <Zm>.B (ffe0001c/a0800010) */
|
---|
10303 | //#define IEM_INSTR_IMPL_A64__smops_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
10304 |
|
---|
10305 |
|
---|
10306 | /* SUMOPS <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.B, <Zm>.B (ffe0001c/a0a00010) */
|
---|
10307 | //#define IEM_INSTR_IMPL_A64__sumops_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
10308 |
|
---|
10309 |
|
---|
10310 | /* USMOPS <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.B, <Zm>.B (ffe0001c/a1800010) */
|
---|
10311 | //#define IEM_INSTR_IMPL_A64__usmops_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
10312 |
|
---|
10313 |
|
---|
10314 | /* UMOPS <ZAda>.S, <Pn>/M, <Pm>/M, <Zn>.B, <Zm>.B (ffe0001c/a1a00010) */
|
---|
10315 | //#define IEM_INSTR_IMPL_A64__umops_za_pp_zz_32(ZAda, Zn, Pn, Pm, Zm)
|
---|
10316 |
|
---|
10317 |
|
---|
10318 |
|
---|
10319 | /*
|
---|
10320 | *
|
---|
10321 | * Instruction Set & Groups: mortlach_i8i32_prod4 / mortlach2_prod4 / sme / A64
|
---|
10322 | *
|
---|
10323 | */
|
---|
10324 |
|
---|
10325 | /* SMOP4A <ZAda>.S, <Zn>.B, <Zm>.B (fff1fe3c/80008000) */
|
---|
10326 | //#define IEM_INSTR_IMPL_A64__smop4a_za_zz_b1x1(ZAda, Zn, N, Zm, M)
|
---|
10327 |
|
---|
10328 |
|
---|
10329 | /* SUMOP4A <ZAda>.S, <Zn>.B, <Zm>.B (fff1fe3c/80208000) */
|
---|
10330 | //#define IEM_INSTR_IMPL_A64__sumop4a_za_zz_b1x1(ZAda, Zn, N, Zm, M)
|
---|
10331 |
|
---|
10332 |
|
---|
10333 | /* USMOP4A <ZAda>.S, <Zn>.B, <Zm>.B (fff1fe3c/81008000) */
|
---|
10334 | //#define IEM_INSTR_IMPL_A64__usmop4a_za_zz_b1x1(ZAda, Zn, N, Zm, M)
|
---|
10335 |
|
---|
10336 |
|
---|
10337 | /* UMOP4A <ZAda>.S, <Zn>.B, <Zm>.B (fff1fe3c/81208000) */
|
---|
10338 | //#define IEM_INSTR_IMPL_A64__umop4a_za_zz_b1x1(ZAda, Zn, N, Zm, M)
|
---|
10339 |
|
---|
10340 |
|
---|
10341 | /* SMOP4S <ZAda>.S, <Zn>.B, <Zm>.B (fff1fe3c/80008010) */
|
---|
10342 | //#define IEM_INSTR_IMPL_A64__smop4s_za_zz_b1x1(ZAda, Zn, N, Zm, M)
|
---|
10343 |
|
---|
10344 |
|
---|
10345 | /* SUMOP4S <ZAda>.S, <Zn>.B, <Zm>.B (fff1fe3c/80208010) */
|
---|
10346 | //#define IEM_INSTR_IMPL_A64__sumop4s_za_zz_b1x1(ZAda, Zn, N, Zm, M)
|
---|
10347 |
|
---|
10348 |
|
---|
10349 | /* USMOP4S <ZAda>.S, <Zn>.B, <Zm>.B (fff1fe3c/81008010) */
|
---|
10350 | //#define IEM_INSTR_IMPL_A64__usmop4s_za_zz_b1x1(ZAda, Zn, N, Zm, M)
|
---|
10351 |
|
---|
10352 |
|
---|
10353 | /* UMOP4S <ZAda>.S, <Zn>.B, <Zm>.B (fff1fe3c/81208010) */
|
---|
10354 | //#define IEM_INSTR_IMPL_A64__umop4s_za_zz_b1x1(ZAda, Zn, N, Zm, M)
|
---|
10355 |
|
---|
10356 |
|
---|
10357 | /* SMOP4A <ZAda>.S, <Zn>.B, { <Zm1>.B-<Zm2>.B } (fff1fe3c/80108000) */
|
---|
10358 | //#define IEM_INSTR_IMPL_A64__smop4a_za_zz_b1x2(ZAda, Zn, N, Zm, M)
|
---|
10359 |
|
---|
10360 |
|
---|
10361 | /* SUMOP4A <ZAda>.S, <Zn>.B, { <Zm1>.B-<Zm2>.B } (fff1fe3c/80308000) */
|
---|
10362 | //#define IEM_INSTR_IMPL_A64__sumop4a_za_zz_b1x2(ZAda, Zn, N, Zm, M)
|
---|
10363 |
|
---|
10364 |
|
---|
10365 | /* USMOP4A <ZAda>.S, <Zn>.B, { <Zm1>.B-<Zm2>.B } (fff1fe3c/81108000) */
|
---|
10366 | //#define IEM_INSTR_IMPL_A64__usmop4a_za_zz_b1x2(ZAda, Zn, N, Zm, M)
|
---|
10367 |
|
---|
10368 |
|
---|
10369 | /* UMOP4A <ZAda>.S, <Zn>.B, { <Zm1>.B-<Zm2>.B } (fff1fe3c/81308000) */
|
---|
10370 | //#define IEM_INSTR_IMPL_A64__umop4a_za_zz_b1x2(ZAda, Zn, N, Zm, M)
|
---|
10371 |
|
---|
10372 |
|
---|
10373 | /* SMOP4S <ZAda>.S, <Zn>.B, { <Zm1>.B-<Zm2>.B } (fff1fe3c/80108010) */
|
---|
10374 | //#define IEM_INSTR_IMPL_A64__smop4s_za_zz_b1x2(ZAda, Zn, N, Zm, M)
|
---|
10375 |
|
---|
10376 |
|
---|
10377 | /* SUMOP4S <ZAda>.S, <Zn>.B, { <Zm1>.B-<Zm2>.B } (fff1fe3c/80308010) */
|
---|
10378 | //#define IEM_INSTR_IMPL_A64__sumop4s_za_zz_b1x2(ZAda, Zn, N, Zm, M)
|
---|
10379 |
|
---|
10380 |
|
---|
10381 | /* USMOP4S <ZAda>.S, <Zn>.B, { <Zm1>.B-<Zm2>.B } (fff1fe3c/81108010) */
|
---|
10382 | //#define IEM_INSTR_IMPL_A64__usmop4s_za_zz_b1x2(ZAda, Zn, N, Zm, M)
|
---|
10383 |
|
---|
10384 |
|
---|
10385 | /* UMOP4S <ZAda>.S, <Zn>.B, { <Zm1>.B-<Zm2>.B } (fff1fe3c/81308010) */
|
---|
10386 | //#define IEM_INSTR_IMPL_A64__umop4s_za_zz_b1x2(ZAda, Zn, N, Zm, M)
|
---|
10387 |
|
---|
10388 |
|
---|
10389 | /* SMOP4A <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff1fe3c/80008200) */
|
---|
10390 | //#define IEM_INSTR_IMPL_A64__smop4a_za_zz_b2x1(ZAda, Zn, N, Zm, M)
|
---|
10391 |
|
---|
10392 |
|
---|
10393 | /* SUMOP4A <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff1fe3c/80208200) */
|
---|
10394 | //#define IEM_INSTR_IMPL_A64__sumop4a_za_zz_b2x1(ZAda, Zn, N, Zm, M)
|
---|
10395 |
|
---|
10396 |
|
---|
10397 | /* USMOP4A <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff1fe3c/81008200) */
|
---|
10398 | //#define IEM_INSTR_IMPL_A64__usmop4a_za_zz_b2x1(ZAda, Zn, N, Zm, M)
|
---|
10399 |
|
---|
10400 |
|
---|
10401 | /* UMOP4A <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff1fe3c/81208200) */
|
---|
10402 | //#define IEM_INSTR_IMPL_A64__umop4a_za_zz_b2x1(ZAda, Zn, N, Zm, M)
|
---|
10403 |
|
---|
10404 |
|
---|
10405 | /* SMOP4S <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff1fe3c/80008210) */
|
---|
10406 | //#define IEM_INSTR_IMPL_A64__smop4s_za_zz_b2x1(ZAda, Zn, N, Zm, M)
|
---|
10407 |
|
---|
10408 |
|
---|
10409 | /* SUMOP4S <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff1fe3c/80208210) */
|
---|
10410 | //#define IEM_INSTR_IMPL_A64__sumop4s_za_zz_b2x1(ZAda, Zn, N, Zm, M)
|
---|
10411 |
|
---|
10412 |
|
---|
10413 | /* USMOP4S <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff1fe3c/81008210) */
|
---|
10414 | //#define IEM_INSTR_IMPL_A64__usmop4s_za_zz_b2x1(ZAda, Zn, N, Zm, M)
|
---|
10415 |
|
---|
10416 |
|
---|
10417 | /* UMOP4S <ZAda>.S, { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff1fe3c/81208210) */
|
---|
10418 | //#define IEM_INSTR_IMPL_A64__umop4s_za_zz_b2x1(ZAda, Zn, N, Zm, M)
|
---|
10419 |
|
---|
10420 |
|
---|
10421 | /* SMOP4A <ZAda>.S, { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (fff1fe3c/80108200) */
|
---|
10422 | //#define IEM_INSTR_IMPL_A64__smop4a_za_zz_b2x2(ZAda, Zn, N, Zm, M)
|
---|
10423 |
|
---|
10424 |
|
---|
10425 | /* SUMOP4A <ZAda>.S, { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (fff1fe3c/80308200) */
|
---|
10426 | //#define IEM_INSTR_IMPL_A64__sumop4a_za_zz_b2x2(ZAda, Zn, N, Zm, M)
|
---|
10427 |
|
---|
10428 |
|
---|
10429 | /* USMOP4A <ZAda>.S, { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (fff1fe3c/81108200) */
|
---|
10430 | //#define IEM_INSTR_IMPL_A64__usmop4a_za_zz_b2x2(ZAda, Zn, N, Zm, M)
|
---|
10431 |
|
---|
10432 |
|
---|
10433 | /* UMOP4A <ZAda>.S, { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (fff1fe3c/81308200) */
|
---|
10434 | //#define IEM_INSTR_IMPL_A64__umop4a_za_zz_b2x2(ZAda, Zn, N, Zm, M)
|
---|
10435 |
|
---|
10436 |
|
---|
10437 | /* SMOP4S <ZAda>.S, { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (fff1fe3c/80108210) */
|
---|
10438 | //#define IEM_INSTR_IMPL_A64__smop4s_za_zz_b2x2(ZAda, Zn, N, Zm, M)
|
---|
10439 |
|
---|
10440 |
|
---|
10441 | /* SUMOP4S <ZAda>.S, { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (fff1fe3c/80308210) */
|
---|
10442 | //#define IEM_INSTR_IMPL_A64__sumop4s_za_zz_b2x2(ZAda, Zn, N, Zm, M)
|
---|
10443 |
|
---|
10444 |
|
---|
10445 | /* USMOP4S <ZAda>.S, { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (fff1fe3c/81108210) */
|
---|
10446 | //#define IEM_INSTR_IMPL_A64__usmop4s_za_zz_b2x2(ZAda, Zn, N, Zm, M)
|
---|
10447 |
|
---|
10448 |
|
---|
10449 | /* UMOP4S <ZAda>.S, { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (fff1fe3c/81308210) */
|
---|
10450 | //#define IEM_INSTR_IMPL_A64__umop4s_za_zz_b2x2(ZAda, Zn, N, Zm, M)
|
---|
10451 |
|
---|
10452 |
|
---|
10453 |
|
---|
10454 | /*
|
---|
10455 | *
|
---|
10456 | * Instruction Set & Groups: mortlach_insert_pred / mortlach_ins / sme / A64
|
---|
10457 | *
|
---|
10458 | */
|
---|
10459 |
|
---|
10460 | /* MOVA ZA0<HV>.B[<Ws>, <offs>], <Pg>/M, <Zn>.B (ffff0010/c0000000) */
|
---|
10461 | //#define IEM_INSTR_IMPL_A64__mova_za_p_rz_b(off4, Zn, Pg, Rs, V)
|
---|
10462 |
|
---|
10463 |
|
---|
10464 | /* MOVA <ZAd><HV>.H[<Ws>, <offs>], <Pg>/M, <Zn>.H (ffff0010/c0400000) */
|
---|
10465 | //#define IEM_INSTR_IMPL_A64__mova_za_p_rz_h(off3, ZAd, Zn, Pg, Rs, V)
|
---|
10466 |
|
---|
10467 |
|
---|
10468 | /* MOVA <ZAd><HV>.S[<Ws>, <offs>], <Pg>/M, <Zn>.S (ffff0010/c0800000) */
|
---|
10469 | //#define IEM_INSTR_IMPL_A64__mova_za_p_rz_w(off2, ZAd, Zn, Pg, Rs, V)
|
---|
10470 |
|
---|
10471 |
|
---|
10472 | /* MOVA <ZAd><HV>.D[<Ws>, <offs>], <Pg>/M, <Zn>.D (ffff0010/c0c00000) */
|
---|
10473 | //#define IEM_INSTR_IMPL_A64__mova_za_p_rz_d(o1, ZAd, Zn, Pg, Rs, V)
|
---|
10474 |
|
---|
10475 |
|
---|
10476 | /* MOVA <ZAd><HV>.Q[<Ws>, <offs>], <Pg>/M, <Zn>.Q (ffff0010/c0c10000) */
|
---|
10477 | //#define IEM_INSTR_IMPL_A64__mova_za_p_rz_q(ZAd, Zn, Pg, Rs, V)
|
---|
10478 |
|
---|
10479 |
|
---|
10480 |
|
---|
10481 | /*
|
---|
10482 | *
|
---|
10483 | * Instruction Set & Groups: mortlach_insert_zt / mortlach_mov_zt / sme / A64
|
---|
10484 | *
|
---|
10485 | */
|
---|
10486 |
|
---|
10487 | /* MOVT ZT0[<offs>], <Xt> (ffff8fe0/c04e03e0) */
|
---|
10488 | //#define IEM_INSTR_IMPL_A64__movt_zt_r(Rt, off3)
|
---|
10489 |
|
---|
10490 |
|
---|
10491 |
|
---|
10492 | /*
|
---|
10493 | *
|
---|
10494 | * Instruction Set & Groups: mortlach_move_to_zt / mortlach_mov_zt / sme / A64
|
---|
10495 | *
|
---|
10496 | */
|
---|
10497 |
|
---|
10498 | /* MOVT ZT0{[<offs>, MUL VL]}, <Zt> (ffffcfe0/c04f03e0) */
|
---|
10499 | //#define IEM_INSTR_IMPL_A64__movt_zt_z(Zt, off2)
|
---|
10500 |
|
---|
10501 |
|
---|
10502 |
|
---|
10503 | /*
|
---|
10504 | *
|
---|
10505 | * Instruction Set & Groups: mortlach_multi1_fma_long_idx / mortlach_multi_indexed_1 / sme / A64
|
---|
10506 | *
|
---|
10507 | */
|
---|
10508 |
|
---|
10509 | /* BFMLAL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H[<index>] (fff01018/c1801010) */
|
---|
10510 | //#define IEM_INSTR_IMPL_A64__bfmlal_za_zzi_1(off3, S, Zn, i3l, Rv, i3h, Zm)
|
---|
10511 |
|
---|
10512 |
|
---|
10513 | /* FMLAL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H[<index>] (fff01018/c1801000) */
|
---|
10514 | //#define IEM_INSTR_IMPL_A64__fmlal_za_zzi_1(off3, S, Zn, i3l, Rv, i3h, Zm)
|
---|
10515 |
|
---|
10516 |
|
---|
10517 | /* BFMLSL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H[<index>] (fff01018/c1801018) */
|
---|
10518 | //#define IEM_INSTR_IMPL_A64__bfmlsl_za_zzi_1(off3, S, Zn, i3l, Rv, i3h, Zm)
|
---|
10519 |
|
---|
10520 |
|
---|
10521 | /* FMLSL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H[<index>] (fff01018/c1801008) */
|
---|
10522 | //#define IEM_INSTR_IMPL_A64__fmlsl_za_zzi_1(off3, S, Zn, i3l, Rv, i3h, Zm)
|
---|
10523 |
|
---|
10524 |
|
---|
10525 |
|
---|
10526 | /*
|
---|
10527 | *
|
---|
10528 | * Instruction Set & Groups: mortlach_multi1_fp8_fma_long_idx / mortlach_multi_indexed_1 / sme / A64
|
---|
10529 | *
|
---|
10530 | */
|
---|
10531 |
|
---|
10532 | /* FMLAL ZA.H[<Wv>, <offs1>:<offs2>], <Zn>.B, <Zm>.B[<index>] (fff01010/c1c00000) */
|
---|
10533 | //#define IEM_INSTR_IMPL_A64__fmlal_za_z8z8i_1(off3, i4C, Zn, i4B, Rv, i4A, Zm)
|
---|
10534 |
|
---|
10535 |
|
---|
10536 |
|
---|
10537 | /*
|
---|
10538 | *
|
---|
10539 | * Instruction Set & Groups: mortlach_multi1_fp8_fma_long_long_idx / mortlach_multi_indexed_1 / sme / A64
|
---|
10540 | *
|
---|
10541 | */
|
---|
10542 |
|
---|
10543 | /* FMLALL ZA.S[<Wv>, <offs1>:<offs4>], <Zn>.B, <Zm>.B[<index>] (fff0001c/c1400000) */
|
---|
10544 | //#define IEM_INSTR_IMPL_A64__fmlall_za32_z8z8i_1(off2, Zn, i4l, Rv, i4h, Zm)
|
---|
10545 |
|
---|
10546 |
|
---|
10547 |
|
---|
10548 | /*
|
---|
10549 | *
|
---|
10550 | * Instruction Set & Groups: mortlach_multi1_mla_long_idx / mortlach_multi_indexed_1 / sme / A64
|
---|
10551 | *
|
---|
10552 | */
|
---|
10553 |
|
---|
10554 | /* SMLAL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H[<index>] (fff01018/c1c01000) */
|
---|
10555 | //#define IEM_INSTR_IMPL_A64__smlal_za_zzi_1(off3, S, U, Zn, i3l, Rv, i3h, Zm)
|
---|
10556 |
|
---|
10557 |
|
---|
10558 | /* SMLSL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H[<index>] (fff01018/c1c01008) */
|
---|
10559 | //#define IEM_INSTR_IMPL_A64__smlsl_za_zzi_1(off3, S, U, Zn, i3l, Rv, i3h, Zm)
|
---|
10560 |
|
---|
10561 |
|
---|
10562 | /* UMLAL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H[<index>] (fff01018/c1c01010) */
|
---|
10563 | //#define IEM_INSTR_IMPL_A64__umlal_za_zzi_1(off3, S, U, Zn, i3l, Rv, i3h, Zm)
|
---|
10564 |
|
---|
10565 |
|
---|
10566 | /* UMLSL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H[<index>] (fff01018/c1c01018) */
|
---|
10567 | //#define IEM_INSTR_IMPL_A64__umlsl_za_zzi_1(off3, S, U, Zn, i3l, Rv, i3h, Zm)
|
---|
10568 |
|
---|
10569 |
|
---|
10570 |
|
---|
10571 | /*
|
---|
10572 | *
|
---|
10573 | * Instruction Set & Groups: mortlach_multi1_mla_long_long_idx_d / mortlach_multi_indexed_1 / sme / A64
|
---|
10574 | *
|
---|
10575 | */
|
---|
10576 |
|
---|
10577 | /* SMLALL ZA.D[<Wv>, <offs1>:<offs4>], <Zn>.H, <Zm>.H[<index>] (fff0101c/c1800000) */
|
---|
10578 | //#define IEM_INSTR_IMPL_A64__smlall_za_zzi_d(off2, S, U, Zn, i3l, Rv, i3h, Zm)
|
---|
10579 |
|
---|
10580 |
|
---|
10581 | /* SMLSLL ZA.D[<Wv>, <offs1>:<offs4>], <Zn>.H, <Zm>.H[<index>] (fff0101c/c1800008) */
|
---|
10582 | //#define IEM_INSTR_IMPL_A64__smlsll_za_zzi_d(off2, S, U, Zn, i3l, Rv, i3h, Zm)
|
---|
10583 |
|
---|
10584 |
|
---|
10585 | /* UMLALL ZA.D[<Wv>, <offs1>:<offs4>], <Zn>.H, <Zm>.H[<index>] (fff0101c/c1800010) */
|
---|
10586 | //#define IEM_INSTR_IMPL_A64__umlall_za_zzi_d(off2, S, U, Zn, i3l, Rv, i3h, Zm)
|
---|
10587 |
|
---|
10588 |
|
---|
10589 | /* UMLSLL ZA.D[<Wv>, <offs1>:<offs4>], <Zn>.H, <Zm>.H[<index>] (fff0101c/c1800018) */
|
---|
10590 | //#define IEM_INSTR_IMPL_A64__umlsll_za_zzi_d(off2, S, U, Zn, i3l, Rv, i3h, Zm)
|
---|
10591 |
|
---|
10592 |
|
---|
10593 |
|
---|
10594 | /*
|
---|
10595 | *
|
---|
10596 | * Instruction Set & Groups: mortlach_multi1_mla_long_long_idx_s / mortlach_multi_indexed_1 / sme / A64
|
---|
10597 | *
|
---|
10598 | */
|
---|
10599 |
|
---|
10600 | /* SMLALL ZA.S[<Wv>, <offs1>:<offs4>], <Zn>.B, <Zm>.B[<index>] (fff0001c/c1000000) */
|
---|
10601 | //#define IEM_INSTR_IMPL_A64__smlall_za_zzi_s(off2, S, U, Zn, i4l, Rv, i4h, Zm)
|
---|
10602 |
|
---|
10603 |
|
---|
10604 | /* USMLALL ZA.S[<Wv>, <offs1>:<offs4>], <Zn>.B, <Zm>.B[<index>] (fff0001c/c1000004) */
|
---|
10605 | //#define IEM_INSTR_IMPL_A64__usmlall_za_zzi_s(off2, U, Zn, i4l, Rv, i4h, Zm)
|
---|
10606 |
|
---|
10607 |
|
---|
10608 | /* SMLSLL ZA.S[<Wv>, <offs1>:<offs4>], <Zn>.B, <Zm>.B[<index>] (fff0001c/c1000008) */
|
---|
10609 | //#define IEM_INSTR_IMPL_A64__smlsll_za_zzi_s(off2, S, U, Zn, i4l, Rv, i4h, Zm)
|
---|
10610 |
|
---|
10611 |
|
---|
10612 | /* UMLALL ZA.S[<Wv>, <offs1>:<offs4>], <Zn>.B, <Zm>.B[<index>] (fff0001c/c1000010) */
|
---|
10613 | //#define IEM_INSTR_IMPL_A64__umlall_za_zzi_s(off2, S, U, Zn, i4l, Rv, i4h, Zm)
|
---|
10614 |
|
---|
10615 |
|
---|
10616 | /* SUMLALL ZA.S[<Wv>, <offs1>:<offs4>], <Zn>.B, <Zm>.B[<index>] (fff0001c/c1000014) */
|
---|
10617 | //#define IEM_INSTR_IMPL_A64__sumlall_za_zzi_s(off2, U, Zn, i4l, Rv, i4h, Zm)
|
---|
10618 |
|
---|
10619 |
|
---|
10620 | /* UMLSLL ZA.S[<Wv>, <offs1>:<offs4>], <Zn>.B, <Zm>.B[<index>] (fff0001c/c1000018) */
|
---|
10621 | //#define IEM_INSTR_IMPL_A64__umlsll_za_zzi_s(off2, S, U, Zn, i4l, Rv, i4h, Zm)
|
---|
10622 |
|
---|
10623 |
|
---|
10624 |
|
---|
10625 | /*
|
---|
10626 | *
|
---|
10627 | * Instruction Set & Groups: mortlach_multi1_zz_za_fma_long_sm / mortlach_multi_array_1a / sme / A64
|
---|
10628 | *
|
---|
10629 | */
|
---|
10630 |
|
---|
10631 | /* BFMLAL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H (fff09c18/c1200c10) */
|
---|
10632 | //#define IEM_INSTR_IMPL_A64__bfmlal_za_zzv_1(off3, S, Zn, Rv, Zm)
|
---|
10633 |
|
---|
10634 |
|
---|
10635 | /* FMLAL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H (fff09c18/c1200c00) */
|
---|
10636 | //#define IEM_INSTR_IMPL_A64__fmlal_za_zzv_1(off3, S, Zn, Rv, Zm)
|
---|
10637 |
|
---|
10638 |
|
---|
10639 | /* BFMLSL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H (fff09c18/c1200c18) */
|
---|
10640 | //#define IEM_INSTR_IMPL_A64__bfmlsl_za_zzv_1(off3, S, Zn, Rv, Zm)
|
---|
10641 |
|
---|
10642 |
|
---|
10643 | /* FMLSL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H (fff09c18/c1200c08) */
|
---|
10644 | //#define IEM_INSTR_IMPL_A64__fmlsl_za_zzv_1(off3, S, Zn, Rv, Zm)
|
---|
10645 |
|
---|
10646 |
|
---|
10647 |
|
---|
10648 | /*
|
---|
10649 | *
|
---|
10650 | * Instruction Set & Groups: mortlach_multi1_zz_za_fp8_fma_long_long_sm / mortlach_multi_array_1b / sme / A64
|
---|
10651 | *
|
---|
10652 | */
|
---|
10653 |
|
---|
10654 | /* FMLALL ZA.S[<Wv>, <offs1>:<offs4>], <Zn>.B, <Zm>.B (fff09c1c/c1300400) */
|
---|
10655 | //#define IEM_INSTR_IMPL_A64__fmlall_za32_z8z8v_1(off2, Zn, Rv, Zm)
|
---|
10656 |
|
---|
10657 |
|
---|
10658 |
|
---|
10659 | /*
|
---|
10660 | *
|
---|
10661 | * Instruction Set & Groups: mortlach_multi1_zz_za_fp8_fma_long_sm / mortlach_multi_array_1b / sme / A64
|
---|
10662 | *
|
---|
10663 | */
|
---|
10664 |
|
---|
10665 | /* FMLAL ZA.H[<Wv>, <offs1>:<offs2>], <Zn>.B, <Zm>.B (fff09c18/c1300c00) */
|
---|
10666 | //#define IEM_INSTR_IMPL_A64__fmlal_za_z8z8v_1(off3, Zn, Rv, Zm)
|
---|
10667 |
|
---|
10668 |
|
---|
10669 |
|
---|
10670 | /*
|
---|
10671 | *
|
---|
10672 | * Instruction Set & Groups: mortlach_multi1_zz_za_mla_long_long_sm / mortlach_multi_array_1a / sme / A64
|
---|
10673 | *
|
---|
10674 | */
|
---|
10675 |
|
---|
10676 | /* SMLALL ZA.<T>[<Wv>, <offs1>:<offs4>], <Zn>.<Tb>, <Zm>.<Tb> (ffb09c1c/c1200400) */
|
---|
10677 | //#define IEM_INSTR_IMPL_A64__smlall_za_zzv_1(off2, S, U, Zn, Rv, Zm, sz)
|
---|
10678 |
|
---|
10679 |
|
---|
10680 | /* USMLALL ZA.S[<Wv>, <offs1>:<offs4>], <Zn>.B, <Zm>.B (fff09c1c/c1200404) */
|
---|
10681 | //#define IEM_INSTR_IMPL_A64__usmlall_za_zzv_s(off2, Zn, Rv, Zm)
|
---|
10682 |
|
---|
10683 |
|
---|
10684 | /* SMLSLL ZA.<T>[<Wv>, <offs1>:<offs4>], <Zn>.<Tb>, <Zm>.<Tb> (ffb09c1c/c1200408) */
|
---|
10685 | //#define IEM_INSTR_IMPL_A64__smlsll_za_zzv_1(off2, S, U, Zn, Rv, Zm, sz)
|
---|
10686 |
|
---|
10687 |
|
---|
10688 | /* UMLALL ZA.<T>[<Wv>, <offs1>:<offs4>], <Zn>.<Tb>, <Zm>.<Tb> (ffb09c1c/c1200410) */
|
---|
10689 | //#define IEM_INSTR_IMPL_A64__umlall_za_zzv_1(off2, S, U, Zn, Rv, Zm, sz)
|
---|
10690 |
|
---|
10691 |
|
---|
10692 | /* UMLSLL ZA.<T>[<Wv>, <offs1>:<offs4>], <Zn>.<Tb>, <Zm>.<Tb> (ffb09c1c/c1200418) */
|
---|
10693 | //#define IEM_INSTR_IMPL_A64__umlsll_za_zzv_1(off2, S, U, Zn, Rv, Zm, sz)
|
---|
10694 |
|
---|
10695 |
|
---|
10696 |
|
---|
10697 | /*
|
---|
10698 | *
|
---|
10699 | * Instruction Set & Groups: mortlach_multi1_zz_za_mla_long_sm / mortlach_multi_array_1a / sme / A64
|
---|
10700 | *
|
---|
10701 | */
|
---|
10702 |
|
---|
10703 | /* SMLAL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H (fff09c18/c1600c00) */
|
---|
10704 | //#define IEM_INSTR_IMPL_A64__smlal_za_zzv_1(off3, S, U, Zn, Rv, Zm)
|
---|
10705 |
|
---|
10706 |
|
---|
10707 | /* SMLSL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H (fff09c18/c1600c08) */
|
---|
10708 | //#define IEM_INSTR_IMPL_A64__smlsl_za_zzv_1(off3, S, U, Zn, Rv, Zm)
|
---|
10709 |
|
---|
10710 |
|
---|
10711 | /* UMLAL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H (fff09c18/c1600c10) */
|
---|
10712 | //#define IEM_INSTR_IMPL_A64__umlal_za_zzv_1(off3, S, U, Zn, Rv, Zm)
|
---|
10713 |
|
---|
10714 |
|
---|
10715 | /* UMLSL ZA.S[<Wv>, <offs1>:<offs2>], <Zn>.H, <Zm>.H (fff09c18/c1600c18) */
|
---|
10716 | //#define IEM_INSTR_IMPL_A64__umlsl_za_zzv_1(off3, S, U, Zn, Rv, Zm)
|
---|
10717 |
|
---|
10718 |
|
---|
10719 |
|
---|
10720 | /*
|
---|
10721 | *
|
---|
10722 | * Instruction Set & Groups: mortlach_multi2_clamp_int / mortlach_multi_sve_3 / sme / A64
|
---|
10723 | *
|
---|
10724 | */
|
---|
10725 |
|
---|
10726 | /* SCLAMP { <Zd1>.<T>-<Zd2>.<T> }, <Zn>.<T>, <Zm>.<T> (ff20fc01/c120c400) */
|
---|
10727 | //#define IEM_INSTR_IMPL_A64__sclamp_mz_zz_2(U, Zd, Zn, Zm, size)
|
---|
10728 |
|
---|
10729 |
|
---|
10730 | /* UCLAMP { <Zd1>.<T>-<Zd2>.<T> }, <Zn>.<T>, <Zm>.<T> (ff20fc01/c120c401) */
|
---|
10731 | //#define IEM_INSTR_IMPL_A64__uclamp_mz_zz_2(U, Zd, Zn, Zm, size)
|
---|
10732 |
|
---|
10733 |
|
---|
10734 |
|
---|
10735 | /*
|
---|
10736 | *
|
---|
10737 | * Instruction Set & Groups: mortlach_multi2_cld_cldnt_si_ctg / mortlach_multi_mem_ctg / sme / A64
|
---|
10738 | *
|
---|
10739 | */
|
---|
10740 |
|
---|
10741 | /* LD1B { <Zt1>.B-<Zt2>.B }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0400000) */
|
---|
10742 | //#define IEM_INSTR_IMPL_A64__ld1b_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10743 |
|
---|
10744 |
|
---|
10745 | /* LDNT1B { <Zt1>.B-<Zt2>.B }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0400001) */
|
---|
10746 | //#define IEM_INSTR_IMPL_A64__ldnt1b_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10747 |
|
---|
10748 |
|
---|
10749 | /* LD1H { <Zt1>.H-<Zt2>.H }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0402000) */
|
---|
10750 | //#define IEM_INSTR_IMPL_A64__ld1h_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10751 |
|
---|
10752 |
|
---|
10753 | /* LDNT1H { <Zt1>.H-<Zt2>.H }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0402001) */
|
---|
10754 | //#define IEM_INSTR_IMPL_A64__ldnt1h_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10755 |
|
---|
10756 |
|
---|
10757 | /* LD1W { <Zt1>.S-<Zt2>.S }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0404000) */
|
---|
10758 | //#define IEM_INSTR_IMPL_A64__ld1w_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10759 |
|
---|
10760 |
|
---|
10761 | /* LDNT1W { <Zt1>.S-<Zt2>.S }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0404001) */
|
---|
10762 | //#define IEM_INSTR_IMPL_A64__ldnt1w_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10763 |
|
---|
10764 |
|
---|
10765 | /* LD1D { <Zt1>.D-<Zt2>.D }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0406000) */
|
---|
10766 | //#define IEM_INSTR_IMPL_A64__ld1d_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10767 |
|
---|
10768 |
|
---|
10769 | /* LDNT1D { <Zt1>.D-<Zt2>.D }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0406001) */
|
---|
10770 | //#define IEM_INSTR_IMPL_A64__ldnt1d_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10771 |
|
---|
10772 |
|
---|
10773 |
|
---|
10774 | /*
|
---|
10775 | *
|
---|
10776 | * Instruction Set & Groups: mortlach_multi2_cld_cldnt_si_nctg / mortlach_multi_mem_nctg / sme / A64
|
---|
10777 | *
|
---|
10778 | */
|
---|
10779 |
|
---|
10780 | /* LD1B { <Zt1>.B, <Zt2>.B }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1400000) */
|
---|
10781 | //#define IEM_INSTR_IMPL_A64__ld1b_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10782 |
|
---|
10783 |
|
---|
10784 | /* LDNT1B { <Zt1>.B, <Zt2>.B }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1400008) */
|
---|
10785 | //#define IEM_INSTR_IMPL_A64__ldnt1b_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10786 |
|
---|
10787 |
|
---|
10788 | /* LD1H { <Zt1>.H, <Zt2>.H }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1402000) */
|
---|
10789 | //#define IEM_INSTR_IMPL_A64__ld1h_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10790 |
|
---|
10791 |
|
---|
10792 | /* LDNT1H { <Zt1>.H, <Zt2>.H }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1402008) */
|
---|
10793 | //#define IEM_INSTR_IMPL_A64__ldnt1h_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10794 |
|
---|
10795 |
|
---|
10796 | /* LD1W { <Zt1>.S, <Zt2>.S }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1404000) */
|
---|
10797 | //#define IEM_INSTR_IMPL_A64__ld1w_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10798 |
|
---|
10799 |
|
---|
10800 | /* LDNT1W { <Zt1>.S, <Zt2>.S }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1404008) */
|
---|
10801 | //#define IEM_INSTR_IMPL_A64__ldnt1w_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10802 |
|
---|
10803 |
|
---|
10804 | /* LD1D { <Zt1>.D, <Zt2>.D }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1406000) */
|
---|
10805 | //#define IEM_INSTR_IMPL_A64__ld1d_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10806 |
|
---|
10807 |
|
---|
10808 | /* LDNT1D { <Zt1>.D, <Zt2>.D }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1406008) */
|
---|
10809 | //#define IEM_INSTR_IMPL_A64__ldnt1d_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10810 |
|
---|
10811 |
|
---|
10812 |
|
---|
10813 | /*
|
---|
10814 | *
|
---|
10815 | * Instruction Set & Groups: mortlach_multi2_cld_cldnt_ss_ctg / mortlach_multi_mem_ctg / sme / A64
|
---|
10816 | *
|
---|
10817 | */
|
---|
10818 |
|
---|
10819 | /* LD1B { <Zt1>.B-<Zt2>.B }, <PNg>/Z, [<Xn|SP>, <Xm>] (ffe0e001/a0000000) */
|
---|
10820 | //#define IEM_INSTR_IMPL_A64__ld1b_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10821 |
|
---|
10822 |
|
---|
10823 | /* LDNT1B { <Zt1>.B-<Zt2>.B }, <PNg>/Z, [<Xn|SP>, <Xm>] (ffe0e001/a0000001) */
|
---|
10824 | //#define IEM_INSTR_IMPL_A64__ldnt1b_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10825 |
|
---|
10826 |
|
---|
10827 | /* LD1H { <Zt1>.H-<Zt2>.H }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e001/a0002000) */
|
---|
10828 | //#define IEM_INSTR_IMPL_A64__ld1h_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10829 |
|
---|
10830 |
|
---|
10831 | /* LDNT1H { <Zt1>.H-<Zt2>.H }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e001/a0002001) */
|
---|
10832 | //#define IEM_INSTR_IMPL_A64__ldnt1h_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10833 |
|
---|
10834 |
|
---|
10835 | /* LD1W { <Zt1>.S-<Zt2>.S }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e001/a0004000) */
|
---|
10836 | //#define IEM_INSTR_IMPL_A64__ld1w_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10837 |
|
---|
10838 |
|
---|
10839 | /* LDNT1W { <Zt1>.S-<Zt2>.S }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e001/a0004001) */
|
---|
10840 | //#define IEM_INSTR_IMPL_A64__ldnt1w_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10841 |
|
---|
10842 |
|
---|
10843 | /* LD1D { <Zt1>.D-<Zt2>.D }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e001/a0006000) */
|
---|
10844 | //#define IEM_INSTR_IMPL_A64__ld1d_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10845 |
|
---|
10846 |
|
---|
10847 | /* LDNT1D { <Zt1>.D-<Zt2>.D }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e001/a0006001) */
|
---|
10848 | //#define IEM_INSTR_IMPL_A64__ldnt1d_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10849 |
|
---|
10850 |
|
---|
10851 |
|
---|
10852 | /*
|
---|
10853 | *
|
---|
10854 | * Instruction Set & Groups: mortlach_multi2_cld_cldnt_ss_nctg / mortlach_multi_mem_nctg / sme / A64
|
---|
10855 | *
|
---|
10856 | */
|
---|
10857 |
|
---|
10858 | /* LD1B { <Zt1>.B, <Zt2>.B }, <PNg>/Z, [<Xn|SP>, <Xm>] (ffe0e008/a1000000) */
|
---|
10859 | //#define IEM_INSTR_IMPL_A64__ld1b_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
10860 |
|
---|
10861 |
|
---|
10862 | /* LDNT1B { <Zt1>.B, <Zt2>.B }, <PNg>/Z, [<Xn|SP>, <Xm>] (ffe0e008/a1000008) */
|
---|
10863 | //#define IEM_INSTR_IMPL_A64__ldnt1b_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
10864 |
|
---|
10865 |
|
---|
10866 | /* LD1H { <Zt1>.H, <Zt2>.H }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e008/a1002000) */
|
---|
10867 | //#define IEM_INSTR_IMPL_A64__ld1h_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
10868 |
|
---|
10869 |
|
---|
10870 | /* LDNT1H { <Zt1>.H, <Zt2>.H }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e008/a1002008) */
|
---|
10871 | //#define IEM_INSTR_IMPL_A64__ldnt1h_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
10872 |
|
---|
10873 |
|
---|
10874 | /* LD1W { <Zt1>.S, <Zt2>.S }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e008/a1004000) */
|
---|
10875 | //#define IEM_INSTR_IMPL_A64__ld1w_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
10876 |
|
---|
10877 |
|
---|
10878 | /* LDNT1W { <Zt1>.S, <Zt2>.S }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e008/a1004008) */
|
---|
10879 | //#define IEM_INSTR_IMPL_A64__ldnt1w_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
10880 |
|
---|
10881 |
|
---|
10882 | /* LD1D { <Zt1>.D, <Zt2>.D }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e008/a1006000) */
|
---|
10883 | //#define IEM_INSTR_IMPL_A64__ld1d_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
10884 |
|
---|
10885 |
|
---|
10886 | /* LDNT1D { <Zt1>.D, <Zt2>.D }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e008/a1006008) */
|
---|
10887 | //#define IEM_INSTR_IMPL_A64__ldnt1d_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
10888 |
|
---|
10889 |
|
---|
10890 |
|
---|
10891 | /*
|
---|
10892 | *
|
---|
10893 | * Instruction Set & Groups: mortlach_multi2_cst_cstnt_si_ctg / mortlach_multi_mem_ctg / sme / A64
|
---|
10894 | *
|
---|
10895 | */
|
---|
10896 |
|
---|
10897 | /* ST1B { <Zt1>.B-<Zt2>.B }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0600000) */
|
---|
10898 | //#define IEM_INSTR_IMPL_A64__st1b_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10899 |
|
---|
10900 |
|
---|
10901 | /* STNT1B { <Zt1>.B-<Zt2>.B }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0600001) */
|
---|
10902 | //#define IEM_INSTR_IMPL_A64__stnt1b_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10903 |
|
---|
10904 |
|
---|
10905 | /* ST1H { <Zt1>.H-<Zt2>.H }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0602000) */
|
---|
10906 | //#define IEM_INSTR_IMPL_A64__st1h_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10907 |
|
---|
10908 |
|
---|
10909 | /* STNT1H { <Zt1>.H-<Zt2>.H }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0602001) */
|
---|
10910 | //#define IEM_INSTR_IMPL_A64__stnt1h_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10911 |
|
---|
10912 |
|
---|
10913 | /* ST1W { <Zt1>.S-<Zt2>.S }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0604000) */
|
---|
10914 | //#define IEM_INSTR_IMPL_A64__st1w_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10915 |
|
---|
10916 |
|
---|
10917 | /* STNT1W { <Zt1>.S-<Zt2>.S }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0604001) */
|
---|
10918 | //#define IEM_INSTR_IMPL_A64__stnt1w_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10919 |
|
---|
10920 |
|
---|
10921 | /* ST1D { <Zt1>.D-<Zt2>.D }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0606000) */
|
---|
10922 | //#define IEM_INSTR_IMPL_A64__st1d_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10923 |
|
---|
10924 |
|
---|
10925 | /* STNT1D { <Zt1>.D-<Zt2>.D }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e001/a0606001) */
|
---|
10926 | //#define IEM_INSTR_IMPL_A64__stnt1d_mz_p_bi_2(Zt, Rn, PNg, msz, imm4)
|
---|
10927 |
|
---|
10928 |
|
---|
10929 |
|
---|
10930 | /*
|
---|
10931 | *
|
---|
10932 | * Instruction Set & Groups: mortlach_multi2_cst_cstnt_si_nctg / mortlach_multi_mem_nctg / sme / A64
|
---|
10933 | *
|
---|
10934 | */
|
---|
10935 |
|
---|
10936 | /* ST1B { <Zt1>.B, <Zt2>.B }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1600000) */
|
---|
10937 | //#define IEM_INSTR_IMPL_A64__st1b_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10938 |
|
---|
10939 |
|
---|
10940 | /* STNT1B { <Zt1>.B, <Zt2>.B }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1600008) */
|
---|
10941 | //#define IEM_INSTR_IMPL_A64__stnt1b_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10942 |
|
---|
10943 |
|
---|
10944 | /* ST1H { <Zt1>.H, <Zt2>.H }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1602000) */
|
---|
10945 | //#define IEM_INSTR_IMPL_A64__st1h_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10946 |
|
---|
10947 |
|
---|
10948 | /* STNT1H { <Zt1>.H, <Zt2>.H }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1602008) */
|
---|
10949 | //#define IEM_INSTR_IMPL_A64__stnt1h_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10950 |
|
---|
10951 |
|
---|
10952 | /* ST1W { <Zt1>.S, <Zt2>.S }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1604000) */
|
---|
10953 | //#define IEM_INSTR_IMPL_A64__st1w_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10954 |
|
---|
10955 |
|
---|
10956 | /* STNT1W { <Zt1>.S, <Zt2>.S }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1604008) */
|
---|
10957 | //#define IEM_INSTR_IMPL_A64__stnt1w_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10958 |
|
---|
10959 |
|
---|
10960 | /* ST1D { <Zt1>.D, <Zt2>.D }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1606000) */
|
---|
10961 | //#define IEM_INSTR_IMPL_A64__st1d_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10962 |
|
---|
10963 |
|
---|
10964 | /* STNT1D { <Zt1>.D, <Zt2>.D }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e008/a1606008) */
|
---|
10965 | //#define IEM_INSTR_IMPL_A64__stnt1d_mzx_p_bi_2x8(Zt, T, Rn, PNg, msz, imm4)
|
---|
10966 |
|
---|
10967 |
|
---|
10968 |
|
---|
10969 | /*
|
---|
10970 | *
|
---|
10971 | * Instruction Set & Groups: mortlach_multi2_cst_cstnt_ss_ctg / mortlach_multi_mem_ctg / sme / A64
|
---|
10972 | *
|
---|
10973 | */
|
---|
10974 |
|
---|
10975 | /* ST1B { <Zt1>.B-<Zt2>.B }, <PNg>, [<Xn|SP>, <Xm>] (ffe0e001/a0200000) */
|
---|
10976 | //#define IEM_INSTR_IMPL_A64__st1b_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10977 |
|
---|
10978 |
|
---|
10979 | /* STNT1B { <Zt1>.B-<Zt2>.B }, <PNg>, [<Xn|SP>, <Xm>] (ffe0e001/a0200001) */
|
---|
10980 | //#define IEM_INSTR_IMPL_A64__stnt1b_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10981 |
|
---|
10982 |
|
---|
10983 | /* ST1H { <Zt1>.H-<Zt2>.H }, <PNg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e001/a0202000) */
|
---|
10984 | //#define IEM_INSTR_IMPL_A64__st1h_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10985 |
|
---|
10986 |
|
---|
10987 | /* STNT1H { <Zt1>.H-<Zt2>.H }, <PNg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e001/a0202001) */
|
---|
10988 | //#define IEM_INSTR_IMPL_A64__stnt1h_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10989 |
|
---|
10990 |
|
---|
10991 | /* ST1W { <Zt1>.S-<Zt2>.S }, <PNg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e001/a0204000) */
|
---|
10992 | //#define IEM_INSTR_IMPL_A64__st1w_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10993 |
|
---|
10994 |
|
---|
10995 | /* STNT1W { <Zt1>.S-<Zt2>.S }, <PNg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e001/a0204001) */
|
---|
10996 | //#define IEM_INSTR_IMPL_A64__stnt1w_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
10997 |
|
---|
10998 |
|
---|
10999 | /* ST1D { <Zt1>.D-<Zt2>.D }, <PNg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e001/a0206000) */
|
---|
11000 | //#define IEM_INSTR_IMPL_A64__st1d_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
11001 |
|
---|
11002 |
|
---|
11003 | /* STNT1D { <Zt1>.D-<Zt2>.D }, <PNg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e001/a0206001) */
|
---|
11004 | //#define IEM_INSTR_IMPL_A64__stnt1d_mz_p_br_2(Zt, Rn, PNg, msz, Rm)
|
---|
11005 |
|
---|
11006 |
|
---|
11007 |
|
---|
11008 | /*
|
---|
11009 | *
|
---|
11010 | * Instruction Set & Groups: mortlach_multi2_cst_cstnt_ss_nctg / mortlach_multi_mem_nctg / sme / A64
|
---|
11011 | *
|
---|
11012 | */
|
---|
11013 |
|
---|
11014 | /* ST1B { <Zt1>.B, <Zt2>.B }, <PNg>, [<Xn|SP>, <Xm>] (ffe0e008/a1200000) */
|
---|
11015 | //#define IEM_INSTR_IMPL_A64__st1b_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
11016 |
|
---|
11017 |
|
---|
11018 | /* STNT1B { <Zt1>.B, <Zt2>.B }, <PNg>, [<Xn|SP>, <Xm>] (ffe0e008/a1200008) */
|
---|
11019 | //#define IEM_INSTR_IMPL_A64__stnt1b_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
11020 |
|
---|
11021 |
|
---|
11022 | /* ST1H { <Zt1>.H, <Zt2>.H }, <PNg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e008/a1202000) */
|
---|
11023 | //#define IEM_INSTR_IMPL_A64__st1h_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
11024 |
|
---|
11025 |
|
---|
11026 | /* STNT1H { <Zt1>.H, <Zt2>.H }, <PNg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e008/a1202008) */
|
---|
11027 | //#define IEM_INSTR_IMPL_A64__stnt1h_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
11028 |
|
---|
11029 |
|
---|
11030 | /* ST1W { <Zt1>.S, <Zt2>.S }, <PNg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e008/a1204000) */
|
---|
11031 | //#define IEM_INSTR_IMPL_A64__st1w_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
11032 |
|
---|
11033 |
|
---|
11034 | /* STNT1W { <Zt1>.S, <Zt2>.S }, <PNg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e008/a1204008) */
|
---|
11035 | //#define IEM_INSTR_IMPL_A64__stnt1w_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
11036 |
|
---|
11037 |
|
---|
11038 | /* ST1D { <Zt1>.D, <Zt2>.D }, <PNg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e008/a1206000) */
|
---|
11039 | //#define IEM_INSTR_IMPL_A64__st1d_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
11040 |
|
---|
11041 |
|
---|
11042 | /* STNT1D { <Zt1>.D, <Zt2>.D }, <PNg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e008/a1206008) */
|
---|
11043 | //#define IEM_INSTR_IMPL_A64__stnt1d_mzx_p_br_2x8(Zt, T, Rn, PNg, msz, Rm)
|
---|
11044 |
|
---|
11045 |
|
---|
11046 |
|
---|
11047 | /*
|
---|
11048 | *
|
---|
11049 | * Instruction Set & Groups: mortlach_multi2_extract_ctg / mortlach_ext / sme / A64
|
---|
11050 | *
|
---|
11051 | */
|
---|
11052 |
|
---|
11053 | /* MOVA { <Zd1>.B-<Zd2>.B }, ZA0<HV>.B[<Ws>, <offs1>:<offs2>] (ffff1f01/c0060000) */
|
---|
11054 | //#define IEM_INSTR_IMPL_A64__mova_mz2_za_b1(Zd, off3, Rs, V)
|
---|
11055 |
|
---|
11056 |
|
---|
11057 | /* MOVA { <Zd1>.H-<Zd2>.H }, <ZAn><HV>.H[<Ws>, <offs1>:<offs2>] (ffff1f01/c0460000) */
|
---|
11058 | //#define IEM_INSTR_IMPL_A64__mova_mz2_za_h1(Zd, off2, ZAn, Rs, V)
|
---|
11059 |
|
---|
11060 |
|
---|
11061 | /* MOVA { <Zd1>.S-<Zd2>.S }, <ZAn><HV>.S[<Ws>, <offs1>:<offs2>] (ffff1f01/c0860000) */
|
---|
11062 | //#define IEM_INSTR_IMPL_A64__mova_mz2_za_w1(Zd, o1, ZAn, Rs, V)
|
---|
11063 |
|
---|
11064 |
|
---|
11065 | /* MOVA { <Zd1>.D-<Zd2>.D }, <ZAn><HV>.D[<Ws>, <offs1>:<offs2>] (ffff1f01/c0c60000) */
|
---|
11066 | //#define IEM_INSTR_IMPL_A64__mova_mz2_za_d1(Zd, ZAn, Rs, V)
|
---|
11067 |
|
---|
11068 |
|
---|
11069 |
|
---|
11070 | /*
|
---|
11071 | *
|
---|
11072 | * Instruction Set & Groups: mortlach_multi2_extract_zero / mortlach_ext / sme / A64
|
---|
11073 | *
|
---|
11074 | */
|
---|
11075 |
|
---|
11076 | /* MOVAZ { <Zd1>.B-<Zd2>.B }, ZA0<HV>.B[<Ws>, <offs1>:<offs2>] (ffff1f01/c0060200) */
|
---|
11077 | //#define IEM_INSTR_IMPL_A64__movaz_mz2_za_b1(Zd, off3, Rs, V)
|
---|
11078 |
|
---|
11079 |
|
---|
11080 | /* MOVAZ { <Zd1>.H-<Zd2>.H }, <ZAn><HV>.H[<Ws>, <offs1>:<offs2>] (ffff1f01/c0460200) */
|
---|
11081 | //#define IEM_INSTR_IMPL_A64__movaz_mz2_za_h1(Zd, off2, ZAn, Rs, V)
|
---|
11082 |
|
---|
11083 |
|
---|
11084 | /* MOVAZ { <Zd1>.S-<Zd2>.S }, <ZAn><HV>.S[<Ws>, <offs1>:<offs2>] (ffff1f01/c0860200) */
|
---|
11085 | //#define IEM_INSTR_IMPL_A64__movaz_mz2_za_w1(Zd, o1, ZAn, Rs, V)
|
---|
11086 |
|
---|
11087 |
|
---|
11088 | /* MOVAZ { <Zd1>.D-<Zd2>.D }, <ZAn><HV>.D[<Ws>, <offs1>:<offs2>] (ffff1f01/c0c60200) */
|
---|
11089 | //#define IEM_INSTR_IMPL_A64__movaz_mz2_za_d1(Zd, ZAn, Rs, V)
|
---|
11090 |
|
---|
11091 |
|
---|
11092 |
|
---|
11093 | /*
|
---|
11094 | *
|
---|
11095 | * Instruction Set & Groups: mortlach_multi2_fclamp / mortlach_multi_sve_3 / sme / A64
|
---|
11096 | *
|
---|
11097 | */
|
---|
11098 |
|
---|
11099 | /* FCLAMP { <Zd1>.<T>-<Zd2>.<T> }, <Zn>.<T>, <Zm>.<T> (ff20fc01/c120c000) */
|
---|
11100 | //#define IEM_INSTR_IMPL_A64__fclamp_mz_zz_2(Zd, Zn, Zm, size)
|
---|
11101 |
|
---|
11102 |
|
---|
11103 | /* BFCLAMP { <Zd1>.H-<Zd2>.H }, <Zn>.H, <Zm>.H (ffe0fc01/c120c000) */
|
---|
11104 | //#define IEM_INSTR_IMPL_A64__bfclamp_mz_zz_2(Zd, Zn, Zm)
|
---|
11105 |
|
---|
11106 |
|
---|
11107 |
|
---|
11108 | /*
|
---|
11109 | *
|
---|
11110 | * Instruction Set & Groups: mortlach_multi2_fma_long_idx / mortlach_multi_indexed_2 / sme / A64
|
---|
11111 | *
|
---|
11112 | */
|
---|
11113 |
|
---|
11114 | /* BFMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1901010) */
|
---|
11115 | //#define IEM_INSTR_IMPL_A64__bfmlal_za_zzi_2xi(off2, i3l, S, Zn, i3h, Rv, Zm)
|
---|
11116 |
|
---|
11117 |
|
---|
11118 | /* FMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1901000) */
|
---|
11119 | //#define IEM_INSTR_IMPL_A64__fmlal_za_zzi_2xi(off2, i3l, S, Zn, i3h, Rv, Zm)
|
---|
11120 |
|
---|
11121 |
|
---|
11122 | /* BFMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1901018) */
|
---|
11123 | //#define IEM_INSTR_IMPL_A64__bfmlsl_za_zzi_2xi(off2, i3l, S, Zn, i3h, Rv, Zm)
|
---|
11124 |
|
---|
11125 |
|
---|
11126 | /* FMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1901008) */
|
---|
11127 | //#define IEM_INSTR_IMPL_A64__fmlsl_za_zzi_2xi(off2, i3l, S, Zn, i3h, Rv, Zm)
|
---|
11128 |
|
---|
11129 |
|
---|
11130 |
|
---|
11131 | /*
|
---|
11132 | *
|
---|
11133 | * Instruction Set & Groups: mortlach_multi2_fmul_mm / mortlach_multi_sve_5a / sme / A64
|
---|
11134 | *
|
---|
11135 | */
|
---|
11136 |
|
---|
11137 | /* FMUL { <Zd1>.<T>-<Zd2>.<T> }, { <Zn1>.<T>-<Zn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21fc21/c120e400) */
|
---|
11138 | //#define IEM_INSTR_IMPL_A64__fmul_mz_zzw_2x2(Zd, Zn, Zm, size)
|
---|
11139 |
|
---|
11140 |
|
---|
11141 | /* BFMUL { <Zd1>.H-<Zd2>.H }, { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe1fc21/c120e400) */
|
---|
11142 | //#define IEM_INSTR_IMPL_A64__bfmul_mz_zzw_2x2(Zd, Zn, Zm)
|
---|
11143 |
|
---|
11144 |
|
---|
11145 |
|
---|
11146 | /*
|
---|
11147 | *
|
---|
11148 | * Instruction Set & Groups: mortlach_multi2_fmul_sm / mortlach_multi_sve_5b / sme / A64
|
---|
11149 | *
|
---|
11150 | */
|
---|
11151 |
|
---|
11152 | /* FMUL { <Zd1>.<T>-<Zd2>.<T> }, { <Zn1>.<T>-<Zn2>.<T> }, <Zm>.<T> (ff21fc21/c120e800) */
|
---|
11153 | //#define IEM_INSTR_IMPL_A64__fmul_mz_zzv_2x1(Zd, Zn, Zm, size)
|
---|
11154 |
|
---|
11155 |
|
---|
11156 | /* BFMUL { <Zd1>.H-<Zd2>.H }, { <Zn1>.H-<Zn2>.H }, <Zm>.H (ffe1fc21/c120e800) */
|
---|
11157 | //#define IEM_INSTR_IMPL_A64__bfmul_mz_zzv_2x1(Zd, Zn, Zm)
|
---|
11158 |
|
---|
11159 |
|
---|
11160 |
|
---|
11161 | /*
|
---|
11162 | *
|
---|
11163 | * Instruction Set & Groups: mortlach_multi2_fp8_fdot_idx / mortlach_multi_indexed_2 / sme / A64
|
---|
11164 | *
|
---|
11165 | */
|
---|
11166 |
|
---|
11167 | /* FDOT ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09030/c1d00020) */
|
---|
11168 | //#define IEM_INSTR_IMPL_A64__fdot_za_z8z8i_2xi(off3, i3l, Zn, i3h, Rv, Zm)
|
---|
11169 |
|
---|
11170 |
|
---|
11171 | /* FVDOT ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09030/c1d01020) */
|
---|
11172 | //#define IEM_INSTR_IMPL_A64__fvdot_za_z8z8i_2xi(off3, i3l, Zn, i3h, Rv, Zm)
|
---|
11173 |
|
---|
11174 |
|
---|
11175 |
|
---|
11176 | /*
|
---|
11177 | *
|
---|
11178 | * Instruction Set & Groups: mortlach_multi2_fp8_fma_long_idx / mortlach_multi_indexed_2 / sme / A64
|
---|
11179 | *
|
---|
11180 | */
|
---|
11181 |
|
---|
11182 | /* FMLAL ZA.H[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09030/c1901030) */
|
---|
11183 | //#define IEM_INSTR_IMPL_A64__fmlal_za_z8z8i_2xi(off2, i4l, Zn, i4h, Rv, Zm)
|
---|
11184 |
|
---|
11185 |
|
---|
11186 |
|
---|
11187 | /*
|
---|
11188 | *
|
---|
11189 | * Instruction Set & Groups: mortlach_multi2_fp8_fma_long_long_idx / mortlach_multi_indexed_2 / sme / A64
|
---|
11190 | *
|
---|
11191 | */
|
---|
11192 |
|
---|
11193 | /* FMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1900020) */
|
---|
11194 | //#define IEM_INSTR_IMPL_A64__fmlall_za32_z8z8i_2xi(o1, i4l, Zn, i4h, Rv, Zm)
|
---|
11195 |
|
---|
11196 |
|
---|
11197 |
|
---|
11198 | /*
|
---|
11199 | *
|
---|
11200 | * Instruction Set & Groups: mortlach_multi2_fp8_fvdot_idx_s / mortlach_multi_indexed_2 / sme / A64
|
---|
11201 | *
|
---|
11202 | */
|
---|
11203 |
|
---|
11204 | /* FVDOTB ZA.S[<Wv>, <offs>, VGx4], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09830/c1d00800) */
|
---|
11205 | //#define IEM_INSTR_IMPL_A64__fvdotb_za32_z8z8i_2xi(off3, i2l, T, Zn, i2h, Rv, Zm)
|
---|
11206 |
|
---|
11207 |
|
---|
11208 | /* FVDOTT ZA.S[<Wv>, <offs>, VGx4], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09830/c1d00810) */
|
---|
11209 | //#define IEM_INSTR_IMPL_A64__fvdott_za32_z8z8i_2xi(off3, i2l, T, Zn, i2h, Rv, Zm)
|
---|
11210 |
|
---|
11211 |
|
---|
11212 |
|
---|
11213 | /*
|
---|
11214 | *
|
---|
11215 | * Instruction Set & Groups: mortlach_multi2_fpint_cvrt / mortlach_multi_sve_4 / sme / A64
|
---|
11216 | *
|
---|
11217 | */
|
---|
11218 |
|
---|
11219 | /* FCVTZS { <Zd1>.S-<Zd2>.S }, { <Zn1>.S-<Zn2>.S } (fffffc21/c121e000) */
|
---|
11220 | //#define IEM_INSTR_IMPL_A64__fcvtzs_mz_z_2(Zd, U, Zn)
|
---|
11221 |
|
---|
11222 |
|
---|
11223 | /* FCVTZU { <Zd1>.S-<Zd2>.S }, { <Zn1>.S-<Zn2>.S } (fffffc21/c121e020) */
|
---|
11224 | //#define IEM_INSTR_IMPL_A64__fcvtzu_mz_z_2(Zd, U, Zn)
|
---|
11225 |
|
---|
11226 |
|
---|
11227 |
|
---|
11228 | /*
|
---|
11229 | *
|
---|
11230 | * Instruction Set & Groups: mortlach_multi2_frint / mortlach_multi_sve_4 / sme / A64
|
---|
11231 | *
|
---|
11232 | */
|
---|
11233 |
|
---|
11234 | /* FRINTN { <Zd1>.S-<Zd2>.S }, { <Zn1>.S-<Zn2>.S } (fffffc21/c1a8e000) */
|
---|
11235 | //#define IEM_INSTR_IMPL_A64__frintn_mz_z_2(Zd, Zn)
|
---|
11236 |
|
---|
11237 |
|
---|
11238 | /* FRINTP { <Zd1>.S-<Zd2>.S }, { <Zn1>.S-<Zn2>.S } (fffffc21/c1a9e000) */
|
---|
11239 | //#define IEM_INSTR_IMPL_A64__frintp_mz_z_2(Zd, Zn)
|
---|
11240 |
|
---|
11241 |
|
---|
11242 | /* FRINTM { <Zd1>.S-<Zd2>.S }, { <Zn1>.S-<Zn2>.S } (fffffc21/c1aae000) */
|
---|
11243 | //#define IEM_INSTR_IMPL_A64__frintm_mz_z_2(Zd, Zn)
|
---|
11244 |
|
---|
11245 |
|
---|
11246 | /* FRINTA { <Zd1>.S-<Zd2>.S }, { <Zn1>.S-<Zn2>.S } (fffffc21/c1ace000) */
|
---|
11247 | //#define IEM_INSTR_IMPL_A64__frinta_mz_z_2(Zd, Zn)
|
---|
11248 |
|
---|
11249 |
|
---|
11250 |
|
---|
11251 | /*
|
---|
11252 | *
|
---|
11253 | * Instruction Set & Groups: mortlach_multi2_insert_ctg / mortlach_ins / sme / A64
|
---|
11254 | *
|
---|
11255 | */
|
---|
11256 |
|
---|
11257 | /* MOVA ZA0<HV>.B[<Ws>, <offs1>:<offs2>], { <Zn1>.B-<Zn2>.B } (ffff1c38/c0040000) */
|
---|
11258 | //#define IEM_INSTR_IMPL_A64__mova_za2_z_b1(off3, Zn, Rs, V)
|
---|
11259 |
|
---|
11260 |
|
---|
11261 | /* MOVA <ZAd><HV>.H[<Ws>, <offs1>:<offs2>], { <Zn1>.H-<Zn2>.H } (ffff1c38/c0440000) */
|
---|
11262 | //#define IEM_INSTR_IMPL_A64__mova_za2_z_h1(off2, ZAd, Zn, Rs, V)
|
---|
11263 |
|
---|
11264 |
|
---|
11265 | /* MOVA <ZAd><HV>.S[<Ws>, <offs1>:<offs2>], { <Zn1>.S-<Zn2>.S } (ffff1c38/c0840000) */
|
---|
11266 | //#define IEM_INSTR_IMPL_A64__mova_za2_z_w1(o1, ZAd, Zn, Rs, V)
|
---|
11267 |
|
---|
11268 |
|
---|
11269 | /* MOVA <ZAd><HV>.D[<Ws>, <offs1>:<offs2>], { <Zn1>.D-<Zn2>.D } (ffff1c38/c0c40000) */
|
---|
11270 | //#define IEM_INSTR_IMPL_A64__mova_za2_z_d1(ZAd, Zn, Rs, V)
|
---|
11271 |
|
---|
11272 |
|
---|
11273 |
|
---|
11274 | /*
|
---|
11275 | *
|
---|
11276 | * Instruction Set & Groups: mortlach_multi2_intfp_cvrt / mortlach_multi_sve_4 / sme / A64
|
---|
11277 | *
|
---|
11278 | */
|
---|
11279 |
|
---|
11280 | /* SCVTF { <Zd1>.S-<Zd2>.S }, { <Zn1>.S-<Zn2>.S } (fffffc21/c122e000) */
|
---|
11281 | //#define IEM_INSTR_IMPL_A64__scvtf_mz_z_2(Zd, U, Zn)
|
---|
11282 |
|
---|
11283 |
|
---|
11284 | /* UCVTF { <Zd1>.S-<Zd2>.S }, { <Zn1>.S-<Zn2>.S } (fffffc21/c122e020) */
|
---|
11285 | //#define IEM_INSTR_IMPL_A64__ucvtf_mz_z_2(Zd, U, Zn)
|
---|
11286 |
|
---|
11287 |
|
---|
11288 |
|
---|
11289 | /*
|
---|
11290 | *
|
---|
11291 | * Instruction Set & Groups: mortlach_multi2_mla_long_idx / mortlach_multi_indexed_2 / sme / A64
|
---|
11292 | *
|
---|
11293 | */
|
---|
11294 |
|
---|
11295 | /* SMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1d01000) */
|
---|
11296 | //#define IEM_INSTR_IMPL_A64__smlal_za_zzi_2xi(off2, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
11297 |
|
---|
11298 |
|
---|
11299 | /* SMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1d01008) */
|
---|
11300 | //#define IEM_INSTR_IMPL_A64__smlsl_za_zzi_2xi(off2, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
11301 |
|
---|
11302 |
|
---|
11303 | /* UMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1d01010) */
|
---|
11304 | //#define IEM_INSTR_IMPL_A64__umlal_za_zzi_2xi(off2, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
11305 |
|
---|
11306 |
|
---|
11307 | /* UMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1d01018) */
|
---|
11308 | //#define IEM_INSTR_IMPL_A64__umlsl_za_zzi_2xi(off2, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
11309 |
|
---|
11310 |
|
---|
11311 |
|
---|
11312 | /*
|
---|
11313 | *
|
---|
11314 | * Instruction Set & Groups: mortlach_multi2_mla_long_long_idx_d / mortlach_multi_indexed_2 / sme / A64
|
---|
11315 | *
|
---|
11316 | */
|
---|
11317 |
|
---|
11318 | /* SMLALL ZA.D[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09838/c1900000) */
|
---|
11319 | //#define IEM_INSTR_IMPL_A64__smlall_za_zzi_d2xi(o1, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
11320 |
|
---|
11321 |
|
---|
11322 | /* SMLSLL ZA.D[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09838/c1900008) */
|
---|
11323 | //#define IEM_INSTR_IMPL_A64__smlsll_za_zzi_d2xi(o1, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
11324 |
|
---|
11325 |
|
---|
11326 | /* UMLALL ZA.D[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09838/c1900010) */
|
---|
11327 | //#define IEM_INSTR_IMPL_A64__umlall_za_zzi_d2xi(o1, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
11328 |
|
---|
11329 |
|
---|
11330 | /* UMLSLL ZA.D[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09838/c1900018) */
|
---|
11331 | //#define IEM_INSTR_IMPL_A64__umlsll_za_zzi_d2xi(o1, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
11332 |
|
---|
11333 |
|
---|
11334 |
|
---|
11335 | /*
|
---|
11336 | *
|
---|
11337 | * Instruction Set & Groups: mortlach_multi2_mla_long_long_idx_s / mortlach_multi_indexed_2 / sme / A64
|
---|
11338 | *
|
---|
11339 | */
|
---|
11340 |
|
---|
11341 | /* SMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1100000) */
|
---|
11342 | //#define IEM_INSTR_IMPL_A64__smlall_za_zzi_s2xi(o1, i4l, S, U, Zn, i4h, Rv, Zm)
|
---|
11343 |
|
---|
11344 |
|
---|
11345 | /* USMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1100020) */
|
---|
11346 | //#define IEM_INSTR_IMPL_A64__usmlall_za_zzi_s2xi(o1, i4l, U, Zn, i4h, Rv, Zm)
|
---|
11347 |
|
---|
11348 |
|
---|
11349 | /* SMLSLL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1100008) */
|
---|
11350 | //#define IEM_INSTR_IMPL_A64__smlsll_za_zzi_s2xi(o1, i4l, S, U, Zn, i4h, Rv, Zm)
|
---|
11351 |
|
---|
11352 |
|
---|
11353 | /* UMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1100010) */
|
---|
11354 | //#define IEM_INSTR_IMPL_A64__umlall_za_zzi_s2xi(o1, i4l, S, U, Zn, i4h, Rv, Zm)
|
---|
11355 |
|
---|
11356 |
|
---|
11357 | /* SUMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1100030) */
|
---|
11358 | //#define IEM_INSTR_IMPL_A64__sumlall_za_zzi_s2xi(o1, i4l, U, Zn, i4h, Rv, Zm)
|
---|
11359 |
|
---|
11360 |
|
---|
11361 | /* UMLSLL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1100018) */
|
---|
11362 | //#define IEM_INSTR_IMPL_A64__umlsll_za_zzi_s2xi(o1, i4l, S, U, Zn, i4h, Rv, Zm)
|
---|
11363 |
|
---|
11364 |
|
---|
11365 |
|
---|
11366 | /*
|
---|
11367 | *
|
---|
11368 | * Instruction Set & Groups: mortlach_multi2_narrow_fp8_cvrt / mortlach_multi_sve_4 / sme / A64
|
---|
11369 | *
|
---|
11370 | */
|
---|
11371 |
|
---|
11372 | /* BFCVT <Zd>.B, { <Zn1>.H-<Zn2>.H } (fffffc20/c164e000) */
|
---|
11373 | //#define IEM_INSTR_IMPL_A64__bfcvt_z8_mz2(Zd, Zn)
|
---|
11374 |
|
---|
11375 |
|
---|
11376 | /* FCVT <Zd>.B, { <Zn1>.H-<Zn2>.H } (fffffc20/c124e000) */
|
---|
11377 | //#define IEM_INSTR_IMPL_A64__fcvt_z8_mz2(Zd, Zn)
|
---|
11378 |
|
---|
11379 |
|
---|
11380 |
|
---|
11381 | /*
|
---|
11382 | *
|
---|
11383 | * Instruction Set & Groups: mortlach_multi2_narrow_fp_cvrt / mortlach_multi_sve_4 / sme / A64
|
---|
11384 | *
|
---|
11385 | */
|
---|
11386 |
|
---|
11387 | /* BFCVT <Zd>.H, { <Zn1>.S-<Zn2>.S } (fffffc20/c160e000) */
|
---|
11388 | //#define IEM_INSTR_IMPL_A64__bfcvt_z_mz2(Zd, N, Zn)
|
---|
11389 |
|
---|
11390 |
|
---|
11391 | /* FCVT <Zd>.H, { <Zn1>.S-<Zn2>.S } (fffffc20/c120e000) */
|
---|
11392 | //#define IEM_INSTR_IMPL_A64__fcvt_z_mz2(Zd, N, Zn)
|
---|
11393 |
|
---|
11394 |
|
---|
11395 | /* BFCVTN <Zd>.H, { <Zn1>.S-<Zn2>.S } (fffffc20/c160e020) */
|
---|
11396 | //#define IEM_INSTR_IMPL_A64__bfcvtn_z_mz2(Zd, N, Zn)
|
---|
11397 |
|
---|
11398 |
|
---|
11399 | /* FCVTN <Zd>.H, { <Zn1>.S-<Zn2>.S } (fffffc20/c120e020) */
|
---|
11400 | //#define IEM_INSTR_IMPL_A64__fcvtn_z_mz2(Zd, N, Zn)
|
---|
11401 |
|
---|
11402 |
|
---|
11403 |
|
---|
11404 | /*
|
---|
11405 | *
|
---|
11406 | * Instruction Set & Groups: mortlach_multi2_narrow_int_cvrt / mortlach_multi_sve_4 / sme / A64
|
---|
11407 | *
|
---|
11408 | */
|
---|
11409 |
|
---|
11410 | /* SQCVT <Zd>.H, { <Zn1>.S-<Zn2>.S } (fffffc20/c123e000) */
|
---|
11411 | //#define IEM_INSTR_IMPL_A64__sqcvt_z_mz2(Zd, U, Zn)
|
---|
11412 |
|
---|
11413 |
|
---|
11414 | /* SQCVTU <Zd>.H, { <Zn1>.S-<Zn2>.S } (fffffc20/c163e000) */
|
---|
11415 | //#define IEM_INSTR_IMPL_A64__sqcvtu_z_mz2(Zd, Zn)
|
---|
11416 |
|
---|
11417 |
|
---|
11418 | /* UQCVT <Zd>.H, { <Zn1>.S-<Zn2>.S } (fffffc20/c123e020) */
|
---|
11419 | //#define IEM_INSTR_IMPL_A64__uqcvt_z_mz2(Zd, U, Zn)
|
---|
11420 |
|
---|
11421 |
|
---|
11422 |
|
---|
11423 | /*
|
---|
11424 | *
|
---|
11425 | * Instruction Set & Groups: mortlach_multi2_qrshr / mortlach_multi_sve_3 / sme / A64
|
---|
11426 | *
|
---|
11427 | */
|
---|
11428 |
|
---|
11429 | /* SQRSHR <Zd>.H, { <Zn1>.S-<Zn2>.S }, #<const> (fff0fc20/c1e0d400) */
|
---|
11430 | //#define IEM_INSTR_IMPL_A64__sqrshr_z_mz2(Zd, U, Zn, imm4)
|
---|
11431 |
|
---|
11432 |
|
---|
11433 | /* SQRSHRU <Zd>.H, { <Zn1>.S-<Zn2>.S }, #<const> (fff0fc20/c1f0d400) */
|
---|
11434 | //#define IEM_INSTR_IMPL_A64__sqrshru_z_mz2(Zd, Zn, imm4)
|
---|
11435 |
|
---|
11436 |
|
---|
11437 | /* UQRSHR <Zd>.H, { <Zn1>.S-<Zn2>.S }, #<const> (fff0fc20/c1e0d420) */
|
---|
11438 | //#define IEM_INSTR_IMPL_A64__uqrshr_z_mz2(Zd, U, Zn, imm4)
|
---|
11439 |
|
---|
11440 |
|
---|
11441 |
|
---|
11442 | /*
|
---|
11443 | *
|
---|
11444 | * Instruction Set & Groups: mortlach_multi2_select_int / mortlach_multi_sve_1 / sme / A64
|
---|
11445 | *
|
---|
11446 | */
|
---|
11447 |
|
---|
11448 | /* SEL { <Zd1>.<T>-<Zd2>.<T> }, <PNg>, { <Zn1>.<T>-<Zn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21e021/c1208000) */
|
---|
11449 | //#define IEM_INSTR_IMPL_A64__sel_mz_p_zz_2(Zd, Zn, PNg, Zm, size)
|
---|
11450 |
|
---|
11451 |
|
---|
11452 |
|
---|
11453 | /*
|
---|
11454 | *
|
---|
11455 | * Instruction Set & Groups: mortlach_multi2_wide_fp8_cvrt / mortlach_multi_sve_4 / sme / A64
|
---|
11456 | *
|
---|
11457 | */
|
---|
11458 |
|
---|
11459 | /* F1CVT { <Zd1>.H-<Zd2>.H }, <Zn>.B (fffffc01/c126e000) */
|
---|
11460 | //#define IEM_INSTR_IMPL_A64__f1cvt_mz2_z8(L, Zd, Zn)
|
---|
11461 |
|
---|
11462 |
|
---|
11463 | /* BF1CVT { <Zd1>.H-<Zd2>.H }, <Zn>.B (fffffc01/c166e000) */
|
---|
11464 | //#define IEM_INSTR_IMPL_A64__bf1cvt_mz2_z8(L, Zd, Zn)
|
---|
11465 |
|
---|
11466 |
|
---|
11467 | /* F2CVT { <Zd1>.H-<Zd2>.H }, <Zn>.B (fffffc01/c1a6e000) */
|
---|
11468 | //#define IEM_INSTR_IMPL_A64__f2cvt_mz2_z8(L, Zd, Zn)
|
---|
11469 |
|
---|
11470 |
|
---|
11471 | /* BF2CVT { <Zd1>.H-<Zd2>.H }, <Zn>.B (fffffc01/c1e6e000) */
|
---|
11472 | //#define IEM_INSTR_IMPL_A64__bf2cvt_mz2_z8(L, Zd, Zn)
|
---|
11473 |
|
---|
11474 |
|
---|
11475 | /* F1CVTL { <Zd1>.H-<Zd2>.H }, <Zn>.B (fffffc01/c126e001) */
|
---|
11476 | //#define IEM_INSTR_IMPL_A64__f1cvtl_mz2_z8(L, Zd, Zn)
|
---|
11477 |
|
---|
11478 |
|
---|
11479 | /* BF1CVTL { <Zd1>.H-<Zd2>.H }, <Zn>.B (fffffc01/c166e001) */
|
---|
11480 | //#define IEM_INSTR_IMPL_A64__bf1cvtl_mz2_z8(L, Zd, Zn)
|
---|
11481 |
|
---|
11482 |
|
---|
11483 | /* F2CVTL { <Zd1>.H-<Zd2>.H }, <Zn>.B (fffffc01/c1a6e001) */
|
---|
11484 | //#define IEM_INSTR_IMPL_A64__f2cvtl_mz2_z8(L, Zd, Zn)
|
---|
11485 |
|
---|
11486 |
|
---|
11487 | /* BF2CVTL { <Zd1>.H-<Zd2>.H }, <Zn>.B (fffffc01/c1e6e001) */
|
---|
11488 | //#define IEM_INSTR_IMPL_A64__bf2cvtl_mz2_z8(L, Zd, Zn)
|
---|
11489 |
|
---|
11490 |
|
---|
11491 |
|
---|
11492 | /*
|
---|
11493 | *
|
---|
11494 | * Instruction Set & Groups: mortlach_multi2_wide_fp_cvrt / mortlach_multi_sve_4 / sme / A64
|
---|
11495 | *
|
---|
11496 | */
|
---|
11497 |
|
---|
11498 | /* FCVT { <Zd1>.S-<Zd2>.S }, <Zn>.H (fffffc01/c1a0e000) */
|
---|
11499 | //#define IEM_INSTR_IMPL_A64__fcvt_mz2_z(L, Zd, Zn)
|
---|
11500 |
|
---|
11501 |
|
---|
11502 | /* FCVTL { <Zd1>.S-<Zd2>.S }, <Zn>.H (fffffc01/c1a0e001) */
|
---|
11503 | //#define IEM_INSTR_IMPL_A64__fcvtl_mz2_z(L, Zd, Zn)
|
---|
11504 |
|
---|
11505 |
|
---|
11506 |
|
---|
11507 | /*
|
---|
11508 | *
|
---|
11509 | * Instruction Set & Groups: mortlach_multi2_wide_int / mortlach_multi_sve_4 / sme / A64
|
---|
11510 | *
|
---|
11511 | */
|
---|
11512 |
|
---|
11513 | /* SUNPK { <Zd1>.<T>-<Zd2>.<T> }, <Zn>.<Tb> (ff3ffc01/c125e000) */
|
---|
11514 | //#define IEM_INSTR_IMPL_A64__sunpk_mz_z_2(U, Zd, Zn, size)
|
---|
11515 |
|
---|
11516 |
|
---|
11517 | /* UUNPK { <Zd1>.<T>-<Zd2>.<T> }, <Zn>.<Tb> (ff3ffc01/c125e001) */
|
---|
11518 | //#define IEM_INSTR_IMPL_A64__uunpk_mz_z_2(U, Zd, Zn, size)
|
---|
11519 |
|
---|
11520 |
|
---|
11521 |
|
---|
11522 | /*
|
---|
11523 | *
|
---|
11524 | * Instruction Set & Groups: mortlach_multi2_z_z_add_sm / mortlach_multi_sve_2a / sme / A64
|
---|
11525 | *
|
---|
11526 | */
|
---|
11527 |
|
---|
11528 | /* ADD { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a300) */
|
---|
11529 | //#define IEM_INSTR_IMPL_A64__add_mz_zzv_2x1(Zdn, Zm, size)
|
---|
11530 |
|
---|
11531 |
|
---|
11532 |
|
---|
11533 | /*
|
---|
11534 | *
|
---|
11535 | * Instruction Set & Groups: mortlach_multi2_z_z_fminmax_mm / mortlach_multi_sve_2c0 / sme / A64
|
---|
11536 | *
|
---|
11537 | */
|
---|
11538 |
|
---|
11539 | /* FMAX { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b100) */
|
---|
11540 | //#define IEM_INSTR_IMPL_A64__fmax_mz_zzw_2x2(Zdn, Zm, size)
|
---|
11541 |
|
---|
11542 |
|
---|
11543 | /* BFMAX { <Zdn1>.H-<Zdn2>.H }, { <Zdn1>.H-<Zdn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe1ffe1/c120b100) */
|
---|
11544 | //#define IEM_INSTR_IMPL_A64__bfmax_mz_zzw_2x2(Zdn, Zm)
|
---|
11545 |
|
---|
11546 |
|
---|
11547 | /* FMIN { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b101) */
|
---|
11548 | //#define IEM_INSTR_IMPL_A64__fmin_mz_zzw_2x2(Zdn, Zm, size)
|
---|
11549 |
|
---|
11550 |
|
---|
11551 | /* BFMIN { <Zdn1>.H-<Zdn2>.H }, { <Zdn1>.H-<Zdn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe1ffe1/c120b101) */
|
---|
11552 | //#define IEM_INSTR_IMPL_A64__bfmin_mz_zzw_2x2(Zdn, Zm)
|
---|
11553 |
|
---|
11554 |
|
---|
11555 | /* FMAXNM { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b120) */
|
---|
11556 | //#define IEM_INSTR_IMPL_A64__fmaxnm_mz_zzw_2x2(Zdn, Zm, size)
|
---|
11557 |
|
---|
11558 |
|
---|
11559 | /* BFMAXNM { <Zdn1>.H-<Zdn2>.H }, { <Zdn1>.H-<Zdn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe1ffe1/c120b120) */
|
---|
11560 | //#define IEM_INSTR_IMPL_A64__bfmaxnm_mz_zzw_2x2(Zdn, Zm)
|
---|
11561 |
|
---|
11562 |
|
---|
11563 | /* FMINNM { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b121) */
|
---|
11564 | //#define IEM_INSTR_IMPL_A64__fminnm_mz_zzw_2x2(Zdn, Zm, size)
|
---|
11565 |
|
---|
11566 |
|
---|
11567 | /* BFMINNM { <Zdn1>.H-<Zdn2>.H }, { <Zdn1>.H-<Zdn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe1ffe1/c120b121) */
|
---|
11568 | //#define IEM_INSTR_IMPL_A64__bfminnm_mz_zzw_2x2(Zdn, Zm)
|
---|
11569 |
|
---|
11570 |
|
---|
11571 | /* FAMAX { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b140) */
|
---|
11572 | //#define IEM_INSTR_IMPL_A64__famax_mz_zzw_2x2(Zdn, Zm, size)
|
---|
11573 |
|
---|
11574 |
|
---|
11575 | /* FAMIN { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b141) */
|
---|
11576 | //#define IEM_INSTR_IMPL_A64__famin_mz_zzw_2x2(Zdn, Zm, size)
|
---|
11577 |
|
---|
11578 |
|
---|
11579 |
|
---|
11580 | /*
|
---|
11581 | *
|
---|
11582 | * Instruction Set & Groups: mortlach_multi2_z_z_fminmax_sm / mortlach_multi_sve_2a / sme / A64
|
---|
11583 | *
|
---|
11584 | */
|
---|
11585 |
|
---|
11586 | /* FMAX { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a100) */
|
---|
11587 | //#define IEM_INSTR_IMPL_A64__fmax_mz_zzv_2x1(Zdn, Zm, size)
|
---|
11588 |
|
---|
11589 |
|
---|
11590 | /* BFMAX { <Zdn1>.H-<Zdn2>.H }, { <Zdn1>.H-<Zdn2>.H }, <Zm>.H (fff0ffe1/c120a100) */
|
---|
11591 | //#define IEM_INSTR_IMPL_A64__bfmax_mz_zzv_2x1(Zdn, Zm)
|
---|
11592 |
|
---|
11593 |
|
---|
11594 | /* FMIN { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a101) */
|
---|
11595 | //#define IEM_INSTR_IMPL_A64__fmin_mz_zzv_2x1(Zdn, Zm, size)
|
---|
11596 |
|
---|
11597 |
|
---|
11598 | /* BFMIN { <Zdn1>.H-<Zdn2>.H }, { <Zdn1>.H-<Zdn2>.H }, <Zm>.H (fff0ffe1/c120a101) */
|
---|
11599 | //#define IEM_INSTR_IMPL_A64__bfmin_mz_zzv_2x1(Zdn, Zm)
|
---|
11600 |
|
---|
11601 |
|
---|
11602 | /* FMAXNM { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a120) */
|
---|
11603 | //#define IEM_INSTR_IMPL_A64__fmaxnm_mz_zzv_2x1(Zdn, Zm, size)
|
---|
11604 |
|
---|
11605 |
|
---|
11606 | /* BFMAXNM { <Zdn1>.H-<Zdn2>.H }, { <Zdn1>.H-<Zdn2>.H }, <Zm>.H (fff0ffe1/c120a120) */
|
---|
11607 | //#define IEM_INSTR_IMPL_A64__bfmaxnm_mz_zzv_2x1(Zdn, Zm)
|
---|
11608 |
|
---|
11609 |
|
---|
11610 | /* FMINNM { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a121) */
|
---|
11611 | //#define IEM_INSTR_IMPL_A64__fminnm_mz_zzv_2x1(Zdn, Zm, size)
|
---|
11612 |
|
---|
11613 |
|
---|
11614 | /* BFMINNM { <Zdn1>.H-<Zdn2>.H }, { <Zdn1>.H-<Zdn2>.H }, <Zm>.H (fff0ffe1/c120a121) */
|
---|
11615 | //#define IEM_INSTR_IMPL_A64__bfminnm_mz_zzv_2x1(Zdn, Zm)
|
---|
11616 |
|
---|
11617 |
|
---|
11618 |
|
---|
11619 | /*
|
---|
11620 | *
|
---|
11621 | * Instruction Set & Groups: mortlach_multi2_z_z_fscale_mm / mortlach_multi_sve_2c0 / sme / A64
|
---|
11622 | *
|
---|
11623 | */
|
---|
11624 |
|
---|
11625 | /* FSCALE { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b180) */
|
---|
11626 | //#define IEM_INSTR_IMPL_A64__fscale_mz_zzw_2x2(Zdn, Zm, size)
|
---|
11627 |
|
---|
11628 |
|
---|
11629 | /* BFSCALE { <Zdn1>.H-<Zdn2>.H }, { <Zdn1>.H-<Zdn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe1ffe1/c120b180) */
|
---|
11630 | //#define IEM_INSTR_IMPL_A64__bfscale_mz_zzw_2x2(Zdn, Zm)
|
---|
11631 |
|
---|
11632 |
|
---|
11633 |
|
---|
11634 | /*
|
---|
11635 | *
|
---|
11636 | * Instruction Set & Groups: mortlach_multi2_z_z_fscale_sm / mortlach_multi_sve_2a / sme / A64
|
---|
11637 | *
|
---|
11638 | */
|
---|
11639 |
|
---|
11640 | /* FSCALE { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a180) */
|
---|
11641 | //#define IEM_INSTR_IMPL_A64__fscale_mz_zzv_2x1(Zdn, Zm, size)
|
---|
11642 |
|
---|
11643 |
|
---|
11644 | /* BFSCALE { <Zdn1>.H-<Zdn2>.H }, { <Zdn1>.H-<Zdn2>.H }, <Zm>.H (fff0ffe1/c120a180) */
|
---|
11645 | //#define IEM_INSTR_IMPL_A64__bfscale_mz_zzv_2x1(Zdn, Zm)
|
---|
11646 |
|
---|
11647 |
|
---|
11648 |
|
---|
11649 | /*
|
---|
11650 | *
|
---|
11651 | * Instruction Set & Groups: mortlach_multi2_z_z_long_zip / mortlach_multi_sve_3 / sme / A64
|
---|
11652 | *
|
---|
11653 | */
|
---|
11654 |
|
---|
11655 | /* ZIP { <Zd1>.Q-<Zd2>.Q }, <Zn>.Q, <Zm>.Q (ffe0fc01/c120d400) */
|
---|
11656 | //#define IEM_INSTR_IMPL_A64__zip_mz_zz_2q(Zd, Zn, Zm)
|
---|
11657 |
|
---|
11658 |
|
---|
11659 | /* UZP { <Zd1>.Q-<Zd2>.Q }, <Zn>.Q, <Zm>.Q (ffe0fc01/c120d401) */
|
---|
11660 | //#define IEM_INSTR_IMPL_A64__uzp_mz_zz_2q(Zd, Zn, Zm)
|
---|
11661 |
|
---|
11662 |
|
---|
11663 |
|
---|
11664 | /*
|
---|
11665 | *
|
---|
11666 | * Instruction Set & Groups: mortlach_multi2_z_z_minmax_mm / mortlach_multi_sve_2c0 / sme / A64
|
---|
11667 | *
|
---|
11668 | */
|
---|
11669 |
|
---|
11670 | /* SMAX { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b000) */
|
---|
11671 | //#define IEM_INSTR_IMPL_A64__smax_mz_zzw_2x2(U, Zdn, Zm, size)
|
---|
11672 |
|
---|
11673 |
|
---|
11674 | /* SMIN { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b020) */
|
---|
11675 | //#define IEM_INSTR_IMPL_A64__smin_mz_zzw_2x2(U, Zdn, Zm, size)
|
---|
11676 |
|
---|
11677 |
|
---|
11678 | /* UMAX { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b001) */
|
---|
11679 | //#define IEM_INSTR_IMPL_A64__umax_mz_zzw_2x2(U, Zdn, Zm, size)
|
---|
11680 |
|
---|
11681 |
|
---|
11682 | /* UMIN { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b021) */
|
---|
11683 | //#define IEM_INSTR_IMPL_A64__umin_mz_zzw_2x2(U, Zdn, Zm, size)
|
---|
11684 |
|
---|
11685 |
|
---|
11686 |
|
---|
11687 | /*
|
---|
11688 | *
|
---|
11689 | * Instruction Set & Groups: mortlach_multi2_z_z_minmax_sm / mortlach_multi_sve_2a / sme / A64
|
---|
11690 | *
|
---|
11691 | */
|
---|
11692 |
|
---|
11693 | /* SMAX { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a000) */
|
---|
11694 | //#define IEM_INSTR_IMPL_A64__smax_mz_zzv_2x1(U, Zdn, Zm, size)
|
---|
11695 |
|
---|
11696 |
|
---|
11697 | /* SMIN { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a020) */
|
---|
11698 | //#define IEM_INSTR_IMPL_A64__smin_mz_zzv_2x1(U, Zdn, Zm, size)
|
---|
11699 |
|
---|
11700 |
|
---|
11701 | /* UMAX { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a001) */
|
---|
11702 | //#define IEM_INSTR_IMPL_A64__umax_mz_zzv_2x1(U, Zdn, Zm, size)
|
---|
11703 |
|
---|
11704 |
|
---|
11705 | /* UMIN { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a021) */
|
---|
11706 | //#define IEM_INSTR_IMPL_A64__umin_mz_zzv_2x1(U, Zdn, Zm, size)
|
---|
11707 |
|
---|
11708 |
|
---|
11709 |
|
---|
11710 | /*
|
---|
11711 | *
|
---|
11712 | * Instruction Set & Groups: mortlach_multi2_z_z_shift_mm / mortlach_multi_sve_2c0 / sme / A64
|
---|
11713 | *
|
---|
11714 | */
|
---|
11715 |
|
---|
11716 | /* SRSHL { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b220) */
|
---|
11717 | //#define IEM_INSTR_IMPL_A64__srshl_mz_zzw_2x2(U, Zdn, Zm, size)
|
---|
11718 |
|
---|
11719 |
|
---|
11720 | /* URSHL { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b221) */
|
---|
11721 | //#define IEM_INSTR_IMPL_A64__urshl_mz_zzw_2x2(U, Zdn, Zm, size)
|
---|
11722 |
|
---|
11723 |
|
---|
11724 |
|
---|
11725 | /*
|
---|
11726 | *
|
---|
11727 | * Instruction Set & Groups: mortlach_multi2_z_z_shift_sm / mortlach_multi_sve_2a / sme / A64
|
---|
11728 | *
|
---|
11729 | */
|
---|
11730 |
|
---|
11731 | /* SRSHL { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a220) */
|
---|
11732 | //#define IEM_INSTR_IMPL_A64__srshl_mz_zzv_2x1(U, Zdn, Zm, size)
|
---|
11733 |
|
---|
11734 |
|
---|
11735 | /* URSHL { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a221) */
|
---|
11736 | //#define IEM_INSTR_IMPL_A64__urshl_mz_zzv_2x1(U, Zdn, Zm, size)
|
---|
11737 |
|
---|
11738 |
|
---|
11739 |
|
---|
11740 | /*
|
---|
11741 | *
|
---|
11742 | * Instruction Set & Groups: mortlach_multi2_z_z_sqdmulh_mm / mortlach_multi_sve_2c1 / sme / A64
|
---|
11743 | *
|
---|
11744 | */
|
---|
11745 |
|
---|
11746 | /* SQDMULH { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ff21ffe1/c120b400) */
|
---|
11747 | //#define IEM_INSTR_IMPL_A64__sqdmulh_mz_zzw_2x2(Zdn, Zm, size)
|
---|
11748 |
|
---|
11749 |
|
---|
11750 |
|
---|
11751 | /*
|
---|
11752 | *
|
---|
11753 | * Instruction Set & Groups: mortlach_multi2_z_z_sqdmulh_sm / mortlach_multi_sve_2a / sme / A64
|
---|
11754 | *
|
---|
11755 | */
|
---|
11756 |
|
---|
11757 | /* SQDMULH { <Zdn1>.<T>-<Zdn2>.<T> }, { <Zdn1>.<T>-<Zdn2>.<T> }, <Zm>.<T> (ff30ffe1/c120a400) */
|
---|
11758 | //#define IEM_INSTR_IMPL_A64__sqdmulh_mz_zzv_2x1(Zdn, Zm, size)
|
---|
11759 |
|
---|
11760 |
|
---|
11761 |
|
---|
11762 | /*
|
---|
11763 | *
|
---|
11764 | * Instruction Set & Groups: mortlach_multi2_z_z_zip / mortlach_multi_sve_3 / sme / A64
|
---|
11765 | *
|
---|
11766 | */
|
---|
11767 |
|
---|
11768 | /* ZIP { <Zd1>.<T>-<Zd2>.<T> }, <Zn>.<T>, <Zm>.<T> (ff20fc01/c120d000) */
|
---|
11769 | //#define IEM_INSTR_IMPL_A64__zip_mz_zz_2(Zd, Zn, Zm, size)
|
---|
11770 |
|
---|
11771 |
|
---|
11772 | /* UZP { <Zd1>.<T>-<Zd2>.<T> }, <Zn>.<T>, <Zm>.<T> (ff20fc01/c120d001) */
|
---|
11773 | //#define IEM_INSTR_IMPL_A64__uzp_mz_zz_2(Zd, Zn, Zm, size)
|
---|
11774 |
|
---|
11775 |
|
---|
11776 |
|
---|
11777 | /*
|
---|
11778 | *
|
---|
11779 | * Instruction Set & Groups: mortlach_multi2_z_za_2way_dot_mm / mortlach_multi_array_2a / sme / A64
|
---|
11780 | *
|
---|
11781 | */
|
---|
11782 |
|
---|
11783 | /* SDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c38/c1e01408) */
|
---|
11784 | //#define IEM_INSTR_IMPL_A64__sdot_za32_zzw_2x2(off3, U, Zn, Rv, Zm)
|
---|
11785 |
|
---|
11786 |
|
---|
11787 | /* UDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c38/c1e01418) */
|
---|
11788 | //#define IEM_INSTR_IMPL_A64__udot_za32_zzw_2x2(off3, U, Zn, Rv, Zm)
|
---|
11789 |
|
---|
11790 |
|
---|
11791 |
|
---|
11792 | /*
|
---|
11793 | *
|
---|
11794 | * Instruction Set & Groups: mortlach_multi2_z_za_2way_dot_sm / mortlach_multi_array_1a / sme / A64
|
---|
11795 | *
|
---|
11796 | */
|
---|
11797 |
|
---|
11798 | /* SDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c18/c1601408) */
|
---|
11799 | //#define IEM_INSTR_IMPL_A64__sdot_za32_zzv_2x1(off3, U, Zn, Rv, Zm)
|
---|
11800 |
|
---|
11801 |
|
---|
11802 | /* UDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c18/c1601418) */
|
---|
11803 | //#define IEM_INSTR_IMPL_A64__udot_za32_zzv_2x1(off3, U, Zn, Rv, Zm)
|
---|
11804 |
|
---|
11805 |
|
---|
11806 |
|
---|
11807 | /*
|
---|
11808 | *
|
---|
11809 | * Instruction Set & Groups: mortlach_multi2_z_za_4way_dot_mm / mortlach_multi_array_2a / sme / A64
|
---|
11810 | *
|
---|
11811 | */
|
---|
11812 |
|
---|
11813 | /* SDOT ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, { <Zm1>.<Tb>-<Zm2>.<Tb> } (ffa19c38/c1a01400) */
|
---|
11814 | //#define IEM_INSTR_IMPL_A64__sdot_za_zzw_2x2(off3, U, Zn, Rv, Zm, sz)
|
---|
11815 |
|
---|
11816 |
|
---|
11817 | /* UDOT ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, { <Zm1>.<Tb>-<Zm2>.<Tb> } (ffa19c38/c1a01410) */
|
---|
11818 | //#define IEM_INSTR_IMPL_A64__udot_za_zzw_2x2(off3, U, Zn, Rv, Zm, sz)
|
---|
11819 |
|
---|
11820 |
|
---|
11821 |
|
---|
11822 | /*
|
---|
11823 | *
|
---|
11824 | * Instruction Set & Groups: mortlach_multi2_z_za_4way_dot_sm / mortlach_multi_array_1a / sme / A64
|
---|
11825 | *
|
---|
11826 | */
|
---|
11827 |
|
---|
11828 | /* SDOT ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, <Zm>.<Tb> (ffb09c18/c1201400) */
|
---|
11829 | //#define IEM_INSTR_IMPL_A64__sdot_za_zzv_2x1(off3, U, Zn, Rv, Zm, sz)
|
---|
11830 |
|
---|
11831 |
|
---|
11832 | /* UDOT ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, <Zm>.<Tb> (ffb09c18/c1201410) */
|
---|
11833 | //#define IEM_INSTR_IMPL_A64__udot_za_zzv_2x1(off3, U, Zn, Rv, Zm, sz)
|
---|
11834 |
|
---|
11835 |
|
---|
11836 |
|
---|
11837 | /*
|
---|
11838 | *
|
---|
11839 | * Instruction Set & Groups: mortlach_multi2_z_za_f16_mm / mortlach_multi_array_2a / sme / A64
|
---|
11840 | *
|
---|
11841 | */
|
---|
11842 |
|
---|
11843 | /* FADD ZA.H[<Wv>, <offs>{, VGx2}], { <Zm1>.H-<Zm2>.H } (ffff9c38/c1a41c00) */
|
---|
11844 | //#define IEM_INSTR_IMPL_A64__fadd_za_zw_2x2_16(off3, S, Zm, Rv)
|
---|
11845 |
|
---|
11846 |
|
---|
11847 | /* BFADD ZA.H[<Wv>, <offs>{, VGx2}], { <Zm1>.H-<Zm2>.H } (ffff9c38/c1e41c00) */
|
---|
11848 | //#define IEM_INSTR_IMPL_A64__bfadd_za_zw_2x2_16(off3, S, Zm, Rv)
|
---|
11849 |
|
---|
11850 |
|
---|
11851 | /* FSUB ZA.H[<Wv>, <offs>{, VGx2}], { <Zm1>.H-<Zm2>.H } (ffff9c38/c1a41c08) */
|
---|
11852 | //#define IEM_INSTR_IMPL_A64__fsub_za_zw_2x2_16(off3, S, Zm, Rv)
|
---|
11853 |
|
---|
11854 |
|
---|
11855 | /* BFSUB ZA.H[<Wv>, <offs>{, VGx2}], { <Zm1>.H-<Zm2>.H } (ffff9c38/c1e41c08) */
|
---|
11856 | //#define IEM_INSTR_IMPL_A64__bfsub_za_zw_2x2_16(off3, S, Zm, Rv)
|
---|
11857 |
|
---|
11858 |
|
---|
11859 |
|
---|
11860 | /*
|
---|
11861 | *
|
---|
11862 | * Instruction Set & Groups: mortlach_multi2_z_za_float_mm / mortlach_multi_array_2a / sme / A64
|
---|
11863 | *
|
---|
11864 | */
|
---|
11865 |
|
---|
11866 | /* FADD ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zm1>.<T>-<Zm2>.<T> } (ffbf9c38/c1a01c00) */
|
---|
11867 | //#define IEM_INSTR_IMPL_A64__fadd_za_zw_2x2(off3, S, Zm, Rv, sz)
|
---|
11868 |
|
---|
11869 |
|
---|
11870 | /* FSUB ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zm1>.<T>-<Zm2>.<T> } (ffbf9c38/c1a01c08) */
|
---|
11871 | //#define IEM_INSTR_IMPL_A64__fsub_za_zw_2x2(off3, S, Zm, Rv, sz)
|
---|
11872 |
|
---|
11873 |
|
---|
11874 |
|
---|
11875 | /*
|
---|
11876 | *
|
---|
11877 | * Instruction Set & Groups: mortlach_multi2_z_za_fpdot_mm / mortlach_multi_array_2a / sme / A64
|
---|
11878 | *
|
---|
11879 | */
|
---|
11880 |
|
---|
11881 | /* FDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c38/c1a01000) */
|
---|
11882 | //#define IEM_INSTR_IMPL_A64__fdot_za_zzw_2x2(off3, Zn, Rv, Zm)
|
---|
11883 |
|
---|
11884 |
|
---|
11885 | /* BFDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c38/c1a01010) */
|
---|
11886 | //#define IEM_INSTR_IMPL_A64__bfdot_za_zzw_2x2(off3, Zn, Rv, Zm)
|
---|
11887 |
|
---|
11888 |
|
---|
11889 | /* FDOT ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (ffe19c38/c1a01020) */
|
---|
11890 | //#define IEM_INSTR_IMPL_A64__fdot_za_z8z8w_2x2(off3, Zn, Rv, Zm)
|
---|
11891 |
|
---|
11892 |
|
---|
11893 | /* FDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (ffe19c38/c1a01030) */
|
---|
11894 | //#define IEM_INSTR_IMPL_A64__fdot_za32_z8z8w_2x2(off3, Zn, Rv, Zm)
|
---|
11895 |
|
---|
11896 |
|
---|
11897 |
|
---|
11898 | /*
|
---|
11899 | *
|
---|
11900 | * Instruction Set & Groups: mortlach_multi2_z_za_fpdot_sm / mortlach_multi_array_1a / sme / A64
|
---|
11901 | *
|
---|
11902 | */
|
---|
11903 |
|
---|
11904 | /* FDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c18/c1201000) */
|
---|
11905 | //#define IEM_INSTR_IMPL_A64__fdot_za_zzv_2x1(off3, Zn, Rv, Zm)
|
---|
11906 |
|
---|
11907 |
|
---|
11908 | /* BFDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c18/c1201010) */
|
---|
11909 | //#define IEM_INSTR_IMPL_A64__bfdot_za_zzv_2x1(off3, Zn, Rv, Zm)
|
---|
11910 |
|
---|
11911 |
|
---|
11912 | /* FDOT ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff09c18/c1201008) */
|
---|
11913 | //#define IEM_INSTR_IMPL_A64__fdot_za_z8z8v_2x1(off3, Zn, Rv, Zm)
|
---|
11914 |
|
---|
11915 |
|
---|
11916 | /* FDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff09c18/c1201018) */
|
---|
11917 | //#define IEM_INSTR_IMPL_A64__fdot_za32_z8z8v_2x1(off3, Zn, Rv, Zm)
|
---|
11918 |
|
---|
11919 |
|
---|
11920 |
|
---|
11921 | /*
|
---|
11922 | *
|
---|
11923 | * Instruction Set & Groups: mortlach_multi2_z_za_int_mm / mortlach_multi_array_2a / sme / A64
|
---|
11924 | *
|
---|
11925 | */
|
---|
11926 |
|
---|
11927 | /* ADD ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zm1>.<T>-<Zm2>.<T> } (ffbf9c38/c1a01c10) */
|
---|
11928 | //#define IEM_INSTR_IMPL_A64__add_za_zw_2x2(off3, S, Zm, Rv, sz)
|
---|
11929 |
|
---|
11930 |
|
---|
11931 | /* SUB ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zm1>.<T>-<Zm2>.<T> } (ffbf9c38/c1a01c18) */
|
---|
11932 | //#define IEM_INSTR_IMPL_A64__sub_za_zw_2x2(off3, S, Zm, Rv, sz)
|
---|
11933 |
|
---|
11934 |
|
---|
11935 |
|
---|
11936 | /*
|
---|
11937 | *
|
---|
11938 | * Instruction Set & Groups: mortlach_multi2_z_za_mixed_dot_mm / mortlach_multi_array_2a / sme / A64
|
---|
11939 | *
|
---|
11940 | */
|
---|
11941 |
|
---|
11942 | /* USDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (ffe19c38/c1a01408) */
|
---|
11943 | //#define IEM_INSTR_IMPL_A64__usdot_za_zzw_s2x2(off3, Zn, Rv, Zm)
|
---|
11944 |
|
---|
11945 |
|
---|
11946 |
|
---|
11947 | /*
|
---|
11948 | *
|
---|
11949 | * Instruction Set & Groups: mortlach_multi2_z_za_mixed_dot_sm / mortlach_multi_array_1a / sme / A64
|
---|
11950 | *
|
---|
11951 | */
|
---|
11952 |
|
---|
11953 | /* USDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff09c18/c1201408) */
|
---|
11954 | //#define IEM_INSTR_IMPL_A64__usdot_za_zzv_s2x1(off3, U, Zn, Rv, Zm)
|
---|
11955 |
|
---|
11956 |
|
---|
11957 | /* SUDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff09c18/c1201418) */
|
---|
11958 | //#define IEM_INSTR_IMPL_A64__sudot_za_zzv_s2x1(off3, U, Zn, Rv, Zm)
|
---|
11959 |
|
---|
11960 |
|
---|
11961 |
|
---|
11962 | /*
|
---|
11963 | *
|
---|
11964 | * Instruction Set & Groups: mortlach_multi2_za_extract_ctg / mortlach_ext / sme / A64
|
---|
11965 | *
|
---|
11966 | */
|
---|
11967 |
|
---|
11968 | /* MOVA { <Zd1>.D-<Zd2>.D }, ZA.D[<Wv>, <offs>{, VGx2}] (ffff9f01/c0060800) */
|
---|
11969 | //#define IEM_INSTR_IMPL_A64__mova_mz_za2_1(Zd, off3, Rv)
|
---|
11970 |
|
---|
11971 |
|
---|
11972 |
|
---|
11973 | /*
|
---|
11974 | *
|
---|
11975 | * Instruction Set & Groups: mortlach_multi2_za_extract_zero / mortlach_ext / sme / A64
|
---|
11976 | *
|
---|
11977 | */
|
---|
11978 |
|
---|
11979 | /* MOVAZ { <Zd1>.D-<Zd2>.D }, ZA.D[<Wv>, <offs>{, VGx2}] (ffff9f01/c0060a00) */
|
---|
11980 | //#define IEM_INSTR_IMPL_A64__movaz_mz_za2_1(Zd, off3, Rv)
|
---|
11981 |
|
---|
11982 |
|
---|
11983 |
|
---|
11984 | /*
|
---|
11985 | *
|
---|
11986 | * Instruction Set & Groups: mortlach_multi2_za_insert_ctg / mortlach_ins / sme / A64
|
---|
11987 | *
|
---|
11988 | */
|
---|
11989 |
|
---|
11990 | /* MOVA ZA.D[<Wv>, <offs>{, VGx2}], { <Zn1>.D-<Zn2>.D } (ffff9c38/c0040800) */
|
---|
11991 | //#define IEM_INSTR_IMPL_A64__mova_za_mz2_1(off3, Zn, Rv)
|
---|
11992 |
|
---|
11993 |
|
---|
11994 |
|
---|
11995 | /*
|
---|
11996 | *
|
---|
11997 | * Instruction Set & Groups: mortlach_multi2_zz_za_f16_mm / mortlach_multi_array_2a / sme / A64
|
---|
11998 | *
|
---|
11999 | */
|
---|
12000 |
|
---|
12001 | /* FMLA ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c38/c1a01008) */
|
---|
12002 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzw_2x2_16(off3, S, Zn, Rv, Zm)
|
---|
12003 |
|
---|
12004 |
|
---|
12005 | /* BFMLA ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c38/c1e01008) */
|
---|
12006 | //#define IEM_INSTR_IMPL_A64__bfmla_za_zzw_2x2_16(off3, S, Zn, Rv, Zm)
|
---|
12007 |
|
---|
12008 |
|
---|
12009 | /* FMLS ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c38/c1a01018) */
|
---|
12010 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzw_2x2_16(off3, S, Zn, Rv, Zm)
|
---|
12011 |
|
---|
12012 |
|
---|
12013 | /* BFMLS ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c38/c1e01018) */
|
---|
12014 | //#define IEM_INSTR_IMPL_A64__bfmls_za_zzw_2x2_16(off3, S, Zn, Rv, Zm)
|
---|
12015 |
|
---|
12016 |
|
---|
12017 |
|
---|
12018 | /*
|
---|
12019 | *
|
---|
12020 | * Instruction Set & Groups: mortlach_multi2_zz_za_f16_sm / mortlach_multi_array_1a / sme / A64
|
---|
12021 | *
|
---|
12022 | */
|
---|
12023 |
|
---|
12024 | /* FMLA ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c18/c1201c00) */
|
---|
12025 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzv_2x1_16(off3, S, Zn, Rv, Zm)
|
---|
12026 |
|
---|
12027 |
|
---|
12028 | /* BFMLA ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c18/c1601c00) */
|
---|
12029 | //#define IEM_INSTR_IMPL_A64__bfmla_za_zzv_2x1_16(off3, S, Zn, Rv, Zm)
|
---|
12030 |
|
---|
12031 |
|
---|
12032 | /* FMLS ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c18/c1201c08) */
|
---|
12033 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzv_2x1_16(off3, S, Zn, Rv, Zm)
|
---|
12034 |
|
---|
12035 |
|
---|
12036 | /* BFMLS ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c18/c1601c08) */
|
---|
12037 | //#define IEM_INSTR_IMPL_A64__bfmls_za_zzv_2x1_16(off3, S, Zn, Rv, Zm)
|
---|
12038 |
|
---|
12039 |
|
---|
12040 |
|
---|
12041 | /*
|
---|
12042 | *
|
---|
12043 | * Instruction Set & Groups: mortlach_multi2_zz_za_float_mm / mortlach_multi_array_2a / sme / A64
|
---|
12044 | *
|
---|
12045 | */
|
---|
12046 |
|
---|
12047 | /* FMLA ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<T>-<Zn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ffa19c38/c1a01800) */
|
---|
12048 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzw_2x2(off3, S, Zn, Rv, Zm, sz)
|
---|
12049 |
|
---|
12050 |
|
---|
12051 | /* FMLS ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<T>-<Zn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ffa19c38/c1a01808) */
|
---|
12052 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzw_2x2(off3, S, Zn, Rv, Zm, sz)
|
---|
12053 |
|
---|
12054 |
|
---|
12055 |
|
---|
12056 | /*
|
---|
12057 | *
|
---|
12058 | * Instruction Set & Groups: mortlach_multi2_zz_za_float_sm / mortlach_multi_array_1a / sme / A64
|
---|
12059 | *
|
---|
12060 | */
|
---|
12061 |
|
---|
12062 | /* FMLA ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<T>-<Zn2>.<T> }, <Zm>.<T> (ffb09c18/c1201800) */
|
---|
12063 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzv_2x1(off3, S, Zn, Rv, Zm, sz)
|
---|
12064 |
|
---|
12065 |
|
---|
12066 | /* FMLS ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<T>-<Zn2>.<T> }, <Zm>.<T> (ffb09c18/c1201808) */
|
---|
12067 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzv_2x1(off3, S, Zn, Rv, Zm, sz)
|
---|
12068 |
|
---|
12069 |
|
---|
12070 |
|
---|
12071 | /*
|
---|
12072 | *
|
---|
12073 | * Instruction Set & Groups: mortlach_multi2_zz_za_fma_long_mm / mortlach_multi_array_2a / sme / A64
|
---|
12074 | *
|
---|
12075 | */
|
---|
12076 |
|
---|
12077 | /* BFMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c3c/c1a00810) */
|
---|
12078 | //#define IEM_INSTR_IMPL_A64__bfmlal_za_zzw_2x2(off2, S, Zn, Rv, Zm)
|
---|
12079 |
|
---|
12080 |
|
---|
12081 | /* FMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c3c/c1a00800) */
|
---|
12082 | //#define IEM_INSTR_IMPL_A64__fmlal_za_zzw_2x2(off2, S, Zn, Rv, Zm)
|
---|
12083 |
|
---|
12084 |
|
---|
12085 | /* BFMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c3c/c1a00818) */
|
---|
12086 | //#define IEM_INSTR_IMPL_A64__bfmlsl_za_zzw_2x2(off2, S, Zn, Rv, Zm)
|
---|
12087 |
|
---|
12088 |
|
---|
12089 | /* FMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c3c/c1a00808) */
|
---|
12090 | //#define IEM_INSTR_IMPL_A64__fmlsl_za_zzw_2x2(off2, S, Zn, Rv, Zm)
|
---|
12091 |
|
---|
12092 |
|
---|
12093 |
|
---|
12094 | /*
|
---|
12095 | *
|
---|
12096 | * Instruction Set & Groups: mortlach_multi2_zz_za_fma_long_sm / mortlach_multi_array_1a / sme / A64
|
---|
12097 | *
|
---|
12098 | */
|
---|
12099 |
|
---|
12100 | /* BFMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c1c/c1200810) */
|
---|
12101 | //#define IEM_INSTR_IMPL_A64__bfmlal_za_zzv_2x1(off2, S, Zn, Rv, Zm)
|
---|
12102 |
|
---|
12103 |
|
---|
12104 | /* FMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c1c/c1200800) */
|
---|
12105 | //#define IEM_INSTR_IMPL_A64__fmlal_za_zzv_2x1(off2, S, Zn, Rv, Zm)
|
---|
12106 |
|
---|
12107 |
|
---|
12108 | /* FMLAL ZA.H[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff09c1c/c1200804) */
|
---|
12109 | //#define IEM_INSTR_IMPL_A64__fmlal_za_z8z8v_2x1(off2, Zn, Rv, Zm)
|
---|
12110 |
|
---|
12111 |
|
---|
12112 | /* BFMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c1c/c1200818) */
|
---|
12113 | //#define IEM_INSTR_IMPL_A64__bfmlsl_za_zzv_2x1(off2, S, Zn, Rv, Zm)
|
---|
12114 |
|
---|
12115 |
|
---|
12116 | /* FMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c1c/c1200808) */
|
---|
12117 | //#define IEM_INSTR_IMPL_A64__fmlsl_za_zzv_2x1(off2, S, Zn, Rv, Zm)
|
---|
12118 |
|
---|
12119 |
|
---|
12120 |
|
---|
12121 | /*
|
---|
12122 | *
|
---|
12123 | * Instruction Set & Groups: mortlach_multi2_zz_za_fp8_fma_long_long_mm / mortlach_multi_array_2a / sme / A64
|
---|
12124 | *
|
---|
12125 | */
|
---|
12126 |
|
---|
12127 | /* FMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (ffe19c3e/c1a00020) */
|
---|
12128 | //#define IEM_INSTR_IMPL_A64__fmlall_za32_z8z8w_2x2(o1, Zn, Rv, Zm)
|
---|
12129 |
|
---|
12130 |
|
---|
12131 |
|
---|
12132 | /*
|
---|
12133 | *
|
---|
12134 | * Instruction Set & Groups: mortlach_multi2_zz_za_fp8_fma_long_long_sm / mortlach_multi_array_1a / sme / A64
|
---|
12135 | *
|
---|
12136 | */
|
---|
12137 |
|
---|
12138 | /* FMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff09c1e/c1200002) */
|
---|
12139 | //#define IEM_INSTR_IMPL_A64__fmlall_za32_z8z8v_2x1(o1, Zn, Rv, Zm)
|
---|
12140 |
|
---|
12141 |
|
---|
12142 |
|
---|
12143 | /*
|
---|
12144 | *
|
---|
12145 | * Instruction Set & Groups: mortlach_multi2_zz_za_fp8_fma_long_mm / mortlach_multi_array_2a / sme / A64
|
---|
12146 | *
|
---|
12147 | */
|
---|
12148 |
|
---|
12149 | /* FMLAL ZA.H[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (ffe19c3c/c1a00820) */
|
---|
12150 | //#define IEM_INSTR_IMPL_A64__fmlal_za_z8z8w_2x2(off2, Zn, Rv, Zm)
|
---|
12151 |
|
---|
12152 |
|
---|
12153 |
|
---|
12154 | /*
|
---|
12155 | *
|
---|
12156 | * Instruction Set & Groups: mortlach_multi2_zz_za_int_mm / mortlach_multi_array_2a / sme / A64
|
---|
12157 | *
|
---|
12158 | */
|
---|
12159 |
|
---|
12160 | /* ADD ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<T>-<Zn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ffa19c38/c1a01810) */
|
---|
12161 | //#define IEM_INSTR_IMPL_A64__add_za_zzw_2x2(off3, S, Zn, Rv, Zm, sz)
|
---|
12162 |
|
---|
12163 |
|
---|
12164 | /* SUB ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<T>-<Zn2>.<T> }, { <Zm1>.<T>-<Zm2>.<T> } (ffa19c38/c1a01818) */
|
---|
12165 | //#define IEM_INSTR_IMPL_A64__sub_za_zzw_2x2(off3, S, Zn, Rv, Zm, sz)
|
---|
12166 |
|
---|
12167 |
|
---|
12168 |
|
---|
12169 | /*
|
---|
12170 | *
|
---|
12171 | * Instruction Set & Groups: mortlach_multi2_zz_za_int_sm / mortlach_multi_array_1a / sme / A64
|
---|
12172 | *
|
---|
12173 | */
|
---|
12174 |
|
---|
12175 | /* ADD ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<T>-<Zn2>.<T> }, <Zm>.<T> (ffb09c18/c1201810) */
|
---|
12176 | //#define IEM_INSTR_IMPL_A64__add_za_zzv_2x1(off3, S, Zn, Rv, Zm, sz)
|
---|
12177 |
|
---|
12178 |
|
---|
12179 | /* SUB ZA.<T>[<Wv>, <offs>{, VGx2}], { <Zn1>.<T>-<Zn2>.<T> }, <Zm>.<T> (ffb09c18/c1201818) */
|
---|
12180 | //#define IEM_INSTR_IMPL_A64__sub_za_zzv_2x1(off3, S, Zn, Rv, Zm, sz)
|
---|
12181 |
|
---|
12182 |
|
---|
12183 |
|
---|
12184 | /*
|
---|
12185 | *
|
---|
12186 | * Instruction Set & Groups: mortlach_multi2_zz_za_mla_long_long_mm / mortlach_multi_array_2a / sme / A64
|
---|
12187 | *
|
---|
12188 | */
|
---|
12189 |
|
---|
12190 | /* SMLALL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, { <Zm1>.<Tb>-<Zm2>.<Tb> } (ffa19c3e/c1a00000) */
|
---|
12191 | //#define IEM_INSTR_IMPL_A64__smlall_za_zzw_2x2(o1, S, U, Zn, Rv, Zm, sz)
|
---|
12192 |
|
---|
12193 |
|
---|
12194 | /* USMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, { <Zm1>.B-<Zm2>.B } (ffe19c3e/c1a00004) */
|
---|
12195 | //#define IEM_INSTR_IMPL_A64__usmlall_za_zzw_s2x2(o1, Zn, Rv, Zm)
|
---|
12196 |
|
---|
12197 |
|
---|
12198 | /* SMLSLL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, { <Zm1>.<Tb>-<Zm2>.<Tb> } (ffa19c3e/c1a00008) */
|
---|
12199 | //#define IEM_INSTR_IMPL_A64__smlsll_za_zzw_2x2(o1, S, U, Zn, Rv, Zm, sz)
|
---|
12200 |
|
---|
12201 |
|
---|
12202 | /* UMLALL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, { <Zm1>.<Tb>-<Zm2>.<Tb> } (ffa19c3e/c1a00010) */
|
---|
12203 | //#define IEM_INSTR_IMPL_A64__umlall_za_zzw_2x2(o1, S, U, Zn, Rv, Zm, sz)
|
---|
12204 |
|
---|
12205 |
|
---|
12206 | /* UMLSLL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, { <Zm1>.<Tb>-<Zm2>.<Tb> } (ffa19c3e/c1a00018) */
|
---|
12207 | //#define IEM_INSTR_IMPL_A64__umlsll_za_zzw_2x2(o1, S, U, Zn, Rv, Zm, sz)
|
---|
12208 |
|
---|
12209 |
|
---|
12210 |
|
---|
12211 | /*
|
---|
12212 | *
|
---|
12213 | * Instruction Set & Groups: mortlach_multi2_zz_za_mla_long_long_sm / mortlach_multi_array_1a / sme / A64
|
---|
12214 | *
|
---|
12215 | */
|
---|
12216 |
|
---|
12217 | /* SMLALL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, <Zm>.<Tb> (ffb09c1e/c1200000) */
|
---|
12218 | //#define IEM_INSTR_IMPL_A64__smlall_za_zzv_2x1(o1, S, U, Zn, Rv, Zm, sz)
|
---|
12219 |
|
---|
12220 |
|
---|
12221 | /* USMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff09c1e/c1200004) */
|
---|
12222 | //#define IEM_INSTR_IMPL_A64__usmlall_za_zzv_s2x1(o1, U, Zn, Rv, Zm)
|
---|
12223 |
|
---|
12224 |
|
---|
12225 | /* SMLSLL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, <Zm>.<Tb> (ffb09c1e/c1200008) */
|
---|
12226 | //#define IEM_INSTR_IMPL_A64__smlsll_za_zzv_2x1(o1, S, U, Zn, Rv, Zm, sz)
|
---|
12227 |
|
---|
12228 |
|
---|
12229 | /* UMLALL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, <Zm>.<Tb> (ffb09c1e/c1200010) */
|
---|
12230 | //#define IEM_INSTR_IMPL_A64__umlall_za_zzv_2x1(o1, S, U, Zn, Rv, Zm, sz)
|
---|
12231 |
|
---|
12232 |
|
---|
12233 | /* SUMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B (fff09c1e/c1200014) */
|
---|
12234 | //#define IEM_INSTR_IMPL_A64__sumlall_za_zzv_s2x1(o1, U, Zn, Rv, Zm)
|
---|
12235 |
|
---|
12236 |
|
---|
12237 | /* UMLSLL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx2}], { <Zn1>.<Tb>-<Zn2>.<Tb> }, <Zm>.<Tb> (ffb09c1e/c1200018) */
|
---|
12238 | //#define IEM_INSTR_IMPL_A64__umlsll_za_zzv_2x1(o1, S, U, Zn, Rv, Zm, sz)
|
---|
12239 |
|
---|
12240 |
|
---|
12241 |
|
---|
12242 | /*
|
---|
12243 | *
|
---|
12244 | * Instruction Set & Groups: mortlach_multi2_zz_za_mla_long_mm / mortlach_multi_array_2a / sme / A64
|
---|
12245 | *
|
---|
12246 | */
|
---|
12247 |
|
---|
12248 | /* SMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c3c/c1e00800) */
|
---|
12249 | //#define IEM_INSTR_IMPL_A64__smlal_za_zzw_2x2(off2, S, U, Zn, Rv, Zm)
|
---|
12250 |
|
---|
12251 |
|
---|
12252 | /* SMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c3c/c1e00808) */
|
---|
12253 | //#define IEM_INSTR_IMPL_A64__smlsl_za_zzw_2x2(off2, S, U, Zn, Rv, Zm)
|
---|
12254 |
|
---|
12255 |
|
---|
12256 | /* UMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c3c/c1e00810) */
|
---|
12257 | //#define IEM_INSTR_IMPL_A64__umlal_za_zzw_2x2(off2, S, U, Zn, Rv, Zm)
|
---|
12258 |
|
---|
12259 |
|
---|
12260 | /* UMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, { <Zm1>.H-<Zm2>.H } (ffe19c3c/c1e00818) */
|
---|
12261 | //#define IEM_INSTR_IMPL_A64__umlsl_za_zzw_2x2(off2, S, U, Zn, Rv, Zm)
|
---|
12262 |
|
---|
12263 |
|
---|
12264 |
|
---|
12265 | /*
|
---|
12266 | *
|
---|
12267 | * Instruction Set & Groups: mortlach_multi2_zz_za_mla_long_sm / mortlach_multi_array_1a / sme / A64
|
---|
12268 | *
|
---|
12269 | */
|
---|
12270 |
|
---|
12271 | /* SMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c1c/c1600800) */
|
---|
12272 | //#define IEM_INSTR_IMPL_A64__smlal_za_zzv_2x1(off2, S, U, Zn, Rv, Zm)
|
---|
12273 |
|
---|
12274 |
|
---|
12275 | /* SMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c1c/c1600808) */
|
---|
12276 | //#define IEM_INSTR_IMPL_A64__smlsl_za_zzv_2x1(off2, S, U, Zn, Rv, Zm)
|
---|
12277 |
|
---|
12278 |
|
---|
12279 | /* UMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c1c/c1600810) */
|
---|
12280 | //#define IEM_INSTR_IMPL_A64__umlal_za_zzv_2x1(off2, S, U, Zn, Rv, Zm)
|
---|
12281 |
|
---|
12282 |
|
---|
12283 | /* UMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H (fff09c1c/c1600818) */
|
---|
12284 | //#define IEM_INSTR_IMPL_A64__umlsl_za_zzv_2x1(off2, S, U, Zn, Rv, Zm)
|
---|
12285 |
|
---|
12286 |
|
---|
12287 |
|
---|
12288 | /*
|
---|
12289 | *
|
---|
12290 | * Instruction Set & Groups: mortlach_multi2_zza_idx_d / mortlach_multi_indexed_2 / sme / A64
|
---|
12291 | *
|
---|
12292 | */
|
---|
12293 |
|
---|
12294 | /* FMLA ZA.D[<Wv>, <offs>{, VGx2}], { <Zn1>.D-<Zn2>.D }, <Zm>.D[<index>] (fff09838/c1d00000) */
|
---|
12295 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzi_d2xi(off3, S, Zn, i1, Rv, Zm)
|
---|
12296 |
|
---|
12297 |
|
---|
12298 | /* SDOT ZA.D[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09838/c1d00008) */
|
---|
12299 | //#define IEM_INSTR_IMPL_A64__sdot_za_zzi_d2xi(off3, U, Zn, i1, Rv, Zm)
|
---|
12300 |
|
---|
12301 |
|
---|
12302 | /* FMLS ZA.D[<Wv>, <offs>{, VGx2}], { <Zn1>.D-<Zn2>.D }, <Zm>.D[<index>] (fff09838/c1d00010) */
|
---|
12303 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzi_d2xi(off3, S, Zn, i1, Rv, Zm)
|
---|
12304 |
|
---|
12305 |
|
---|
12306 | /* UDOT ZA.D[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09838/c1d00018) */
|
---|
12307 | //#define IEM_INSTR_IMPL_A64__udot_za_zzi_d2xi(off3, U, Zn, i1, Rv, Zm)
|
---|
12308 |
|
---|
12309 |
|
---|
12310 |
|
---|
12311 | /*
|
---|
12312 | *
|
---|
12313 | * Instruction Set & Groups: mortlach_multi2_zza_idx_h / mortlach_multi_indexed_2 / sme / A64
|
---|
12314 | *
|
---|
12315 | */
|
---|
12316 |
|
---|
12317 | /* FMLA ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09030/c1101000) */
|
---|
12318 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzi_h2xi(off3, i3l, S, Zn, i3h, Rv, Zm)
|
---|
12319 |
|
---|
12320 |
|
---|
12321 | /* BFMLA ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09030/c1101020) */
|
---|
12322 | //#define IEM_INSTR_IMPL_A64__bfmla_za_zzi_h2xi(off3, i3l, S, Zn, i3h, Rv, Zm)
|
---|
12323 |
|
---|
12324 |
|
---|
12325 | /* FMLS ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09030/c1101010) */
|
---|
12326 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzi_h2xi(off3, i3l, S, Zn, i3h, Rv, Zm)
|
---|
12327 |
|
---|
12328 |
|
---|
12329 | /* BFMLS ZA.H[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09030/c1101030) */
|
---|
12330 | //#define IEM_INSTR_IMPL_A64__bfmls_za_zzi_h2xi(off3, i3l, S, Zn, i3h, Rv, Zm)
|
---|
12331 |
|
---|
12332 |
|
---|
12333 |
|
---|
12334 | /*
|
---|
12335 | *
|
---|
12336 | * Instruction Set & Groups: mortlach_multi2_zza_idx_s / mortlach_multi_indexed_2 / sme / A64
|
---|
12337 | *
|
---|
12338 | */
|
---|
12339 |
|
---|
12340 | /* FMLA ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.S-<Zn2>.S }, <Zm>.S[<index>] (fff09038/c1500000) */
|
---|
12341 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzi_s2xi(off3, S, Zn, i2, Rv, Zm)
|
---|
12342 |
|
---|
12343 |
|
---|
12344 | /* FVDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1500008) */
|
---|
12345 | //#define IEM_INSTR_IMPL_A64__fvdot_za_zzi_2xi(off3, Zn, i2, Rv, Zm)
|
---|
12346 |
|
---|
12347 |
|
---|
12348 | /* BFVDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1500018) */
|
---|
12349 | //#define IEM_INSTR_IMPL_A64__bfvdot_za_zzi_2xi(off3, Zn, i2, Rv, Zm)
|
---|
12350 |
|
---|
12351 |
|
---|
12352 | /* SVDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1500020) */
|
---|
12353 | //#define IEM_INSTR_IMPL_A64__svdot_za32_zzi_2xi(off3, U, Zn, i2, Rv, Zm)
|
---|
12354 |
|
---|
12355 |
|
---|
12356 | /* FDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1500038) */
|
---|
12357 | //#define IEM_INSTR_IMPL_A64__fdot_za32_z8z8i_2xi(off3, Zn, i2, Rv, Zm)
|
---|
12358 |
|
---|
12359 |
|
---|
12360 | /* SDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1501000) */
|
---|
12361 | //#define IEM_INSTR_IMPL_A64__sdot_za32_zzi_2xi(off3, U, Zn, i2, Rv, Zm)
|
---|
12362 |
|
---|
12363 |
|
---|
12364 | /* FDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1501008) */
|
---|
12365 | //#define IEM_INSTR_IMPL_A64__fdot_za_zzi_2xi(off3, Zn, i2, Rv, Zm)
|
---|
12366 |
|
---|
12367 |
|
---|
12368 | /* BFDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1501018) */
|
---|
12369 | //#define IEM_INSTR_IMPL_A64__bfdot_za_zzi_2xi(off3, Zn, i2, Rv, Zm)
|
---|
12370 |
|
---|
12371 |
|
---|
12372 | /* SDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1501020) */
|
---|
12373 | //#define IEM_INSTR_IMPL_A64__sdot_za_zzi_s2xi(off3, U, Zn, i2, Rv, Zm)
|
---|
12374 |
|
---|
12375 |
|
---|
12376 | /* USDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1501028) */
|
---|
12377 | //#define IEM_INSTR_IMPL_A64__usdot_za_zzi_s2xi(off3, U, Zn, i2, Rv, Zm)
|
---|
12378 |
|
---|
12379 |
|
---|
12380 | /* FMLS ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.S-<Zn2>.S }, <Zm>.S[<index>] (fff09038/c1500010) */
|
---|
12381 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzi_s2xi(off3, S, Zn, i2, Rv, Zm)
|
---|
12382 |
|
---|
12383 |
|
---|
12384 | /* UVDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1500030) */
|
---|
12385 | //#define IEM_INSTR_IMPL_A64__uvdot_za32_zzi_2xi(off3, U, Zn, i2, Rv, Zm)
|
---|
12386 |
|
---|
12387 |
|
---|
12388 | /* UDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.H-<Zn2>.H }, <Zm>.H[<index>] (fff09038/c1501010) */
|
---|
12389 | //#define IEM_INSTR_IMPL_A64__udot_za32_zzi_2xi(off3, U, Zn, i2, Rv, Zm)
|
---|
12390 |
|
---|
12391 |
|
---|
12392 | /* UDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1501030) */
|
---|
12393 | //#define IEM_INSTR_IMPL_A64__udot_za_zzi_s2xi(off3, U, Zn, i2, Rv, Zm)
|
---|
12394 |
|
---|
12395 |
|
---|
12396 | /* SUDOT ZA.S[<Wv>, <offs>{, VGx2}], { <Zn1>.B-<Zn2>.B }, <Zm>.B[<index>] (fff09038/c1501038) */
|
---|
12397 | //#define IEM_INSTR_IMPL_A64__sudot_za_zzi_s2xi(off3, U, Zn, i2, Rv, Zm)
|
---|
12398 |
|
---|
12399 |
|
---|
12400 |
|
---|
12401 | /*
|
---|
12402 | *
|
---|
12403 | * Instruction Set & Groups: mortlach_multi4_clamp_int / mortlach_multi_sve_3 / sme / A64
|
---|
12404 | *
|
---|
12405 | */
|
---|
12406 |
|
---|
12407 | /* SCLAMP { <Zd1>.<T>-<Zd4>.<T> }, <Zn>.<T>, <Zm>.<T> (ff20fc03/c120cc00) */
|
---|
12408 | //#define IEM_INSTR_IMPL_A64__sclamp_mz_zz_4(U, Zd, Zn, Zm, size)
|
---|
12409 |
|
---|
12410 |
|
---|
12411 | /* UCLAMP { <Zd1>.<T>-<Zd4>.<T> }, <Zn>.<T>, <Zm>.<T> (ff20fc03/c120cc01) */
|
---|
12412 | //#define IEM_INSTR_IMPL_A64__uclamp_mz_zz_4(U, Zd, Zn, Zm, size)
|
---|
12413 |
|
---|
12414 |
|
---|
12415 |
|
---|
12416 | /*
|
---|
12417 | *
|
---|
12418 | * Instruction Set & Groups: mortlach_multi4_cld_cldnt_si_ctg / mortlach_multi_mem_ctg / sme / A64
|
---|
12419 | *
|
---|
12420 | */
|
---|
12421 |
|
---|
12422 | /* LD1B { <Zt1>.B-<Zt4>.B }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a0408000) */
|
---|
12423 | //#define IEM_INSTR_IMPL_A64__ld1b_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12424 |
|
---|
12425 |
|
---|
12426 | /* LDNT1B { <Zt1>.B-<Zt4>.B }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a0408001) */
|
---|
12427 | //#define IEM_INSTR_IMPL_A64__ldnt1b_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12428 |
|
---|
12429 |
|
---|
12430 | /* LD1H { <Zt1>.H-<Zt4>.H }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a040a000) */
|
---|
12431 | //#define IEM_INSTR_IMPL_A64__ld1h_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12432 |
|
---|
12433 |
|
---|
12434 | /* LDNT1H { <Zt1>.H-<Zt4>.H }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a040a001) */
|
---|
12435 | //#define IEM_INSTR_IMPL_A64__ldnt1h_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12436 |
|
---|
12437 |
|
---|
12438 | /* LD1W { <Zt1>.S-<Zt4>.S }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a040c000) */
|
---|
12439 | //#define IEM_INSTR_IMPL_A64__ld1w_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12440 |
|
---|
12441 |
|
---|
12442 | /* LDNT1W { <Zt1>.S-<Zt4>.S }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a040c001) */
|
---|
12443 | //#define IEM_INSTR_IMPL_A64__ldnt1w_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12444 |
|
---|
12445 |
|
---|
12446 | /* LD1D { <Zt1>.D-<Zt4>.D }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a040e000) */
|
---|
12447 | //#define IEM_INSTR_IMPL_A64__ld1d_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12448 |
|
---|
12449 |
|
---|
12450 | /* LDNT1D { <Zt1>.D-<Zt4>.D }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a040e001) */
|
---|
12451 | //#define IEM_INSTR_IMPL_A64__ldnt1d_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12452 |
|
---|
12453 |
|
---|
12454 |
|
---|
12455 | /*
|
---|
12456 | *
|
---|
12457 | * Instruction Set & Groups: mortlach_multi4_cld_cldnt_si_nctg / mortlach_multi_mem_nctg / sme / A64
|
---|
12458 | *
|
---|
12459 | */
|
---|
12460 |
|
---|
12461 | /* LD1B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a1408000) */
|
---|
12462 | //#define IEM_INSTR_IMPL_A64__ld1b_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12463 |
|
---|
12464 |
|
---|
12465 | /* LDNT1B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a1408008) */
|
---|
12466 | //#define IEM_INSTR_IMPL_A64__ldnt1b_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12467 |
|
---|
12468 |
|
---|
12469 | /* LD1H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a140a000) */
|
---|
12470 | //#define IEM_INSTR_IMPL_A64__ld1h_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12471 |
|
---|
12472 |
|
---|
12473 | /* LDNT1H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a140a008) */
|
---|
12474 | //#define IEM_INSTR_IMPL_A64__ldnt1h_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12475 |
|
---|
12476 |
|
---|
12477 | /* LD1W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a140c000) */
|
---|
12478 | //#define IEM_INSTR_IMPL_A64__ld1w_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12479 |
|
---|
12480 |
|
---|
12481 | /* LDNT1W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a140c008) */
|
---|
12482 | //#define IEM_INSTR_IMPL_A64__ldnt1w_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12483 |
|
---|
12484 |
|
---|
12485 | /* LD1D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a140e000) */
|
---|
12486 | //#define IEM_INSTR_IMPL_A64__ld1d_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12487 |
|
---|
12488 |
|
---|
12489 | /* LDNT1D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <PNg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a140e008) */
|
---|
12490 | //#define IEM_INSTR_IMPL_A64__ldnt1d_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12491 |
|
---|
12492 |
|
---|
12493 |
|
---|
12494 | /*
|
---|
12495 | *
|
---|
12496 | * Instruction Set & Groups: mortlach_multi4_cld_cldnt_ss_ctg / mortlach_multi_mem_ctg / sme / A64
|
---|
12497 | *
|
---|
12498 | */
|
---|
12499 |
|
---|
12500 | /* LD1B { <Zt1>.B-<Zt4>.B }, <PNg>/Z, [<Xn|SP>, <Xm>] (ffe0e003/a0008000) */
|
---|
12501 | //#define IEM_INSTR_IMPL_A64__ld1b_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12502 |
|
---|
12503 |
|
---|
12504 | /* LDNT1B { <Zt1>.B-<Zt4>.B }, <PNg>/Z, [<Xn|SP>, <Xm>] (ffe0e003/a0008001) */
|
---|
12505 | //#define IEM_INSTR_IMPL_A64__ldnt1b_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12506 |
|
---|
12507 |
|
---|
12508 | /* LD1H { <Zt1>.H-<Zt4>.H }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e003/a000a000) */
|
---|
12509 | //#define IEM_INSTR_IMPL_A64__ld1h_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12510 |
|
---|
12511 |
|
---|
12512 | /* LDNT1H { <Zt1>.H-<Zt4>.H }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e003/a000a001) */
|
---|
12513 | //#define IEM_INSTR_IMPL_A64__ldnt1h_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12514 |
|
---|
12515 |
|
---|
12516 | /* LD1W { <Zt1>.S-<Zt4>.S }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e003/a000c000) */
|
---|
12517 | //#define IEM_INSTR_IMPL_A64__ld1w_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12518 |
|
---|
12519 |
|
---|
12520 | /* LDNT1W { <Zt1>.S-<Zt4>.S }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e003/a000c001) */
|
---|
12521 | //#define IEM_INSTR_IMPL_A64__ldnt1w_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12522 |
|
---|
12523 |
|
---|
12524 | /* LD1D { <Zt1>.D-<Zt4>.D }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e003/a000e000) */
|
---|
12525 | //#define IEM_INSTR_IMPL_A64__ld1d_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12526 |
|
---|
12527 |
|
---|
12528 | /* LDNT1D { <Zt1>.D-<Zt4>.D }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e003/a000e001) */
|
---|
12529 | //#define IEM_INSTR_IMPL_A64__ldnt1d_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12530 |
|
---|
12531 |
|
---|
12532 |
|
---|
12533 | /*
|
---|
12534 | *
|
---|
12535 | * Instruction Set & Groups: mortlach_multi4_cld_cldnt_ss_nctg / mortlach_multi_mem_nctg / sme / A64
|
---|
12536 | *
|
---|
12537 | */
|
---|
12538 |
|
---|
12539 | /* LD1B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <PNg>/Z, [<Xn|SP>, <Xm>] (ffe0e00c/a1008000) */
|
---|
12540 | //#define IEM_INSTR_IMPL_A64__ld1b_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12541 |
|
---|
12542 |
|
---|
12543 | /* LDNT1B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <PNg>/Z, [<Xn|SP>, <Xm>] (ffe0e00c/a1008008) */
|
---|
12544 | //#define IEM_INSTR_IMPL_A64__ldnt1b_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12545 |
|
---|
12546 |
|
---|
12547 | /* LD1H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e00c/a100a000) */
|
---|
12548 | //#define IEM_INSTR_IMPL_A64__ld1h_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12549 |
|
---|
12550 |
|
---|
12551 | /* LDNT1H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e00c/a100a008) */
|
---|
12552 | //#define IEM_INSTR_IMPL_A64__ldnt1h_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12553 |
|
---|
12554 |
|
---|
12555 | /* LD1W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e00c/a100c000) */
|
---|
12556 | //#define IEM_INSTR_IMPL_A64__ld1w_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12557 |
|
---|
12558 |
|
---|
12559 | /* LDNT1W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e00c/a100c008) */
|
---|
12560 | //#define IEM_INSTR_IMPL_A64__ldnt1w_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12561 |
|
---|
12562 |
|
---|
12563 | /* LD1D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e00c/a100e000) */
|
---|
12564 | //#define IEM_INSTR_IMPL_A64__ld1d_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12565 |
|
---|
12566 |
|
---|
12567 | /* LDNT1D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <PNg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e00c/a100e008) */
|
---|
12568 | //#define IEM_INSTR_IMPL_A64__ldnt1d_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12569 |
|
---|
12570 |
|
---|
12571 |
|
---|
12572 | /*
|
---|
12573 | *
|
---|
12574 | * Instruction Set & Groups: mortlach_multi4_cst_cstnt_si_ctg / mortlach_multi_mem_ctg / sme / A64
|
---|
12575 | *
|
---|
12576 | */
|
---|
12577 |
|
---|
12578 | /* ST1B { <Zt1>.B-<Zt4>.B }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a0608000) */
|
---|
12579 | //#define IEM_INSTR_IMPL_A64__st1b_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12580 |
|
---|
12581 |
|
---|
12582 | /* STNT1B { <Zt1>.B-<Zt4>.B }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a0608001) */
|
---|
12583 | //#define IEM_INSTR_IMPL_A64__stnt1b_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12584 |
|
---|
12585 |
|
---|
12586 | /* ST1H { <Zt1>.H-<Zt4>.H }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a060a000) */
|
---|
12587 | //#define IEM_INSTR_IMPL_A64__st1h_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12588 |
|
---|
12589 |
|
---|
12590 | /* STNT1H { <Zt1>.H-<Zt4>.H }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a060a001) */
|
---|
12591 | //#define IEM_INSTR_IMPL_A64__stnt1h_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12592 |
|
---|
12593 |
|
---|
12594 | /* ST1W { <Zt1>.S-<Zt4>.S }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a060c000) */
|
---|
12595 | //#define IEM_INSTR_IMPL_A64__st1w_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12596 |
|
---|
12597 |
|
---|
12598 | /* STNT1W { <Zt1>.S-<Zt4>.S }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a060c001) */
|
---|
12599 | //#define IEM_INSTR_IMPL_A64__stnt1w_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12600 |
|
---|
12601 |
|
---|
12602 | /* ST1D { <Zt1>.D-<Zt4>.D }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a060e000) */
|
---|
12603 | //#define IEM_INSTR_IMPL_A64__st1d_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12604 |
|
---|
12605 |
|
---|
12606 | /* STNT1D { <Zt1>.D-<Zt4>.D }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e003/a060e001) */
|
---|
12607 | //#define IEM_INSTR_IMPL_A64__stnt1d_mz_p_bi_4(Zt, Rn, PNg, msz, imm4)
|
---|
12608 |
|
---|
12609 |
|
---|
12610 |
|
---|
12611 | /*
|
---|
12612 | *
|
---|
12613 | * Instruction Set & Groups: mortlach_multi4_cst_cstnt_si_nctg / mortlach_multi_mem_nctg / sme / A64
|
---|
12614 | *
|
---|
12615 | */
|
---|
12616 |
|
---|
12617 | /* ST1B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a1608000) */
|
---|
12618 | //#define IEM_INSTR_IMPL_A64__st1b_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12619 |
|
---|
12620 |
|
---|
12621 | /* STNT1B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a1608008) */
|
---|
12622 | //#define IEM_INSTR_IMPL_A64__stnt1b_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12623 |
|
---|
12624 |
|
---|
12625 | /* ST1H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a160a000) */
|
---|
12626 | //#define IEM_INSTR_IMPL_A64__st1h_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12627 |
|
---|
12628 |
|
---|
12629 | /* STNT1H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a160a008) */
|
---|
12630 | //#define IEM_INSTR_IMPL_A64__stnt1h_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12631 |
|
---|
12632 |
|
---|
12633 | /* ST1W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a160c000) */
|
---|
12634 | //#define IEM_INSTR_IMPL_A64__st1w_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12635 |
|
---|
12636 |
|
---|
12637 | /* STNT1W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a160c008) */
|
---|
12638 | //#define IEM_INSTR_IMPL_A64__stnt1w_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12639 |
|
---|
12640 |
|
---|
12641 | /* ST1D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a160e000) */
|
---|
12642 | //#define IEM_INSTR_IMPL_A64__st1d_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12643 |
|
---|
12644 |
|
---|
12645 | /* STNT1D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <PNg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e00c/a160e008) */
|
---|
12646 | //#define IEM_INSTR_IMPL_A64__stnt1d_mzx_p_bi_4x4(Zt, T, Rn, PNg, msz, imm4)
|
---|
12647 |
|
---|
12648 |
|
---|
12649 |
|
---|
12650 | /*
|
---|
12651 | *
|
---|
12652 | * Instruction Set & Groups: mortlach_multi4_cst_cstnt_ss_ctg / mortlach_multi_mem_ctg / sme / A64
|
---|
12653 | *
|
---|
12654 | */
|
---|
12655 |
|
---|
12656 | /* ST1B { <Zt1>.B-<Zt4>.B }, <PNg>, [<Xn|SP>, <Xm>] (ffe0e003/a0208000) */
|
---|
12657 | //#define IEM_INSTR_IMPL_A64__st1b_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12658 |
|
---|
12659 |
|
---|
12660 | /* STNT1B { <Zt1>.B-<Zt4>.B }, <PNg>, [<Xn|SP>, <Xm>] (ffe0e003/a0208001) */
|
---|
12661 | //#define IEM_INSTR_IMPL_A64__stnt1b_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12662 |
|
---|
12663 |
|
---|
12664 | /* ST1H { <Zt1>.H-<Zt4>.H }, <PNg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e003/a020a000) */
|
---|
12665 | //#define IEM_INSTR_IMPL_A64__st1h_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12666 |
|
---|
12667 |
|
---|
12668 | /* STNT1H { <Zt1>.H-<Zt4>.H }, <PNg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e003/a020a001) */
|
---|
12669 | //#define IEM_INSTR_IMPL_A64__stnt1h_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12670 |
|
---|
12671 |
|
---|
12672 | /* ST1W { <Zt1>.S-<Zt4>.S }, <PNg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e003/a020c000) */
|
---|
12673 | //#define IEM_INSTR_IMPL_A64__st1w_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12674 |
|
---|
12675 |
|
---|
12676 | /* STNT1W { <Zt1>.S-<Zt4>.S }, <PNg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e003/a020c001) */
|
---|
12677 | //#define IEM_INSTR_IMPL_A64__stnt1w_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12678 |
|
---|
12679 |
|
---|
12680 | /* ST1D { <Zt1>.D-<Zt4>.D }, <PNg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e003/a020e000) */
|
---|
12681 | //#define IEM_INSTR_IMPL_A64__st1d_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12682 |
|
---|
12683 |
|
---|
12684 | /* STNT1D { <Zt1>.D-<Zt4>.D }, <PNg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e003/a020e001) */
|
---|
12685 | //#define IEM_INSTR_IMPL_A64__stnt1d_mz_p_br_4(Zt, Rn, PNg, msz, Rm)
|
---|
12686 |
|
---|
12687 |
|
---|
12688 |
|
---|
12689 | /*
|
---|
12690 | *
|
---|
12691 | * Instruction Set & Groups: mortlach_multi4_cst_cstnt_ss_nctg / mortlach_multi_mem_nctg / sme / A64
|
---|
12692 | *
|
---|
12693 | */
|
---|
12694 |
|
---|
12695 | /* ST1B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <PNg>, [<Xn|SP>, <Xm>] (ffe0e00c/a1208000) */
|
---|
12696 | //#define IEM_INSTR_IMPL_A64__st1b_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12697 |
|
---|
12698 |
|
---|
12699 | /* STNT1B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <PNg>, [<Xn|SP>, <Xm>] (ffe0e00c/a1208008) */
|
---|
12700 | //#define IEM_INSTR_IMPL_A64__stnt1b_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12701 |
|
---|
12702 |
|
---|
12703 | /* ST1H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <PNg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e00c/a120a000) */
|
---|
12704 | //#define IEM_INSTR_IMPL_A64__st1h_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12705 |
|
---|
12706 |
|
---|
12707 | /* STNT1H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <PNg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e00c/a120a008) */
|
---|
12708 | //#define IEM_INSTR_IMPL_A64__stnt1h_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12709 |
|
---|
12710 |
|
---|
12711 | /* ST1W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <PNg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e00c/a120c000) */
|
---|
12712 | //#define IEM_INSTR_IMPL_A64__st1w_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12713 |
|
---|
12714 |
|
---|
12715 | /* STNT1W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <PNg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e00c/a120c008) */
|
---|
12716 | //#define IEM_INSTR_IMPL_A64__stnt1w_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12717 |
|
---|
12718 |
|
---|
12719 | /* ST1D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <PNg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e00c/a120e000) */
|
---|
12720 | //#define IEM_INSTR_IMPL_A64__st1d_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12721 |
|
---|
12722 |
|
---|
12723 | /* STNT1D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <PNg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e00c/a120e008) */
|
---|
12724 | //#define IEM_INSTR_IMPL_A64__stnt1d_mzx_p_br_4x4(Zt, T, Rn, PNg, msz, Rm)
|
---|
12725 |
|
---|
12726 |
|
---|
12727 |
|
---|
12728 | /*
|
---|
12729 | *
|
---|
12730 | * Instruction Set & Groups: mortlach_multi4_extract_ctg / mortlach_ext / sme / A64
|
---|
12731 | *
|
---|
12732 | */
|
---|
12733 |
|
---|
12734 | /* MOVA { <Zd1>.B-<Zd4>.B }, ZA0<HV>.B[<Ws>, <offs1>:<offs4>] (ffff1f83/c0060400) */
|
---|
12735 | //#define IEM_INSTR_IMPL_A64__mova_mz4_za_b1(Zd, off2, Rs, V)
|
---|
12736 |
|
---|
12737 |
|
---|
12738 | /* MOVA { <Zd1>.H-<Zd4>.H }, <ZAn><HV>.H[<Ws>, <offs1>:<offs4>] (ffff1f83/c0460400) */
|
---|
12739 | //#define IEM_INSTR_IMPL_A64__mova_mz4_za_h1(Zd, o1, ZAn, Rs, V)
|
---|
12740 |
|
---|
12741 |
|
---|
12742 | /* MOVA { <Zd1>.S-<Zd4>.S }, <ZAn><HV>.S[<Ws>, <offs1>:<offs4>] (ffff1f83/c0860400) */
|
---|
12743 | //#define IEM_INSTR_IMPL_A64__mova_mz4_za_w1(Zd, ZAn, Rs, V)
|
---|
12744 |
|
---|
12745 |
|
---|
12746 | /* MOVA { <Zd1>.D-<Zd4>.D }, <ZAn><HV>.D[<Ws>, <offs1>:<offs4>] (ffff1f03/c0c60400) */
|
---|
12747 | //#define IEM_INSTR_IMPL_A64__mova_mz4_za_d1(Zd, ZAn, Rs, V)
|
---|
12748 |
|
---|
12749 |
|
---|
12750 |
|
---|
12751 | /*
|
---|
12752 | *
|
---|
12753 | * Instruction Set & Groups: mortlach_multi4_extract_zero / mortlach_ext / sme / A64
|
---|
12754 | *
|
---|
12755 | */
|
---|
12756 |
|
---|
12757 | /* MOVAZ { <Zd1>.B-<Zd4>.B }, ZA0<HV>.B[<Ws>, <offs1>:<offs4>] (ffff1f83/c0060600) */
|
---|
12758 | //#define IEM_INSTR_IMPL_A64__movaz_mz4_za_b1(Zd, off2, Rs, V)
|
---|
12759 |
|
---|
12760 |
|
---|
12761 | /* MOVAZ { <Zd1>.H-<Zd4>.H }, <ZAn><HV>.H[<Ws>, <offs1>:<offs4>] (ffff1f83/c0460600) */
|
---|
12762 | //#define IEM_INSTR_IMPL_A64__movaz_mz4_za_h1(Zd, o1, ZAn, Rs, V)
|
---|
12763 |
|
---|
12764 |
|
---|
12765 | /* MOVAZ { <Zd1>.S-<Zd4>.S }, <ZAn><HV>.S[<Ws>, <offs1>:<offs4>] (ffff1f83/c0860600) */
|
---|
12766 | //#define IEM_INSTR_IMPL_A64__movaz_mz4_za_w1(Zd, ZAn, Rs, V)
|
---|
12767 |
|
---|
12768 |
|
---|
12769 | /* MOVAZ { <Zd1>.D-<Zd4>.D }, <ZAn><HV>.D[<Ws>, <offs1>:<offs4>] (ffff1f03/c0c60600) */
|
---|
12770 | //#define IEM_INSTR_IMPL_A64__movaz_mz4_za_d1(Zd, ZAn, Rs, V)
|
---|
12771 |
|
---|
12772 |
|
---|
12773 |
|
---|
12774 | /*
|
---|
12775 | *
|
---|
12776 | * Instruction Set & Groups: mortlach_multi4_fclamp / mortlach_multi_sve_3 / sme / A64
|
---|
12777 | *
|
---|
12778 | */
|
---|
12779 |
|
---|
12780 | /* FCLAMP { <Zd1>.<T>-<Zd4>.<T> }, <Zn>.<T>, <Zm>.<T> (ff20fc03/c120c800) */
|
---|
12781 | //#define IEM_INSTR_IMPL_A64__fclamp_mz_zz_4(Zd, Zn, Zm, size)
|
---|
12782 |
|
---|
12783 |
|
---|
12784 | /* BFCLAMP { <Zd1>.H-<Zd4>.H }, <Zn>.H, <Zm>.H (ffe0fc03/c120c800) */
|
---|
12785 | //#define IEM_INSTR_IMPL_A64__bfclamp_mz_zz_4(Zd, Zn, Zm)
|
---|
12786 |
|
---|
12787 |
|
---|
12788 |
|
---|
12789 | /*
|
---|
12790 | *
|
---|
12791 | * Instruction Set & Groups: mortlach_multi4_fma_long_idx / mortlach_multi_indexed_3 / sme / A64
|
---|
12792 | *
|
---|
12793 | */
|
---|
12794 |
|
---|
12795 | /* BFMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1909010) */
|
---|
12796 | //#define IEM_INSTR_IMPL_A64__bfmlal_za_zzi_4xi(off2, i3l, S, Zn, i3h, Rv, Zm)
|
---|
12797 |
|
---|
12798 |
|
---|
12799 | /* FMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1909000) */
|
---|
12800 | //#define IEM_INSTR_IMPL_A64__fmlal_za_zzi_4xi(off2, i3l, S, Zn, i3h, Rv, Zm)
|
---|
12801 |
|
---|
12802 |
|
---|
12803 | /* BFMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1909018) */
|
---|
12804 | //#define IEM_INSTR_IMPL_A64__bfmlsl_za_zzi_4xi(off2, i3l, S, Zn, i3h, Rv, Zm)
|
---|
12805 |
|
---|
12806 |
|
---|
12807 | /* FMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1909008) */
|
---|
12808 | //#define IEM_INSTR_IMPL_A64__fmlsl_za_zzi_4xi(off2, i3l, S, Zn, i3h, Rv, Zm)
|
---|
12809 |
|
---|
12810 |
|
---|
12811 |
|
---|
12812 | /*
|
---|
12813 | *
|
---|
12814 | * Instruction Set & Groups: mortlach_multi4_fmul_mm / mortlach_multi_sve_5a / sme / A64
|
---|
12815 | *
|
---|
12816 | */
|
---|
12817 |
|
---|
12818 | /* FMUL { <Zd1>.<T>-<Zd4>.<T> }, { <Zn1>.<T>-<Zn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23fc63/c121e400) */
|
---|
12819 | //#define IEM_INSTR_IMPL_A64__fmul_mz_zzw_4x4(Zd, Zn, Zm, size)
|
---|
12820 |
|
---|
12821 |
|
---|
12822 | /* BFMUL { <Zd1>.H-<Zd4>.H }, { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe3fc63/c121e400) */
|
---|
12823 | //#define IEM_INSTR_IMPL_A64__bfmul_mz_zzw_4x4(Zd, Zn, Zm)
|
---|
12824 |
|
---|
12825 |
|
---|
12826 |
|
---|
12827 | /*
|
---|
12828 | *
|
---|
12829 | * Instruction Set & Groups: mortlach_multi4_fmul_sm / mortlach_multi_sve_5b / sme / A64
|
---|
12830 | *
|
---|
12831 | */
|
---|
12832 |
|
---|
12833 | /* FMUL { <Zd1>.<T>-<Zd4>.<T> }, { <Zn1>.<T>-<Zn4>.<T> }, <Zm>.<T> (ff21fc63/c121e800) */
|
---|
12834 | //#define IEM_INSTR_IMPL_A64__fmul_mz_zzv_4x1(Zd, Zn, Zm, size)
|
---|
12835 |
|
---|
12836 |
|
---|
12837 | /* BFMUL { <Zd1>.H-<Zd4>.H }, { <Zn1>.H-<Zn4>.H }, <Zm>.H (ffe1fc63/c121e800) */
|
---|
12838 | //#define IEM_INSTR_IMPL_A64__bfmul_mz_zzv_4x1(Zd, Zn, Zm)
|
---|
12839 |
|
---|
12840 |
|
---|
12841 |
|
---|
12842 | /*
|
---|
12843 | *
|
---|
12844 | * Instruction Set & Groups: mortlach_multi4_fp8_fdot_idx_h / mortlach_multi_indexed_3 / sme / A64
|
---|
12845 | *
|
---|
12846 | */
|
---|
12847 |
|
---|
12848 | /* FDOT ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09070/c1109040) */
|
---|
12849 | //#define IEM_INSTR_IMPL_A64__fdot_za_z8z8i_4xi(off3, i3l, Zn, i3h, Rv, Zm)
|
---|
12850 |
|
---|
12851 |
|
---|
12852 |
|
---|
12853 | /*
|
---|
12854 | *
|
---|
12855 | * Instruction Set & Groups: mortlach_multi4_fp8_fma_long_idx / mortlach_multi_indexed_3 / sme / A64
|
---|
12856 | *
|
---|
12857 | */
|
---|
12858 |
|
---|
12859 | /* FMLAL ZA.H[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09070/c1909020) */
|
---|
12860 | //#define IEM_INSTR_IMPL_A64__fmlal_za_z8z8i_4xi(off2, i4l, Zn, i4h, Rv, Zm)
|
---|
12861 |
|
---|
12862 |
|
---|
12863 |
|
---|
12864 | /*
|
---|
12865 | *
|
---|
12866 | * Instruction Set & Groups: mortlach_multi4_fp8_fma_long_long_idx / mortlach_multi_indexed_3 / sme / A64
|
---|
12867 | *
|
---|
12868 | */
|
---|
12869 |
|
---|
12870 | /* FMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1108040) */
|
---|
12871 | //#define IEM_INSTR_IMPL_A64__fmlall_za32_z8z8i_4xi(o1, i4l, Zn, i4h, Rv, Zm)
|
---|
12872 |
|
---|
12873 |
|
---|
12874 |
|
---|
12875 | /*
|
---|
12876 | *
|
---|
12877 | * Instruction Set & Groups: mortlach_multi4_fpint_cvrt / mortlach_multi_sve_4 / sme / A64
|
---|
12878 | *
|
---|
12879 | */
|
---|
12880 |
|
---|
12881 | /* FCVTZS { <Zd1>.S-<Zd4>.S }, { <Zn1>.S-<Zn4>.S } (fffffc63/c131e000) */
|
---|
12882 | //#define IEM_INSTR_IMPL_A64__fcvtzs_mz_z_4(Zd, U, Zn)
|
---|
12883 |
|
---|
12884 |
|
---|
12885 | /* FCVTZU { <Zd1>.S-<Zd4>.S }, { <Zn1>.S-<Zn4>.S } (fffffc63/c131e020) */
|
---|
12886 | //#define IEM_INSTR_IMPL_A64__fcvtzu_mz_z_4(Zd, U, Zn)
|
---|
12887 |
|
---|
12888 |
|
---|
12889 |
|
---|
12890 | /*
|
---|
12891 | *
|
---|
12892 | * Instruction Set & Groups: mortlach_multi4_frint / mortlach_multi_sve_4 / sme / A64
|
---|
12893 | *
|
---|
12894 | */
|
---|
12895 |
|
---|
12896 | /* FRINTN { <Zd1>.S-<Zd4>.S }, { <Zn1>.S-<Zn4>.S } (fffffc63/c1b8e000) */
|
---|
12897 | //#define IEM_INSTR_IMPL_A64__frintn_mz_z_4(Zd, Zn)
|
---|
12898 |
|
---|
12899 |
|
---|
12900 | /* FRINTP { <Zd1>.S-<Zd4>.S }, { <Zn1>.S-<Zn4>.S } (fffffc63/c1b9e000) */
|
---|
12901 | //#define IEM_INSTR_IMPL_A64__frintp_mz_z_4(Zd, Zn)
|
---|
12902 |
|
---|
12903 |
|
---|
12904 | /* FRINTM { <Zd1>.S-<Zd4>.S }, { <Zn1>.S-<Zn4>.S } (fffffc63/c1bae000) */
|
---|
12905 | //#define IEM_INSTR_IMPL_A64__frintm_mz_z_4(Zd, Zn)
|
---|
12906 |
|
---|
12907 |
|
---|
12908 | /* FRINTA { <Zd1>.S-<Zd4>.S }, { <Zn1>.S-<Zn4>.S } (fffffc63/c1bce000) */
|
---|
12909 | //#define IEM_INSTR_IMPL_A64__frinta_mz_z_4(Zd, Zn)
|
---|
12910 |
|
---|
12911 |
|
---|
12912 |
|
---|
12913 | /*
|
---|
12914 | *
|
---|
12915 | * Instruction Set & Groups: mortlach_multi4_insert_ctg / mortlach_ins / sme / A64
|
---|
12916 | *
|
---|
12917 | */
|
---|
12918 |
|
---|
12919 | /* MOVA ZA0<HV>.B[<Ws>, <offs1>:<offs4>], { <Zn1>.B-<Zn4>.B } (ffff1c7c/c0040400) */
|
---|
12920 | //#define IEM_INSTR_IMPL_A64__mova_za4_z_b1(off2, Zn, Rs, V)
|
---|
12921 |
|
---|
12922 |
|
---|
12923 | /* MOVA <ZAd><HV>.H[<Ws>, <offs1>:<offs4>], { <Zn1>.H-<Zn4>.H } (ffff1c7c/c0440400) */
|
---|
12924 | //#define IEM_INSTR_IMPL_A64__mova_za4_z_h1(o1, ZAd, Zn, Rs, V)
|
---|
12925 |
|
---|
12926 |
|
---|
12927 | /* MOVA <ZAd><HV>.S[<Ws>, <offs1>:<offs4>], { <Zn1>.S-<Zn4>.S } (ffff1c7c/c0840400) */
|
---|
12928 | //#define IEM_INSTR_IMPL_A64__mova_za4_z_w1(ZAd, Zn, Rs, V)
|
---|
12929 |
|
---|
12930 |
|
---|
12931 | /* MOVA <ZAd><HV>.D[<Ws>, <offs1>:<offs4>], { <Zn1>.D-<Zn4>.D } (ffff1c78/c0c40400) */
|
---|
12932 | //#define IEM_INSTR_IMPL_A64__mova_za4_z_d1(ZAd, Zn, Rs, V)
|
---|
12933 |
|
---|
12934 |
|
---|
12935 |
|
---|
12936 | /*
|
---|
12937 | *
|
---|
12938 | * Instruction Set & Groups: mortlach_multi4_intfp_cvrt / mortlach_multi_sve_4 / sme / A64
|
---|
12939 | *
|
---|
12940 | */
|
---|
12941 |
|
---|
12942 | /* SCVTF { <Zd1>.S-<Zd4>.S }, { <Zn1>.S-<Zn4>.S } (fffffc63/c132e000) */
|
---|
12943 | //#define IEM_INSTR_IMPL_A64__scvtf_mz_z_4(Zd, U, Zn)
|
---|
12944 |
|
---|
12945 |
|
---|
12946 | /* UCVTF { <Zd1>.S-<Zd4>.S }, { <Zn1>.S-<Zn4>.S } (fffffc63/c132e020) */
|
---|
12947 | //#define IEM_INSTR_IMPL_A64__ucvtf_mz_z_4(Zd, U, Zn)
|
---|
12948 |
|
---|
12949 |
|
---|
12950 |
|
---|
12951 | /*
|
---|
12952 | *
|
---|
12953 | * Instruction Set & Groups: mortlach_multi4_mla_long_idx / mortlach_multi_indexed_3 / sme / A64
|
---|
12954 | *
|
---|
12955 | */
|
---|
12956 |
|
---|
12957 | /* SMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1d09000) */
|
---|
12958 | //#define IEM_INSTR_IMPL_A64__smlal_za_zzi_4xi(off2, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
12959 |
|
---|
12960 |
|
---|
12961 | /* SMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1d09008) */
|
---|
12962 | //#define IEM_INSTR_IMPL_A64__smlsl_za_zzi_4xi(off2, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
12963 |
|
---|
12964 |
|
---|
12965 | /* UMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1d09010) */
|
---|
12966 | //#define IEM_INSTR_IMPL_A64__umlal_za_zzi_4xi(off2, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
12967 |
|
---|
12968 |
|
---|
12969 | /* UMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1d09018) */
|
---|
12970 | //#define IEM_INSTR_IMPL_A64__umlsl_za_zzi_4xi(off2, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
12971 |
|
---|
12972 |
|
---|
12973 |
|
---|
12974 | /*
|
---|
12975 | *
|
---|
12976 | * Instruction Set & Groups: mortlach_multi4_mla_long_long_idx_d / mortlach_multi_indexed_3 / sme / A64
|
---|
12977 | *
|
---|
12978 | */
|
---|
12979 |
|
---|
12980 | /* SMLALL ZA.D[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09878/c1908000) */
|
---|
12981 | //#define IEM_INSTR_IMPL_A64__smlall_za_zzi_d4xi(o1, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
12982 |
|
---|
12983 |
|
---|
12984 | /* SMLSLL ZA.D[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09878/c1908008) */
|
---|
12985 | //#define IEM_INSTR_IMPL_A64__smlsll_za_zzi_d4xi(o1, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
12986 |
|
---|
12987 |
|
---|
12988 | /* UMLALL ZA.D[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09878/c1908010) */
|
---|
12989 | //#define IEM_INSTR_IMPL_A64__umlall_za_zzi_d4xi(o1, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
12990 |
|
---|
12991 |
|
---|
12992 | /* UMLSLL ZA.D[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09878/c1908018) */
|
---|
12993 | //#define IEM_INSTR_IMPL_A64__umlsll_za_zzi_d4xi(o1, i3l, S, U, Zn, i3h, Rv, Zm)
|
---|
12994 |
|
---|
12995 |
|
---|
12996 |
|
---|
12997 | /*
|
---|
12998 | *
|
---|
12999 | * Instruction Set & Groups: mortlach_multi4_mla_long_long_idx_s / mortlach_multi_indexed_3 / sme / A64
|
---|
13000 | *
|
---|
13001 | */
|
---|
13002 |
|
---|
13003 | /* SMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1108000) */
|
---|
13004 | //#define IEM_INSTR_IMPL_A64__smlall_za_zzi_s4xi(o1, i4l, S, U, Zn, i4h, Rv, Zm)
|
---|
13005 |
|
---|
13006 |
|
---|
13007 | /* USMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1108020) */
|
---|
13008 | //#define IEM_INSTR_IMPL_A64__usmlall_za_zzi_s4xi(o1, i4l, U, Zn, i4h, Rv, Zm)
|
---|
13009 |
|
---|
13010 |
|
---|
13011 | /* SMLSLL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1108008) */
|
---|
13012 | //#define IEM_INSTR_IMPL_A64__smlsll_za_zzi_s4xi(o1, i4l, S, U, Zn, i4h, Rv, Zm)
|
---|
13013 |
|
---|
13014 |
|
---|
13015 | /* UMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1108010) */
|
---|
13016 | //#define IEM_INSTR_IMPL_A64__umlall_za_zzi_s4xi(o1, i4l, S, U, Zn, i4h, Rv, Zm)
|
---|
13017 |
|
---|
13018 |
|
---|
13019 | /* SUMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1108030) */
|
---|
13020 | //#define IEM_INSTR_IMPL_A64__sumlall_za_zzi_s4xi(o1, i4l, U, Zn, i4h, Rv, Zm)
|
---|
13021 |
|
---|
13022 |
|
---|
13023 | /* UMLSLL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1108018) */
|
---|
13024 | //#define IEM_INSTR_IMPL_A64__umlsll_za_zzi_s4xi(o1, i4l, S, U, Zn, i4h, Rv, Zm)
|
---|
13025 |
|
---|
13026 |
|
---|
13027 |
|
---|
13028 | /*
|
---|
13029 | *
|
---|
13030 | * Instruction Set & Groups: mortlach_multi4_narrow_fp8_cvrt / mortlach_multi_sve_4 / sme / A64
|
---|
13031 | *
|
---|
13032 | */
|
---|
13033 |
|
---|
13034 | /* FCVT <Zd>.B, { <Zn1>.S-<Zn4>.S } (fffffc60/c134e000) */
|
---|
13035 | //#define IEM_INSTR_IMPL_A64__fcvt_z8_mz4(Zd, N, Zn)
|
---|
13036 |
|
---|
13037 |
|
---|
13038 | /* FCVTN <Zd>.B, { <Zn1>.S-<Zn4>.S } (fffffc60/c134e020) */
|
---|
13039 | //#define IEM_INSTR_IMPL_A64__fcvtn_z8_mz4(Zd, N, Zn)
|
---|
13040 |
|
---|
13041 |
|
---|
13042 |
|
---|
13043 | /*
|
---|
13044 | *
|
---|
13045 | * Instruction Set & Groups: mortlach_multi4_narrow_int_cvrt / mortlach_multi_sve_4 / sme / A64
|
---|
13046 | *
|
---|
13047 | */
|
---|
13048 |
|
---|
13049 | /* SQCVT <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> } (ff7ffc60/c133e000) */
|
---|
13050 | //#define IEM_INSTR_IMPL_A64__sqcvt_z_mz4(Zd, U, N, Zn, sz)
|
---|
13051 |
|
---|
13052 |
|
---|
13053 | /* SQCVTU <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> } (ff7ffc60/c173e000) */
|
---|
13054 | //#define IEM_INSTR_IMPL_A64__sqcvtu_z_mz4(Zd, N, Zn, sz)
|
---|
13055 |
|
---|
13056 |
|
---|
13057 | /* SQCVTN <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> } (ff7ffc60/c133e040) */
|
---|
13058 | //#define IEM_INSTR_IMPL_A64__sqcvtn_z_mz4(Zd, U, N, Zn, sz)
|
---|
13059 |
|
---|
13060 |
|
---|
13061 | /* SQCVTUN <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> } (ff7ffc60/c173e040) */
|
---|
13062 | //#define IEM_INSTR_IMPL_A64__sqcvtun_z_mz4(Zd, N, Zn, sz)
|
---|
13063 |
|
---|
13064 |
|
---|
13065 | /* UQCVT <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> } (ff7ffc60/c133e020) */
|
---|
13066 | //#define IEM_INSTR_IMPL_A64__uqcvt_z_mz4(Zd, U, N, Zn, sz)
|
---|
13067 |
|
---|
13068 |
|
---|
13069 | /* UQCVTN <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> } (ff7ffc60/c133e060) */
|
---|
13070 | //#define IEM_INSTR_IMPL_A64__uqcvtn_z_mz4(Zd, U, N, Zn, sz)
|
---|
13071 |
|
---|
13072 |
|
---|
13073 |
|
---|
13074 | /*
|
---|
13075 | *
|
---|
13076 | * Instruction Set & Groups: mortlach_multi4_qrshr / mortlach_multi_sve_3 / sme / A64
|
---|
13077 | *
|
---|
13078 | */
|
---|
13079 |
|
---|
13080 | /* SQRSHR <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> }, #<const> (ff20fc60/c120d800) */
|
---|
13081 | //#define IEM_INSTR_IMPL_A64__sqrshr_z_mz4(Zd, U, Zn, N, imm5, tsize)
|
---|
13082 |
|
---|
13083 |
|
---|
13084 | /* SQRSHRU <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> }, #<const> (ff20fc60/c120d840) */
|
---|
13085 | //#define IEM_INSTR_IMPL_A64__sqrshru_z_mz4(Zd, Zn, N, imm5, tsize)
|
---|
13086 |
|
---|
13087 |
|
---|
13088 | /* SQRSHRN <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> }, #<const> (ff20fc60/c120dc00) */
|
---|
13089 | //#define IEM_INSTR_IMPL_A64__sqrshrn_z_mz4(Zd, U, Zn, N, imm5, tsize)
|
---|
13090 |
|
---|
13091 |
|
---|
13092 | /* SQRSHRUN <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> }, #<const> (ff20fc60/c120dc40) */
|
---|
13093 | //#define IEM_INSTR_IMPL_A64__sqrshrun_z_mz4(Zd, Zn, N, imm5, tsize)
|
---|
13094 |
|
---|
13095 |
|
---|
13096 | /* UQRSHR <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> }, #<const> (ff20fc60/c120d820) */
|
---|
13097 | //#define IEM_INSTR_IMPL_A64__uqrshr_z_mz4(Zd, U, Zn, N, imm5, tsize)
|
---|
13098 |
|
---|
13099 |
|
---|
13100 | /* UQRSHRN <Zd>.<T>, { <Zn1>.<Tb>-<Zn4>.<Tb> }, #<const> (ff20fc60/c120dc20) */
|
---|
13101 | //#define IEM_INSTR_IMPL_A64__uqrshrn_z_mz4(Zd, U, Zn, N, imm5, tsize)
|
---|
13102 |
|
---|
13103 |
|
---|
13104 |
|
---|
13105 | /*
|
---|
13106 | *
|
---|
13107 | * Instruction Set & Groups: mortlach_multi4_select_int / mortlach_multi_sve_1 / sme / A64
|
---|
13108 | *
|
---|
13109 | */
|
---|
13110 |
|
---|
13111 | /* SEL { <Zd1>.<T>-<Zd4>.<T> }, <PNg>, { <Zn1>.<T>-<Zn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23e063/c1218000) */
|
---|
13112 | //#define IEM_INSTR_IMPL_A64__sel_mz_p_zz_4(Zd, Zn, PNg, Zm, size)
|
---|
13113 |
|
---|
13114 |
|
---|
13115 |
|
---|
13116 | /*
|
---|
13117 | *
|
---|
13118 | * Instruction Set & Groups: mortlach_multi4_wide_int / mortlach_multi_sve_4 / sme / A64
|
---|
13119 | *
|
---|
13120 | */
|
---|
13121 |
|
---|
13122 | /* SUNPK { <Zd1>.<T>-<Zd4>.<T> }, { <Zn1>.<Tb>-<Zn2>.<Tb> } (ff3ffc23/c135e000) */
|
---|
13123 | //#define IEM_INSTR_IMPL_A64__sunpk_mz_z_4(U, Zd, Zn, size)
|
---|
13124 |
|
---|
13125 |
|
---|
13126 | /* UUNPK { <Zd1>.<T>-<Zd4>.<T> }, { <Zn1>.<Tb>-<Zn2>.<Tb> } (ff3ffc23/c135e001) */
|
---|
13127 | //#define IEM_INSTR_IMPL_A64__uunpk_mz_z_4(U, Zd, Zn, size)
|
---|
13128 |
|
---|
13129 |
|
---|
13130 |
|
---|
13131 | /*
|
---|
13132 | *
|
---|
13133 | * Instruction Set & Groups: mortlach_multi4_z_z_add_sm / mortlach_multi_sve_2b / sme / A64
|
---|
13134 | *
|
---|
13135 | */
|
---|
13136 |
|
---|
13137 | /* ADD { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120ab00) */
|
---|
13138 | //#define IEM_INSTR_IMPL_A64__add_mz_zzv_4x1(Zdn, Zm, size)
|
---|
13139 |
|
---|
13140 |
|
---|
13141 |
|
---|
13142 | /*
|
---|
13143 | *
|
---|
13144 | * Instruction Set & Groups: mortlach_multi4_z_z_fminmax_mm / mortlach_multi_sve_2d0 / sme / A64
|
---|
13145 | *
|
---|
13146 | */
|
---|
13147 |
|
---|
13148 | /* FMAX { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120b900) */
|
---|
13149 | //#define IEM_INSTR_IMPL_A64__fmax_mz_zzw_4x4(Zdn, Zm, size)
|
---|
13150 |
|
---|
13151 |
|
---|
13152 | /* BFMAX { <Zdn1>.H-<Zdn4>.H }, { <Zdn1>.H-<Zdn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe3ffe3/c120b900) */
|
---|
13153 | //#define IEM_INSTR_IMPL_A64__bfmax_mz_zzw_4x4(Zdn, Zm)
|
---|
13154 |
|
---|
13155 |
|
---|
13156 | /* FMIN { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120b901) */
|
---|
13157 | //#define IEM_INSTR_IMPL_A64__fmin_mz_zzw_4x4(Zdn, Zm, size)
|
---|
13158 |
|
---|
13159 |
|
---|
13160 | /* BFMIN { <Zdn1>.H-<Zdn4>.H }, { <Zdn1>.H-<Zdn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe3ffe3/c120b901) */
|
---|
13161 | //#define IEM_INSTR_IMPL_A64__bfmin_mz_zzw_4x4(Zdn, Zm)
|
---|
13162 |
|
---|
13163 |
|
---|
13164 | /* FMAXNM { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120b920) */
|
---|
13165 | //#define IEM_INSTR_IMPL_A64__fmaxnm_mz_zzw_4x4(Zdn, Zm, size)
|
---|
13166 |
|
---|
13167 |
|
---|
13168 | /* BFMAXNM { <Zdn1>.H-<Zdn4>.H }, { <Zdn1>.H-<Zdn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe3ffe3/c120b920) */
|
---|
13169 | //#define IEM_INSTR_IMPL_A64__bfmaxnm_mz_zzw_4x4(Zdn, Zm)
|
---|
13170 |
|
---|
13171 |
|
---|
13172 | /* FMINNM { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120b921) */
|
---|
13173 | //#define IEM_INSTR_IMPL_A64__fminnm_mz_zzw_4x4(Zdn, Zm, size)
|
---|
13174 |
|
---|
13175 |
|
---|
13176 | /* BFMINNM { <Zdn1>.H-<Zdn4>.H }, { <Zdn1>.H-<Zdn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe3ffe3/c120b921) */
|
---|
13177 | //#define IEM_INSTR_IMPL_A64__bfminnm_mz_zzw_4x4(Zdn, Zm)
|
---|
13178 |
|
---|
13179 |
|
---|
13180 | /* FAMAX { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120b940) */
|
---|
13181 | //#define IEM_INSTR_IMPL_A64__famax_mz_zzw_4x4(Zdn, Zm, size)
|
---|
13182 |
|
---|
13183 |
|
---|
13184 | /* FAMIN { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120b941) */
|
---|
13185 | //#define IEM_INSTR_IMPL_A64__famin_mz_zzw_4x4(Zdn, Zm, size)
|
---|
13186 |
|
---|
13187 |
|
---|
13188 |
|
---|
13189 | /*
|
---|
13190 | *
|
---|
13191 | * Instruction Set & Groups: mortlach_multi4_z_z_fminmax_sm / mortlach_multi_sve_2b / sme / A64
|
---|
13192 | *
|
---|
13193 | */
|
---|
13194 |
|
---|
13195 | /* FMAX { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120a900) */
|
---|
13196 | //#define IEM_INSTR_IMPL_A64__fmax_mz_zzv_4x1(Zdn, Zm, size)
|
---|
13197 |
|
---|
13198 |
|
---|
13199 | /* BFMAX { <Zdn1>.H-<Zdn4>.H }, { <Zdn1>.H-<Zdn4>.H }, <Zm>.H (fff0ffe3/c120a900) */
|
---|
13200 | //#define IEM_INSTR_IMPL_A64__bfmax_mz_zzv_4x1(Zdn, Zm)
|
---|
13201 |
|
---|
13202 |
|
---|
13203 | /* FMIN { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120a901) */
|
---|
13204 | //#define IEM_INSTR_IMPL_A64__fmin_mz_zzv_4x1(Zdn, Zm, size)
|
---|
13205 |
|
---|
13206 |
|
---|
13207 | /* BFMIN { <Zdn1>.H-<Zdn4>.H }, { <Zdn1>.H-<Zdn4>.H }, <Zm>.H (fff0ffe3/c120a901) */
|
---|
13208 | //#define IEM_INSTR_IMPL_A64__bfmin_mz_zzv_4x1(Zdn, Zm)
|
---|
13209 |
|
---|
13210 |
|
---|
13211 | /* FMAXNM { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120a920) */
|
---|
13212 | //#define IEM_INSTR_IMPL_A64__fmaxnm_mz_zzv_4x1(Zdn, Zm, size)
|
---|
13213 |
|
---|
13214 |
|
---|
13215 | /* BFMAXNM { <Zdn1>.H-<Zdn4>.H }, { <Zdn1>.H-<Zdn4>.H }, <Zm>.H (fff0ffe3/c120a920) */
|
---|
13216 | //#define IEM_INSTR_IMPL_A64__bfmaxnm_mz_zzv_4x1(Zdn, Zm)
|
---|
13217 |
|
---|
13218 |
|
---|
13219 | /* FMINNM { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120a921) */
|
---|
13220 | //#define IEM_INSTR_IMPL_A64__fminnm_mz_zzv_4x1(Zdn, Zm, size)
|
---|
13221 |
|
---|
13222 |
|
---|
13223 | /* BFMINNM { <Zdn1>.H-<Zdn4>.H }, { <Zdn1>.H-<Zdn4>.H }, <Zm>.H (fff0ffe3/c120a921) */
|
---|
13224 | //#define IEM_INSTR_IMPL_A64__bfminnm_mz_zzv_4x1(Zdn, Zm)
|
---|
13225 |
|
---|
13226 |
|
---|
13227 |
|
---|
13228 | /*
|
---|
13229 | *
|
---|
13230 | * Instruction Set & Groups: mortlach_multi4_z_z_fscale_mm / mortlach_multi_sve_2d0 / sme / A64
|
---|
13231 | *
|
---|
13232 | */
|
---|
13233 |
|
---|
13234 | /* FSCALE { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120b980) */
|
---|
13235 | //#define IEM_INSTR_IMPL_A64__fscale_mz_zzw_4x4(Zdn, Zm, size)
|
---|
13236 |
|
---|
13237 |
|
---|
13238 | /* BFSCALE { <Zdn1>.H-<Zdn4>.H }, { <Zdn1>.H-<Zdn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe3ffe3/c120b980) */
|
---|
13239 | //#define IEM_INSTR_IMPL_A64__bfscale_mz_zzw_4x4(Zdn, Zm)
|
---|
13240 |
|
---|
13241 |
|
---|
13242 |
|
---|
13243 | /*
|
---|
13244 | *
|
---|
13245 | * Instruction Set & Groups: mortlach_multi4_z_z_fscale_sm / mortlach_multi_sve_2b / sme / A64
|
---|
13246 | *
|
---|
13247 | */
|
---|
13248 |
|
---|
13249 | /* FSCALE { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120a980) */
|
---|
13250 | //#define IEM_INSTR_IMPL_A64__fscale_mz_zzv_4x1(Zdn, Zm, size)
|
---|
13251 |
|
---|
13252 |
|
---|
13253 | /* BFSCALE { <Zdn1>.H-<Zdn4>.H }, { <Zdn1>.H-<Zdn4>.H }, <Zm>.H (fff0ffe3/c120a980) */
|
---|
13254 | //#define IEM_INSTR_IMPL_A64__bfscale_mz_zzv_4x1(Zdn, Zm)
|
---|
13255 |
|
---|
13256 |
|
---|
13257 |
|
---|
13258 | /*
|
---|
13259 | *
|
---|
13260 | * Instruction Set & Groups: mortlach_multi4_z_z_long_zip / mortlach_multi_sve_4 / sme / A64
|
---|
13261 | *
|
---|
13262 | */
|
---|
13263 |
|
---|
13264 | /* ZIP { <Zd1>.Q-<Zd4>.Q }, { <Zn1>.Q-<Zn4>.Q } (fffffc63/c137e000) */
|
---|
13265 | //#define IEM_INSTR_IMPL_A64__zip_mz_z_4q(Zd, Zn)
|
---|
13266 |
|
---|
13267 |
|
---|
13268 | /* UZP { <Zd1>.Q-<Zd4>.Q }, { <Zn1>.Q-<Zn4>.Q } (fffffc63/c137e002) */
|
---|
13269 | //#define IEM_INSTR_IMPL_A64__uzp_mz_z_4q(Zd, Zn)
|
---|
13270 |
|
---|
13271 |
|
---|
13272 |
|
---|
13273 | /*
|
---|
13274 | *
|
---|
13275 | * Instruction Set & Groups: mortlach_multi4_z_z_minmax_mm / mortlach_multi_sve_2d0 / sme / A64
|
---|
13276 | *
|
---|
13277 | */
|
---|
13278 |
|
---|
13279 | /* SMAX { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120b800) */
|
---|
13280 | //#define IEM_INSTR_IMPL_A64__smax_mz_zzw_4x4(U, Zdn, Zm, size)
|
---|
13281 |
|
---|
13282 |
|
---|
13283 | /* SMIN { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120b820) */
|
---|
13284 | //#define IEM_INSTR_IMPL_A64__smin_mz_zzw_4x4(U, Zdn, Zm, size)
|
---|
13285 |
|
---|
13286 |
|
---|
13287 | /* UMAX { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120b801) */
|
---|
13288 | //#define IEM_INSTR_IMPL_A64__umax_mz_zzw_4x4(U, Zdn, Zm, size)
|
---|
13289 |
|
---|
13290 |
|
---|
13291 | /* UMIN { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120b821) */
|
---|
13292 | //#define IEM_INSTR_IMPL_A64__umin_mz_zzw_4x4(U, Zdn, Zm, size)
|
---|
13293 |
|
---|
13294 |
|
---|
13295 |
|
---|
13296 | /*
|
---|
13297 | *
|
---|
13298 | * Instruction Set & Groups: mortlach_multi4_z_z_minmax_sm / mortlach_multi_sve_2b / sme / A64
|
---|
13299 | *
|
---|
13300 | */
|
---|
13301 |
|
---|
13302 | /* SMAX { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120a800) */
|
---|
13303 | //#define IEM_INSTR_IMPL_A64__smax_mz_zzv_4x1(U, Zdn, Zm, size)
|
---|
13304 |
|
---|
13305 |
|
---|
13306 | /* SMIN { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120a820) */
|
---|
13307 | //#define IEM_INSTR_IMPL_A64__smin_mz_zzv_4x1(U, Zdn, Zm, size)
|
---|
13308 |
|
---|
13309 |
|
---|
13310 | /* UMAX { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120a801) */
|
---|
13311 | //#define IEM_INSTR_IMPL_A64__umax_mz_zzv_4x1(U, Zdn, Zm, size)
|
---|
13312 |
|
---|
13313 |
|
---|
13314 | /* UMIN { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120a821) */
|
---|
13315 | //#define IEM_INSTR_IMPL_A64__umin_mz_zzv_4x1(U, Zdn, Zm, size)
|
---|
13316 |
|
---|
13317 |
|
---|
13318 |
|
---|
13319 | /*
|
---|
13320 | *
|
---|
13321 | * Instruction Set & Groups: mortlach_multi4_z_z_shift_mm / mortlach_multi_sve_2d0 / sme / A64
|
---|
13322 | *
|
---|
13323 | */
|
---|
13324 |
|
---|
13325 | /* SRSHL { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120ba20) */
|
---|
13326 | //#define IEM_INSTR_IMPL_A64__srshl_mz_zzw_4x4(U, Zdn, Zm, size)
|
---|
13327 |
|
---|
13328 |
|
---|
13329 | /* URSHL { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120ba21) */
|
---|
13330 | //#define IEM_INSTR_IMPL_A64__urshl_mz_zzw_4x4(U, Zdn, Zm, size)
|
---|
13331 |
|
---|
13332 |
|
---|
13333 |
|
---|
13334 | /*
|
---|
13335 | *
|
---|
13336 | * Instruction Set & Groups: mortlach_multi4_z_z_shift_sm / mortlach_multi_sve_2b / sme / A64
|
---|
13337 | *
|
---|
13338 | */
|
---|
13339 |
|
---|
13340 | /* SRSHL { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120aa20) */
|
---|
13341 | //#define IEM_INSTR_IMPL_A64__srshl_mz_zzv_4x1(U, Zdn, Zm, size)
|
---|
13342 |
|
---|
13343 |
|
---|
13344 | /* URSHL { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120aa21) */
|
---|
13345 | //#define IEM_INSTR_IMPL_A64__urshl_mz_zzv_4x1(U, Zdn, Zm, size)
|
---|
13346 |
|
---|
13347 |
|
---|
13348 |
|
---|
13349 | /*
|
---|
13350 | *
|
---|
13351 | * Instruction Set & Groups: mortlach_multi4_z_z_sqdmulh_mm / mortlach_multi_sve_2d1 / sme / A64
|
---|
13352 | *
|
---|
13353 | */
|
---|
13354 |
|
---|
13355 | /* SQDMULH { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ff23ffe3/c120bc00) */
|
---|
13356 | //#define IEM_INSTR_IMPL_A64__sqdmulh_mz_zzw_4x4(Zdn, Zm, size)
|
---|
13357 |
|
---|
13358 |
|
---|
13359 |
|
---|
13360 | /*
|
---|
13361 | *
|
---|
13362 | * Instruction Set & Groups: mortlach_multi4_z_z_sqdmulh_sm / mortlach_multi_sve_2b / sme / A64
|
---|
13363 | *
|
---|
13364 | */
|
---|
13365 |
|
---|
13366 | /* SQDMULH { <Zdn1>.<T>-<Zdn4>.<T> }, { <Zdn1>.<T>-<Zdn4>.<T> }, <Zm>.<T> (ff30ffe3/c120ac00) */
|
---|
13367 | //#define IEM_INSTR_IMPL_A64__sqdmulh_mz_zzv_4x1(Zdn, Zm, size)
|
---|
13368 |
|
---|
13369 |
|
---|
13370 |
|
---|
13371 | /*
|
---|
13372 | *
|
---|
13373 | * Instruction Set & Groups: mortlach_multi4_z_z_zip / mortlach_multi_sve_4 / sme / A64
|
---|
13374 | *
|
---|
13375 | */
|
---|
13376 |
|
---|
13377 | /* ZIP { <Zd1>.<T>-<Zd4>.<T> }, { <Zn1>.<T>-<Zn4>.<T> } (ff3ffc63/c136e000) */
|
---|
13378 | //#define IEM_INSTR_IMPL_A64__zip_mz_z_4(Zd, Zn, size)
|
---|
13379 |
|
---|
13380 |
|
---|
13381 | /* UZP { <Zd1>.<T>-<Zd4>.<T> }, { <Zn1>.<T>-<Zn4>.<T> } (ff3ffc63/c136e002) */
|
---|
13382 | //#define IEM_INSTR_IMPL_A64__uzp_mz_z_4(Zd, Zn, size)
|
---|
13383 |
|
---|
13384 |
|
---|
13385 |
|
---|
13386 | /*
|
---|
13387 | *
|
---|
13388 | * Instruction Set & Groups: mortlach_multi4_z_za_2way_dot_mm / mortlach_multi_array_2b / sme / A64
|
---|
13389 | *
|
---|
13390 | */
|
---|
13391 |
|
---|
13392 | /* SDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c78/c1e11408) */
|
---|
13393 | //#define IEM_INSTR_IMPL_A64__sdot_za32_zzw_4x4(off3, U, Zn, Rv, Zm)
|
---|
13394 |
|
---|
13395 |
|
---|
13396 | /* UDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c78/c1e11418) */
|
---|
13397 | //#define IEM_INSTR_IMPL_A64__udot_za32_zzw_4x4(off3, U, Zn, Rv, Zm)
|
---|
13398 |
|
---|
13399 |
|
---|
13400 |
|
---|
13401 | /*
|
---|
13402 | *
|
---|
13403 | * Instruction Set & Groups: mortlach_multi4_z_za_2way_dot_sm / mortlach_multi_array_1b / sme / A64
|
---|
13404 | *
|
---|
13405 | */
|
---|
13406 |
|
---|
13407 | /* SDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c18/c1701408) */
|
---|
13408 | //#define IEM_INSTR_IMPL_A64__sdot_za32_zzv_4x1(off3, U, Zn, Rv, Zm)
|
---|
13409 |
|
---|
13410 |
|
---|
13411 | /* UDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c18/c1701418) */
|
---|
13412 | //#define IEM_INSTR_IMPL_A64__udot_za32_zzv_4x1(off3, U, Zn, Rv, Zm)
|
---|
13413 |
|
---|
13414 |
|
---|
13415 |
|
---|
13416 | /*
|
---|
13417 | *
|
---|
13418 | * Instruction Set & Groups: mortlach_multi4_z_za_4way_dot_mm / mortlach_multi_array_2b / sme / A64
|
---|
13419 | *
|
---|
13420 | */
|
---|
13421 |
|
---|
13422 | /* SDOT ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, { <Zm1>.<Tb>-<Zm4>.<Tb> } (ffa39c78/c1a11400) */
|
---|
13423 | //#define IEM_INSTR_IMPL_A64__sdot_za_zzw_4x4(off3, U, Zn, Rv, Zm, sz)
|
---|
13424 |
|
---|
13425 |
|
---|
13426 | /* UDOT ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, { <Zm1>.<Tb>-<Zm4>.<Tb> } (ffa39c78/c1a11410) */
|
---|
13427 | //#define IEM_INSTR_IMPL_A64__udot_za_zzw_4x4(off3, U, Zn, Rv, Zm, sz)
|
---|
13428 |
|
---|
13429 |
|
---|
13430 |
|
---|
13431 | /*
|
---|
13432 | *
|
---|
13433 | * Instruction Set & Groups: mortlach_multi4_z_za_4way_dot_sm / mortlach_multi_array_1b / sme / A64
|
---|
13434 | *
|
---|
13435 | */
|
---|
13436 |
|
---|
13437 | /* SDOT ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, <Zm>.<Tb> (ffb09c18/c1301400) */
|
---|
13438 | //#define IEM_INSTR_IMPL_A64__sdot_za_zzv_4x1(off3, U, Zn, Rv, Zm, sz)
|
---|
13439 |
|
---|
13440 |
|
---|
13441 | /* UDOT ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, <Zm>.<Tb> (ffb09c18/c1301410) */
|
---|
13442 | //#define IEM_INSTR_IMPL_A64__udot_za_zzv_4x1(off3, U, Zn, Rv, Zm, sz)
|
---|
13443 |
|
---|
13444 |
|
---|
13445 |
|
---|
13446 | /*
|
---|
13447 | *
|
---|
13448 | * Instruction Set & Groups: mortlach_multi4_z_za_f16_mm / mortlach_multi_array_2b / sme / A64
|
---|
13449 | *
|
---|
13450 | */
|
---|
13451 |
|
---|
13452 | /* FADD ZA.H[<Wv>, <offs>{, VGx4}], { <Zm1>.H-<Zm4>.H } (ffff9c78/c1a51c00) */
|
---|
13453 | //#define IEM_INSTR_IMPL_A64__fadd_za_zw_4x4_16(off3, S, Zm, Rv)
|
---|
13454 |
|
---|
13455 |
|
---|
13456 | /* BFADD ZA.H[<Wv>, <offs>{, VGx4}], { <Zm1>.H-<Zm4>.H } (ffff9c78/c1e51c00) */
|
---|
13457 | //#define IEM_INSTR_IMPL_A64__bfadd_za_zw_4x4_16(off3, S, Zm, Rv)
|
---|
13458 |
|
---|
13459 |
|
---|
13460 | /* FSUB ZA.H[<Wv>, <offs>{, VGx4}], { <Zm1>.H-<Zm4>.H } (ffff9c78/c1a51c08) */
|
---|
13461 | //#define IEM_INSTR_IMPL_A64__fsub_za_zw_4x4_16(off3, S, Zm, Rv)
|
---|
13462 |
|
---|
13463 |
|
---|
13464 | /* BFSUB ZA.H[<Wv>, <offs>{, VGx4}], { <Zm1>.H-<Zm4>.H } (ffff9c78/c1e51c08) */
|
---|
13465 | //#define IEM_INSTR_IMPL_A64__bfsub_za_zw_4x4_16(off3, S, Zm, Rv)
|
---|
13466 |
|
---|
13467 |
|
---|
13468 |
|
---|
13469 | /*
|
---|
13470 | *
|
---|
13471 | * Instruction Set & Groups: mortlach_multi4_z_za_float_mm / mortlach_multi_array_2b / sme / A64
|
---|
13472 | *
|
---|
13473 | */
|
---|
13474 |
|
---|
13475 | /* FADD ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zm1>.<T>-<Zm4>.<T> } (ffbf9c78/c1a11c00) */
|
---|
13476 | //#define IEM_INSTR_IMPL_A64__fadd_za_zw_4x4(off3, S, Zm, Rv, sz)
|
---|
13477 |
|
---|
13478 |
|
---|
13479 | /* FSUB ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zm1>.<T>-<Zm4>.<T> } (ffbf9c78/c1a11c08) */
|
---|
13480 | //#define IEM_INSTR_IMPL_A64__fsub_za_zw_4x4(off3, S, Zm, Rv, sz)
|
---|
13481 |
|
---|
13482 |
|
---|
13483 |
|
---|
13484 | /*
|
---|
13485 | *
|
---|
13486 | * Instruction Set & Groups: mortlach_multi4_z_za_fpdot_mm / mortlach_multi_array_2b / sme / A64
|
---|
13487 | *
|
---|
13488 | */
|
---|
13489 |
|
---|
13490 | /* FDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c78/c1a11000) */
|
---|
13491 | //#define IEM_INSTR_IMPL_A64__fdot_za_zzw_4x4(off3, Zn, Rv, Zm)
|
---|
13492 |
|
---|
13493 |
|
---|
13494 | /* BFDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c78/c1a11010) */
|
---|
13495 | //#define IEM_INSTR_IMPL_A64__bfdot_za_zzw_4x4(off3, Zn, Rv, Zm)
|
---|
13496 |
|
---|
13497 |
|
---|
13498 | /* FDOT ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, { <Zm1>.B-<Zm4>.B } (ffe39c78/c1a11020) */
|
---|
13499 | //#define IEM_INSTR_IMPL_A64__fdot_za_z8z8w_4x4(off3, Zn, Rv, Zm)
|
---|
13500 |
|
---|
13501 |
|
---|
13502 | /* FDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, { <Zm1>.B-<Zm4>.B } (ffe39c78/c1a11030) */
|
---|
13503 | //#define IEM_INSTR_IMPL_A64__fdot_za32_z8z8w_4x4(off3, Zn, Rv, Zm)
|
---|
13504 |
|
---|
13505 |
|
---|
13506 |
|
---|
13507 | /*
|
---|
13508 | *
|
---|
13509 | * Instruction Set & Groups: mortlach_multi4_z_za_fpdot_sm / mortlach_multi_array_1b / sme / A64
|
---|
13510 | *
|
---|
13511 | */
|
---|
13512 |
|
---|
13513 | /* FDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c18/c1301000) */
|
---|
13514 | //#define IEM_INSTR_IMPL_A64__fdot_za_zzv_4x1(off3, Zn, Rv, Zm)
|
---|
13515 |
|
---|
13516 |
|
---|
13517 | /* BFDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c18/c1301010) */
|
---|
13518 | //#define IEM_INSTR_IMPL_A64__bfdot_za_zzv_4x1(off3, Zn, Rv, Zm)
|
---|
13519 |
|
---|
13520 |
|
---|
13521 | /* FDOT ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B (fff09c18/c1301008) */
|
---|
13522 | //#define IEM_INSTR_IMPL_A64__fdot_za_z8z8v_4x1(off3, Zn, Rv, Zm)
|
---|
13523 |
|
---|
13524 |
|
---|
13525 | /* FDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B (fff09c18/c1301018) */
|
---|
13526 | //#define IEM_INSTR_IMPL_A64__fdot_za32_z8z8v_4x1(off3, Zn, Rv, Zm)
|
---|
13527 |
|
---|
13528 |
|
---|
13529 |
|
---|
13530 | /*
|
---|
13531 | *
|
---|
13532 | * Instruction Set & Groups: mortlach_multi4_z_za_int_mm / mortlach_multi_array_2b / sme / A64
|
---|
13533 | *
|
---|
13534 | */
|
---|
13535 |
|
---|
13536 | /* ADD ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zm1>.<T>-<Zm4>.<T> } (ffbf9c78/c1a11c10) */
|
---|
13537 | //#define IEM_INSTR_IMPL_A64__add_za_zw_4x4(off3, S, Zm, Rv, sz)
|
---|
13538 |
|
---|
13539 |
|
---|
13540 | /* SUB ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zm1>.<T>-<Zm4>.<T> } (ffbf9c78/c1a11c18) */
|
---|
13541 | //#define IEM_INSTR_IMPL_A64__sub_za_zw_4x4(off3, S, Zm, Rv, sz)
|
---|
13542 |
|
---|
13543 |
|
---|
13544 |
|
---|
13545 | /*
|
---|
13546 | *
|
---|
13547 | * Instruction Set & Groups: mortlach_multi4_z_za_mixed_dot_mm / mortlach_multi_array_2b / sme / A64
|
---|
13548 | *
|
---|
13549 | */
|
---|
13550 |
|
---|
13551 | /* USDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, { <Zm1>.B-<Zm4>.B } (ffe39c78/c1a11408) */
|
---|
13552 | //#define IEM_INSTR_IMPL_A64__usdot_za_zzw_s4x4(off3, Zn, Rv, Zm)
|
---|
13553 |
|
---|
13554 |
|
---|
13555 |
|
---|
13556 | /*
|
---|
13557 | *
|
---|
13558 | * Instruction Set & Groups: mortlach_multi4_z_za_mixed_dot_sm / mortlach_multi_array_1b / sme / A64
|
---|
13559 | *
|
---|
13560 | */
|
---|
13561 |
|
---|
13562 | /* USDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B (fff09c18/c1301408) */
|
---|
13563 | //#define IEM_INSTR_IMPL_A64__usdot_za_zzv_s4x1(off3, U, Zn, Rv, Zm)
|
---|
13564 |
|
---|
13565 |
|
---|
13566 | /* SUDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B (fff09c18/c1301418) */
|
---|
13567 | //#define IEM_INSTR_IMPL_A64__sudot_za_zzv_s4x1(off3, U, Zn, Rv, Zm)
|
---|
13568 |
|
---|
13569 |
|
---|
13570 |
|
---|
13571 | /*
|
---|
13572 | *
|
---|
13573 | * Instruction Set & Groups: mortlach_multi4_za_extract_ctg / mortlach_ext / sme / A64
|
---|
13574 | *
|
---|
13575 | */
|
---|
13576 |
|
---|
13577 | /* MOVA { <Zd1>.D-<Zd4>.D }, ZA.D[<Wv>, <offs>{, VGx4}] (ffff9f03/c0060c00) */
|
---|
13578 | //#define IEM_INSTR_IMPL_A64__mova_mz_za4_1(Zd, off3, Rv)
|
---|
13579 |
|
---|
13580 |
|
---|
13581 |
|
---|
13582 | /*
|
---|
13583 | *
|
---|
13584 | * Instruction Set & Groups: mortlach_multi4_za_extract_zero / mortlach_ext / sme / A64
|
---|
13585 | *
|
---|
13586 | */
|
---|
13587 |
|
---|
13588 | /* MOVAZ { <Zd1>.D-<Zd4>.D }, ZA.D[<Wv>, <offs>{, VGx4}] (ffff9f03/c0060e00) */
|
---|
13589 | //#define IEM_INSTR_IMPL_A64__movaz_mz_za4_1(Zd, off3, Rv)
|
---|
13590 |
|
---|
13591 |
|
---|
13592 |
|
---|
13593 | /*
|
---|
13594 | *
|
---|
13595 | * Instruction Set & Groups: mortlach_multi4_za_insert_ctg / mortlach_ins / sme / A64
|
---|
13596 | *
|
---|
13597 | */
|
---|
13598 |
|
---|
13599 | /* MOVA ZA.D[<Wv>, <offs>{, VGx4}], { <Zn1>.D-<Zn4>.D } (ffff9c78/c0040c00) */
|
---|
13600 | //#define IEM_INSTR_IMPL_A64__mova_za_mz4_1(off3, Zn, Rv)
|
---|
13601 |
|
---|
13602 |
|
---|
13603 |
|
---|
13604 | /*
|
---|
13605 | *
|
---|
13606 | * Instruction Set & Groups: mortlach_multi4_zz_za_f16_mm / mortlach_multi_array_2b / sme / A64
|
---|
13607 | *
|
---|
13608 | */
|
---|
13609 |
|
---|
13610 | /* FMLA ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c78/c1a11008) */
|
---|
13611 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzw_4x4_16(off3, S, Zn, Rv, Zm)
|
---|
13612 |
|
---|
13613 |
|
---|
13614 | /* BFMLA ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c78/c1e11008) */
|
---|
13615 | //#define IEM_INSTR_IMPL_A64__bfmla_za_zzw_4x4_16(off3, S, Zn, Rv, Zm)
|
---|
13616 |
|
---|
13617 |
|
---|
13618 | /* FMLS ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c78/c1a11018) */
|
---|
13619 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzw_4x4_16(off3, S, Zn, Rv, Zm)
|
---|
13620 |
|
---|
13621 |
|
---|
13622 | /* BFMLS ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c78/c1e11018) */
|
---|
13623 | //#define IEM_INSTR_IMPL_A64__bfmls_za_zzw_4x4_16(off3, S, Zn, Rv, Zm)
|
---|
13624 |
|
---|
13625 |
|
---|
13626 |
|
---|
13627 | /*
|
---|
13628 | *
|
---|
13629 | * Instruction Set & Groups: mortlach_multi4_zz_za_f16_sm / mortlach_multi_array_1b / sme / A64
|
---|
13630 | *
|
---|
13631 | */
|
---|
13632 |
|
---|
13633 | /* FMLA ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c18/c1301c00) */
|
---|
13634 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzv_4x1_16(off3, S, Zn, Rv, Zm)
|
---|
13635 |
|
---|
13636 |
|
---|
13637 | /* BFMLA ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c18/c1701c00) */
|
---|
13638 | //#define IEM_INSTR_IMPL_A64__bfmla_za_zzv_4x1_16(off3, S, Zn, Rv, Zm)
|
---|
13639 |
|
---|
13640 |
|
---|
13641 | /* FMLS ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c18/c1301c08) */
|
---|
13642 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzv_4x1_16(off3, S, Zn, Rv, Zm)
|
---|
13643 |
|
---|
13644 |
|
---|
13645 | /* BFMLS ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c18/c1701c08) */
|
---|
13646 | //#define IEM_INSTR_IMPL_A64__bfmls_za_zzv_4x1_16(off3, S, Zn, Rv, Zm)
|
---|
13647 |
|
---|
13648 |
|
---|
13649 |
|
---|
13650 | /*
|
---|
13651 | *
|
---|
13652 | * Instruction Set & Groups: mortlach_multi4_zz_za_float_mm / mortlach_multi_array_2b / sme / A64
|
---|
13653 | *
|
---|
13654 | */
|
---|
13655 |
|
---|
13656 | /* FMLA ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<T>-<Zn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ffa39c78/c1a11800) */
|
---|
13657 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzw_4x4(off3, S, Zn, Rv, Zm, sz)
|
---|
13658 |
|
---|
13659 |
|
---|
13660 | /* FMLS ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<T>-<Zn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ffa39c78/c1a11808) */
|
---|
13661 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzw_4x4(off3, S, Zn, Rv, Zm, sz)
|
---|
13662 |
|
---|
13663 |
|
---|
13664 |
|
---|
13665 | /*
|
---|
13666 | *
|
---|
13667 | * Instruction Set & Groups: mortlach_multi4_zz_za_float_sm / mortlach_multi_array_1b / sme / A64
|
---|
13668 | *
|
---|
13669 | */
|
---|
13670 |
|
---|
13671 | /* FMLA ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<T>-<Zn4>.<T> }, <Zm>.<T> (ffb09c18/c1301800) */
|
---|
13672 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzv_4x1(off3, S, Zn, Rv, Zm, sz)
|
---|
13673 |
|
---|
13674 |
|
---|
13675 | /* FMLS ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<T>-<Zn4>.<T> }, <Zm>.<T> (ffb09c18/c1301808) */
|
---|
13676 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzv_4x1(off3, S, Zn, Rv, Zm, sz)
|
---|
13677 |
|
---|
13678 |
|
---|
13679 |
|
---|
13680 | /*
|
---|
13681 | *
|
---|
13682 | * Instruction Set & Groups: mortlach_multi4_zz_za_fma_long_mm / mortlach_multi_array_2b / sme / A64
|
---|
13683 | *
|
---|
13684 | */
|
---|
13685 |
|
---|
13686 | /* BFMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c7c/c1a10810) */
|
---|
13687 | //#define IEM_INSTR_IMPL_A64__bfmlal_za_zzw_4x4(off2, S, Zn, Rv, Zm)
|
---|
13688 |
|
---|
13689 |
|
---|
13690 | /* FMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c7c/c1a10800) */
|
---|
13691 | //#define IEM_INSTR_IMPL_A64__fmlal_za_zzw_4x4(off2, S, Zn, Rv, Zm)
|
---|
13692 |
|
---|
13693 |
|
---|
13694 | /* BFMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c7c/c1a10818) */
|
---|
13695 | //#define IEM_INSTR_IMPL_A64__bfmlsl_za_zzw_4x4(off2, S, Zn, Rv, Zm)
|
---|
13696 |
|
---|
13697 |
|
---|
13698 | /* FMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c7c/c1a10808) */
|
---|
13699 | //#define IEM_INSTR_IMPL_A64__fmlsl_za_zzw_4x4(off2, S, Zn, Rv, Zm)
|
---|
13700 |
|
---|
13701 |
|
---|
13702 |
|
---|
13703 | /*
|
---|
13704 | *
|
---|
13705 | * Instruction Set & Groups: mortlach_multi4_zz_za_fma_long_sm / mortlach_multi_array_1b / sme / A64
|
---|
13706 | *
|
---|
13707 | */
|
---|
13708 |
|
---|
13709 | /* BFMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c1c/c1300810) */
|
---|
13710 | //#define IEM_INSTR_IMPL_A64__bfmlal_za_zzv_4x1(off2, S, Zn, Rv, Zm)
|
---|
13711 |
|
---|
13712 |
|
---|
13713 | /* FMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c1c/c1300800) */
|
---|
13714 | //#define IEM_INSTR_IMPL_A64__fmlal_za_zzv_4x1(off2, S, Zn, Rv, Zm)
|
---|
13715 |
|
---|
13716 |
|
---|
13717 | /* FMLAL ZA.H[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B (fff09c1c/c1300804) */
|
---|
13718 | //#define IEM_INSTR_IMPL_A64__fmlal_za_z8z8v_4x1(off2, Zn, Rv, Zm)
|
---|
13719 |
|
---|
13720 |
|
---|
13721 | /* BFMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c1c/c1300818) */
|
---|
13722 | //#define IEM_INSTR_IMPL_A64__bfmlsl_za_zzv_4x1(off2, S, Zn, Rv, Zm)
|
---|
13723 |
|
---|
13724 |
|
---|
13725 | /* FMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c1c/c1300808) */
|
---|
13726 | //#define IEM_INSTR_IMPL_A64__fmlsl_za_zzv_4x1(off2, S, Zn, Rv, Zm)
|
---|
13727 |
|
---|
13728 |
|
---|
13729 |
|
---|
13730 | /*
|
---|
13731 | *
|
---|
13732 | * Instruction Set & Groups: mortlach_multi4_zz_za_fp8_fma_long_long_mm / mortlach_multi_array_2b / sme / A64
|
---|
13733 | *
|
---|
13734 | */
|
---|
13735 |
|
---|
13736 | /* FMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, { <Zm1>.B-<Zm4>.B } (ffe39c7e/c1a10020) */
|
---|
13737 | //#define IEM_INSTR_IMPL_A64__fmlall_za32_z8z8w_4x4(o1, Zn, Rv, Zm)
|
---|
13738 |
|
---|
13739 |
|
---|
13740 |
|
---|
13741 | /*
|
---|
13742 | *
|
---|
13743 | * Instruction Set & Groups: mortlach_multi4_zz_za_fp8_fma_long_long_sm / mortlach_multi_array_1b / sme / A64
|
---|
13744 | *
|
---|
13745 | */
|
---|
13746 |
|
---|
13747 | /* FMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B (fff09c1e/c1300002) */
|
---|
13748 | //#define IEM_INSTR_IMPL_A64__fmlall_za32_z8z8v_4x1(o1, Zn, Rv, Zm)
|
---|
13749 |
|
---|
13750 |
|
---|
13751 |
|
---|
13752 | /*
|
---|
13753 | *
|
---|
13754 | * Instruction Set & Groups: mortlach_multi4_zz_za_fp8_fma_long_mm / mortlach_multi_array_2b / sme / A64
|
---|
13755 | *
|
---|
13756 | */
|
---|
13757 |
|
---|
13758 | /* FMLAL ZA.H[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.B-<Zn4>.B }, { <Zm1>.B-<Zm4>.B } (ffe39c7c/c1a10820) */
|
---|
13759 | //#define IEM_INSTR_IMPL_A64__fmlal_za_z8z8w_4x4(off2, Zn, Rv, Zm)
|
---|
13760 |
|
---|
13761 |
|
---|
13762 |
|
---|
13763 | /*
|
---|
13764 | *
|
---|
13765 | * Instruction Set & Groups: mortlach_multi4_zz_za_int_mm / mortlach_multi_array_2b / sme / A64
|
---|
13766 | *
|
---|
13767 | */
|
---|
13768 |
|
---|
13769 | /* ADD ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<T>-<Zn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ffa39c78/c1a11810) */
|
---|
13770 | //#define IEM_INSTR_IMPL_A64__add_za_zzw_4x4(off3, S, Zn, Rv, Zm, sz)
|
---|
13771 |
|
---|
13772 |
|
---|
13773 | /* SUB ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<T>-<Zn4>.<T> }, { <Zm1>.<T>-<Zm4>.<T> } (ffa39c78/c1a11818) */
|
---|
13774 | //#define IEM_INSTR_IMPL_A64__sub_za_zzw_4x4(off3, S, Zn, Rv, Zm, sz)
|
---|
13775 |
|
---|
13776 |
|
---|
13777 |
|
---|
13778 | /*
|
---|
13779 | *
|
---|
13780 | * Instruction Set & Groups: mortlach_multi4_zz_za_int_sm / mortlach_multi_array_1b / sme / A64
|
---|
13781 | *
|
---|
13782 | */
|
---|
13783 |
|
---|
13784 | /* ADD ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<T>-<Zn4>.<T> }, <Zm>.<T> (ffb09c18/c1301810) */
|
---|
13785 | //#define IEM_INSTR_IMPL_A64__add_za_zzv_4x1(off3, S, Zn, Rv, Zm, sz)
|
---|
13786 |
|
---|
13787 |
|
---|
13788 | /* SUB ZA.<T>[<Wv>, <offs>{, VGx4}], { <Zn1>.<T>-<Zn4>.<T> }, <Zm>.<T> (ffb09c18/c1301818) */
|
---|
13789 | //#define IEM_INSTR_IMPL_A64__sub_za_zzv_4x1(off3, S, Zn, Rv, Zm, sz)
|
---|
13790 |
|
---|
13791 |
|
---|
13792 |
|
---|
13793 | /*
|
---|
13794 | *
|
---|
13795 | * Instruction Set & Groups: mortlach_multi4_zz_za_mla_long_long_mm / mortlach_multi_array_2b / sme / A64
|
---|
13796 | *
|
---|
13797 | */
|
---|
13798 |
|
---|
13799 | /* SMLALL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, { <Zm1>.<Tb>-<Zm4>.<Tb> } (ffa39c7e/c1a10000) */
|
---|
13800 | //#define IEM_INSTR_IMPL_A64__smlall_za_zzw_4x4(o1, S, U, Zn, Rv, Zm, sz)
|
---|
13801 |
|
---|
13802 |
|
---|
13803 | /* USMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, { <Zm1>.B-<Zm4>.B } (ffe39c7e/c1a10004) */
|
---|
13804 | //#define IEM_INSTR_IMPL_A64__usmlall_za_zzw_s4x4(o1, Zn, Rv, Zm)
|
---|
13805 |
|
---|
13806 |
|
---|
13807 | /* SMLSLL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, { <Zm1>.<Tb>-<Zm4>.<Tb> } (ffa39c7e/c1a10008) */
|
---|
13808 | //#define IEM_INSTR_IMPL_A64__smlsll_za_zzw_4x4(o1, S, U, Zn, Rv, Zm, sz)
|
---|
13809 |
|
---|
13810 |
|
---|
13811 | /* UMLALL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, { <Zm1>.<Tb>-<Zm4>.<Tb> } (ffa39c7e/c1a10010) */
|
---|
13812 | //#define IEM_INSTR_IMPL_A64__umlall_za_zzw_4x4(o1, S, U, Zn, Rv, Zm, sz)
|
---|
13813 |
|
---|
13814 |
|
---|
13815 | /* UMLSLL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, { <Zm1>.<Tb>-<Zm4>.<Tb> } (ffa39c7e/c1a10018) */
|
---|
13816 | //#define IEM_INSTR_IMPL_A64__umlsll_za_zzw_4x4(o1, S, U, Zn, Rv, Zm, sz)
|
---|
13817 |
|
---|
13818 |
|
---|
13819 |
|
---|
13820 | /*
|
---|
13821 | *
|
---|
13822 | * Instruction Set & Groups: mortlach_multi4_zz_za_mla_long_long_sm / mortlach_multi_array_1b / sme / A64
|
---|
13823 | *
|
---|
13824 | */
|
---|
13825 |
|
---|
13826 | /* SMLALL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, <Zm>.<Tb> (ffb09c1e/c1300000) */
|
---|
13827 | //#define IEM_INSTR_IMPL_A64__smlall_za_zzv_4x1(o1, S, U, Zn, Rv, Zm, sz)
|
---|
13828 |
|
---|
13829 |
|
---|
13830 | /* USMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B (fff09c1e/c1300004) */
|
---|
13831 | //#define IEM_INSTR_IMPL_A64__usmlall_za_zzv_s4x1(o1, U, Zn, Rv, Zm)
|
---|
13832 |
|
---|
13833 |
|
---|
13834 | /* SMLSLL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, <Zm>.<Tb> (ffb09c1e/c1300008) */
|
---|
13835 | //#define IEM_INSTR_IMPL_A64__smlsll_za_zzv_4x1(o1, S, U, Zn, Rv, Zm, sz)
|
---|
13836 |
|
---|
13837 |
|
---|
13838 | /* UMLALL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, <Zm>.<Tb> (ffb09c1e/c1300010) */
|
---|
13839 | //#define IEM_INSTR_IMPL_A64__umlall_za_zzv_4x1(o1, S, U, Zn, Rv, Zm, sz)
|
---|
13840 |
|
---|
13841 |
|
---|
13842 | /* SUMLALL ZA.S[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B (fff09c1e/c1300014) */
|
---|
13843 | //#define IEM_INSTR_IMPL_A64__sumlall_za_zzv_s4x1(o1, U, Zn, Rv, Zm)
|
---|
13844 |
|
---|
13845 |
|
---|
13846 | /* UMLSLL ZA.<T>[<Wv>, <offs1>:<offs4>{, VGx4}], { <Zn1>.<Tb>-<Zn4>.<Tb> }, <Zm>.<Tb> (ffb09c1e/c1300018) */
|
---|
13847 | //#define IEM_INSTR_IMPL_A64__umlsll_za_zzv_4x1(o1, S, U, Zn, Rv, Zm, sz)
|
---|
13848 |
|
---|
13849 |
|
---|
13850 |
|
---|
13851 | /*
|
---|
13852 | *
|
---|
13853 | * Instruction Set & Groups: mortlach_multi4_zz_za_mla_long_mm / mortlach_multi_array_2b / sme / A64
|
---|
13854 | *
|
---|
13855 | */
|
---|
13856 |
|
---|
13857 | /* SMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c7c/c1e10800) */
|
---|
13858 | //#define IEM_INSTR_IMPL_A64__smlal_za_zzw_4x4(off2, S, U, Zn, Rv, Zm)
|
---|
13859 |
|
---|
13860 |
|
---|
13861 | /* SMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c7c/c1e10808) */
|
---|
13862 | //#define IEM_INSTR_IMPL_A64__smlsl_za_zzw_4x4(off2, S, U, Zn, Rv, Zm)
|
---|
13863 |
|
---|
13864 |
|
---|
13865 | /* UMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c7c/c1e10810) */
|
---|
13866 | //#define IEM_INSTR_IMPL_A64__umlal_za_zzw_4x4(off2, S, U, Zn, Rv, Zm)
|
---|
13867 |
|
---|
13868 |
|
---|
13869 | /* UMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, { <Zm1>.H-<Zm4>.H } (ffe39c7c/c1e10818) */
|
---|
13870 | //#define IEM_INSTR_IMPL_A64__umlsl_za_zzw_4x4(off2, S, U, Zn, Rv, Zm)
|
---|
13871 |
|
---|
13872 |
|
---|
13873 |
|
---|
13874 | /*
|
---|
13875 | *
|
---|
13876 | * Instruction Set & Groups: mortlach_multi4_zz_za_mla_long_sm / mortlach_multi_array_1b / sme / A64
|
---|
13877 | *
|
---|
13878 | */
|
---|
13879 |
|
---|
13880 | /* SMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c1c/c1700800) */
|
---|
13881 | //#define IEM_INSTR_IMPL_A64__smlal_za_zzv_4x1(off2, S, U, Zn, Rv, Zm)
|
---|
13882 |
|
---|
13883 |
|
---|
13884 | /* SMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c1c/c1700808) */
|
---|
13885 | //#define IEM_INSTR_IMPL_A64__smlsl_za_zzv_4x1(off2, S, U, Zn, Rv, Zm)
|
---|
13886 |
|
---|
13887 |
|
---|
13888 | /* UMLAL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c1c/c1700810) */
|
---|
13889 | //#define IEM_INSTR_IMPL_A64__umlal_za_zzv_4x1(off2, S, U, Zn, Rv, Zm)
|
---|
13890 |
|
---|
13891 |
|
---|
13892 | /* UMLSL ZA.S[<Wv>, <offs1>:<offs2>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H (fff09c1c/c1700818) */
|
---|
13893 | //#define IEM_INSTR_IMPL_A64__umlsl_za_zzv_4x1(off2, S, U, Zn, Rv, Zm)
|
---|
13894 |
|
---|
13895 |
|
---|
13896 |
|
---|
13897 | /*
|
---|
13898 | *
|
---|
13899 | * Instruction Set & Groups: mortlach_multi4_zza_idx_d / mortlach_multi_indexed_3 / sme / A64
|
---|
13900 | *
|
---|
13901 | */
|
---|
13902 |
|
---|
13903 | /* FMLA ZA.D[<Wv>, <offs>{, VGx4}], { <Zn1>.D-<Zn4>.D }, <Zm>.D[<index>] (fff09878/c1d08000) */
|
---|
13904 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzi_d4xi(off3, S, Zn, i1, Rv, Zm)
|
---|
13905 |
|
---|
13906 |
|
---|
13907 | /* SDOT ZA.D[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09878/c1d08008) */
|
---|
13908 | //#define IEM_INSTR_IMPL_A64__sdot_za_zzi_d4xi(off3, U, Zn, i1, Rv, Zm)
|
---|
13909 |
|
---|
13910 |
|
---|
13911 | /* SVDOT ZA.D[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09878/c1d08808) */
|
---|
13912 | //#define IEM_INSTR_IMPL_A64__svdot_za_zzi_d4xi(off3, U, Zn, i1, Rv, Zm)
|
---|
13913 |
|
---|
13914 |
|
---|
13915 | /* FMLS ZA.D[<Wv>, <offs>{, VGx4}], { <Zn1>.D-<Zn4>.D }, <Zm>.D[<index>] (fff09878/c1d08010) */
|
---|
13916 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzi_d4xi(off3, S, Zn, i1, Rv, Zm)
|
---|
13917 |
|
---|
13918 |
|
---|
13919 | /* UDOT ZA.D[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09878/c1d08018) */
|
---|
13920 | //#define IEM_INSTR_IMPL_A64__udot_za_zzi_d4xi(off3, U, Zn, i1, Rv, Zm)
|
---|
13921 |
|
---|
13922 |
|
---|
13923 | /* UVDOT ZA.D[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09878/c1d08818) */
|
---|
13924 | //#define IEM_INSTR_IMPL_A64__uvdot_za_zzi_d4xi(off3, U, Zn, i1, Rv, Zm)
|
---|
13925 |
|
---|
13926 |
|
---|
13927 |
|
---|
13928 | /*
|
---|
13929 | *
|
---|
13930 | * Instruction Set & Groups: mortlach_multi4_zza_idx_h / mortlach_multi_indexed_3 / sme / A64
|
---|
13931 | *
|
---|
13932 | */
|
---|
13933 |
|
---|
13934 | /* FMLA ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09070/c1109000) */
|
---|
13935 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzi_h4xi(off3, i3l, S, Zn, i3h, Rv, Zm)
|
---|
13936 |
|
---|
13937 |
|
---|
13938 | /* BFMLA ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09070/c1109020) */
|
---|
13939 | //#define IEM_INSTR_IMPL_A64__bfmla_za_zzi_h4xi(off3, i3l, S, Zn, i3h, Rv, Zm)
|
---|
13940 |
|
---|
13941 |
|
---|
13942 | /* FMLS ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09070/c1109010) */
|
---|
13943 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzi_h4xi(off3, i3l, S, Zn, i3h, Rv, Zm)
|
---|
13944 |
|
---|
13945 |
|
---|
13946 | /* BFMLS ZA.H[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09070/c1109030) */
|
---|
13947 | //#define IEM_INSTR_IMPL_A64__bfmls_za_zzi_h4xi(off3, i3l, S, Zn, i3h, Rv, Zm)
|
---|
13948 |
|
---|
13949 |
|
---|
13950 |
|
---|
13951 | /*
|
---|
13952 | *
|
---|
13953 | * Instruction Set & Groups: mortlach_multi4_zza_idx_s / mortlach_multi_indexed_3 / sme / A64
|
---|
13954 | *
|
---|
13955 | */
|
---|
13956 |
|
---|
13957 | /* FMLA ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.S-<Zn4>.S }, <Zm>.S[<index>] (fff09078/c1508000) */
|
---|
13958 | //#define IEM_INSTR_IMPL_A64__fmla_za_zzi_s4xi(off3, S, Zn, i2, Rv, Zm)
|
---|
13959 |
|
---|
13960 |
|
---|
13961 | /* FDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1508008) */
|
---|
13962 | //#define IEM_INSTR_IMPL_A64__fdot_za32_z8z8i_4xi(off3, Zn, i2, Rv, Zm)
|
---|
13963 |
|
---|
13964 |
|
---|
13965 | /* SVDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1508020) */
|
---|
13966 | //#define IEM_INSTR_IMPL_A64__svdot_za_zzi_s4xi(off3, U, Zn, i2, Rv, Zm)
|
---|
13967 |
|
---|
13968 |
|
---|
13969 | /* USVDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1508028) */
|
---|
13970 | //#define IEM_INSTR_IMPL_A64__usvdot_za_zzi_s4xi(off3, U, Zn, i2, Rv, Zm)
|
---|
13971 |
|
---|
13972 |
|
---|
13973 | /* SDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1509000) */
|
---|
13974 | //#define IEM_INSTR_IMPL_A64__sdot_za32_zzi_4xi(off3, U, Zn, i2, Rv, Zm)
|
---|
13975 |
|
---|
13976 |
|
---|
13977 | /* FDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1509008) */
|
---|
13978 | //#define IEM_INSTR_IMPL_A64__fdot_za_zzi_4xi(off3, Zn, i2, Rv, Zm)
|
---|
13979 |
|
---|
13980 |
|
---|
13981 | /* BFDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1509018) */
|
---|
13982 | //#define IEM_INSTR_IMPL_A64__bfdot_za_zzi_4xi(off3, Zn, i2, Rv, Zm)
|
---|
13983 |
|
---|
13984 |
|
---|
13985 | /* SDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1509020) */
|
---|
13986 | //#define IEM_INSTR_IMPL_A64__sdot_za_zzi_s4xi(off3, U, Zn, i2, Rv, Zm)
|
---|
13987 |
|
---|
13988 |
|
---|
13989 | /* USDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1509028) */
|
---|
13990 | //#define IEM_INSTR_IMPL_A64__usdot_za_zzi_s4xi(off3, U, Zn, i2, Rv, Zm)
|
---|
13991 |
|
---|
13992 |
|
---|
13993 | /* FMLS ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.S-<Zn4>.S }, <Zm>.S[<index>] (fff09078/c1508010) */
|
---|
13994 | //#define IEM_INSTR_IMPL_A64__fmls_za_zzi_s4xi(off3, S, Zn, i2, Rv, Zm)
|
---|
13995 |
|
---|
13996 |
|
---|
13997 | /* UVDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1508030) */
|
---|
13998 | //#define IEM_INSTR_IMPL_A64__uvdot_za_zzi_s4xi(off3, U, Zn, i2, Rv, Zm)
|
---|
13999 |
|
---|
14000 |
|
---|
14001 | /* SUVDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1508038) */
|
---|
14002 | //#define IEM_INSTR_IMPL_A64__suvdot_za_zzi_s4xi(off3, U, Zn, i2, Rv, Zm)
|
---|
14003 |
|
---|
14004 |
|
---|
14005 | /* UDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.H-<Zn4>.H }, <Zm>.H[<index>] (fff09078/c1509010) */
|
---|
14006 | //#define IEM_INSTR_IMPL_A64__udot_za32_zzi_4xi(off3, U, Zn, i2, Rv, Zm)
|
---|
14007 |
|
---|
14008 |
|
---|
14009 | /* UDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1509030) */
|
---|
14010 | //#define IEM_INSTR_IMPL_A64__udot_za_zzi_s4xi(off3, U, Zn, i2, Rv, Zm)
|
---|
14011 |
|
---|
14012 |
|
---|
14013 | /* SUDOT ZA.S[<Wv>, <offs>{, VGx4}], { <Zn1>.B-<Zn4>.B }, <Zm>.B[<index>] (fff09078/c1509038) */
|
---|
14014 | //#define IEM_INSTR_IMPL_A64__sudot_za_zzi_s4xi(off3, U, Zn, i2, Rv, Zm)
|
---|
14015 |
|
---|
14016 |
|
---|
14017 |
|
---|
14018 | /*
|
---|
14019 | *
|
---|
14020 | * Instruction Set & Groups: mortlach_multi_zero / mortlach_multizero / sme / A64
|
---|
14021 | *
|
---|
14022 | */
|
---|
14023 |
|
---|
14024 | /* ZERO ZA.D[<Wv>, <offs>, VGx2] (ffff9ff8/c00c0000) */
|
---|
14025 | //#define IEM_INSTR_IMPL_A64__zero_za1_ri_2(off3, Rv)
|
---|
14026 |
|
---|
14027 |
|
---|
14028 | /* ZERO ZA.D[<Wv>, <offs>, VGx4] (ffff9ff8/c00e0000) */
|
---|
14029 | //#define IEM_INSTR_IMPL_A64__zero_za1_ri_4(off3, Rv)
|
---|
14030 |
|
---|
14031 |
|
---|
14032 | /* ZERO ZA.D[<Wv>, <offs1>:<offs2>] (ffff9ff8/c00c8000) */
|
---|
14033 | //#define IEM_INSTR_IMPL_A64__zero_za2_ri_1(off3, Rv)
|
---|
14034 |
|
---|
14035 |
|
---|
14036 | /* ZERO ZA.D[<Wv>, <offs1>:<offs2>, VGx2] (ffff9ffc/c00d0000) */
|
---|
14037 | //#define IEM_INSTR_IMPL_A64__zero_za2_ri_2(off2, Rv)
|
---|
14038 |
|
---|
14039 |
|
---|
14040 | /* ZERO ZA.D[<Wv>, <offs1>:<offs2>, VGx4] (ffff9ffc/c00d8000) */
|
---|
14041 | //#define IEM_INSTR_IMPL_A64__zero_za2_ri_4(off2, Rv)
|
---|
14042 |
|
---|
14043 |
|
---|
14044 | /* ZERO ZA.D[<Wv>, <offs1>:<offs4>] (ffff9ffc/c00e8000) */
|
---|
14045 | //#define IEM_INSTR_IMPL_A64__zero_za4_ri_1(off2, Rv)
|
---|
14046 |
|
---|
14047 |
|
---|
14048 | /* ZERO ZA.D[<Wv>, <offs1>:<offs4>, VGx2] (ffff9ffe/c00f0000) */
|
---|
14049 | //#define IEM_INSTR_IMPL_A64__zero_za4_ri_2(o1, Rv)
|
---|
14050 |
|
---|
14051 |
|
---|
14052 | /* ZERO ZA.D[<Wv>, <offs1>:<offs4>, VGx4] (ffff9ffe/c00f8000) */
|
---|
14053 | //#define IEM_INSTR_IMPL_A64__zero_za4_ri_4(o1, Rv)
|
---|
14054 |
|
---|
14055 |
|
---|
14056 |
|
---|
14057 | /*
|
---|
14058 | *
|
---|
14059 | * Instruction Set & Groups: mortlach_zero_lvl2 / mortlach_zero / sme / A64
|
---|
14060 | *
|
---|
14061 | */
|
---|
14062 |
|
---|
14063 | /* ZERO { <mask> } (ffffff00/c0080000) */
|
---|
14064 | //#define IEM_INSTR_IMPL_A64__zero_za_i(imm8)
|
---|
14065 |
|
---|
14066 |
|
---|
14067 |
|
---|
14068 | /*
|
---|
14069 | *
|
---|
14070 | * Instruction Set & Groups: mortlach_zero_zt_lvl2 / mortlach_zero_zt / sme / A64
|
---|
14071 | *
|
---|
14072 | */
|
---|
14073 |
|
---|
14074 | /* ZERO { ZT0 } (ffffffff/c0480001) */
|
---|
14075 | //#define IEM_INSTR_IMPL_A64__zero_zt_i()
|
---|
14076 |
|
---|
14077 |
|
---|
14078 |
|
---|
14079 | /*
|
---|
14080 | *
|
---|
14081 | * Instruction Set & Groups: mortlach_zt_ldst / mortlach_mem / sme / A64
|
---|
14082 | *
|
---|
14083 | */
|
---|
14084 |
|
---|
14085 | /* LDR ZT0, [<Xn|SP>] (fffffc1f/e11f8000) */
|
---|
14086 | //#define IEM_INSTR_IMPL_A64__ldr_zt_br(Rn)
|
---|
14087 |
|
---|
14088 |
|
---|
14089 | /* STR ZT0, [<Xn|SP>] (fffffc1f/e13f8000) */
|
---|
14090 | //#define IEM_INSTR_IMPL_A64__str_zt_br(Rn)
|
---|
14091 |
|
---|
14092 |
|
---|
14093 |
|
---|
14094 | /*
|
---|
14095 | *
|
---|
14096 | * Instruction Set & Groups: movewide / dpimm / A64
|
---|
14097 | *
|
---|
14098 | */
|
---|
14099 |
|
---|
14100 | /* MOVN <Wd>, #<imm>{, LSL #<shift>} (ffc00000/12800000) */
|
---|
14101 | //#define IEM_INSTR_IMPL_A64__MOVN_32_movewide(Rd, imm16, hw)
|
---|
14102 |
|
---|
14103 |
|
---|
14104 | /* MOVZ <Wd>, #<imm>{, LSL #<shift>} (ffc00000/52800000) */
|
---|
14105 | //#define IEM_INSTR_IMPL_A64__MOVZ_32_movewide(Rd, imm16, hw)
|
---|
14106 |
|
---|
14107 |
|
---|
14108 | /* MOVK <Wd>, #<imm>{, LSL #<shift>} (ffc00000/72800000) */
|
---|
14109 | //#define IEM_INSTR_IMPL_A64__MOVK_32_movewide(Rd, imm16, hw)
|
---|
14110 |
|
---|
14111 |
|
---|
14112 | /* MOVN <Xd>, #<imm>{, LSL #<shift>} (ff800000/92800000) */
|
---|
14113 | //#define IEM_INSTR_IMPL_A64__MOVN_64_movewide(Rd, imm16, hw)
|
---|
14114 |
|
---|
14115 |
|
---|
14116 | /* MOVZ <Xd>, #<imm>{, LSL #<shift>} (ff800000/d2800000) */
|
---|
14117 | //#define IEM_INSTR_IMPL_A64__MOVZ_64_movewide(Rd, imm16, hw)
|
---|
14118 |
|
---|
14119 |
|
---|
14120 | /* MOVK <Xd>, #<imm>{, LSL #<shift>} (ff800000/f2800000) */
|
---|
14121 | //#define IEM_INSTR_IMPL_A64__MOVK_64_movewide(Rd, imm16, hw)
|
---|
14122 |
|
---|
14123 |
|
---|
14124 |
|
---|
14125 | /*
|
---|
14126 | *
|
---|
14127 | * Instruction Set & Groups: pcreladdr / dpimm / A64
|
---|
14128 | *
|
---|
14129 | */
|
---|
14130 |
|
---|
14131 | /* ADR <Xd>, <label> (9f000000/10000000) */
|
---|
14132 | //#define IEM_INSTR_IMPL_A64__ADR_only_pcreladdr(Rd, immhi, immlo)
|
---|
14133 |
|
---|
14134 |
|
---|
14135 | /* ADRP <Xd>, <label> (9f000000/90000000) */
|
---|
14136 | //#define IEM_INSTR_IMPL_A64__ADRP_only_pcreladdr(Rd, immhi, immlo)
|
---|
14137 |
|
---|
14138 |
|
---|
14139 |
|
---|
14140 | /*
|
---|
14141 | *
|
---|
14142 | * Instruction Set & Groups: perm_undef / reserved / A64
|
---|
14143 | *
|
---|
14144 | */
|
---|
14145 |
|
---|
14146 | /* UDF #<imm> (ffff0000/00000000) */
|
---|
14147 | //#define IEM_INSTR_IMPL_A64__UDF_only_perm_undef(imm16)
|
---|
14148 |
|
---|
14149 |
|
---|
14150 |
|
---|
14151 | /*
|
---|
14152 | *
|
---|
14153 | * Instruction Set & Groups: pstate / control / A64
|
---|
14154 | *
|
---|
14155 | */
|
---|
14156 |
|
---|
14157 | /* MSR <pstatefield>, #<imm> (fff8f01f/d500401f) */
|
---|
14158 | //#define IEM_INSTR_IMPL_A64__MSR_SI_pstate(op2, CRm, op1)
|
---|
14159 |
|
---|
14160 |
|
---|
14161 | /* CFINV (ffffffff/d500401f) */
|
---|
14162 | //#define IEM_INSTR_IMPL_A64__CFINV_M_pstate()
|
---|
14163 |
|
---|
14164 |
|
---|
14165 | /* XAFLAG (ffffffff/d500403f) */
|
---|
14166 | //#define IEM_INSTR_IMPL_A64__XAFLAG_M_pstate()
|
---|
14167 |
|
---|
14168 |
|
---|
14169 | /* AXFLAG (ffffffff/d500405f) */
|
---|
14170 | //#define IEM_INSTR_IMPL_A64__AXFLAG_M_pstate()
|
---|
14171 |
|
---|
14172 |
|
---|
14173 |
|
---|
14174 | /*
|
---|
14175 | *
|
---|
14176 | * Instruction Set & Groups: rcwcomswap / ldst / A64
|
---|
14177 | *
|
---|
14178 | */
|
---|
14179 |
|
---|
14180 | /* RCWCAS <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/19200800) */
|
---|
14181 | //#define IEM_INSTR_IMPL_A64__RCWCAS_C64_rcwcomswap(Rt, Rn, Rs)
|
---|
14182 |
|
---|
14183 |
|
---|
14184 | /* RCWCASL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/19600800) */
|
---|
14185 | //#define IEM_INSTR_IMPL_A64__RCWCASL_C64_rcwcomswap(Rt, Rn, Rs)
|
---|
14186 |
|
---|
14187 |
|
---|
14188 | /* RCWCASA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/19a00800) */
|
---|
14189 | //#define IEM_INSTR_IMPL_A64__RCWCASA_C64_rcwcomswap(Rt, Rn, Rs)
|
---|
14190 |
|
---|
14191 |
|
---|
14192 | /* RCWCASAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/19e00800) */
|
---|
14193 | //#define IEM_INSTR_IMPL_A64__RCWCASAL_C64_rcwcomswap(Rt, Rn, Rs)
|
---|
14194 |
|
---|
14195 |
|
---|
14196 | /* RCWSCAS <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59200800) */
|
---|
14197 | //#define IEM_INSTR_IMPL_A64__RCWSCAS_C64_rcwcomswap(Rt, Rn, Rs)
|
---|
14198 |
|
---|
14199 |
|
---|
14200 | /* RCWSCASL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59600800) */
|
---|
14201 | //#define IEM_INSTR_IMPL_A64__RCWSCASL_C64_rcwcomswap(Rt, Rn, Rs)
|
---|
14202 |
|
---|
14203 |
|
---|
14204 | /* RCWSCASA <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59a00800) */
|
---|
14205 | //#define IEM_INSTR_IMPL_A64__RCWSCASA_C64_rcwcomswap(Rt, Rn, Rs)
|
---|
14206 |
|
---|
14207 |
|
---|
14208 | /* RCWSCASAL <Xs>, <Xt>, [<Xn|SP>] (ffe0fc00/59e00800) */
|
---|
14209 | //#define IEM_INSTR_IMPL_A64__RCWSCASAL_C64_rcwcomswap(Rt, Rn, Rs)
|
---|
14210 |
|
---|
14211 |
|
---|
14212 |
|
---|
14213 | /*
|
---|
14214 | *
|
---|
14215 | * Instruction Set & Groups: rcwcomswappr / ldst / A64
|
---|
14216 | *
|
---|
14217 | */
|
---|
14218 |
|
---|
14219 | /* RCWCASP <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>] (ffe0fc00/19200c00) */
|
---|
14220 | //#define IEM_INSTR_IMPL_A64__RCWCASP_C64_rcwcomswappr(Rt, Rn, Rs)
|
---|
14221 |
|
---|
14222 |
|
---|
14223 | /* RCWCASPL <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>] (ffe0fc00/19600c00) */
|
---|
14224 | //#define IEM_INSTR_IMPL_A64__RCWCASPL_C64_rcwcomswappr(Rt, Rn, Rs)
|
---|
14225 |
|
---|
14226 |
|
---|
14227 | /* RCWCASPA <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>] (ffe0fc00/19a00c00) */
|
---|
14228 | //#define IEM_INSTR_IMPL_A64__RCWCASPA_C64_rcwcomswappr(Rt, Rn, Rs)
|
---|
14229 |
|
---|
14230 |
|
---|
14231 | /* RCWCASPAL <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>] (ffe0fc00/19e00c00) */
|
---|
14232 | //#define IEM_INSTR_IMPL_A64__RCWCASPAL_C64_rcwcomswappr(Rt, Rn, Rs)
|
---|
14233 |
|
---|
14234 |
|
---|
14235 | /* RCWSCASP <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>] (ffe0fc00/59200c00) */
|
---|
14236 | //#define IEM_INSTR_IMPL_A64__RCWSCASP_C64_rcwcomswappr(Rt, Rn, Rs)
|
---|
14237 |
|
---|
14238 |
|
---|
14239 | /* RCWSCASPL <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>] (ffe0fc00/59600c00) */
|
---|
14240 | //#define IEM_INSTR_IMPL_A64__RCWSCASPL_C64_rcwcomswappr(Rt, Rn, Rs)
|
---|
14241 |
|
---|
14242 |
|
---|
14243 | /* RCWSCASPA <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>] (ffe0fc00/59a00c00) */
|
---|
14244 | //#define IEM_INSTR_IMPL_A64__RCWSCASPA_C64_rcwcomswappr(Rt, Rn, Rs)
|
---|
14245 |
|
---|
14246 |
|
---|
14247 | /* RCWSCASPAL <Xs>, <X(s+1)>, <Xt>, <X(t+1)>, [<Xn|SP>] (ffe0fc00/59e00c00) */
|
---|
14248 | //#define IEM_INSTR_IMPL_A64__RCWSCASPAL_C64_rcwcomswappr(Rt, Rn, Rs)
|
---|
14249 |
|
---|
14250 |
|
---|
14251 |
|
---|
14252 | /*
|
---|
14253 | *
|
---|
14254 | * Instruction Set & Groups: rmif / dpreg / A64
|
---|
14255 | *
|
---|
14256 | */
|
---|
14257 |
|
---|
14258 | /* RMIF <Xn>, #<shift>, #<mask> (ffe07c10/ba000400) */
|
---|
14259 | //#define IEM_INSTR_IMPL_A64__RMIF_only_rmif(mask, Rn, imm6)
|
---|
14260 |
|
---|
14261 |
|
---|
14262 |
|
---|
14263 | /*
|
---|
14264 | *
|
---|
14265 | * Instruction Set & Groups: setf / dpreg / A64
|
---|
14266 | *
|
---|
14267 | */
|
---|
14268 |
|
---|
14269 | /* SETF8 <Wn> (fffffc1f/3a00080d) */
|
---|
14270 | //#define IEM_INSTR_IMPL_A64__SETF8_only_setf(Rn)
|
---|
14271 |
|
---|
14272 |
|
---|
14273 | /* SETF16 <Wn> (fffffc1f/3a00480d) */
|
---|
14274 | //#define IEM_INSTR_IMPL_A64__SETF16_only_setf(Rn)
|
---|
14275 |
|
---|
14276 |
|
---|
14277 |
|
---|
14278 | /*
|
---|
14279 | *
|
---|
14280 | * Instruction Set & Groups: sve_crypto_binary_const / sve_intx_crypto / sve / A64
|
---|
14281 | *
|
---|
14282 | */
|
---|
14283 |
|
---|
14284 | /* SM4EKEY <Zd>.S, <Zn>.S, <Zm>.S (ffe0fc00/4520f000) */
|
---|
14285 | //#define IEM_INSTR_IMPL_A64__sm4ekey_z_zz(Zd, Zn, Zm)
|
---|
14286 |
|
---|
14287 |
|
---|
14288 | /* RAX1 <Zd>.D, <Zn>.D, <Zm>.D (ffe0fc00/4520f400) */
|
---|
14289 | //#define IEM_INSTR_IMPL_A64__rax1_z_zz(Zd, Zn, Zm)
|
---|
14290 |
|
---|
14291 |
|
---|
14292 |
|
---|
14293 | /*
|
---|
14294 | *
|
---|
14295 | * Instruction Set & Groups: sve_crypto_binary_dest / sve_intx_crypto / sve / A64
|
---|
14296 | *
|
---|
14297 | */
|
---|
14298 |
|
---|
14299 | /* AESE <Zdn>.B, <Zdn>.B, <Zm>.B (fffffc00/4522e000) */
|
---|
14300 | //#define IEM_INSTR_IMPL_A64__aese_z_zz(Zdn, Zm)
|
---|
14301 |
|
---|
14302 |
|
---|
14303 | /* AESD <Zdn>.B, <Zdn>.B, <Zm>.B (fffffc00/4522e400) */
|
---|
14304 | //#define IEM_INSTR_IMPL_A64__aesd_z_zz(Zdn, Zm)
|
---|
14305 |
|
---|
14306 |
|
---|
14307 | /* SM4E <Zdn>.S, <Zdn>.S, <Zm>.S (fffffc00/4523e000) */
|
---|
14308 | //#define IEM_INSTR_IMPL_A64__sm4e_z_zz(Zdn, Zm)
|
---|
14309 |
|
---|
14310 |
|
---|
14311 |
|
---|
14312 | /*
|
---|
14313 | *
|
---|
14314 | * Instruction Set & Groups: sve_crypto_binary_multi2 / sve_intx_crypto / sve / A64
|
---|
14315 | *
|
---|
14316 | */
|
---|
14317 |
|
---|
14318 | /* AESE { <Zdn1>.B-<Zdn2>.B }, { <Zdn1>.B-<Zdn2>.B }, <Zm>.Q[<index>] (ffe7fc01/4522e800) */
|
---|
14319 | //#define IEM_INSTR_IMPL_A64__aese_mz_zzi_2x1(Zdn, Zm, i2)
|
---|
14320 |
|
---|
14321 |
|
---|
14322 | /* AESD { <Zdn1>.B-<Zdn2>.B }, { <Zdn1>.B-<Zdn2>.B }, <Zm>.Q[<index>] (ffe7fc01/4522ec00) */
|
---|
14323 | //#define IEM_INSTR_IMPL_A64__aesd_mz_zzi_2x1(Zdn, Zm, i2)
|
---|
14324 |
|
---|
14325 |
|
---|
14326 | /* AESEMC { <Zdn1>.B-<Zdn2>.B }, { <Zdn1>.B-<Zdn2>.B }, <Zm>.Q[<index>] (ffe7fc01/4523e800) */
|
---|
14327 | //#define IEM_INSTR_IMPL_A64__aesemc_mz_zzi_2x1(Zdn, Zm, i2)
|
---|
14328 |
|
---|
14329 |
|
---|
14330 | /* AESDIMC { <Zdn1>.B-<Zdn2>.B }, { <Zdn1>.B-<Zdn2>.B }, <Zm>.Q[<index>] (ffe7fc01/4523ec00) */
|
---|
14331 | //#define IEM_INSTR_IMPL_A64__aesdimc_mz_zzi_2x1(Zdn, Zm, i2)
|
---|
14332 |
|
---|
14333 |
|
---|
14334 |
|
---|
14335 | /*
|
---|
14336 | *
|
---|
14337 | * Instruction Set & Groups: sve_crypto_binary_multi4 / sve_intx_crypto / sve / A64
|
---|
14338 | *
|
---|
14339 | */
|
---|
14340 |
|
---|
14341 | /* AESE { <Zdn1>.B-<Zdn4>.B }, { <Zdn1>.B-<Zdn4>.B }, <Zm>.Q[<index>] (ffe7fc03/4526e800) */
|
---|
14342 | //#define IEM_INSTR_IMPL_A64__aese_mz_zzi_4x1(Zdn, Zm, i2)
|
---|
14343 |
|
---|
14344 |
|
---|
14345 | /* AESD { <Zdn1>.B-<Zdn4>.B }, { <Zdn1>.B-<Zdn4>.B }, <Zm>.Q[<index>] (ffe7fc03/4526ec00) */
|
---|
14346 | //#define IEM_INSTR_IMPL_A64__aesd_mz_zzi_4x1(Zdn, Zm, i2)
|
---|
14347 |
|
---|
14348 |
|
---|
14349 | /* AESEMC { <Zdn1>.B-<Zdn4>.B }, { <Zdn1>.B-<Zdn4>.B }, <Zm>.Q[<index>] (ffe7fc03/4527e800) */
|
---|
14350 | //#define IEM_INSTR_IMPL_A64__aesemc_mz_zzi_4x1(Zdn, Zm, i2)
|
---|
14351 |
|
---|
14352 |
|
---|
14353 | /* AESDIMC { <Zdn1>.B-<Zdn4>.B }, { <Zdn1>.B-<Zdn4>.B }, <Zm>.Q[<index>] (ffe7fc03/4527ec00) */
|
---|
14354 | //#define IEM_INSTR_IMPL_A64__aesdimc_mz_zzi_4x1(Zdn, Zm, i2)
|
---|
14355 |
|
---|
14356 |
|
---|
14357 |
|
---|
14358 | /*
|
---|
14359 | *
|
---|
14360 | * Instruction Set & Groups: sve_crypto_pmlal_multi / sve_intx_crypto / sve / A64
|
---|
14361 | *
|
---|
14362 | */
|
---|
14363 |
|
---|
14364 | /* PMLAL { <Zda1>.Q-<Zda2>.Q }, <Zn>.D, <Zm>.D (ffe0fc01/4520fc00) */
|
---|
14365 | //#define IEM_INSTR_IMPL_A64__pmlal_mz_zzzw_1x2(Zda, Zn, Zm)
|
---|
14366 |
|
---|
14367 |
|
---|
14368 |
|
---|
14369 | /*
|
---|
14370 | *
|
---|
14371 | * Instruction Set & Groups: sve_crypto_pmull_multi / sve_intx_crypto / sve / A64
|
---|
14372 | *
|
---|
14373 | */
|
---|
14374 |
|
---|
14375 | /* PMULL { <Zd1>.Q-<Zd2>.Q }, <Zn>.D, <Zm>.D (ffe0fc01/4520f800) */
|
---|
14376 | //#define IEM_INSTR_IMPL_A64__pmull_mz_zzw_1x2(Zd, Zn, Zm)
|
---|
14377 |
|
---|
14378 |
|
---|
14379 |
|
---|
14380 | /*
|
---|
14381 | *
|
---|
14382 | * Instruction Set & Groups: sve_crypto_unary / sve_intx_crypto / sve / A64
|
---|
14383 | *
|
---|
14384 | */
|
---|
14385 |
|
---|
14386 | /* AESMC <Zdn>.B, <Zdn>.B (ffffffe0/4520e000) */
|
---|
14387 | //#define IEM_INSTR_IMPL_A64__aesmc_z_z(Zdn)
|
---|
14388 |
|
---|
14389 |
|
---|
14390 | /* AESIMC <Zdn>.B, <Zdn>.B (ffffffe0/4520e400) */
|
---|
14391 | //#define IEM_INSTR_IMPL_A64__aesimc_z_z(Zdn)
|
---|
14392 |
|
---|
14393 |
|
---|
14394 |
|
---|
14395 | /*
|
---|
14396 | *
|
---|
14397 | * Instruction Set & Groups: sve_fp8_fcvt_narrow / sve_fp_unary_unpred / sve / A64
|
---|
14398 | *
|
---|
14399 | */
|
---|
14400 |
|
---|
14401 | /* FCVTN <Zd>.B, { <Zn1>.H-<Zn2>.H } (fffffc20/650a3000) */
|
---|
14402 | //#define IEM_INSTR_IMPL_A64__fcvtn_z8_mz2_h2b(Zd, Zn)
|
---|
14403 |
|
---|
14404 |
|
---|
14405 | /* FCVTNB <Zd>.B, { <Zn1>.S-<Zn2>.S } (fffffc20/650a3400) */
|
---|
14406 | //#define IEM_INSTR_IMPL_A64__fcvtnb_z8_mz2_s2b(Zd, Zn, T)
|
---|
14407 |
|
---|
14408 |
|
---|
14409 | /* BFCVTN <Zd>.B, { <Zn1>.H-<Zn2>.H } (fffffc20/650a3800) */
|
---|
14410 | //#define IEM_INSTR_IMPL_A64__bfcvtn_z8_mz2_bf2b(Zd, Zn)
|
---|
14411 |
|
---|
14412 |
|
---|
14413 | /* FCVTNT <Zd>.B, { <Zn1>.S-<Zn2>.S } (fffffc20/650a3c00) */
|
---|
14414 | //#define IEM_INSTR_IMPL_A64__fcvtnt_z8_mz2_s2b(Zd, Zn, T)
|
---|
14415 |
|
---|
14416 |
|
---|
14417 |
|
---|
14418 | /*
|
---|
14419 | *
|
---|
14420 | * Instruction Set & Groups: sve_fp8_fcvt_wide / sve_fp_unary_unpred / sve / A64
|
---|
14421 | *
|
---|
14422 | */
|
---|
14423 |
|
---|
14424 | /* F1CVT <Zd>.H, <Zn>.B (fffffc00/65083000) */
|
---|
14425 | //#define IEM_INSTR_IMPL_A64__f1cvt_z_z8_b2h(Zd, Zn, L)
|
---|
14426 |
|
---|
14427 |
|
---|
14428 | /* F2CVT <Zd>.H, <Zn>.B (fffffc00/65083400) */
|
---|
14429 | //#define IEM_INSTR_IMPL_A64__f2cvt_z_z8_b2h(Zd, Zn, L)
|
---|
14430 |
|
---|
14431 |
|
---|
14432 | /* BF1CVT <Zd>.H, <Zn>.B (fffffc00/65083800) */
|
---|
14433 | //#define IEM_INSTR_IMPL_A64__bf1cvt_z_z8_b2bf(Zd, Zn, L)
|
---|
14434 |
|
---|
14435 |
|
---|
14436 | /* BF2CVT <Zd>.H, <Zn>.B (fffffc00/65083c00) */
|
---|
14437 | //#define IEM_INSTR_IMPL_A64__bf2cvt_z_z8_b2bf(Zd, Zn, L)
|
---|
14438 |
|
---|
14439 |
|
---|
14440 | /* F1CVTLT <Zd>.H, <Zn>.B (fffffc00/65093000) */
|
---|
14441 | //#define IEM_INSTR_IMPL_A64__f1cvtlt_z_z8_b2h(Zd, Zn, L)
|
---|
14442 |
|
---|
14443 |
|
---|
14444 | /* F2CVTLT <Zd>.H, <Zn>.B (fffffc00/65093400) */
|
---|
14445 | //#define IEM_INSTR_IMPL_A64__f2cvtlt_z_z8_b2h(Zd, Zn, L)
|
---|
14446 |
|
---|
14447 |
|
---|
14448 | /* BF1CVTLT <Zd>.H, <Zn>.B (fffffc00/65093800) */
|
---|
14449 | //#define IEM_INSTR_IMPL_A64__bf1cvtlt_z_z8_b2bf(Zd, Zn, L)
|
---|
14450 |
|
---|
14451 |
|
---|
14452 | /* BF2CVTLT <Zd>.H, <Zn>.B (fffffc00/65093c00) */
|
---|
14453 | //#define IEM_INSTR_IMPL_A64__bf2cvtlt_z_z8_b2bf(Zd, Zn, L)
|
---|
14454 |
|
---|
14455 |
|
---|
14456 |
|
---|
14457 | /*
|
---|
14458 | *
|
---|
14459 | * Instruction Set & Groups: sve_fp8_fma_long / sve_fp8_fma_w / sve / A64
|
---|
14460 | *
|
---|
14461 | */
|
---|
14462 |
|
---|
14463 | /* FMLALB <Zda>.H, <Zn>.B, <Zm>.B (ffe0fc00/64a08800) */
|
---|
14464 | //#define IEM_INSTR_IMPL_A64__fmlalb_z_z8z8z8(Zda, Zn, T, Zm)
|
---|
14465 |
|
---|
14466 |
|
---|
14467 | /* FMLALT <Zda>.H, <Zn>.B, <Zm>.B (ffe0fc00/64a09800) */
|
---|
14468 | //#define IEM_INSTR_IMPL_A64__fmlalt_z_z8z8z8(Zda, Zn, T, Zm)
|
---|
14469 |
|
---|
14470 |
|
---|
14471 |
|
---|
14472 | /*
|
---|
14473 | *
|
---|
14474 | * Instruction Set & Groups: sve_fp8_fma_long_by_indexed_elem / sve_fp8_fma_w_by_indexed_elem / sve / A64
|
---|
14475 | *
|
---|
14476 | */
|
---|
14477 |
|
---|
14478 | /* FMLALB <Zda>.H, <Zn>.B, <Zm>.B[<imm>] (ffe0f000/64205000) */
|
---|
14479 | //#define IEM_INSTR_IMPL_A64__fmlalb_z_z8z8z8i(Zda, Zn, i4l, Zm, i4h, T)
|
---|
14480 |
|
---|
14481 |
|
---|
14482 | /* FMLALT <Zda>.H, <Zn>.B, <Zm>.B[<imm>] (ffe0f000/64a05000) */
|
---|
14483 | //#define IEM_INSTR_IMPL_A64__fmlalt_z_z8z8z8i(Zda, Zn, i4l, Zm, i4h, T)
|
---|
14484 |
|
---|
14485 |
|
---|
14486 |
|
---|
14487 | /*
|
---|
14488 | *
|
---|
14489 | * Instruction Set & Groups: sve_fp8_fma_long_long / sve_fp8_fma_w / sve / A64
|
---|
14490 | *
|
---|
14491 | */
|
---|
14492 |
|
---|
14493 | /* FMLALLBB <Zda>.S, <Zn>.B, <Zm>.B (ffe0fc00/64208800) */
|
---|
14494 | //#define IEM_INSTR_IMPL_A64__fmlallbb_z32_z8z8z8(Zda, Zn, TT, Zm)
|
---|
14495 |
|
---|
14496 |
|
---|
14497 | /* FMLALLBT <Zda>.S, <Zn>.B, <Zm>.B (ffe0fc00/64209800) */
|
---|
14498 | //#define IEM_INSTR_IMPL_A64__fmlallbt_z32_z8z8z8(Zda, Zn, TT, Zm)
|
---|
14499 |
|
---|
14500 |
|
---|
14501 | /* FMLALLTB <Zda>.S, <Zn>.B, <Zm>.B (ffe0fc00/6420a800) */
|
---|
14502 | //#define IEM_INSTR_IMPL_A64__fmlalltb_z32_z8z8z8(Zda, Zn, TT, Zm)
|
---|
14503 |
|
---|
14504 |
|
---|
14505 | /* FMLALLTT <Zda>.S, <Zn>.B, <Zm>.B (ffe0fc00/6420b800) */
|
---|
14506 | //#define IEM_INSTR_IMPL_A64__fmlalltt_z32_z8z8z8(Zda, Zn, TT, Zm)
|
---|
14507 |
|
---|
14508 |
|
---|
14509 |
|
---|
14510 | /*
|
---|
14511 | *
|
---|
14512 | * Instruction Set & Groups: sve_fp8_fma_long_long_by_indexed_elem / sve_fp8_fma_ww_by_indexed_elem / sve / A64
|
---|
14513 | *
|
---|
14514 | */
|
---|
14515 |
|
---|
14516 | /* FMLALLBB <Zda>.S, <Zn>.B, <Zm>.B[<imm>] (ffe0f000/6420c000) */
|
---|
14517 | //#define IEM_INSTR_IMPL_A64__fmlallbb_z32_z8z8z8i(Zda, Zn, i4l, Zm, i4h, TT)
|
---|
14518 |
|
---|
14519 |
|
---|
14520 | /* FMLALLBT <Zda>.S, <Zn>.B, <Zm>.B[<imm>] (ffe0f000/6460c000) */
|
---|
14521 | //#define IEM_INSTR_IMPL_A64__fmlallbt_z32_z8z8z8i(Zda, Zn, i4l, Zm, i4h, TT)
|
---|
14522 |
|
---|
14523 |
|
---|
14524 | /* FMLALLTB <Zda>.S, <Zn>.B, <Zm>.B[<imm>] (ffe0f000/64a0c000) */
|
---|
14525 | //#define IEM_INSTR_IMPL_A64__fmlalltb_z32_z8z8z8i(Zda, Zn, i4l, Zm, i4h, TT)
|
---|
14526 |
|
---|
14527 |
|
---|
14528 | /* FMLALLTT <Zda>.S, <Zn>.B, <Zm>.B[<imm>] (ffe0f000/64e0c000) */
|
---|
14529 | //#define IEM_INSTR_IMPL_A64__fmlalltt_z32_z8z8z8i(Zda, Zn, i4l, Zm, i4h, TT)
|
---|
14530 |
|
---|
14531 |
|
---|
14532 |
|
---|
14533 | /*
|
---|
14534 | *
|
---|
14535 | * Instruction Set & Groups: sve_fp8_fmmla_lvl2 / sve_fp8_fmmla / sve / A64
|
---|
14536 | *
|
---|
14537 | */
|
---|
14538 |
|
---|
14539 | /* FMMLA <Zda>.S, <Zn>.B, <Zm>.B (ffe0fc00/6420e000) */
|
---|
14540 | //#define IEM_INSTR_IMPL_A64__fmmla_z32_zz8z8(Zda, Zn, Zm)
|
---|
14541 |
|
---|
14542 |
|
---|
14543 | /* FMMLA <Zda>.H, <Zn>.B, <Zm>.B (ffe0fc00/6460e000) */
|
---|
14544 | //#define IEM_INSTR_IMPL_A64__fmmla_z16_zz8z8(Zda, Zn, Zm)
|
---|
14545 |
|
---|
14546 |
|
---|
14547 |
|
---|
14548 | /*
|
---|
14549 | *
|
---|
14550 | * Instruction Set & Groups: sve_fp_2op_i_p_zds / sve_fp_pred / sve / A64
|
---|
14551 | *
|
---|
14552 | */
|
---|
14553 |
|
---|
14554 | /* FADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <const> (ff3fe3c0/65188000) */
|
---|
14555 | //#define IEM_INSTR_IMPL_A64__fadd_z_p_zs(Zdn, i1, Pg, size)
|
---|
14556 |
|
---|
14557 |
|
---|
14558 | /* FSUB <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <const> (ff3fe3c0/65198000) */
|
---|
14559 | //#define IEM_INSTR_IMPL_A64__fsub_z_p_zs(Zdn, i1, Pg, size)
|
---|
14560 |
|
---|
14561 |
|
---|
14562 | /* FMUL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <const> (ff3fe3c0/651a8000) */
|
---|
14563 | //#define IEM_INSTR_IMPL_A64__fmul_z_p_zs(Zdn, i1, Pg, size)
|
---|
14564 |
|
---|
14565 |
|
---|
14566 | /* FSUBR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <const> (ff3fe3c0/651b8000) */
|
---|
14567 | //#define IEM_INSTR_IMPL_A64__fsubr_z_p_zs(Zdn, i1, Pg, size)
|
---|
14568 |
|
---|
14569 |
|
---|
14570 | /* FMAXNM <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <const> (ff3fe3c0/651c8000) */
|
---|
14571 | //#define IEM_INSTR_IMPL_A64__fmaxnm_z_p_zs(Zdn, i1, Pg, size)
|
---|
14572 |
|
---|
14573 |
|
---|
14574 | /* FMINNM <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <const> (ff3fe3c0/651d8000) */
|
---|
14575 | //#define IEM_INSTR_IMPL_A64__fminnm_z_p_zs(Zdn, i1, Pg, size)
|
---|
14576 |
|
---|
14577 |
|
---|
14578 | /* FMAX <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <const> (ff3fe3c0/651e8000) */
|
---|
14579 | //#define IEM_INSTR_IMPL_A64__fmax_z_p_zs(Zdn, i1, Pg, size)
|
---|
14580 |
|
---|
14581 |
|
---|
14582 | /* FMIN <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <const> (ff3fe3c0/651f8000) */
|
---|
14583 | //#define IEM_INSTR_IMPL_A64__fmin_z_p_zs(Zdn, i1, Pg, size)
|
---|
14584 |
|
---|
14585 |
|
---|
14586 |
|
---|
14587 | /*
|
---|
14588 | *
|
---|
14589 | * Instruction Set & Groups: sve_fp_2op_p_pd / sve_fp_cmpzero / sve / A64
|
---|
14590 | *
|
---|
14591 | */
|
---|
14592 |
|
---|
14593 | /* FCMGE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #0.0 (ff3fe010/65102000) */
|
---|
14594 | //#define IEM_INSTR_IMPL_A64__fcmge_p_p_z0(Pd, ne, Zn, Pg, lt, size)
|
---|
14595 |
|
---|
14596 |
|
---|
14597 | /* FCMEQ <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #0.0 (ff3fe010/65122000) */
|
---|
14598 | //#define IEM_INSTR_IMPL_A64__fcmeq_p_p_z0(Pd, Zn, Pg, lt, size)
|
---|
14599 |
|
---|
14600 |
|
---|
14601 | /* FCMGT <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #0.0 (ff3fe010/65102010) */
|
---|
14602 | //#define IEM_INSTR_IMPL_A64__fcmgt_p_p_z0(Pd, ne, Zn, Pg, lt, size)
|
---|
14603 |
|
---|
14604 |
|
---|
14605 | /* FCMLT <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #0.0 (ff3fe010/65112000) */
|
---|
14606 | //#define IEM_INSTR_IMPL_A64__fcmlt_p_p_z0(Pd, ne, Zn, Pg, lt, size)
|
---|
14607 |
|
---|
14608 |
|
---|
14609 | /* FCMNE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #0.0 (ff3fe010/65132000) */
|
---|
14610 | //#define IEM_INSTR_IMPL_A64__fcmne_p_p_z0(Pd, Zn, Pg, lt, size)
|
---|
14611 |
|
---|
14612 |
|
---|
14613 | /* FCMLE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #0.0 (ff3fe010/65112010) */
|
---|
14614 | //#define IEM_INSTR_IMPL_A64__fcmle_p_p_z0(Pd, ne, Zn, Pg, lt, size)
|
---|
14615 |
|
---|
14616 |
|
---|
14617 |
|
---|
14618 | /*
|
---|
14619 | *
|
---|
14620 | * Instruction Set & Groups: sve_fp_2op_p_vd / sve_fp_slowreduce / sve / A64
|
---|
14621 | *
|
---|
14622 | */
|
---|
14623 |
|
---|
14624 | /* FADDA <V><dn>, <Pg>, <V><dn>, <Zm>.<T> (ff3fe000/65182000) */
|
---|
14625 | //#define IEM_INSTR_IMPL_A64__fadda_v_p_z(Vdn, Zm, Pg, size)
|
---|
14626 |
|
---|
14627 |
|
---|
14628 |
|
---|
14629 | /*
|
---|
14630 | *
|
---|
14631 | * Instruction Set & Groups: sve_fp_2op_p_zd_a / sve_fp_unary / sve / A64
|
---|
14632 | *
|
---|
14633 | */
|
---|
14634 |
|
---|
14635 | /* FRINTN <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/6500a000) */
|
---|
14636 | //#define IEM_INSTR_IMPL_A64__frintn_z_p_z_m(Zd, Zn, Pg, size)
|
---|
14637 |
|
---|
14638 |
|
---|
14639 | /* FRINTP <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/6501a000) */
|
---|
14640 | //#define IEM_INSTR_IMPL_A64__frintp_z_p_z_m(Zd, Zn, Pg, size)
|
---|
14641 |
|
---|
14642 |
|
---|
14643 | /* FRINTM <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/6502a000) */
|
---|
14644 | //#define IEM_INSTR_IMPL_A64__frintm_z_p_z_m(Zd, Zn, Pg, size)
|
---|
14645 |
|
---|
14646 |
|
---|
14647 | /* FRINTZ <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/6503a000) */
|
---|
14648 | //#define IEM_INSTR_IMPL_A64__frintz_z_p_z_m(Zd, Zn, Pg, size)
|
---|
14649 |
|
---|
14650 |
|
---|
14651 | /* FRINTA <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/6504a000) */
|
---|
14652 | //#define IEM_INSTR_IMPL_A64__frinta_z_p_z_m(Zd, Zn, Pg, size)
|
---|
14653 |
|
---|
14654 |
|
---|
14655 | /* FRINTX <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/6506a000) */
|
---|
14656 | //#define IEM_INSTR_IMPL_A64__frintx_z_p_z_m(Zd, Zn, Pg, size)
|
---|
14657 |
|
---|
14658 |
|
---|
14659 | /* FRINTI <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/6507a000) */
|
---|
14660 | //#define IEM_INSTR_IMPL_A64__frinti_z_p_z_m(Zd, Zn, Pg, size)
|
---|
14661 |
|
---|
14662 |
|
---|
14663 |
|
---|
14664 | /*
|
---|
14665 | *
|
---|
14666 | * Instruction Set & Groups: sve_fp_2op_p_zd_b_0 / sve_fp_unary / sve / A64
|
---|
14667 | *
|
---|
14668 | */
|
---|
14669 |
|
---|
14670 | /* FCVTX <Zd>.S, <Pg>/M, <Zn>.D (ffffe000/650aa000) */
|
---|
14671 | //#define IEM_INSTR_IMPL_A64__fcvtx_z_p_z_d2s(Zd, Zn, Pg)
|
---|
14672 |
|
---|
14673 |
|
---|
14674 | /* FCVT <Zd>.H, <Pg>/M, <Zn>.S (ffffe000/6588a000) */
|
---|
14675 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_s2h(Zd, Zn, Pg)
|
---|
14676 |
|
---|
14677 |
|
---|
14678 | /* FCVT <Zd>.S, <Pg>/M, <Zn>.H (ffffe000/6589a000) */
|
---|
14679 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_h2s(Zd, Zn, Pg)
|
---|
14680 |
|
---|
14681 |
|
---|
14682 | /* BFCVT <Zd>.H, <Pg>/M, <Zn>.S (ffffe000/658aa000) */
|
---|
14683 | //#define IEM_INSTR_IMPL_A64__bfcvt_z_p_z_s2bf(Zd, Zn, Pg)
|
---|
14684 |
|
---|
14685 |
|
---|
14686 | /* FCVT <Zd>.H, <Pg>/M, <Zn>.D (ffffe000/65c8a000) */
|
---|
14687 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_d2h(Zd, Zn, Pg)
|
---|
14688 |
|
---|
14689 |
|
---|
14690 | /* FCVT <Zd>.D, <Pg>/M, <Zn>.H (ffffe000/65c9a000) */
|
---|
14691 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_h2d(Zd, Zn, Pg)
|
---|
14692 |
|
---|
14693 |
|
---|
14694 | /* FCVT <Zd>.S, <Pg>/M, <Zn>.D (ffffe000/65caa000) */
|
---|
14695 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_d2s(Zd, Zn, Pg)
|
---|
14696 |
|
---|
14697 |
|
---|
14698 | /* FCVT <Zd>.D, <Pg>/M, <Zn>.S (ffffe000/65cba000) */
|
---|
14699 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_s2d(Zd, Zn, Pg)
|
---|
14700 |
|
---|
14701 |
|
---|
14702 |
|
---|
14703 | /*
|
---|
14704 | *
|
---|
14705 | * Instruction Set & Groups: sve_fp_2op_p_zd_b_1 / sve_fp_unary / sve / A64
|
---|
14706 | *
|
---|
14707 | */
|
---|
14708 |
|
---|
14709 | /* FRECPX <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/650ca000) */
|
---|
14710 | //#define IEM_INSTR_IMPL_A64__frecpx_z_p_z_m(Zd, Zn, Pg, size)
|
---|
14711 |
|
---|
14712 |
|
---|
14713 | /* FSQRT <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/650da000) */
|
---|
14714 | //#define IEM_INSTR_IMPL_A64__fsqrt_z_p_z_m(Zd, Zn, Pg, size)
|
---|
14715 |
|
---|
14716 |
|
---|
14717 |
|
---|
14718 | /*
|
---|
14719 | *
|
---|
14720 | * Instruction Set & Groups: sve_fp_2op_p_zd_c / sve_fp_unary / sve / A64
|
---|
14721 | *
|
---|
14722 | */
|
---|
14723 |
|
---|
14724 | /* FRINT32Z <Zd>.<T>, <Pg>/M, <Zn>.<T> (fffde000/6510a000) */
|
---|
14725 | //#define IEM_INSTR_IMPL_A64__frint32z_z_p_z_m(Zd, Zn, Pg, sz)
|
---|
14726 |
|
---|
14727 |
|
---|
14728 | /* FRINT32X <Zd>.<T>, <Pg>/M, <Zn>.<T> (fffde000/6511a000) */
|
---|
14729 | //#define IEM_INSTR_IMPL_A64__frint32x_z_p_z_m(Zd, Zn, Pg, sz)
|
---|
14730 |
|
---|
14731 |
|
---|
14732 | /* FRINT64Z <Zd>.<T>, <Pg>/M, <Zn>.<T> (fffde000/6514a000) */
|
---|
14733 | //#define IEM_INSTR_IMPL_A64__frint64z_z_p_z_m(Zd, Zn, Pg, sz)
|
---|
14734 |
|
---|
14735 |
|
---|
14736 | /* FRINT64X <Zd>.<T>, <Pg>/M, <Zn>.<T> (fffde000/6515a000) */
|
---|
14737 | //#define IEM_INSTR_IMPL_A64__frint64x_z_p_z_m(Zd, Zn, Pg, sz)
|
---|
14738 |
|
---|
14739 |
|
---|
14740 | /* SCVTF <Zd>.S, <Pg>/M, <Zn>.S (ffffe000/6594a000) */
|
---|
14741 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_w2s(Zd, Zn, Pg, int_U)
|
---|
14742 |
|
---|
14743 |
|
---|
14744 | /* SCVTF <Zd>.D, <Pg>/M, <Zn>.S (ffffe000/65d0a000) */
|
---|
14745 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_w2d(Zd, Zn, Pg, int_U)
|
---|
14746 |
|
---|
14747 |
|
---|
14748 | /* SCVTF <Zd>.S, <Pg>/M, <Zn>.D (ffffe000/65d4a000) */
|
---|
14749 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_x2s(Zd, Zn, Pg, int_U)
|
---|
14750 |
|
---|
14751 |
|
---|
14752 | /* SCVTF <Zd>.D, <Pg>/M, <Zn>.D (ffffe000/65d6a000) */
|
---|
14753 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_x2d(Zd, Zn, Pg, int_U)
|
---|
14754 |
|
---|
14755 |
|
---|
14756 | /* SCVTF <Zd>.H, <Pg>/M, <Zn>.H (ffffe000/6552a000) */
|
---|
14757 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_h2fp16(Zd, Zn, Pg, int_U)
|
---|
14758 |
|
---|
14759 |
|
---|
14760 | /* SCVTF <Zd>.H, <Pg>/M, <Zn>.S (ffffe000/6554a000) */
|
---|
14761 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_w2fp16(Zd, Zn, Pg, int_U)
|
---|
14762 |
|
---|
14763 |
|
---|
14764 | /* SCVTF <Zd>.H, <Pg>/M, <Zn>.D (ffffe000/6556a000) */
|
---|
14765 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_x2fp16(Zd, Zn, Pg, int_U)
|
---|
14766 |
|
---|
14767 |
|
---|
14768 | /* UCVTF <Zd>.S, <Pg>/M, <Zn>.S (ffffe000/6595a000) */
|
---|
14769 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_w2s(Zd, Zn, Pg, int_U)
|
---|
14770 |
|
---|
14771 |
|
---|
14772 | /* UCVTF <Zd>.D, <Pg>/M, <Zn>.S (ffffe000/65d1a000) */
|
---|
14773 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_w2d(Zd, Zn, Pg, int_U)
|
---|
14774 |
|
---|
14775 |
|
---|
14776 | /* UCVTF <Zd>.S, <Pg>/M, <Zn>.D (ffffe000/65d5a000) */
|
---|
14777 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_x2s(Zd, Zn, Pg, int_U)
|
---|
14778 |
|
---|
14779 |
|
---|
14780 | /* UCVTF <Zd>.D, <Pg>/M, <Zn>.D (ffffe000/65d7a000) */
|
---|
14781 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_x2d(Zd, Zn, Pg, int_U)
|
---|
14782 |
|
---|
14783 |
|
---|
14784 | /* UCVTF <Zd>.H, <Pg>/M, <Zn>.H (ffffe000/6553a000) */
|
---|
14785 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_h2fp16(Zd, Zn, Pg, int_U)
|
---|
14786 |
|
---|
14787 |
|
---|
14788 | /* UCVTF <Zd>.H, <Pg>/M, <Zn>.S (ffffe000/6555a000) */
|
---|
14789 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_w2fp16(Zd, Zn, Pg, int_U)
|
---|
14790 |
|
---|
14791 |
|
---|
14792 | /* UCVTF <Zd>.H, <Pg>/M, <Zn>.D (ffffe000/6557a000) */
|
---|
14793 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_x2fp16(Zd, Zn, Pg, int_U)
|
---|
14794 |
|
---|
14795 |
|
---|
14796 |
|
---|
14797 | /*
|
---|
14798 | *
|
---|
14799 | * Instruction Set & Groups: sve_fp_2op_p_zd_d / sve_fp_unary / sve / A64
|
---|
14800 | *
|
---|
14801 | */
|
---|
14802 |
|
---|
14803 | /* FLOGB <Zd>.<T>, <Pg>/M, <Zn>.<T> (fff9e000/6518a000) */
|
---|
14804 | //#define IEM_INSTR_IMPL_A64__flogb_z_p_z_m(Zd, Zn, Pg, size)
|
---|
14805 |
|
---|
14806 |
|
---|
14807 | /* FCVTZS <Zd>.S, <Pg>/M, <Zn>.S (ffffe000/659ca000) */
|
---|
14808 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_s2w(Zd, Zn, Pg, int_U)
|
---|
14809 |
|
---|
14810 |
|
---|
14811 | /* FCVTZS <Zd>.S, <Pg>/M, <Zn>.D (ffffe000/65d8a000) */
|
---|
14812 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_d2w(Zd, Zn, Pg, int_U)
|
---|
14813 |
|
---|
14814 |
|
---|
14815 | /* FCVTZS <Zd>.D, <Pg>/M, <Zn>.S (ffffe000/65dca000) */
|
---|
14816 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_s2x(Zd, Zn, Pg, int_U)
|
---|
14817 |
|
---|
14818 |
|
---|
14819 | /* FCVTZS <Zd>.D, <Pg>/M, <Zn>.D (ffffe000/65dea000) */
|
---|
14820 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_d2x(Zd, Zn, Pg, int_U)
|
---|
14821 |
|
---|
14822 |
|
---|
14823 | /* FCVTZS <Zd>.H, <Pg>/M, <Zn>.H (ffffe000/655aa000) */
|
---|
14824 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_fp162h(Zd, Zn, Pg, int_U)
|
---|
14825 |
|
---|
14826 |
|
---|
14827 | /* FCVTZS <Zd>.S, <Pg>/M, <Zn>.H (ffffe000/655ca000) */
|
---|
14828 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_fp162w(Zd, Zn, Pg, int_U)
|
---|
14829 |
|
---|
14830 |
|
---|
14831 | /* FCVTZS <Zd>.D, <Pg>/M, <Zn>.H (ffffe000/655ea000) */
|
---|
14832 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_fp162x(Zd, Zn, Pg, int_U)
|
---|
14833 |
|
---|
14834 |
|
---|
14835 | /* FCVTZU <Zd>.S, <Pg>/M, <Zn>.S (ffffe000/659da000) */
|
---|
14836 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_s2w(Zd, Zn, Pg, int_U)
|
---|
14837 |
|
---|
14838 |
|
---|
14839 | /* FCVTZU <Zd>.S, <Pg>/M, <Zn>.D (ffffe000/65d9a000) */
|
---|
14840 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_d2w(Zd, Zn, Pg, int_U)
|
---|
14841 |
|
---|
14842 |
|
---|
14843 | /* FCVTZU <Zd>.D, <Pg>/M, <Zn>.S (ffffe000/65dda000) */
|
---|
14844 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_s2x(Zd, Zn, Pg, int_U)
|
---|
14845 |
|
---|
14846 |
|
---|
14847 | /* FCVTZU <Zd>.D, <Pg>/M, <Zn>.D (ffffe000/65dfa000) */
|
---|
14848 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_d2x(Zd, Zn, Pg, int_U)
|
---|
14849 |
|
---|
14850 |
|
---|
14851 | /* FCVTZU <Zd>.H, <Pg>/M, <Zn>.H (ffffe000/655ba000) */
|
---|
14852 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_fp162h(Zd, Zn, Pg, int_U)
|
---|
14853 |
|
---|
14854 |
|
---|
14855 | /* FCVTZU <Zd>.S, <Pg>/M, <Zn>.H (ffffe000/655da000) */
|
---|
14856 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_fp162w(Zd, Zn, Pg, int_U)
|
---|
14857 |
|
---|
14858 |
|
---|
14859 | /* FCVTZU <Zd>.D, <Pg>/M, <Zn>.H (ffffe000/655fa000) */
|
---|
14860 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_fp162x(Zd, Zn, Pg, int_U)
|
---|
14861 |
|
---|
14862 |
|
---|
14863 |
|
---|
14864 | /*
|
---|
14865 | *
|
---|
14866 | * Instruction Set & Groups: sve_fp_2op_p_zds / sve_fp_pred / sve / A64
|
---|
14867 | *
|
---|
14868 | */
|
---|
14869 |
|
---|
14870 | /* FADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/65008000) */
|
---|
14871 | //#define IEM_INSTR_IMPL_A64__fadd_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14872 |
|
---|
14873 |
|
---|
14874 | /* BFADD <Zdn>.H, <Pg>/M, <Zdn>.H, <Zm>.H (ffffe000/65008000) */
|
---|
14875 | //#define IEM_INSTR_IMPL_A64__bfadd_z_p_zz(Zdn, Zm, Pg)
|
---|
14876 |
|
---|
14877 |
|
---|
14878 | /* FSUB <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/65018000) */
|
---|
14879 | //#define IEM_INSTR_IMPL_A64__fsub_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14880 |
|
---|
14881 |
|
---|
14882 | /* BFSUB <Zdn>.H, <Pg>/M, <Zdn>.H, <Zm>.H (ffffe000/65018000) */
|
---|
14883 | //#define IEM_INSTR_IMPL_A64__bfsub_z_p_zz(Zdn, Zm, Pg)
|
---|
14884 |
|
---|
14885 |
|
---|
14886 | /* FMUL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/65028000) */
|
---|
14887 | //#define IEM_INSTR_IMPL_A64__fmul_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14888 |
|
---|
14889 |
|
---|
14890 | /* BFMUL <Zdn>.H, <Pg>/M, <Zdn>.H, <Zm>.H (ffffe000/65028000) */
|
---|
14891 | //#define IEM_INSTR_IMPL_A64__bfmul_z_p_zz(Zdn, Zm, Pg)
|
---|
14892 |
|
---|
14893 |
|
---|
14894 | /* FSUBR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/65038000) */
|
---|
14895 | //#define IEM_INSTR_IMPL_A64__fsubr_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14896 |
|
---|
14897 |
|
---|
14898 | /* FMAXNM <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/65048000) */
|
---|
14899 | //#define IEM_INSTR_IMPL_A64__fmaxnm_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14900 |
|
---|
14901 |
|
---|
14902 | /* BFMAXNM <Zdn>.H, <Pg>/M, <Zdn>.H, <Zm>.H (ffffe000/65048000) */
|
---|
14903 | //#define IEM_INSTR_IMPL_A64__bfmaxnm_z_p_zz(Zdn, Zm, Pg)
|
---|
14904 |
|
---|
14905 |
|
---|
14906 | /* FMINNM <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/65058000) */
|
---|
14907 | //#define IEM_INSTR_IMPL_A64__fminnm_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14908 |
|
---|
14909 |
|
---|
14910 | /* BFMINNM <Zdn>.H, <Pg>/M, <Zdn>.H, <Zm>.H (ffffe000/65058000) */
|
---|
14911 | //#define IEM_INSTR_IMPL_A64__bfminnm_z_p_zz(Zdn, Zm, Pg)
|
---|
14912 |
|
---|
14913 |
|
---|
14914 | /* FMAX <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/65068000) */
|
---|
14915 | //#define IEM_INSTR_IMPL_A64__fmax_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14916 |
|
---|
14917 |
|
---|
14918 | /* BFMAX <Zdn>.H, <Pg>/M, <Zdn>.H, <Zm>.H (ffffe000/65068000) */
|
---|
14919 | //#define IEM_INSTR_IMPL_A64__bfmax_z_p_zz(Zdn, Zm, Pg)
|
---|
14920 |
|
---|
14921 |
|
---|
14922 | /* FMIN <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/65078000) */
|
---|
14923 | //#define IEM_INSTR_IMPL_A64__fmin_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14924 |
|
---|
14925 |
|
---|
14926 | /* BFMIN <Zdn>.H, <Pg>/M, <Zdn>.H, <Zm>.H (ffffe000/65078000) */
|
---|
14927 | //#define IEM_INSTR_IMPL_A64__bfmin_z_p_zz(Zdn, Zm, Pg)
|
---|
14928 |
|
---|
14929 |
|
---|
14930 | /* FABD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/65088000) */
|
---|
14931 | //#define IEM_INSTR_IMPL_A64__fabd_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14932 |
|
---|
14933 |
|
---|
14934 | /* FSCALE <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/65098000) */
|
---|
14935 | //#define IEM_INSTR_IMPL_A64__fscale_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14936 |
|
---|
14937 |
|
---|
14938 | /* BFSCALE <Zdn>.H, <Pg>/M, <Zdn>.H, <Zm>.H (ffffe000/65098000) */
|
---|
14939 | //#define IEM_INSTR_IMPL_A64__bfscale_z_p_zz(Zdn, Zm, Pg)
|
---|
14940 |
|
---|
14941 |
|
---|
14942 | /* FMULX <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/650a8000) */
|
---|
14943 | //#define IEM_INSTR_IMPL_A64__fmulx_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14944 |
|
---|
14945 |
|
---|
14946 | /* FDIVR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/650c8000) */
|
---|
14947 | //#define IEM_INSTR_IMPL_A64__fdivr_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14948 |
|
---|
14949 |
|
---|
14950 | /* FDIV <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/650d8000) */
|
---|
14951 | //#define IEM_INSTR_IMPL_A64__fdiv_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14952 |
|
---|
14953 |
|
---|
14954 | /* FAMAX <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/650e8000) */
|
---|
14955 | //#define IEM_INSTR_IMPL_A64__famax_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14956 |
|
---|
14957 |
|
---|
14958 | /* FAMIN <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/650f8000) */
|
---|
14959 | //#define IEM_INSTR_IMPL_A64__famin_z_p_zz(Zdn, Zm, Pg, size)
|
---|
14960 |
|
---|
14961 |
|
---|
14962 |
|
---|
14963 | /*
|
---|
14964 | *
|
---|
14965 | * Instruction Set & Groups: sve_fp_2op_u_zd / sve_fp_unary_unpred / sve / A64
|
---|
14966 | *
|
---|
14967 | */
|
---|
14968 |
|
---|
14969 | /* FRECPE <Zd>.<T>, <Zn>.<T> (ff3ffc00/650e3000) */
|
---|
14970 | //#define IEM_INSTR_IMPL_A64__frecpe_z_z(Zd, Zn, size)
|
---|
14971 |
|
---|
14972 |
|
---|
14973 | /* FRSQRTE <Zd>.<T>, <Zn>.<T> (ff3ffc00/650f3000) */
|
---|
14974 | //#define IEM_INSTR_IMPL_A64__frsqrte_z_z(Zd, Zn, size)
|
---|
14975 |
|
---|
14976 |
|
---|
14977 |
|
---|
14978 | /*
|
---|
14979 | *
|
---|
14980 | * Instruction Set & Groups: sve_fp_3op_p_pd / sve_fp_cmpvev / sve / A64
|
---|
14981 | *
|
---|
14982 | */
|
---|
14983 |
|
---|
14984 | /* FCMGE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/65004000) */
|
---|
14985 | //#define IEM_INSTR_IMPL_A64__fcmge_p_p_zz(Pd, cmpl, Zn, Pg, cmph, Zm, size)
|
---|
14986 |
|
---|
14987 |
|
---|
14988 | /* FCMUO <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/6500c000) */
|
---|
14989 | //#define IEM_INSTR_IMPL_A64__fcmuo_p_p_zz(Pd, Zn, Pg, Zm, size)
|
---|
14990 |
|
---|
14991 |
|
---|
14992 | /* FACGE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/6500c010) */
|
---|
14993 | //#define IEM_INSTR_IMPL_A64__facge_p_p_zz(Pd, Zn, Pg, Zm, size)
|
---|
14994 |
|
---|
14995 |
|
---|
14996 | /* FACGT <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/6500e010) */
|
---|
14997 | //#define IEM_INSTR_IMPL_A64__facgt_p_p_zz(Pd, Zn, Pg, Zm, size)
|
---|
14998 |
|
---|
14999 |
|
---|
15000 | /* FCMGT <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/65004010) */
|
---|
15001 | //#define IEM_INSTR_IMPL_A64__fcmgt_p_p_zz(Pd, cmpl, Zn, Pg, cmph, Zm, size)
|
---|
15002 |
|
---|
15003 |
|
---|
15004 | /* FCMEQ <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/65006000) */
|
---|
15005 | //#define IEM_INSTR_IMPL_A64__fcmeq_p_p_zz(Pd, cmpl, Zn, Pg, cmph, Zm, size)
|
---|
15006 |
|
---|
15007 |
|
---|
15008 | /* FCMNE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/65006010) */
|
---|
15009 | //#define IEM_INSTR_IMPL_A64__fcmne_p_p_zz(Pd, cmpl, Zn, Pg, cmph, Zm, size)
|
---|
15010 |
|
---|
15011 |
|
---|
15012 |
|
---|
15013 | /*
|
---|
15014 | *
|
---|
15015 | * Instruction Set & Groups: sve_fp_3op_p_zds_a / sve_fp_fma / sve / A64
|
---|
15016 | *
|
---|
15017 | */
|
---|
15018 |
|
---|
15019 | /* FMLA <Zda>.<T>, <Pg>/M, <Zn>.<T>, <Zm>.<T> (ff20e000/65200000) */
|
---|
15020 | //#define IEM_INSTR_IMPL_A64__fmla_z_p_zzz(Zda, Zn, Pg, op, N, Zm, size)
|
---|
15021 |
|
---|
15022 |
|
---|
15023 | /* BFMLA <Zda>.H, <Pg>/M, <Zn>.H, <Zm>.H (ffe0e000/65200000) */
|
---|
15024 | //#define IEM_INSTR_IMPL_A64__bfmla_z_p_zzz(Zda, Zn, Pg, op, Zm)
|
---|
15025 |
|
---|
15026 |
|
---|
15027 | /* FMLS <Zda>.<T>, <Pg>/M, <Zn>.<T>, <Zm>.<T> (ff20e000/65202000) */
|
---|
15028 | //#define IEM_INSTR_IMPL_A64__fmls_z_p_zzz(Zda, Zn, Pg, op, N, Zm, size)
|
---|
15029 |
|
---|
15030 |
|
---|
15031 | /* BFMLS <Zda>.H, <Pg>/M, <Zn>.H, <Zm>.H (ffe0e000/65202000) */
|
---|
15032 | //#define IEM_INSTR_IMPL_A64__bfmls_z_p_zzz(Zda, Zn, Pg, op, Zm)
|
---|
15033 |
|
---|
15034 |
|
---|
15035 | /* FNMLA <Zda>.<T>, <Pg>/M, <Zn>.<T>, <Zm>.<T> (ff20e000/65204000) */
|
---|
15036 | //#define IEM_INSTR_IMPL_A64__fnmla_z_p_zzz(Zda, Zn, Pg, op, N, Zm, size)
|
---|
15037 |
|
---|
15038 |
|
---|
15039 | /* FNMLS <Zda>.<T>, <Pg>/M, <Zn>.<T>, <Zm>.<T> (ff20e000/65206000) */
|
---|
15040 | //#define IEM_INSTR_IMPL_A64__fnmls_z_p_zzz(Zda, Zn, Pg, op, N, Zm, size)
|
---|
15041 |
|
---|
15042 |
|
---|
15043 |
|
---|
15044 | /*
|
---|
15045 | *
|
---|
15046 | * Instruction Set & Groups: sve_fp_3op_p_zds_b / sve_fp_fma / sve / A64
|
---|
15047 | *
|
---|
15048 | */
|
---|
15049 |
|
---|
15050 | /* FMAD <Zdn>.<T>, <Pg>/M, <Zm>.<T>, <Za>.<T> (ff20e000/65208000) */
|
---|
15051 | //#define IEM_INSTR_IMPL_A64__fmad_z_p_zzz(Zdn, Zm, Pg, op, N, Za, size)
|
---|
15052 |
|
---|
15053 |
|
---|
15054 | /* FMSB <Zdn>.<T>, <Pg>/M, <Zm>.<T>, <Za>.<T> (ff20e000/6520a000) */
|
---|
15055 | //#define IEM_INSTR_IMPL_A64__fmsb_z_p_zzz(Zdn, Zm, Pg, op, N, Za, size)
|
---|
15056 |
|
---|
15057 |
|
---|
15058 | /* FNMAD <Zdn>.<T>, <Pg>/M, <Zm>.<T>, <Za>.<T> (ff20e000/6520c000) */
|
---|
15059 | //#define IEM_INSTR_IMPL_A64__fnmad_z_p_zzz(Zdn, Zm, Pg, op, N, Za, size)
|
---|
15060 |
|
---|
15061 |
|
---|
15062 | /* FNMSB <Zdn>.<T>, <Pg>/M, <Zm>.<T>, <Za>.<T> (ff20e000/6520e000) */
|
---|
15063 | //#define IEM_INSTR_IMPL_A64__fnmsb_z_p_zzz(Zdn, Zm, Pg, op, N, Za, size)
|
---|
15064 |
|
---|
15065 |
|
---|
15066 |
|
---|
15067 | /*
|
---|
15068 | *
|
---|
15069 | * Instruction Set & Groups: sve_fp_3op_u_zd / sve_fp_unpred / sve / A64
|
---|
15070 | *
|
---|
15071 | */
|
---|
15072 |
|
---|
15073 | /* FADD <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/65000000) */
|
---|
15074 | //#define IEM_INSTR_IMPL_A64__fadd_z_zz(Zd, Zn, Zm, size)
|
---|
15075 |
|
---|
15076 |
|
---|
15077 | /* BFADD <Zd>.H, <Zn>.H, <Zm>.H (ffe0fc00/65000000) */
|
---|
15078 | //#define IEM_INSTR_IMPL_A64__bfadd_z_zz(Zd, Zn, Zm)
|
---|
15079 |
|
---|
15080 |
|
---|
15081 | /* FSUB <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/65000400) */
|
---|
15082 | //#define IEM_INSTR_IMPL_A64__fsub_z_zz(Zd, Zn, Zm, size)
|
---|
15083 |
|
---|
15084 |
|
---|
15085 | /* BFSUB <Zd>.H, <Zn>.H, <Zm>.H (ffe0fc00/65000400) */
|
---|
15086 | //#define IEM_INSTR_IMPL_A64__bfsub_z_zz(Zd, Zn, Zm)
|
---|
15087 |
|
---|
15088 |
|
---|
15089 | /* FMUL <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/65000800) */
|
---|
15090 | //#define IEM_INSTR_IMPL_A64__fmul_z_zz(Zd, Zn, Zm, size)
|
---|
15091 |
|
---|
15092 |
|
---|
15093 | /* BFMUL <Zd>.H, <Zn>.H, <Zm>.H (ffe0fc00/65000800) */
|
---|
15094 | //#define IEM_INSTR_IMPL_A64__bfmul_z_zz(Zd, Zn, Zm)
|
---|
15095 |
|
---|
15096 |
|
---|
15097 | /* FTSMUL <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/65000c00) */
|
---|
15098 | //#define IEM_INSTR_IMPL_A64__ftsmul_z_zz(Zd, Zn, Zm, size)
|
---|
15099 |
|
---|
15100 |
|
---|
15101 | /* FRECPS <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/65001800) */
|
---|
15102 | //#define IEM_INSTR_IMPL_A64__frecps_z_zz(Zd, Zn, Zm, size)
|
---|
15103 |
|
---|
15104 |
|
---|
15105 | /* FRSQRTS <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/65001c00) */
|
---|
15106 | //#define IEM_INSTR_IMPL_A64__frsqrts_z_zz(Zd, Zn, Zm, size)
|
---|
15107 |
|
---|
15108 |
|
---|
15109 |
|
---|
15110 | /*
|
---|
15111 | *
|
---|
15112 | * Instruction Set & Groups: sve_fp_clamp_lvl2 / sve_fp_clamp / sve / A64
|
---|
15113 | *
|
---|
15114 | */
|
---|
15115 |
|
---|
15116 | /* FCLAMP <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/64202400) */
|
---|
15117 | //#define IEM_INSTR_IMPL_A64__fclamp_z_zz(Zd, Zn, Zm, size)
|
---|
15118 |
|
---|
15119 |
|
---|
15120 | /* BFCLAMP <Zd>.H, <Zn>.H, <Zm>.H (ffe0fc00/64202400) */
|
---|
15121 | //#define IEM_INSTR_IMPL_A64__bfclamp_z_zz(Zd, Zn, Zm)
|
---|
15122 |
|
---|
15123 |
|
---|
15124 |
|
---|
15125 | /*
|
---|
15126 | *
|
---|
15127 | * Instruction Set & Groups: sve_fp_fast_red / sve_fp_fastreduce / sve / A64
|
---|
15128 | *
|
---|
15129 | */
|
---|
15130 |
|
---|
15131 | /* FADDV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/65002000) */
|
---|
15132 | //#define IEM_INSTR_IMPL_A64__faddv_v_p_z(Vd, Zn, Pg, size)
|
---|
15133 |
|
---|
15134 |
|
---|
15135 | /* FMAXNMV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/65042000) */
|
---|
15136 | //#define IEM_INSTR_IMPL_A64__fmaxnmv_v_p_z(Vd, Zn, Pg, size)
|
---|
15137 |
|
---|
15138 |
|
---|
15139 | /* FMINNMV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/65052000) */
|
---|
15140 | //#define IEM_INSTR_IMPL_A64__fminnmv_v_p_z(Vd, Zn, Pg, size)
|
---|
15141 |
|
---|
15142 |
|
---|
15143 | /* FMAXV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/65062000) */
|
---|
15144 | //#define IEM_INSTR_IMPL_A64__fmaxv_v_p_z(Vd, Zn, Pg, size)
|
---|
15145 |
|
---|
15146 |
|
---|
15147 | /* FMINV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/65072000) */
|
---|
15148 | //#define IEM_INSTR_IMPL_A64__fminv_v_p_z(Vd, Zn, Pg, size)
|
---|
15149 |
|
---|
15150 |
|
---|
15151 |
|
---|
15152 | /*
|
---|
15153 | *
|
---|
15154 | * Instruction Set & Groups: sve_fp_fast_redq / sve_fp_fastreduceq / sve / A64
|
---|
15155 | *
|
---|
15156 | */
|
---|
15157 |
|
---|
15158 | /* FADDQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/6410a000) */
|
---|
15159 | //#define IEM_INSTR_IMPL_A64__faddqv_z_p_z(Vd, Zn, Pg, size)
|
---|
15160 |
|
---|
15161 |
|
---|
15162 | /* FMAXNMQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/6414a000) */
|
---|
15163 | //#define IEM_INSTR_IMPL_A64__fmaxnmqv_z_p_z(Vd, Zn, Pg, size)
|
---|
15164 |
|
---|
15165 |
|
---|
15166 | /* FMINNMQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/6415a000) */
|
---|
15167 | //#define IEM_INSTR_IMPL_A64__fminnmqv_z_p_z(Vd, Zn, Pg, size)
|
---|
15168 |
|
---|
15169 |
|
---|
15170 | /* FMAXQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/6416a000) */
|
---|
15171 | //#define IEM_INSTR_IMPL_A64__fmaxqv_z_p_z(Vd, Zn, Pg, size)
|
---|
15172 |
|
---|
15173 |
|
---|
15174 | /* FMINQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/6417a000) */
|
---|
15175 | //#define IEM_INSTR_IMPL_A64__fminqv_z_p_z(Vd, Zn, Pg, size)
|
---|
15176 |
|
---|
15177 |
|
---|
15178 |
|
---|
15179 | /*
|
---|
15180 | *
|
---|
15181 | * Instruction Set & Groups: sve_fp_fcadd_lvl2 / sve_fp_fcadd / sve / A64
|
---|
15182 | *
|
---|
15183 | */
|
---|
15184 |
|
---|
15185 | /* FCADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T>, <const> (ff3ee000/64008000) */
|
---|
15186 | //#define IEM_INSTR_IMPL_A64__fcadd_z_p_zz(Zdn, Zm, Pg, rot, size)
|
---|
15187 |
|
---|
15188 |
|
---|
15189 |
|
---|
15190 | /*
|
---|
15191 | *
|
---|
15192 | * Instruction Set & Groups: sve_fp_fcmla_by_indexed_elem_lvl2 / sve_fp_fcmla_by_indexed_elem / sve / A64
|
---|
15193 | *
|
---|
15194 | */
|
---|
15195 |
|
---|
15196 | /* FCMLA <Zda>.H, <Zn>.H, <Zm>.H[<imm>], <const> (ffe0f000/64a01000) */
|
---|
15197 | //#define IEM_INSTR_IMPL_A64__fcmla_z_zzzi_h(Zda, Zn, rot, Zm, i2)
|
---|
15198 |
|
---|
15199 |
|
---|
15200 | /* FCMLA <Zda>.S, <Zn>.S, <Zm>.S[<imm>], <const> (ffe0f000/64e01000) */
|
---|
15201 | //#define IEM_INSTR_IMPL_A64__fcmla_z_zzzi_s(Zda, Zn, rot, Zm, i1)
|
---|
15202 |
|
---|
15203 |
|
---|
15204 |
|
---|
15205 | /*
|
---|
15206 | *
|
---|
15207 | * Instruction Set & Groups: sve_fp_fcmla_lvl2 / sve_fp_fcmla / sve / A64
|
---|
15208 | *
|
---|
15209 | */
|
---|
15210 |
|
---|
15211 | /* FCMLA <Zda>.<T>, <Pg>/M, <Zn>.<T>, <Zm>.<T>, <const> (ff208000/64000000) */
|
---|
15212 | //#define IEM_INSTR_IMPL_A64__fcmla_z_p_zzz(Zda, Zn, Pg, rot, Zm, size)
|
---|
15213 |
|
---|
15214 |
|
---|
15215 |
|
---|
15216 | /*
|
---|
15217 | *
|
---|
15218 | * Instruction Set & Groups: sve_fp_fcvt2_lvl2 / sve_fp_fcvt2 / sve / A64
|
---|
15219 | *
|
---|
15220 | */
|
---|
15221 |
|
---|
15222 | /* FCVTXNT <Zd>.S, <Pg>/M, <Zn>.D (ffffe000/640aa000) */
|
---|
15223 | //#define IEM_INSTR_IMPL_A64__fcvtxnt_z_p_z_d2s(Zd, Zn, Pg)
|
---|
15224 |
|
---|
15225 |
|
---|
15226 | /* FCVTNT <Zd>.H, <Pg>/M, <Zn>.S (ffffe000/6488a000) */
|
---|
15227 | //#define IEM_INSTR_IMPL_A64__fcvtnt_z_p_z_s2h(Zd, Zn, Pg)
|
---|
15228 |
|
---|
15229 |
|
---|
15230 | /* FCVTLT <Zd>.S, <Pg>/M, <Zn>.H (ffffe000/6489a000) */
|
---|
15231 | //#define IEM_INSTR_IMPL_A64__fcvtlt_z_p_z_h2s(Zd, Zn, Pg)
|
---|
15232 |
|
---|
15233 |
|
---|
15234 | /* BFCVTNT <Zd>.H, <Pg>/M, <Zn>.S (ffffe000/648aa000) */
|
---|
15235 | //#define IEM_INSTR_IMPL_A64__bfcvtnt_z_p_z_s2bf(Zd, Zn, Pg)
|
---|
15236 |
|
---|
15237 |
|
---|
15238 | /* FCVTNT <Zd>.S, <Pg>/M, <Zn>.D (ffffe000/64caa000) */
|
---|
15239 | //#define IEM_INSTR_IMPL_A64__fcvtnt_z_p_z_d2s(Zd, Zn, Pg)
|
---|
15240 |
|
---|
15241 |
|
---|
15242 | /* FCVTLT <Zd>.D, <Pg>/M, <Zn>.S (ffffe000/64cba000) */
|
---|
15243 | //#define IEM_INSTR_IMPL_A64__fcvtlt_z_p_z_s2d(Zd, Zn, Pg)
|
---|
15244 |
|
---|
15245 |
|
---|
15246 |
|
---|
15247 | /*
|
---|
15248 | *
|
---|
15249 | * Instruction Set & Groups: sve_fp_fcvt2z_lvl2 / sve_fp_fcvt2z / sve / A64
|
---|
15250 | *
|
---|
15251 | */
|
---|
15252 |
|
---|
15253 | /* FCVTXNT <Zd>.S, <Pg>/Z, <Zn>.D (ffffe000/6402a000) */
|
---|
15254 | //#define IEM_INSTR_IMPL_A64__fcvtxnt_z_p_z_d2sz(Zd, Zn, Pg)
|
---|
15255 |
|
---|
15256 |
|
---|
15257 | /* FCVTNT <Zd>.H, <Pg>/Z, <Zn>.S (ffffe000/6480a000) */
|
---|
15258 | //#define IEM_INSTR_IMPL_A64__fcvtnt_z_p_z_s2hz(Zd, Zn, Pg)
|
---|
15259 |
|
---|
15260 |
|
---|
15261 | /* FCVTLT <Zd>.S, <Pg>/Z, <Zn>.H (ffffe000/6481a000) */
|
---|
15262 | //#define IEM_INSTR_IMPL_A64__fcvtlt_z_p_z_h2sz(Zd, Zn, Pg)
|
---|
15263 |
|
---|
15264 |
|
---|
15265 | /* BFCVTNT <Zd>.H, <Pg>/Z, <Zn>.S (ffffe000/6482a000) */
|
---|
15266 | //#define IEM_INSTR_IMPL_A64__bfcvtnt_z_p_z_s2bfz(Zd, Zn, Pg)
|
---|
15267 |
|
---|
15268 |
|
---|
15269 | /* FCVTNT <Zd>.S, <Pg>/Z, <Zn>.D (ffffe000/64c2a000) */
|
---|
15270 | //#define IEM_INSTR_IMPL_A64__fcvtnt_z_p_z_d2sz(Zd, Zn, Pg)
|
---|
15271 |
|
---|
15272 |
|
---|
15273 | /* FCVTLT <Zd>.D, <Pg>/Z, <Zn>.S (ffffe000/64c3a000) */
|
---|
15274 | //#define IEM_INSTR_IMPL_A64__fcvtlt_z_p_z_s2dz(Zd, Zn, Pg)
|
---|
15275 |
|
---|
15276 |
|
---|
15277 |
|
---|
15278 | /*
|
---|
15279 | *
|
---|
15280 | * Instruction Set & Groups: sve_fp_fdot / sve_fp_fma_w / sve / A64
|
---|
15281 | *
|
---|
15282 | */
|
---|
15283 |
|
---|
15284 | /* FDOT <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/64208000) */
|
---|
15285 | //#define IEM_INSTR_IMPL_A64__fdot_z_zzz(Zda, Zn, Zm)
|
---|
15286 |
|
---|
15287 |
|
---|
15288 | /* BFDOT <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/64608000) */
|
---|
15289 | //#define IEM_INSTR_IMPL_A64__bfdot_z_zzz(Zda, Zn, Zm)
|
---|
15290 |
|
---|
15291 |
|
---|
15292 | /* FDOT <Zda>.H, <Zn>.B, <Zm>.B (ffe0fc00/64208400) */
|
---|
15293 | //#define IEM_INSTR_IMPL_A64__fdot_z_zz8z8(Zda, Zn, Zm)
|
---|
15294 |
|
---|
15295 |
|
---|
15296 | /* FDOT <Zda>.S, <Zn>.B, <Zm>.B (ffe0fc00/64608400) */
|
---|
15297 | //#define IEM_INSTR_IMPL_A64__fdot_z32_zz8z8(Zda, Zn, Zm)
|
---|
15298 |
|
---|
15299 |
|
---|
15300 |
|
---|
15301 | /*
|
---|
15302 | *
|
---|
15303 | * Instruction Set & Groups: sve_fp_fdot_by_indexed_elem / sve_fp_fma_w_by_indexed_elem / sve / A64
|
---|
15304 | *
|
---|
15305 | */
|
---|
15306 |
|
---|
15307 | /* FDOT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0fc00/64204000) */
|
---|
15308 | //#define IEM_INSTR_IMPL_A64__fdot_z_zzzi(Zda, Zn, Zm, i2)
|
---|
15309 |
|
---|
15310 |
|
---|
15311 | /* BFDOT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0fc00/64604000) */
|
---|
15312 | //#define IEM_INSTR_IMPL_A64__bfdot_z_zzzi(Zda, Zn, Zm, i2)
|
---|
15313 |
|
---|
15314 |
|
---|
15315 | /* FDOT <Zda>.H, <Zn>.B, <Zm>.B[<imm>] (ffe0f400/64204400) */
|
---|
15316 | //#define IEM_INSTR_IMPL_A64__fdot_z_zz8z8i(Zda, Zn, i3l, Zm, i3h)
|
---|
15317 |
|
---|
15318 |
|
---|
15319 | /* FDOT <Zda>.S, <Zn>.B, <Zm>.B[<imm>] (ffe0fc00/64604400) */
|
---|
15320 | //#define IEM_INSTR_IMPL_A64__fdot_z32_zz8z8i(Zda, Zn, Zm, i2)
|
---|
15321 |
|
---|
15322 |
|
---|
15323 |
|
---|
15324 | /*
|
---|
15325 | *
|
---|
15326 | * Instruction Set & Groups: sve_fp_fma_by_indexed_elem_lvl2 / sve_fp_fma_by_indexed_elem / sve / A64
|
---|
15327 | *
|
---|
15328 | */
|
---|
15329 |
|
---|
15330 | /* FMLA <Zda>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/64200000) */
|
---|
15331 | //#define IEM_INSTR_IMPL_A64__fmla_z_zzzi_h(Zda, Zn, op, Zm, i3l, i3h)
|
---|
15332 |
|
---|
15333 |
|
---|
15334 | /* BFMLA <Zda>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/64200800) */
|
---|
15335 | //#define IEM_INSTR_IMPL_A64__bfmla_z_zzzi_h(Zda, Zn, op, Zm, i3l, i3h)
|
---|
15336 |
|
---|
15337 |
|
---|
15338 | /* FMLA <Zda>.S, <Zn>.S, <Zm>.S[<imm>] (ffe0fc00/64a00000) */
|
---|
15339 | //#define IEM_INSTR_IMPL_A64__fmla_z_zzzi_s(Zda, Zn, op, Zm, i2)
|
---|
15340 |
|
---|
15341 |
|
---|
15342 | /* FMLA <Zda>.D, <Zn>.D, <Zm>.D[<imm>] (ffe0fc00/64e00000) */
|
---|
15343 | //#define IEM_INSTR_IMPL_A64__fmla_z_zzzi_d(Zda, Zn, op, Zm, i1)
|
---|
15344 |
|
---|
15345 |
|
---|
15346 | /* FMLS <Zda>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/64200400) */
|
---|
15347 | //#define IEM_INSTR_IMPL_A64__fmls_z_zzzi_h(Zda, Zn, op, Zm, i3l, i3h)
|
---|
15348 |
|
---|
15349 |
|
---|
15350 | /* BFMLS <Zda>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/64200c00) */
|
---|
15351 | //#define IEM_INSTR_IMPL_A64__bfmls_z_zzzi_h(Zda, Zn, op, Zm, i3l, i3h)
|
---|
15352 |
|
---|
15353 |
|
---|
15354 | /* FMLS <Zda>.S, <Zn>.S, <Zm>.S[<imm>] (ffe0fc00/64a00400) */
|
---|
15355 | //#define IEM_INSTR_IMPL_A64__fmls_z_zzzi_s(Zda, Zn, op, Zm, i2)
|
---|
15356 |
|
---|
15357 |
|
---|
15358 | /* FMLS <Zda>.D, <Zn>.D, <Zm>.D[<imm>] (ffe0fc00/64e00400) */
|
---|
15359 | //#define IEM_INSTR_IMPL_A64__fmls_z_zzzi_d(Zda, Zn, op, Zm, i1)
|
---|
15360 |
|
---|
15361 |
|
---|
15362 |
|
---|
15363 | /*
|
---|
15364 | *
|
---|
15365 | * Instruction Set & Groups: sve_fp_fma_long / sve_fp_fma_w / sve / A64
|
---|
15366 | *
|
---|
15367 | */
|
---|
15368 |
|
---|
15369 | /* FMLALB <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/64a08000) */
|
---|
15370 | //#define IEM_INSTR_IMPL_A64__fmlalb_z_zzz(Zda, Zn, T, op, Zm)
|
---|
15371 |
|
---|
15372 |
|
---|
15373 | /* BFMLALB <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/64e08000) */
|
---|
15374 | //#define IEM_INSTR_IMPL_A64__bfmlalb_z_zzz(Zda, Zn, T, op, Zm)
|
---|
15375 |
|
---|
15376 |
|
---|
15377 | /* FMLSLB <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/64a0a000) */
|
---|
15378 | //#define IEM_INSTR_IMPL_A64__fmlslb_z_zzz(Zda, Zn, T, op, Zm)
|
---|
15379 |
|
---|
15380 |
|
---|
15381 | /* BFMLSLB <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/64e0a000) */
|
---|
15382 | //#define IEM_INSTR_IMPL_A64__bfmlslb_z_zzz(Zda, Zn, T, op, Zm)
|
---|
15383 |
|
---|
15384 |
|
---|
15385 | /* FMLALT <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/64a08400) */
|
---|
15386 | //#define IEM_INSTR_IMPL_A64__fmlalt_z_zzz(Zda, Zn, T, op, Zm)
|
---|
15387 |
|
---|
15388 |
|
---|
15389 | /* BFMLALT <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/64e08400) */
|
---|
15390 | //#define IEM_INSTR_IMPL_A64__bfmlalt_z_zzz(Zda, Zn, T, op, Zm)
|
---|
15391 |
|
---|
15392 |
|
---|
15393 | /* FMLSLT <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/64a0a400) */
|
---|
15394 | //#define IEM_INSTR_IMPL_A64__fmlslt_z_zzz(Zda, Zn, T, op, Zm)
|
---|
15395 |
|
---|
15396 |
|
---|
15397 | /* BFMLSLT <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/64e0a400) */
|
---|
15398 | //#define IEM_INSTR_IMPL_A64__bfmlslt_z_zzz(Zda, Zn, T, op, Zm)
|
---|
15399 |
|
---|
15400 |
|
---|
15401 |
|
---|
15402 | /*
|
---|
15403 | *
|
---|
15404 | * Instruction Set & Groups: sve_fp_fma_long_by_indexed_elem / sve_fp_fma_w_by_indexed_elem / sve / A64
|
---|
15405 | *
|
---|
15406 | */
|
---|
15407 |
|
---|
15408 | /* FMLALB <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/64a04000) */
|
---|
15409 | //#define IEM_INSTR_IMPL_A64__fmlalb_z_zzzi_s(Zda, Zn, T, i3l, op, Zm, i3h)
|
---|
15410 |
|
---|
15411 |
|
---|
15412 | /* BFMLALB <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/64e04000) */
|
---|
15413 | //#define IEM_INSTR_IMPL_A64__bfmlalb_z_zzzi(Zda, Zn, T, i3l, op, Zm, i3h)
|
---|
15414 |
|
---|
15415 |
|
---|
15416 | /* FMLSLB <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/64a06000) */
|
---|
15417 | //#define IEM_INSTR_IMPL_A64__fmlslb_z_zzzi_s(Zda, Zn, T, i3l, op, Zm, i3h)
|
---|
15418 |
|
---|
15419 |
|
---|
15420 | /* BFMLSLB <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/64e06000) */
|
---|
15421 | //#define IEM_INSTR_IMPL_A64__bfmlslb_z_zzzi(Zda, Zn, T, i3l, op, Zm, i3h)
|
---|
15422 |
|
---|
15423 |
|
---|
15424 | /* FMLALT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/64a04400) */
|
---|
15425 | //#define IEM_INSTR_IMPL_A64__fmlalt_z_zzzi_s(Zda, Zn, T, i3l, op, Zm, i3h)
|
---|
15426 |
|
---|
15427 |
|
---|
15428 | /* BFMLALT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/64e04400) */
|
---|
15429 | //#define IEM_INSTR_IMPL_A64__bfmlalt_z_zzzi(Zda, Zn, T, i3l, op, Zm, i3h)
|
---|
15430 |
|
---|
15431 |
|
---|
15432 | /* FMLSLT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/64a06400) */
|
---|
15433 | //#define IEM_INSTR_IMPL_A64__fmlslt_z_zzzi_s(Zda, Zn, T, i3l, op, Zm, i3h)
|
---|
15434 |
|
---|
15435 |
|
---|
15436 | /* BFMLSLT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/64e06400) */
|
---|
15437 | //#define IEM_INSTR_IMPL_A64__bfmlslt_z_zzzi(Zda, Zn, T, i3l, op, Zm, i3h)
|
---|
15438 |
|
---|
15439 |
|
---|
15440 |
|
---|
15441 | /*
|
---|
15442 | *
|
---|
15443 | * Instruction Set & Groups: sve_fp_fmmla_lvl2 / sve_fp_fmmla / sve / A64
|
---|
15444 | *
|
---|
15445 | */
|
---|
15446 |
|
---|
15447 | /* FMMLA <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/6420e400) */
|
---|
15448 | //#define IEM_INSTR_IMPL_A64__fmmla_z32_zzz_h(Zda, Zn, Zm)
|
---|
15449 |
|
---|
15450 |
|
---|
15451 | /* BFMMLA <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/6460e400) */
|
---|
15452 | //#define IEM_INSTR_IMPL_A64__bfmmla_z_zzz(Zda, Zn, Zm)
|
---|
15453 |
|
---|
15454 |
|
---|
15455 | /* FMMLA <Zda>.S, <Zn>.S, <Zm>.S (ffe0fc00/64a0e400) */
|
---|
15456 | //#define IEM_INSTR_IMPL_A64__fmmla_z_zzz_s(Zda, Zn, Zm)
|
---|
15457 |
|
---|
15458 |
|
---|
15459 | /* FMMLA <Zda>.D, <Zn>.D, <Zm>.D (ffe0fc00/64e0e400) */
|
---|
15460 | //#define IEM_INSTR_IMPL_A64__fmmla_z_zzz_d(Zda, Zn, Zm)
|
---|
15461 |
|
---|
15462 |
|
---|
15463 |
|
---|
15464 | /*
|
---|
15465 | *
|
---|
15466 | * Instruction Set & Groups: sve_fp_fmul_by_indexed_elem_lvl2 / sve_fp_fmul_by_indexed_elem / sve / A64
|
---|
15467 | *
|
---|
15468 | */
|
---|
15469 |
|
---|
15470 | /* FMUL <Zd>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/64202000) */
|
---|
15471 | //#define IEM_INSTR_IMPL_A64__fmul_z_zzi_h(Zd, Zn, Zm, i3l, i3h)
|
---|
15472 |
|
---|
15473 |
|
---|
15474 | /* BFMUL <Zd>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/64202800) */
|
---|
15475 | //#define IEM_INSTR_IMPL_A64__bfmul_z_zzi_h(Zd, Zn, Zm, i3l, i3h)
|
---|
15476 |
|
---|
15477 |
|
---|
15478 | /* FMUL <Zd>.S, <Zn>.S, <Zm>.S[<imm>] (ffe0fc00/64a02000) */
|
---|
15479 | //#define IEM_INSTR_IMPL_A64__fmul_z_zzi_s(Zd, Zn, Zm, i2)
|
---|
15480 |
|
---|
15481 |
|
---|
15482 | /* FMUL <Zd>.D, <Zn>.D, <Zm>.D[<imm>] (ffe0fc00/64e02000) */
|
---|
15483 | //#define IEM_INSTR_IMPL_A64__fmul_z_zzi_d(Zd, Zn, Zm, i1)
|
---|
15484 |
|
---|
15485 |
|
---|
15486 |
|
---|
15487 | /*
|
---|
15488 | *
|
---|
15489 | * Instruction Set & Groups: sve_fp_ftmad / sve_fp_pred / sve / A64
|
---|
15490 | *
|
---|
15491 | */
|
---|
15492 |
|
---|
15493 | /* FTMAD <Zdn>.<T>, <Zdn>.<T>, <Zm>.<T>, #<imm> (ff38fc00/65108000) */
|
---|
15494 | //#define IEM_INSTR_IMPL_A64__ftmad_z_zzi(Zdn, Zm, imm3, size)
|
---|
15495 |
|
---|
15496 |
|
---|
15497 |
|
---|
15498 | /*
|
---|
15499 | *
|
---|
15500 | * Instruction Set & Groups: sve_fp_pairwise_lvl2 / sve_fp_pairwise / sve / A64
|
---|
15501 | *
|
---|
15502 | */
|
---|
15503 |
|
---|
15504 | /* FADDP <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/64108000) */
|
---|
15505 | //#define IEM_INSTR_IMPL_A64__faddp_z_p_zz(Zdn, Zm, Pg, size)
|
---|
15506 |
|
---|
15507 |
|
---|
15508 | /* FMAXNMP <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/64148000) */
|
---|
15509 | //#define IEM_INSTR_IMPL_A64__fmaxnmp_z_p_zz(Zdn, Zm, Pg, size)
|
---|
15510 |
|
---|
15511 |
|
---|
15512 | /* FMINNMP <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/64158000) */
|
---|
15513 | //#define IEM_INSTR_IMPL_A64__fminnmp_z_p_zz(Zdn, Zm, Pg, size)
|
---|
15514 |
|
---|
15515 |
|
---|
15516 | /* FMAXP <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/64168000) */
|
---|
15517 | //#define IEM_INSTR_IMPL_A64__fmaxp_z_p_zz(Zdn, Zm, Pg, size)
|
---|
15518 |
|
---|
15519 |
|
---|
15520 | /* FMINP <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/64178000) */
|
---|
15521 | //#define IEM_INSTR_IMPL_A64__fminp_z_p_zz(Zdn, Zm, Pg, size)
|
---|
15522 |
|
---|
15523 |
|
---|
15524 |
|
---|
15525 | /*
|
---|
15526 | *
|
---|
15527 | * Instruction Set & Groups: sve_fp_z2op_p_zd_a / sve_fp_zeroing_unary / sve / A64
|
---|
15528 | *
|
---|
15529 | */
|
---|
15530 |
|
---|
15531 | /* FRINTN <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/64188000) */
|
---|
15532 | //#define IEM_INSTR_IMPL_A64__frintn_z_p_z_z(Zd, Zn, Pg, size)
|
---|
15533 |
|
---|
15534 |
|
---|
15535 | /* FRINTP <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/6418a000) */
|
---|
15536 | //#define IEM_INSTR_IMPL_A64__frintp_z_p_z_z(Zd, Zn, Pg, size)
|
---|
15537 |
|
---|
15538 |
|
---|
15539 | /* FRINTM <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/6418c000) */
|
---|
15540 | //#define IEM_INSTR_IMPL_A64__frintm_z_p_z_z(Zd, Zn, Pg, size)
|
---|
15541 |
|
---|
15542 |
|
---|
15543 | /* FRINTZ <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/6418e000) */
|
---|
15544 | //#define IEM_INSTR_IMPL_A64__frintz_z_p_z_z(Zd, Zn, Pg, size)
|
---|
15545 |
|
---|
15546 |
|
---|
15547 | /* FRINTA <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/64198000) */
|
---|
15548 | //#define IEM_INSTR_IMPL_A64__frinta_z_p_z_z(Zd, Zn, Pg, size)
|
---|
15549 |
|
---|
15550 |
|
---|
15551 | /* FRINTX <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/6419c000) */
|
---|
15552 | //#define IEM_INSTR_IMPL_A64__frintx_z_p_z_z(Zd, Zn, Pg, size)
|
---|
15553 |
|
---|
15554 |
|
---|
15555 | /* FRINTI <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/6419e000) */
|
---|
15556 | //#define IEM_INSTR_IMPL_A64__frinti_z_p_z_z(Zd, Zn, Pg, size)
|
---|
15557 |
|
---|
15558 |
|
---|
15559 |
|
---|
15560 | /*
|
---|
15561 | *
|
---|
15562 | * Instruction Set & Groups: sve_fp_z2op_p_zd_b_0 / sve_fp_zeroing_unary / sve / A64
|
---|
15563 | *
|
---|
15564 | */
|
---|
15565 |
|
---|
15566 | /* FCVTX <Zd>.S, <Pg>/Z, <Zn>.D (ffffe000/641ac000) */
|
---|
15567 | //#define IEM_INSTR_IMPL_A64__fcvtx_z_p_z_d2sz(Zd, Zn, Pg)
|
---|
15568 |
|
---|
15569 |
|
---|
15570 | /* FCVT <Zd>.H, <Pg>/Z, <Zn>.S (ffffe000/649a8000) */
|
---|
15571 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_s2hz(Zd, Zn, Pg)
|
---|
15572 |
|
---|
15573 |
|
---|
15574 | /* FCVT <Zd>.S, <Pg>/Z, <Zn>.H (ffffe000/649aa000) */
|
---|
15575 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_h2sz(Zd, Zn, Pg)
|
---|
15576 |
|
---|
15577 |
|
---|
15578 | /* BFCVT <Zd>.H, <Pg>/Z, <Zn>.S (ffffe000/649ac000) */
|
---|
15579 | //#define IEM_INSTR_IMPL_A64__bfcvt_z_p_z_s2bfz(Zd, Zn, Pg)
|
---|
15580 |
|
---|
15581 |
|
---|
15582 | /* FCVT <Zd>.H, <Pg>/Z, <Zn>.D (ffffe000/64da8000) */
|
---|
15583 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_d2hz(Zd, Zn, Pg)
|
---|
15584 |
|
---|
15585 |
|
---|
15586 | /* FCVT <Zd>.D, <Pg>/Z, <Zn>.H (ffffe000/64daa000) */
|
---|
15587 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_h2dz(Zd, Zn, Pg)
|
---|
15588 |
|
---|
15589 |
|
---|
15590 | /* FCVT <Zd>.S, <Pg>/Z, <Zn>.D (ffffe000/64dac000) */
|
---|
15591 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_d2sz(Zd, Zn, Pg)
|
---|
15592 |
|
---|
15593 |
|
---|
15594 | /* FCVT <Zd>.D, <Pg>/Z, <Zn>.S (ffffe000/64dae000) */
|
---|
15595 | //#define IEM_INSTR_IMPL_A64__fcvt_z_p_z_s2dz(Zd, Zn, Pg)
|
---|
15596 |
|
---|
15597 |
|
---|
15598 |
|
---|
15599 | /*
|
---|
15600 | *
|
---|
15601 | * Instruction Set & Groups: sve_fp_z2op_p_zd_b_1 / sve_fp_zeroing_unary / sve / A64
|
---|
15602 | *
|
---|
15603 | */
|
---|
15604 |
|
---|
15605 | /* FRECPX <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/641b8000) */
|
---|
15606 | //#define IEM_INSTR_IMPL_A64__frecpx_z_p_z_z(Zd, Zn, Pg, size)
|
---|
15607 |
|
---|
15608 |
|
---|
15609 | /* FSQRT <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/641ba000) */
|
---|
15610 | //#define IEM_INSTR_IMPL_A64__fsqrt_z_p_z_z(Zd, Zn, Pg, size)
|
---|
15611 |
|
---|
15612 |
|
---|
15613 |
|
---|
15614 | /*
|
---|
15615 | *
|
---|
15616 | * Instruction Set & Groups: sve_fp_z2op_p_zd_c / sve_fp_zeroing_unary / sve / A64
|
---|
15617 | *
|
---|
15618 | */
|
---|
15619 |
|
---|
15620 | /* FRINT32Z <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ffffa000/641c8000) */
|
---|
15621 | //#define IEM_INSTR_IMPL_A64__frint32z_z_p_z_z(Zd, Zn, Pg, sz)
|
---|
15622 |
|
---|
15623 |
|
---|
15624 | /* FRINT32X <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ffffa000/641ca000) */
|
---|
15625 | //#define IEM_INSTR_IMPL_A64__frint32x_z_p_z_z(Zd, Zn, Pg, sz)
|
---|
15626 |
|
---|
15627 |
|
---|
15628 | /* FRINT64Z <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ffffa000/641d8000) */
|
---|
15629 | //#define IEM_INSTR_IMPL_A64__frint64z_z_p_z_z(Zd, Zn, Pg, sz)
|
---|
15630 |
|
---|
15631 |
|
---|
15632 | /* FRINT64X <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ffffa000/641da000) */
|
---|
15633 | //#define IEM_INSTR_IMPL_A64__frint64x_z_p_z_z(Zd, Zn, Pg, sz)
|
---|
15634 |
|
---|
15635 |
|
---|
15636 | /* SCVTF <Zd>.S, <Pg>/Z, <Zn>.S (ffffe000/649d8000) */
|
---|
15637 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_w2sz(Zd, Zn, Pg, int_U)
|
---|
15638 |
|
---|
15639 |
|
---|
15640 | /* SCVTF <Zd>.D, <Pg>/Z, <Zn>.S (ffffe000/64dc8000) */
|
---|
15641 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_w2dz(Zd, Zn, Pg, int_U)
|
---|
15642 |
|
---|
15643 |
|
---|
15644 | /* SCVTF <Zd>.S, <Pg>/Z, <Zn>.D (ffffe000/64dd8000) */
|
---|
15645 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_x2sz(Zd, Zn, Pg, int_U)
|
---|
15646 |
|
---|
15647 |
|
---|
15648 | /* SCVTF <Zd>.D, <Pg>/Z, <Zn>.D (ffffe000/64ddc000) */
|
---|
15649 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_x2dz(Zd, Zn, Pg, int_U)
|
---|
15650 |
|
---|
15651 |
|
---|
15652 | /* SCVTF <Zd>.H, <Pg>/Z, <Zn>.H (ffffe000/645cc000) */
|
---|
15653 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_h2fp16z(Zd, Zn, Pg, int_U)
|
---|
15654 |
|
---|
15655 |
|
---|
15656 | /* SCVTF <Zd>.H, <Pg>/Z, <Zn>.S (ffffe000/645d8000) */
|
---|
15657 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_w2fp16z(Zd, Zn, Pg, int_U)
|
---|
15658 |
|
---|
15659 |
|
---|
15660 | /* SCVTF <Zd>.H, <Pg>/Z, <Zn>.D (ffffe000/645dc000) */
|
---|
15661 | //#define IEM_INSTR_IMPL_A64__scvtf_z_p_z_x2fp16z(Zd, Zn, Pg, int_U)
|
---|
15662 |
|
---|
15663 |
|
---|
15664 | /* UCVTF <Zd>.S, <Pg>/Z, <Zn>.S (ffffe000/649da000) */
|
---|
15665 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_w2sz(Zd, Zn, Pg, int_U)
|
---|
15666 |
|
---|
15667 |
|
---|
15668 | /* UCVTF <Zd>.D, <Pg>/Z, <Zn>.S (ffffe000/64dca000) */
|
---|
15669 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_w2dz(Zd, Zn, Pg, int_U)
|
---|
15670 |
|
---|
15671 |
|
---|
15672 | /* UCVTF <Zd>.S, <Pg>/Z, <Zn>.D (ffffe000/64dda000) */
|
---|
15673 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_x2sz(Zd, Zn, Pg, int_U)
|
---|
15674 |
|
---|
15675 |
|
---|
15676 | /* UCVTF <Zd>.D, <Pg>/Z, <Zn>.D (ffffe000/64dde000) */
|
---|
15677 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_x2dz(Zd, Zn, Pg, int_U)
|
---|
15678 |
|
---|
15679 |
|
---|
15680 | /* UCVTF <Zd>.H, <Pg>/Z, <Zn>.H (ffffe000/645ce000) */
|
---|
15681 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_h2fp16z(Zd, Zn, Pg, int_U)
|
---|
15682 |
|
---|
15683 |
|
---|
15684 | /* UCVTF <Zd>.H, <Pg>/Z, <Zn>.S (ffffe000/645da000) */
|
---|
15685 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_w2fp16z(Zd, Zn, Pg, int_U)
|
---|
15686 |
|
---|
15687 |
|
---|
15688 | /* UCVTF <Zd>.H, <Pg>/Z, <Zn>.D (ffffe000/645de000) */
|
---|
15689 | //#define IEM_INSTR_IMPL_A64__ucvtf_z_p_z_x2fp16z(Zd, Zn, Pg, int_U)
|
---|
15690 |
|
---|
15691 |
|
---|
15692 |
|
---|
15693 | /*
|
---|
15694 | *
|
---|
15695 | * Instruction Set & Groups: sve_fp_z2op_p_zd_d / sve_fp_zeroing_unary / sve / A64
|
---|
15696 | *
|
---|
15697 | */
|
---|
15698 |
|
---|
15699 | /* FLOGB <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ffff8000/641e8000) */
|
---|
15700 | //#define IEM_INSTR_IMPL_A64__flogb_z_p_z_z(Zd, Zn, Pg, size)
|
---|
15701 |
|
---|
15702 |
|
---|
15703 | /* FCVTZS <Zd>.S, <Pg>/Z, <Zn>.S (ffffe000/649f8000) */
|
---|
15704 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_s2wz(Zd, Zn, Pg, int_U)
|
---|
15705 |
|
---|
15706 |
|
---|
15707 | /* FCVTZS <Zd>.S, <Pg>/Z, <Zn>.D (ffffe000/64de8000) */
|
---|
15708 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_d2wz(Zd, Zn, Pg, int_U)
|
---|
15709 |
|
---|
15710 |
|
---|
15711 | /* FCVTZS <Zd>.D, <Pg>/Z, <Zn>.S (ffffe000/64df8000) */
|
---|
15712 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_s2xz(Zd, Zn, Pg, int_U)
|
---|
15713 |
|
---|
15714 |
|
---|
15715 | /* FCVTZS <Zd>.D, <Pg>/Z, <Zn>.D (ffffe000/64dfc000) */
|
---|
15716 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_d2xz(Zd, Zn, Pg, int_U)
|
---|
15717 |
|
---|
15718 |
|
---|
15719 | /* FCVTZS <Zd>.H, <Pg>/Z, <Zn>.H (ffffe000/645ec000) */
|
---|
15720 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_fp162hz(Zd, Zn, Pg, int_U)
|
---|
15721 |
|
---|
15722 |
|
---|
15723 | /* FCVTZS <Zd>.S, <Pg>/Z, <Zn>.H (ffffe000/645f8000) */
|
---|
15724 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_fp162wz(Zd, Zn, Pg, int_U)
|
---|
15725 |
|
---|
15726 |
|
---|
15727 | /* FCVTZS <Zd>.D, <Pg>/Z, <Zn>.H (ffffe000/645fc000) */
|
---|
15728 | //#define IEM_INSTR_IMPL_A64__fcvtzs_z_p_z_fp162xz(Zd, Zn, Pg, int_U)
|
---|
15729 |
|
---|
15730 |
|
---|
15731 | /* FCVTZU <Zd>.S, <Pg>/Z, <Zn>.S (ffffe000/649fa000) */
|
---|
15732 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_s2wz(Zd, Zn, Pg, int_U)
|
---|
15733 |
|
---|
15734 |
|
---|
15735 | /* FCVTZU <Zd>.S, <Pg>/Z, <Zn>.D (ffffe000/64dea000) */
|
---|
15736 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_d2wz(Zd, Zn, Pg, int_U)
|
---|
15737 |
|
---|
15738 |
|
---|
15739 | /* FCVTZU <Zd>.D, <Pg>/Z, <Zn>.S (ffffe000/64dfa000) */
|
---|
15740 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_s2xz(Zd, Zn, Pg, int_U)
|
---|
15741 |
|
---|
15742 |
|
---|
15743 | /* FCVTZU <Zd>.D, <Pg>/Z, <Zn>.D (ffffe000/64dfe000) */
|
---|
15744 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_d2xz(Zd, Zn, Pg, int_U)
|
---|
15745 |
|
---|
15746 |
|
---|
15747 | /* FCVTZU <Zd>.H, <Pg>/Z, <Zn>.H (ffffe000/645ee000) */
|
---|
15748 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_fp162hz(Zd, Zn, Pg, int_U)
|
---|
15749 |
|
---|
15750 |
|
---|
15751 | /* FCVTZU <Zd>.S, <Pg>/Z, <Zn>.H (ffffe000/645fa000) */
|
---|
15752 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_fp162wz(Zd, Zn, Pg, int_U)
|
---|
15753 |
|
---|
15754 |
|
---|
15755 | /* FCVTZU <Zd>.D, <Pg>/Z, <Zn>.H (ffffe000/645fe000) */
|
---|
15756 | //#define IEM_INSTR_IMPL_A64__fcvtzu_z_p_z_fp162xz(Zd, Zn, Pg, int_U)
|
---|
15757 |
|
---|
15758 |
|
---|
15759 |
|
---|
15760 | /*
|
---|
15761 | *
|
---|
15762 | * Instruction Set & Groups: sve_int_arith_imm0 / sve_wideimm_unpred / sve / A64
|
---|
15763 | *
|
---|
15764 | */
|
---|
15765 |
|
---|
15766 | /* ADD <Zdn>.<T>, <Zdn>.<T>, #<imm>{, <shift>} (ff3fc000/2520c000) */
|
---|
15767 | //#define IEM_INSTR_IMPL_A64__add_z_zi(Zdn, imm8, sh, size)
|
---|
15768 |
|
---|
15769 |
|
---|
15770 | /* SUB <Zdn>.<T>, <Zdn>.<T>, #<imm>{, <shift>} (ff3fc000/2521c000) */
|
---|
15771 | //#define IEM_INSTR_IMPL_A64__sub_z_zi(Zdn, imm8, sh, size)
|
---|
15772 |
|
---|
15773 |
|
---|
15774 | /* SUBR <Zdn>.<T>, <Zdn>.<T>, #<imm>{, <shift>} (ff3fc000/2523c000) */
|
---|
15775 | //#define IEM_INSTR_IMPL_A64__subr_z_zi(Zdn, imm8, sh, size)
|
---|
15776 |
|
---|
15777 |
|
---|
15778 | /* SQADD <Zdn>.<T>, <Zdn>.<T>, #<imm>{, <shift>} (ff3fc000/2524c000) */
|
---|
15779 | //#define IEM_INSTR_IMPL_A64__sqadd_z_zi(Zdn, imm8, sh, U, size)
|
---|
15780 |
|
---|
15781 |
|
---|
15782 | /* SQSUB <Zdn>.<T>, <Zdn>.<T>, #<imm>{, <shift>} (ff3fc000/2526c000) */
|
---|
15783 | //#define IEM_INSTR_IMPL_A64__sqsub_z_zi(Zdn, imm8, sh, U, size)
|
---|
15784 |
|
---|
15785 |
|
---|
15786 | /* UQADD <Zdn>.<T>, <Zdn>.<T>, #<imm>{, <shift>} (ff3fc000/2525c000) */
|
---|
15787 | //#define IEM_INSTR_IMPL_A64__uqadd_z_zi(Zdn, imm8, sh, U, size)
|
---|
15788 |
|
---|
15789 |
|
---|
15790 | /* UQSUB <Zdn>.<T>, <Zdn>.<T>, #<imm>{, <shift>} (ff3fc000/2527c000) */
|
---|
15791 | //#define IEM_INSTR_IMPL_A64__uqsub_z_zi(Zdn, imm8, sh, U, size)
|
---|
15792 |
|
---|
15793 |
|
---|
15794 |
|
---|
15795 | /*
|
---|
15796 | *
|
---|
15797 | * Instruction Set & Groups: sve_int_arith_imm1 / sve_wideimm_unpred / sve / A64
|
---|
15798 | *
|
---|
15799 | */
|
---|
15800 |
|
---|
15801 | /* SMAX <Zdn>.<T>, <Zdn>.<T>, #<imm> (ff3fe000/2528c000) */
|
---|
15802 | //#define IEM_INSTR_IMPL_A64__smax_z_zi(Zdn, imm8, U, size)
|
---|
15803 |
|
---|
15804 |
|
---|
15805 | /* SMIN <Zdn>.<T>, <Zdn>.<T>, #<imm> (ff3fe000/252ac000) */
|
---|
15806 | //#define IEM_INSTR_IMPL_A64__smin_z_zi(Zdn, imm8, U, size)
|
---|
15807 |
|
---|
15808 |
|
---|
15809 | /* UMAX <Zdn>.<T>, <Zdn>.<T>, #<imm> (ff3fe000/2529c000) */
|
---|
15810 | //#define IEM_INSTR_IMPL_A64__umax_z_zi(Zdn, imm8, U, size)
|
---|
15811 |
|
---|
15812 |
|
---|
15813 | /* UMIN <Zdn>.<T>, <Zdn>.<T>, #<imm> (ff3fe000/252bc000) */
|
---|
15814 | //#define IEM_INSTR_IMPL_A64__umin_z_zi(Zdn, imm8, U, size)
|
---|
15815 |
|
---|
15816 |
|
---|
15817 |
|
---|
15818 | /*
|
---|
15819 | *
|
---|
15820 | * Instruction Set & Groups: sve_int_arith_imm2 / sve_wideimm_unpred / sve / A64
|
---|
15821 | *
|
---|
15822 | */
|
---|
15823 |
|
---|
15824 | /* MUL <Zdn>.<T>, <Zdn>.<T>, #<imm> (ff3fe000/2530c000) */
|
---|
15825 | //#define IEM_INSTR_IMPL_A64__mul_z_zi(Zdn, imm8, size)
|
---|
15826 |
|
---|
15827 |
|
---|
15828 |
|
---|
15829 | /*
|
---|
15830 | *
|
---|
15831 | * Instruction Set & Groups: sve_int_arith_svl / sve_alloca / sve / A64
|
---|
15832 | *
|
---|
15833 | */
|
---|
15834 |
|
---|
15835 | /* ADDSVL <Xd|SP>, <Xn|SP>, #<imm> (ffe0f800/04205800) */
|
---|
15836 | //#define IEM_INSTR_IMPL_A64__addsvl_r_ri(Rd, imm6, Rn)
|
---|
15837 |
|
---|
15838 |
|
---|
15839 | /* ADDSPL <Xd|SP>, <Xn|SP>, #<imm> (ffe0f800/04605800) */
|
---|
15840 | //#define IEM_INSTR_IMPL_A64__addspl_r_ri(Rd, imm6, Rn)
|
---|
15841 |
|
---|
15842 |
|
---|
15843 |
|
---|
15844 | /*
|
---|
15845 | *
|
---|
15846 | * Instruction Set & Groups: sve_int_arith_vl / sve_alloca / sve / A64
|
---|
15847 | *
|
---|
15848 | */
|
---|
15849 |
|
---|
15850 | /* ADDVL <Xd|SP>, <Xn|SP>, #<imm> (ffe0f800/04205000) */
|
---|
15851 | //#define IEM_INSTR_IMPL_A64__addvl_r_ri(Rd, imm6, Rn)
|
---|
15852 |
|
---|
15853 |
|
---|
15854 | /* ADDPL <Xd|SP>, <Xn|SP>, #<imm> (ffe0f800/04605000) */
|
---|
15855 | //#define IEM_INSTR_IMPL_A64__addpl_r_ri(Rd, imm6, Rn)
|
---|
15856 |
|
---|
15857 |
|
---|
15858 |
|
---|
15859 | /*
|
---|
15860 | *
|
---|
15861 | * Instruction Set & Groups: sve_int_bin_cons_arit_0 / sve_int_unpred_arit / sve / A64
|
---|
15862 | *
|
---|
15863 | */
|
---|
15864 |
|
---|
15865 | /* ADD <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/04200000) */
|
---|
15866 | //#define IEM_INSTR_IMPL_A64__add_z_zz(Zd, Zn, Zm, size)
|
---|
15867 |
|
---|
15868 |
|
---|
15869 | /* SUB <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/04200400) */
|
---|
15870 | //#define IEM_INSTR_IMPL_A64__sub_z_zz(Zd, Zn, Zm, size)
|
---|
15871 |
|
---|
15872 |
|
---|
15873 | /* ADDPT <Zd>.D, <Zn>.D, <Zm>.D (ffe0fc00/04e00800) */
|
---|
15874 | //#define IEM_INSTR_IMPL_A64__addpt_z_zz(Zd, Zn, Zm)
|
---|
15875 |
|
---|
15876 |
|
---|
15877 | /* SUBPT <Zd>.D, <Zn>.D, <Zm>.D (ffe0fc00/04e00c00) */
|
---|
15878 | //#define IEM_INSTR_IMPL_A64__subpt_z_zz(Zd, Zn, Zm)
|
---|
15879 |
|
---|
15880 |
|
---|
15881 | /* SQADD <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/04201000) */
|
---|
15882 | //#define IEM_INSTR_IMPL_A64__sqadd_z_zz(Zd, Zn, U, Zm, size)
|
---|
15883 |
|
---|
15884 |
|
---|
15885 | /* SQSUB <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/04201800) */
|
---|
15886 | //#define IEM_INSTR_IMPL_A64__sqsub_z_zz(Zd, Zn, U, Zm, size)
|
---|
15887 |
|
---|
15888 |
|
---|
15889 | /* UQADD <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/04201400) */
|
---|
15890 | //#define IEM_INSTR_IMPL_A64__uqadd_z_zz(Zd, Zn, U, Zm, size)
|
---|
15891 |
|
---|
15892 |
|
---|
15893 | /* UQSUB <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/04201c00) */
|
---|
15894 | //#define IEM_INSTR_IMPL_A64__uqsub_z_zz(Zd, Zn, U, Zm, size)
|
---|
15895 |
|
---|
15896 |
|
---|
15897 |
|
---|
15898 | /*
|
---|
15899 | *
|
---|
15900 | * Instruction Set & Groups: sve_int_bin_cons_log / sve_int_unpred_logical / sve / A64
|
---|
15901 | *
|
---|
15902 | */
|
---|
15903 |
|
---|
15904 | /* AND <Zd>.D, <Zn>.D, <Zm>.D (ffe0fc00/04203000) */
|
---|
15905 | //#define IEM_INSTR_IMPL_A64__and_z_zz(Zd, Zn, Zm)
|
---|
15906 |
|
---|
15907 |
|
---|
15908 | /* ORR <Zd>.D, <Zn>.D, <Zm>.D (ffe0fc00/04603000) */
|
---|
15909 | //#define IEM_INSTR_IMPL_A64__orr_z_zz(Zd, Zn, Zm)
|
---|
15910 |
|
---|
15911 |
|
---|
15912 | /* EOR <Zd>.D, <Zn>.D, <Zm>.D (ffe0fc00/04a03000) */
|
---|
15913 | //#define IEM_INSTR_IMPL_A64__eor_z_zz(Zd, Zn, Zm)
|
---|
15914 |
|
---|
15915 |
|
---|
15916 | /* BIC <Zd>.D, <Zn>.D, <Zm>.D (ffe0fc00/04e03000) */
|
---|
15917 | //#define IEM_INSTR_IMPL_A64__bic_z_zz(Zd, Zn, Zm)
|
---|
15918 |
|
---|
15919 |
|
---|
15920 |
|
---|
15921 | /*
|
---|
15922 | *
|
---|
15923 | * Instruction Set & Groups: sve_int_bin_cons_misc_0_a / sve_int_adr / sve / A64
|
---|
15924 | *
|
---|
15925 | */
|
---|
15926 |
|
---|
15927 | /* ADR <Zd>.D, [<Zn>.D, <Zm>.D, SXTW<amount>] (ffe0f000/0420a000) */
|
---|
15928 | //#define IEM_INSTR_IMPL_A64__adr_z_az_d_s32_scaled(Zd, Zn, msz, Zm)
|
---|
15929 |
|
---|
15930 |
|
---|
15931 | /* ADR <Zd>.D, [<Zn>.D, <Zm>.D, UXTW<amount>] (ffe0f000/0460a000) */
|
---|
15932 | //#define IEM_INSTR_IMPL_A64__adr_z_az_d_u32_scaled(Zd, Zn, msz, Zm)
|
---|
15933 |
|
---|
15934 |
|
---|
15935 | /* ADR <Zd>.<T>, [<Zn>.<T>, <Zm>.<T>{, <mod> <amount>}] (ffa0f000/04a0a000) */
|
---|
15936 | //#define IEM_INSTR_IMPL_A64__adr_z_az_sd_same_scaled(Zd, Zn, msz, Zm, sz)
|
---|
15937 |
|
---|
15938 |
|
---|
15939 |
|
---|
15940 | /*
|
---|
15941 | *
|
---|
15942 | * Instruction Set & Groups: sve_int_bin_cons_misc_0_b / sve_int_unpred_misc / sve / A64
|
---|
15943 | *
|
---|
15944 | */
|
---|
15945 |
|
---|
15946 | /* FTSSEL <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/0420b000) */
|
---|
15947 | //#define IEM_INSTR_IMPL_A64__ftssel_z_zz(Zd, Zn, Zm, size)
|
---|
15948 |
|
---|
15949 |
|
---|
15950 |
|
---|
15951 | /*
|
---|
15952 | *
|
---|
15953 | * Instruction Set & Groups: sve_int_bin_cons_misc_0_c / sve_int_unpred_misc / sve / A64
|
---|
15954 | *
|
---|
15955 | */
|
---|
15956 |
|
---|
15957 | /* FEXPA <Zd>.<T>, <Zn>.<T> (ff3ffc00/0420b800) */
|
---|
15958 | //#define IEM_INSTR_IMPL_A64__fexpa_z_z(Zd, Zn, size)
|
---|
15959 |
|
---|
15960 |
|
---|
15961 |
|
---|
15962 | /*
|
---|
15963 | *
|
---|
15964 | * Instruction Set & Groups: sve_int_bin_cons_misc_0_d / sve_int_unpred_misc / sve / A64
|
---|
15965 | *
|
---|
15966 | */
|
---|
15967 |
|
---|
15968 | /* MOVPRFX <Zd>, <Zn> (fffffc00/0420bc00) */
|
---|
15969 | //#define IEM_INSTR_IMPL_A64__movprfx_z_z(Zd, Zn)
|
---|
15970 |
|
---|
15971 |
|
---|
15972 |
|
---|
15973 | /*
|
---|
15974 | *
|
---|
15975 | * Instruction Set & Groups: sve_int_bin_cons_shift_a / sve_int_unpred_shift / sve / A64
|
---|
15976 | *
|
---|
15977 | */
|
---|
15978 |
|
---|
15979 | /* ASR <Zd>.<T>, <Zn>.<T>, <Zm>.D (ff20fc00/04208000) */
|
---|
15980 | //#define IEM_INSTR_IMPL_A64__asr_z_zw(Zd, Zn, U, Zm, size)
|
---|
15981 |
|
---|
15982 |
|
---|
15983 | /* LSL <Zd>.<T>, <Zn>.<T>, <Zm>.D (ff20fc00/04208c00) */
|
---|
15984 | //#define IEM_INSTR_IMPL_A64__lsl_z_zw(Zd, Zn, Zm, size)
|
---|
15985 |
|
---|
15986 |
|
---|
15987 | /* LSR <Zd>.<T>, <Zn>.<T>, <Zm>.D (ff20fc00/04208400) */
|
---|
15988 | //#define IEM_INSTR_IMPL_A64__lsr_z_zw(Zd, Zn, U, Zm, size)
|
---|
15989 |
|
---|
15990 |
|
---|
15991 |
|
---|
15992 | /*
|
---|
15993 | *
|
---|
15994 | * Instruction Set & Groups: sve_int_bin_cons_shift_b / sve_int_unpred_shift / sve / A64
|
---|
15995 | *
|
---|
15996 | */
|
---|
15997 |
|
---|
15998 | /* ASR <Zd>.<T>, <Zn>.<T>, #<const> (ff20fc00/04209000) */
|
---|
15999 | //#define IEM_INSTR_IMPL_A64__asr_z_zi(Zd, Zn, U, imm3, tszl, tszh)
|
---|
16000 |
|
---|
16001 |
|
---|
16002 | /* LSL <Zd>.<T>, <Zn>.<T>, #<const> (ff20fc00/04209c00) */
|
---|
16003 | //#define IEM_INSTR_IMPL_A64__lsl_z_zi(Zd, Zn, imm3, tszl, tszh)
|
---|
16004 |
|
---|
16005 |
|
---|
16006 | /* LSR <Zd>.<T>, <Zn>.<T>, #<const> (ff20fc00/04209400) */
|
---|
16007 | //#define IEM_INSTR_IMPL_A64__lsr_z_zi(Zd, Zn, U, imm3, tszl, tszh)
|
---|
16008 |
|
---|
16009 |
|
---|
16010 |
|
---|
16011 | /*
|
---|
16012 | *
|
---|
16013 | * Instruction Set & Groups: sve_int_bin_pred_arit_0 / sve_int_pred_bin / sve / A64
|
---|
16014 | *
|
---|
16015 | */
|
---|
16016 |
|
---|
16017 | /* ADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04000000) */
|
---|
16018 | //#define IEM_INSTR_IMPL_A64__add_z_p_zz(Zdn, Zm, Pg, size)
|
---|
16019 |
|
---|
16020 |
|
---|
16021 | /* SUB <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04010000) */
|
---|
16022 | //#define IEM_INSTR_IMPL_A64__sub_z_p_zz(Zdn, Zm, Pg, size)
|
---|
16023 |
|
---|
16024 |
|
---|
16025 | /* SUBR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04030000) */
|
---|
16026 | //#define IEM_INSTR_IMPL_A64__subr_z_p_zz(Zdn, Zm, Pg, size)
|
---|
16027 |
|
---|
16028 |
|
---|
16029 | /* ADDPT <Zdn>.D, <Pg>/M, <Zdn>.D, <Zm>.D (ffffe000/04c40000) */
|
---|
16030 | //#define IEM_INSTR_IMPL_A64__addpt_z_p_zz(Zdn, Zm, Pg)
|
---|
16031 |
|
---|
16032 |
|
---|
16033 | /* SUBPT <Zdn>.D, <Pg>/M, <Zdn>.D, <Zm>.D (ffffe000/04c50000) */
|
---|
16034 | //#define IEM_INSTR_IMPL_A64__subpt_z_p_zz(Zdn, Zm, Pg)
|
---|
16035 |
|
---|
16036 |
|
---|
16037 |
|
---|
16038 | /*
|
---|
16039 | *
|
---|
16040 | * Instruction Set & Groups: sve_int_bin_pred_arit_1 / sve_int_pred_bin / sve / A64
|
---|
16041 | *
|
---|
16042 | */
|
---|
16043 |
|
---|
16044 | /* SMAX <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04080000) */
|
---|
16045 | //#define IEM_INSTR_IMPL_A64__smax_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16046 |
|
---|
16047 |
|
---|
16048 | /* SMIN <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/040a0000) */
|
---|
16049 | //#define IEM_INSTR_IMPL_A64__smin_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16050 |
|
---|
16051 |
|
---|
16052 | /* SABD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/040c0000) */
|
---|
16053 | //#define IEM_INSTR_IMPL_A64__sabd_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16054 |
|
---|
16055 |
|
---|
16056 | /* UMAX <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04090000) */
|
---|
16057 | //#define IEM_INSTR_IMPL_A64__umax_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16058 |
|
---|
16059 |
|
---|
16060 | /* UMIN <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/040b0000) */
|
---|
16061 | //#define IEM_INSTR_IMPL_A64__umin_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16062 |
|
---|
16063 |
|
---|
16064 | /* UABD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/040d0000) */
|
---|
16065 | //#define IEM_INSTR_IMPL_A64__uabd_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16066 |
|
---|
16067 |
|
---|
16068 |
|
---|
16069 | /*
|
---|
16070 | *
|
---|
16071 | * Instruction Set & Groups: sve_int_bin_pred_arit_2 / sve_int_pred_bin / sve / A64
|
---|
16072 | *
|
---|
16073 | */
|
---|
16074 |
|
---|
16075 | /* MUL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04100000) */
|
---|
16076 | //#define IEM_INSTR_IMPL_A64__mul_z_p_zz(Zdn, Zm, Pg, size)
|
---|
16077 |
|
---|
16078 |
|
---|
16079 | /* SMULH <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04120000) */
|
---|
16080 | //#define IEM_INSTR_IMPL_A64__smulh_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16081 |
|
---|
16082 |
|
---|
16083 | /* UMULH <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04130000) */
|
---|
16084 | //#define IEM_INSTR_IMPL_A64__umulh_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16085 |
|
---|
16086 |
|
---|
16087 |
|
---|
16088 | /*
|
---|
16089 | *
|
---|
16090 | * Instruction Set & Groups: sve_int_bin_pred_div / sve_int_pred_bin / sve / A64
|
---|
16091 | *
|
---|
16092 | */
|
---|
16093 |
|
---|
16094 | /* SDIV <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04140000) */
|
---|
16095 | //#define IEM_INSTR_IMPL_A64__sdiv_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16096 |
|
---|
16097 |
|
---|
16098 | /* SDIVR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04160000) */
|
---|
16099 | //#define IEM_INSTR_IMPL_A64__sdivr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16100 |
|
---|
16101 |
|
---|
16102 | /* UDIV <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04150000) */
|
---|
16103 | //#define IEM_INSTR_IMPL_A64__udiv_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16104 |
|
---|
16105 |
|
---|
16106 | /* UDIVR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04170000) */
|
---|
16107 | //#define IEM_INSTR_IMPL_A64__udivr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16108 |
|
---|
16109 |
|
---|
16110 |
|
---|
16111 | /*
|
---|
16112 | *
|
---|
16113 | * Instruction Set & Groups: sve_int_bin_pred_log / sve_int_pred_bin / sve / A64
|
---|
16114 | *
|
---|
16115 | */
|
---|
16116 |
|
---|
16117 | /* ORR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04180000) */
|
---|
16118 | //#define IEM_INSTR_IMPL_A64__orr_z_p_zz(Zdn, Zm, Pg, size)
|
---|
16119 |
|
---|
16120 |
|
---|
16121 | /* EOR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04190000) */
|
---|
16122 | //#define IEM_INSTR_IMPL_A64__eor_z_p_zz(Zdn, Zm, Pg, size)
|
---|
16123 |
|
---|
16124 |
|
---|
16125 | /* AND <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/041a0000) */
|
---|
16126 | //#define IEM_INSTR_IMPL_A64__and_z_p_zz(Zdn, Zm, Pg, size)
|
---|
16127 |
|
---|
16128 |
|
---|
16129 | /* BIC <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/041b0000) */
|
---|
16130 | //#define IEM_INSTR_IMPL_A64__bic_z_p_zz(Zdn, Zm, Pg, size)
|
---|
16131 |
|
---|
16132 |
|
---|
16133 |
|
---|
16134 | /*
|
---|
16135 | *
|
---|
16136 | * Instruction Set & Groups: sve_int_bin_pred_shift_0 / sve_int_pred_shift / sve / A64
|
---|
16137 | *
|
---|
16138 | */
|
---|
16139 |
|
---|
16140 | /* ASR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, #<const> (ff3fe000/04008000) */
|
---|
16141 | //#define IEM_INSTR_IMPL_A64__asr_z_p_zi(Zdn, imm3, tszl, Pg, U, tszh)
|
---|
16142 |
|
---|
16143 |
|
---|
16144 | /* LSL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, #<const> (ff3fe000/04038000) */
|
---|
16145 | //#define IEM_INSTR_IMPL_A64__lsl_z_p_zi(Zdn, imm3, tszl, Pg, tszh)
|
---|
16146 |
|
---|
16147 |
|
---|
16148 | /* ASRD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, #<const> (ff3fe000/04048000) */
|
---|
16149 | //#define IEM_INSTR_IMPL_A64__asrd_z_p_zi(Zdn, imm3, tszl, Pg, tszh)
|
---|
16150 |
|
---|
16151 |
|
---|
16152 | /* SQSHL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, #<const> (ff3fe000/04068000) */
|
---|
16153 | //#define IEM_INSTR_IMPL_A64__sqshl_z_p_zi(Zdn, imm3, tszl, Pg, U, tszh)
|
---|
16154 |
|
---|
16155 |
|
---|
16156 | /* SRSHR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, #<const> (ff3fe000/040c8000) */
|
---|
16157 | //#define IEM_INSTR_IMPL_A64__srshr_z_p_zi(Zdn, imm3, tszl, Pg, U, tszh)
|
---|
16158 |
|
---|
16159 |
|
---|
16160 | /* SQSHLU <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, #<const> (ff3fe000/040f8000) */
|
---|
16161 | //#define IEM_INSTR_IMPL_A64__sqshlu_z_p_zi(Zdn, imm3, tszl, Pg, tszh)
|
---|
16162 |
|
---|
16163 |
|
---|
16164 | /* LSR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, #<const> (ff3fe000/04018000) */
|
---|
16165 | //#define IEM_INSTR_IMPL_A64__lsr_z_p_zi(Zdn, imm3, tszl, Pg, U, tszh)
|
---|
16166 |
|
---|
16167 |
|
---|
16168 | /* UQSHL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, #<const> (ff3fe000/04078000) */
|
---|
16169 | //#define IEM_INSTR_IMPL_A64__uqshl_z_p_zi(Zdn, imm3, tszl, Pg, U, tszh)
|
---|
16170 |
|
---|
16171 |
|
---|
16172 | /* URSHR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, #<const> (ff3fe000/040d8000) */
|
---|
16173 | //#define IEM_INSTR_IMPL_A64__urshr_z_p_zi(Zdn, imm3, tszl, Pg, U, tszh)
|
---|
16174 |
|
---|
16175 |
|
---|
16176 |
|
---|
16177 | /*
|
---|
16178 | *
|
---|
16179 | * Instruction Set & Groups: sve_int_bin_pred_shift_1 / sve_int_pred_shift / sve / A64
|
---|
16180 | *
|
---|
16181 | */
|
---|
16182 |
|
---|
16183 | /* ASR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04108000) */
|
---|
16184 | //#define IEM_INSTR_IMPL_A64__asr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16185 |
|
---|
16186 |
|
---|
16187 | /* LSL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04138000) */
|
---|
16188 | //#define IEM_INSTR_IMPL_A64__lsl_z_p_zz(Zdn, Zm, Pg, size)
|
---|
16189 |
|
---|
16190 |
|
---|
16191 | /* ASRR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04148000) */
|
---|
16192 | //#define IEM_INSTR_IMPL_A64__asrr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16193 |
|
---|
16194 |
|
---|
16195 | /* LSLR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04178000) */
|
---|
16196 | //#define IEM_INSTR_IMPL_A64__lslr_z_p_zz(Zdn, Zm, Pg, size)
|
---|
16197 |
|
---|
16198 |
|
---|
16199 | /* LSR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04118000) */
|
---|
16200 | //#define IEM_INSTR_IMPL_A64__lsr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16201 |
|
---|
16202 |
|
---|
16203 | /* LSRR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/04158000) */
|
---|
16204 | //#define IEM_INSTR_IMPL_A64__lsrr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
16205 |
|
---|
16206 |
|
---|
16207 |
|
---|
16208 | /*
|
---|
16209 | *
|
---|
16210 | * Instruction Set & Groups: sve_int_bin_pred_shift_2 / sve_int_pred_shift / sve / A64
|
---|
16211 | *
|
---|
16212 | */
|
---|
16213 |
|
---|
16214 | /* ASR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.D (ff3fe000/04188000) */
|
---|
16215 | //#define IEM_INSTR_IMPL_A64__asr_z_p_zw(Zdn, Zm, Pg, U, size)
|
---|
16216 |
|
---|
16217 |
|
---|
16218 | /* LSL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.D (ff3fe000/041b8000) */
|
---|
16219 | //#define IEM_INSTR_IMPL_A64__lsl_z_p_zw(Zdn, Zm, Pg, size)
|
---|
16220 |
|
---|
16221 |
|
---|
16222 | /* LSR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.D (ff3fe000/04198000) */
|
---|
16223 | //#define IEM_INSTR_IMPL_A64__lsr_z_p_zw(Zdn, Zm, Pg, U, size)
|
---|
16224 |
|
---|
16225 |
|
---|
16226 |
|
---|
16227 | /*
|
---|
16228 | *
|
---|
16229 | * Instruction Set & Groups: sve_int_break / sve_pred_gen_c / sve / A64
|
---|
16230 | *
|
---|
16231 | */
|
---|
16232 |
|
---|
16233 | /* BRKA <Pd>.B, <Pg>/<ZM>, <Pn>.B (ffffc200/25104000) */
|
---|
16234 | //#define IEM_INSTR_IMPL_A64__brka_p_p_p(Pd, M, Pn, Pg)
|
---|
16235 |
|
---|
16236 |
|
---|
16237 | /* BRKAS <Pd>.B, <Pg>/Z, <Pn>.B (ffffc210/25504000) */
|
---|
16238 | //#define IEM_INSTR_IMPL_A64__brkas_p_p_p_z(Pd, Pn, Pg)
|
---|
16239 |
|
---|
16240 |
|
---|
16241 | /* BRKB <Pd>.B, <Pg>/<ZM>, <Pn>.B (ffffc200/25904000) */
|
---|
16242 | //#define IEM_INSTR_IMPL_A64__brkb_p_p_p(Pd, M, Pn, Pg)
|
---|
16243 |
|
---|
16244 |
|
---|
16245 | /* BRKBS <Pd>.B, <Pg>/Z, <Pn>.B (ffffc210/25d04000) */
|
---|
16246 | //#define IEM_INSTR_IMPL_A64__brkbs_p_p_p_z(Pd, Pn, Pg)
|
---|
16247 |
|
---|
16248 |
|
---|
16249 |
|
---|
16250 | /*
|
---|
16251 | *
|
---|
16252 | * Instruction Set & Groups: sve_int_brkn / sve_pred_gen_c / sve / A64
|
---|
16253 | *
|
---|
16254 | */
|
---|
16255 |
|
---|
16256 | /* BRKN <Pdm>.B, <Pg>/Z, <Pn>.B, <Pdm>.B (ffffc210/25184000) */
|
---|
16257 | //#define IEM_INSTR_IMPL_A64__brkn_p_p_pp(Pdm, Pn, Pg, S)
|
---|
16258 |
|
---|
16259 |
|
---|
16260 | /* BRKNS <Pdm>.B, <Pg>/Z, <Pn>.B, <Pdm>.B (ffffc210/25584000) */
|
---|
16261 | //#define IEM_INSTR_IMPL_A64__brkns_p_p_pp(Pdm, Pn, Pg, S)
|
---|
16262 |
|
---|
16263 |
|
---|
16264 |
|
---|
16265 | /*
|
---|
16266 | *
|
---|
16267 | * Instruction Set & Groups: sve_int_brkp / sve_pred_gen_b / sve / A64
|
---|
16268 | *
|
---|
16269 | */
|
---|
16270 |
|
---|
16271 | /* BRKPA <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/2500c000) */
|
---|
16272 | //#define IEM_INSTR_IMPL_A64__brkpa_p_p_pp(Pd, B, Pn, Pg, Pm, S)
|
---|
16273 |
|
---|
16274 |
|
---|
16275 | /* BRKPAS <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/2540c000) */
|
---|
16276 | //#define IEM_INSTR_IMPL_A64__brkpas_p_p_pp(Pd, B, Pn, Pg, Pm, S)
|
---|
16277 |
|
---|
16278 |
|
---|
16279 | /* BRKPB <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/2500c010) */
|
---|
16280 | //#define IEM_INSTR_IMPL_A64__brkpb_p_p_pp(Pd, B, Pn, Pg, Pm, S)
|
---|
16281 |
|
---|
16282 |
|
---|
16283 | /* BRKPBS <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/2540c010) */
|
---|
16284 | //#define IEM_INSTR_IMPL_A64__brkpbs_p_p_pp(Pd, B, Pn, Pg, Pm, S)
|
---|
16285 |
|
---|
16286 |
|
---|
16287 |
|
---|
16288 | /*
|
---|
16289 | *
|
---|
16290 | * Instruction Set & Groups: sve_int_cmp_0 / sve_cmpvec / sve / A64
|
---|
16291 | *
|
---|
16292 | */
|
---|
16293 |
|
---|
16294 | /* CMPHS <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/24000000) */
|
---|
16295 | //#define IEM_INSTR_IMPL_A64__cmphs_p_p_zz(Pd, ne, Zn, Pg, Zm, size)
|
---|
16296 |
|
---|
16297 |
|
---|
16298 | /* CMPGE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/24008000) */
|
---|
16299 | //#define IEM_INSTR_IMPL_A64__cmpge_p_p_zz(Pd, ne, Zn, Pg, Zm, size)
|
---|
16300 |
|
---|
16301 |
|
---|
16302 | /* CMPEQ <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.D (ff20e010/24002000) */
|
---|
16303 | //#define IEM_INSTR_IMPL_A64__cmpeq_p_p_zw(Pd, ne, Zn, Pg, Zm, size)
|
---|
16304 |
|
---|
16305 |
|
---|
16306 | /* CMPEQ <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/2400a000) */
|
---|
16307 | //#define IEM_INSTR_IMPL_A64__cmpeq_p_p_zz(Pd, ne, Zn, Pg, Zm, size)
|
---|
16308 |
|
---|
16309 |
|
---|
16310 | /* CMPHI <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/24000010) */
|
---|
16311 | //#define IEM_INSTR_IMPL_A64__cmphi_p_p_zz(Pd, ne, Zn, Pg, Zm, size)
|
---|
16312 |
|
---|
16313 |
|
---|
16314 | /* CMPGT <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/24008010) */
|
---|
16315 | //#define IEM_INSTR_IMPL_A64__cmpgt_p_p_zz(Pd, ne, Zn, Pg, Zm, size)
|
---|
16316 |
|
---|
16317 |
|
---|
16318 | /* CMPNE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.D (ff20e010/24002010) */
|
---|
16319 | //#define IEM_INSTR_IMPL_A64__cmpne_p_p_zw(Pd, ne, Zn, Pg, Zm, size)
|
---|
16320 |
|
---|
16321 |
|
---|
16322 | /* CMPNE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/2400a010) */
|
---|
16323 | //#define IEM_INSTR_IMPL_A64__cmpne_p_p_zz(Pd, ne, Zn, Pg, Zm, size)
|
---|
16324 |
|
---|
16325 |
|
---|
16326 |
|
---|
16327 | /*
|
---|
16328 | *
|
---|
16329 | * Instruction Set & Groups: sve_int_cmp_1 / sve_cmpvec / sve / A64
|
---|
16330 | *
|
---|
16331 | */
|
---|
16332 |
|
---|
16333 | /* CMPGE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.D (ff20e010/24004000) */
|
---|
16334 | //#define IEM_INSTR_IMPL_A64__cmpge_p_p_zw(Pd, ne, Zn, Pg, lt, Zm, size)
|
---|
16335 |
|
---|
16336 |
|
---|
16337 | /* CMPHS <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.D (ff20e010/2400c000) */
|
---|
16338 | //#define IEM_INSTR_IMPL_A64__cmphs_p_p_zw(Pd, ne, Zn, Pg, lt, Zm, size)
|
---|
16339 |
|
---|
16340 |
|
---|
16341 | /* CMPGT <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.D (ff20e010/24004010) */
|
---|
16342 | //#define IEM_INSTR_IMPL_A64__cmpgt_p_p_zw(Pd, ne, Zn, Pg, lt, Zm, size)
|
---|
16343 |
|
---|
16344 |
|
---|
16345 | /* CMPHI <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.D (ff20e010/2400c010) */
|
---|
16346 | //#define IEM_INSTR_IMPL_A64__cmphi_p_p_zw(Pd, ne, Zn, Pg, lt, Zm, size)
|
---|
16347 |
|
---|
16348 |
|
---|
16349 | /* CMPLT <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.D (ff20e010/24006000) */
|
---|
16350 | //#define IEM_INSTR_IMPL_A64__cmplt_p_p_zw(Pd, ne, Zn, Pg, lt, Zm, size)
|
---|
16351 |
|
---|
16352 |
|
---|
16353 | /* CMPLO <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.D (ff20e010/2400e000) */
|
---|
16354 | //#define IEM_INSTR_IMPL_A64__cmplo_p_p_zw(Pd, ne, Zn, Pg, lt, Zm, size)
|
---|
16355 |
|
---|
16356 |
|
---|
16357 | /* CMPLE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.D (ff20e010/24006010) */
|
---|
16358 | //#define IEM_INSTR_IMPL_A64__cmple_p_p_zw(Pd, ne, Zn, Pg, lt, Zm, size)
|
---|
16359 |
|
---|
16360 |
|
---|
16361 | /* CMPLS <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.D (ff20e010/2400e010) */
|
---|
16362 | //#define IEM_INSTR_IMPL_A64__cmpls_p_p_zw(Pd, ne, Zn, Pg, lt, Zm, size)
|
---|
16363 |
|
---|
16364 |
|
---|
16365 |
|
---|
16366 | /*
|
---|
16367 | *
|
---|
16368 | * Instruction Set & Groups: sve_int_count / sve_countelt / sve / A64
|
---|
16369 | *
|
---|
16370 | */
|
---|
16371 |
|
---|
16372 | /* CNTB <Xd>{, <pattern>{, MUL #<imm>}} (fff0fc00/0420e000) */
|
---|
16373 | //#define IEM_INSTR_IMPL_A64__cntb_r_s(Rd, pattern, imm4, size)
|
---|
16374 |
|
---|
16375 |
|
---|
16376 | /* CNTH <Xd>{, <pattern>{, MUL #<imm>}} (fff0fc00/0460e000) */
|
---|
16377 | //#define IEM_INSTR_IMPL_A64__cnth_r_s(Rd, pattern, imm4, size)
|
---|
16378 |
|
---|
16379 |
|
---|
16380 | /* CNTW <Xd>{, <pattern>{, MUL #<imm>}} (fff0fc00/04a0e000) */
|
---|
16381 | //#define IEM_INSTR_IMPL_A64__cntw_r_s(Rd, pattern, imm4, size)
|
---|
16382 |
|
---|
16383 |
|
---|
16384 | /* CNTD <Xd>{, <pattern>{, MUL #<imm>}} (fff0fc00/04e0e000) */
|
---|
16385 | //#define IEM_INSTR_IMPL_A64__cntd_r_s(Rd, pattern, imm4, size)
|
---|
16386 |
|
---|
16387 |
|
---|
16388 |
|
---|
16389 | /*
|
---|
16390 | *
|
---|
16391 | * Instruction Set & Groups: sve_int_count_r / sve_pred_count_b / sve / A64
|
---|
16392 | *
|
---|
16393 | */
|
---|
16394 |
|
---|
16395 | /* INCP <Xdn>, <Pm>.<T> (ff3ffe00/252c8800) */
|
---|
16396 | //#define IEM_INSTR_IMPL_A64__incp_r_p_r(Rdn, Pm, size)
|
---|
16397 |
|
---|
16398 |
|
---|
16399 | /* DECP <Xdn>, <Pm>.<T> (ff3ffe00/252d8800) */
|
---|
16400 | //#define IEM_INSTR_IMPL_A64__decp_r_p_r(Rdn, Pm, size)
|
---|
16401 |
|
---|
16402 |
|
---|
16403 |
|
---|
16404 | /*
|
---|
16405 | *
|
---|
16406 | * Instruction Set & Groups: sve_int_count_r_sat / sve_pred_count_b / sve / A64
|
---|
16407 | *
|
---|
16408 | */
|
---|
16409 |
|
---|
16410 | /* SQINCP <Xdn>, <Pm>.<T>, <Wdn> (ff3ffe00/25288800) */
|
---|
16411 | //#define IEM_INSTR_IMPL_A64__sqincp_r_p_r_sx(Rdn, Pm, size)
|
---|
16412 |
|
---|
16413 |
|
---|
16414 | /* UQINCP <Wdn>, <Pm>.<T> (ff3ffe00/25298800) */
|
---|
16415 | //#define IEM_INSTR_IMPL_A64__uqincp_r_p_r_uw(Rdn, Pm, size)
|
---|
16416 |
|
---|
16417 |
|
---|
16418 | /* SQDECP <Xdn>, <Pm>.<T>, <Wdn> (ff3ffe00/252a8800) */
|
---|
16419 | //#define IEM_INSTR_IMPL_A64__sqdecp_r_p_r_sx(Rdn, Pm, size)
|
---|
16420 |
|
---|
16421 |
|
---|
16422 | /* UQDECP <Wdn>, <Pm>.<T> (ff3ffe00/252b8800) */
|
---|
16423 | //#define IEM_INSTR_IMPL_A64__uqdecp_r_p_r_uw(Rdn, Pm, size)
|
---|
16424 |
|
---|
16425 |
|
---|
16426 | /* SQINCP <Xdn>, <Pm>.<T> (ff3ffe00/25288c00) */
|
---|
16427 | //#define IEM_INSTR_IMPL_A64__sqincp_r_p_r_x(Rdn, Pm, U, size)
|
---|
16428 |
|
---|
16429 |
|
---|
16430 | /* SQDECP <Xdn>, <Pm>.<T> (ff3ffe00/252a8c00) */
|
---|
16431 | //#define IEM_INSTR_IMPL_A64__sqdecp_r_p_r_x(Rdn, Pm, U, size)
|
---|
16432 |
|
---|
16433 |
|
---|
16434 | /* UQINCP <Xdn>, <Pm>.<T> (ff3ffe00/25298c00) */
|
---|
16435 | //#define IEM_INSTR_IMPL_A64__uqincp_r_p_r_x(Rdn, Pm, U, size)
|
---|
16436 |
|
---|
16437 |
|
---|
16438 | /* UQDECP <Xdn>, <Pm>.<T> (ff3ffe00/252b8c00) */
|
---|
16439 | //#define IEM_INSTR_IMPL_A64__uqdecp_r_p_r_x(Rdn, Pm, U, size)
|
---|
16440 |
|
---|
16441 |
|
---|
16442 |
|
---|
16443 | /*
|
---|
16444 | *
|
---|
16445 | * Instruction Set & Groups: sve_int_count_v / sve_pred_count_b / sve / A64
|
---|
16446 | *
|
---|
16447 | */
|
---|
16448 |
|
---|
16449 | /* INCP <Zdn>.<T>, <Pm>.<T> (ff3ffe00/252c8000) */
|
---|
16450 | //#define IEM_INSTR_IMPL_A64__incp_z_p_z(Zdn, Pm, size)
|
---|
16451 |
|
---|
16452 |
|
---|
16453 | /* DECP <Zdn>.<T>, <Pm>.<T> (ff3ffe00/252d8000) */
|
---|
16454 | //#define IEM_INSTR_IMPL_A64__decp_z_p_z(Zdn, Pm, size)
|
---|
16455 |
|
---|
16456 |
|
---|
16457 |
|
---|
16458 | /*
|
---|
16459 | *
|
---|
16460 | * Instruction Set & Groups: sve_int_count_v_sat / sve_pred_count_b / sve / A64
|
---|
16461 | *
|
---|
16462 | */
|
---|
16463 |
|
---|
16464 | /* SQINCP <Zdn>.<T>, <Pm>.<T> (ff3ffe00/25288000) */
|
---|
16465 | //#define IEM_INSTR_IMPL_A64__sqincp_z_p_z(Zdn, Pm, U, size)
|
---|
16466 |
|
---|
16467 |
|
---|
16468 | /* SQDECP <Zdn>.<T>, <Pm>.<T> (ff3ffe00/252a8000) */
|
---|
16469 | //#define IEM_INSTR_IMPL_A64__sqdecp_z_p_z(Zdn, Pm, U, size)
|
---|
16470 |
|
---|
16471 |
|
---|
16472 | /* UQINCP <Zdn>.<T>, <Pm>.<T> (ff3ffe00/25298000) */
|
---|
16473 | //#define IEM_INSTR_IMPL_A64__uqincp_z_p_z(Zdn, Pm, U, size)
|
---|
16474 |
|
---|
16475 |
|
---|
16476 | /* UQDECP <Zdn>.<T>, <Pm>.<T> (ff3ffe00/252b8000) */
|
---|
16477 | //#define IEM_INSTR_IMPL_A64__uqdecp_z_p_z(Zdn, Pm, U, size)
|
---|
16478 |
|
---|
16479 |
|
---|
16480 |
|
---|
16481 | /*
|
---|
16482 | *
|
---|
16483 | * Instruction Set & Groups: sve_int_countvlv0 / sve_countelt / sve / A64
|
---|
16484 | *
|
---|
16485 | */
|
---|
16486 |
|
---|
16487 | /* SQINCH <Zdn>.H{, <pattern>{, MUL #<imm>}} (fff0fc00/0460c000) */
|
---|
16488 | //#define IEM_INSTR_IMPL_A64__sqinch_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16489 |
|
---|
16490 |
|
---|
16491 | /* SQDECH <Zdn>.H{, <pattern>{, MUL #<imm>}} (fff0fc00/0460c800) */
|
---|
16492 | //#define IEM_INSTR_IMPL_A64__sqdech_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16493 |
|
---|
16494 |
|
---|
16495 | /* UQINCH <Zdn>.H{, <pattern>{, MUL #<imm>}} (fff0fc00/0460c400) */
|
---|
16496 | //#define IEM_INSTR_IMPL_A64__uqinch_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16497 |
|
---|
16498 |
|
---|
16499 | /* UQDECH <Zdn>.H{, <pattern>{, MUL #<imm>}} (fff0fc00/0460cc00) */
|
---|
16500 | //#define IEM_INSTR_IMPL_A64__uqdech_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16501 |
|
---|
16502 |
|
---|
16503 | /* SQINCW <Zdn>.S{, <pattern>{, MUL #<imm>}} (fff0fc00/04a0c000) */
|
---|
16504 | //#define IEM_INSTR_IMPL_A64__sqincw_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16505 |
|
---|
16506 |
|
---|
16507 | /* SQDECW <Zdn>.S{, <pattern>{, MUL #<imm>}} (fff0fc00/04a0c800) */
|
---|
16508 | //#define IEM_INSTR_IMPL_A64__sqdecw_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16509 |
|
---|
16510 |
|
---|
16511 | /* UQINCW <Zdn>.S{, <pattern>{, MUL #<imm>}} (fff0fc00/04a0c400) */
|
---|
16512 | //#define IEM_INSTR_IMPL_A64__uqincw_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16513 |
|
---|
16514 |
|
---|
16515 | /* UQDECW <Zdn>.S{, <pattern>{, MUL #<imm>}} (fff0fc00/04a0cc00) */
|
---|
16516 | //#define IEM_INSTR_IMPL_A64__uqdecw_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16517 |
|
---|
16518 |
|
---|
16519 | /* SQINCD <Zdn>.D{, <pattern>{, MUL #<imm>}} (fff0fc00/04e0c000) */
|
---|
16520 | //#define IEM_INSTR_IMPL_A64__sqincd_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16521 |
|
---|
16522 |
|
---|
16523 | /* SQDECD <Zdn>.D{, <pattern>{, MUL #<imm>}} (fff0fc00/04e0c800) */
|
---|
16524 | //#define IEM_INSTR_IMPL_A64__sqdecd_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16525 |
|
---|
16526 |
|
---|
16527 | /* UQINCD <Zdn>.D{, <pattern>{, MUL #<imm>}} (fff0fc00/04e0c400) */
|
---|
16528 | //#define IEM_INSTR_IMPL_A64__uqincd_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16529 |
|
---|
16530 |
|
---|
16531 | /* UQDECD <Zdn>.D{, <pattern>{, MUL #<imm>}} (fff0fc00/04e0cc00) */
|
---|
16532 | //#define IEM_INSTR_IMPL_A64__uqdecd_z_zs(Zdn, pattern, U, imm4, size)
|
---|
16533 |
|
---|
16534 |
|
---|
16535 |
|
---|
16536 | /*
|
---|
16537 | *
|
---|
16538 | * Instruction Set & Groups: sve_int_countvlv1 / sve_countelt / sve / A64
|
---|
16539 | *
|
---|
16540 | */
|
---|
16541 |
|
---|
16542 | /* INCH <Zdn>.H{, <pattern>{, MUL #<imm>}} (fff0fc00/0470c000) */
|
---|
16543 | //#define IEM_INSTR_IMPL_A64__inch_z_zs(Zdn, pattern, imm4, size)
|
---|
16544 |
|
---|
16545 |
|
---|
16546 | /* DECH <Zdn>.H{, <pattern>{, MUL #<imm>}} (fff0fc00/0470c400) */
|
---|
16547 | //#define IEM_INSTR_IMPL_A64__dech_z_zs(Zdn, pattern, imm4, size)
|
---|
16548 |
|
---|
16549 |
|
---|
16550 | /* INCW <Zdn>.S{, <pattern>{, MUL #<imm>}} (fff0fc00/04b0c000) */
|
---|
16551 | //#define IEM_INSTR_IMPL_A64__incw_z_zs(Zdn, pattern, imm4, size)
|
---|
16552 |
|
---|
16553 |
|
---|
16554 | /* DECW <Zdn>.S{, <pattern>{, MUL #<imm>}} (fff0fc00/04b0c400) */
|
---|
16555 | //#define IEM_INSTR_IMPL_A64__decw_z_zs(Zdn, pattern, imm4, size)
|
---|
16556 |
|
---|
16557 |
|
---|
16558 | /* INCD <Zdn>.D{, <pattern>{, MUL #<imm>}} (fff0fc00/04f0c000) */
|
---|
16559 | //#define IEM_INSTR_IMPL_A64__incd_z_zs(Zdn, pattern, imm4, size)
|
---|
16560 |
|
---|
16561 |
|
---|
16562 | /* DECD <Zdn>.D{, <pattern>{, MUL #<imm>}} (fff0fc00/04f0c400) */
|
---|
16563 | //#define IEM_INSTR_IMPL_A64__decd_z_zs(Zdn, pattern, imm4, size)
|
---|
16564 |
|
---|
16565 |
|
---|
16566 |
|
---|
16567 | /*
|
---|
16568 | *
|
---|
16569 | * Instruction Set & Groups: sve_int_cterm / sve_cmpgpr / sve / A64
|
---|
16570 | *
|
---|
16571 | */
|
---|
16572 |
|
---|
16573 | /* CTERMEQ <R><n>, <R><m> (ffa0fc1f/25a02000) */
|
---|
16574 | //#define IEM_INSTR_IMPL_A64__ctermeq_rr(Rn, Rm, sz)
|
---|
16575 |
|
---|
16576 |
|
---|
16577 | /* CTERMNE <R><n>, <R><m> (ffa0fc1f/25a02010) */
|
---|
16578 | //#define IEM_INSTR_IMPL_A64__ctermne_rr(Rn, Rm, sz)
|
---|
16579 |
|
---|
16580 |
|
---|
16581 |
|
---|
16582 | /*
|
---|
16583 | *
|
---|
16584 | * Instruction Set & Groups: sve_int_ctr_to_mask / sve_while_pn / sve / A64
|
---|
16585 | *
|
---|
16586 | */
|
---|
16587 |
|
---|
16588 | /* PEXT <Pd>.<T>, <PNn>[<imm>] (ff3ffc10/25207010) */
|
---|
16589 | //#define IEM_INSTR_IMPL_A64__pext_pn_rr(Pd, PNn, imm2, size)
|
---|
16590 |
|
---|
16591 |
|
---|
16592 | /* PEXT { <Pd1>.<T>, <Pd2>.<T> }, <PNn>[<imm>] (ff3ffe10/25207410) */
|
---|
16593 | //#define IEM_INSTR_IMPL_A64__pext_pp_rr(Pd, PNn, i1, size)
|
---|
16594 |
|
---|
16595 |
|
---|
16596 |
|
---|
16597 | /*
|
---|
16598 | *
|
---|
16599 | * Instruction Set & Groups: sve_int_dup_fpimm / sve_wideimm_unpred / sve / A64
|
---|
16600 | *
|
---|
16601 | */
|
---|
16602 |
|
---|
16603 | /* FDUP <Zd>.<T>, #<const> (ff3fe000/2539c000) */
|
---|
16604 | //#define IEM_INSTR_IMPL_A64__fdup_z_i(Zd, imm8, size)
|
---|
16605 |
|
---|
16606 |
|
---|
16607 |
|
---|
16608 | /*
|
---|
16609 | *
|
---|
16610 | * Instruction Set & Groups: sve_int_dup_fpimm_pred / sve_wideimm_pred / sve / A64
|
---|
16611 | *
|
---|
16612 | */
|
---|
16613 |
|
---|
16614 | /* FCPY <Zd>.<T>, <Pg>/M, #<const> (ff30e000/0510c000) */
|
---|
16615 | //#define IEM_INSTR_IMPL_A64__fcpy_z_p_i(Zd, imm8, Pg, size)
|
---|
16616 |
|
---|
16617 |
|
---|
16618 |
|
---|
16619 | /*
|
---|
16620 | *
|
---|
16621 | * Instruction Set & Groups: sve_int_dup_imm / sve_wideimm_unpred / sve / A64
|
---|
16622 | *
|
---|
16623 | */
|
---|
16624 |
|
---|
16625 | /* DUP <Zd>.<T>, #<imm>{, <shift>} (ff3fc000/2538c000) */
|
---|
16626 | //#define IEM_INSTR_IMPL_A64__dup_z_i(Zd, imm8, sh, size)
|
---|
16627 |
|
---|
16628 |
|
---|
16629 |
|
---|
16630 | /*
|
---|
16631 | *
|
---|
16632 | * Instruction Set & Groups: sve_int_dup_imm_pred / sve_wideimm_pred / sve / A64
|
---|
16633 | *
|
---|
16634 | */
|
---|
16635 |
|
---|
16636 | /* CPY <Zd>.<T>, <Pg>/Z, #<imm>{, <shift>} (ff30c000/05100000) */
|
---|
16637 | //#define IEM_INSTR_IMPL_A64__cpy_z_o_i(Zd, imm8, sh, Pg, size)
|
---|
16638 |
|
---|
16639 |
|
---|
16640 | /* CPY <Zd>.<T>, <Pg>/M, #<imm>{, <shift>} (ff30c000/05104000) */
|
---|
16641 | //#define IEM_INSTR_IMPL_A64__cpy_z_p_i(Zd, imm8, sh, Pg, size)
|
---|
16642 |
|
---|
16643 |
|
---|
16644 |
|
---|
16645 | /*
|
---|
16646 | *
|
---|
16647 | * Instruction Set & Groups: sve_int_dup_mask_imm / sve_maskimm / sve / A64
|
---|
16648 | *
|
---|
16649 | */
|
---|
16650 |
|
---|
16651 | /* DUPM <Zd>.<T>, #<const> (fffc0000/05c00000) */
|
---|
16652 | //#define IEM_INSTR_IMPL_A64__dupm_z_i(Zd, imm13)
|
---|
16653 |
|
---|
16654 |
|
---|
16655 |
|
---|
16656 | /*
|
---|
16657 | *
|
---|
16658 | * Instruction Set & Groups: sve_int_index_ii / sve_index / sve / A64
|
---|
16659 | *
|
---|
16660 | */
|
---|
16661 |
|
---|
16662 | /* INDEX <Zd>.<T>, #<imm1>, #<imm2> (ff20fc00/04204000) */
|
---|
16663 | //#define IEM_INSTR_IMPL_A64__index_z_ii(Zd, imm5, imm5b, size)
|
---|
16664 |
|
---|
16665 |
|
---|
16666 |
|
---|
16667 | /*
|
---|
16668 | *
|
---|
16669 | * Instruction Set & Groups: sve_int_index_ir / sve_index / sve / A64
|
---|
16670 | *
|
---|
16671 | */
|
---|
16672 |
|
---|
16673 | /* INDEX <Zd>.<T>, #<imm>, <R><m> (ff20fc00/04204800) */
|
---|
16674 | //#define IEM_INSTR_IMPL_A64__index_z_ir(Zd, imm5, Rm, size)
|
---|
16675 |
|
---|
16676 |
|
---|
16677 |
|
---|
16678 | /*
|
---|
16679 | *
|
---|
16680 | * Instruction Set & Groups: sve_int_index_ri / sve_index / sve / A64
|
---|
16681 | *
|
---|
16682 | */
|
---|
16683 |
|
---|
16684 | /* INDEX <Zd>.<T>, <R><n>, #<imm> (ff20fc00/04204400) */
|
---|
16685 | //#define IEM_INSTR_IMPL_A64__index_z_ri(Zd, Rn, imm5, size)
|
---|
16686 |
|
---|
16687 |
|
---|
16688 |
|
---|
16689 | /*
|
---|
16690 | *
|
---|
16691 | * Instruction Set & Groups: sve_int_index_rr / sve_index / sve / A64
|
---|
16692 | *
|
---|
16693 | */
|
---|
16694 |
|
---|
16695 | /* INDEX <Zd>.<T>, <R><n>, <R><m> (ff20fc00/04204c00) */
|
---|
16696 | //#define IEM_INSTR_IMPL_A64__index_z_rr(Zd, Rn, Rm, size)
|
---|
16697 |
|
---|
16698 |
|
---|
16699 |
|
---|
16700 | /*
|
---|
16701 | *
|
---|
16702 | * Instruction Set & Groups: sve_int_log_imm / sve_maskimm / sve / A64
|
---|
16703 | *
|
---|
16704 | */
|
---|
16705 |
|
---|
16706 | /* ORR <Zdn>.<T>, <Zdn>.<T>, #<const> (fffc0000/05000000) */
|
---|
16707 | //#define IEM_INSTR_IMPL_A64__orr_z_zi(Zdn, imm13)
|
---|
16708 |
|
---|
16709 |
|
---|
16710 | /* EOR <Zdn>.<T>, <Zdn>.<T>, #<const> (fffc0000/05400000) */
|
---|
16711 | //#define IEM_INSTR_IMPL_A64__eor_z_zi(Zdn, imm13)
|
---|
16712 |
|
---|
16713 |
|
---|
16714 | /* AND <Zdn>.<T>, <Zdn>.<T>, #<const> (fffc0000/05800000) */
|
---|
16715 | //#define IEM_INSTR_IMPL_A64__and_z_zi(Zdn, imm13)
|
---|
16716 |
|
---|
16717 |
|
---|
16718 |
|
---|
16719 | /*
|
---|
16720 | *
|
---|
16721 | * Instruction Set & Groups: sve_int_mladdsub_vvv_pred / sve_int_muladd_pred / sve / A64
|
---|
16722 | *
|
---|
16723 | */
|
---|
16724 |
|
---|
16725 | /* MAD <Zdn>.<T>, <Pg>/M, <Zm>.<T>, <Za>.<T> (ff20e000/0400c000) */
|
---|
16726 | //#define IEM_INSTR_IMPL_A64__mad_z_p_zzz(Zdn, Za, Pg, Zm, size)
|
---|
16727 |
|
---|
16728 |
|
---|
16729 | /* MSB <Zdn>.<T>, <Pg>/M, <Zm>.<T>, <Za>.<T> (ff20e000/0400e000) */
|
---|
16730 | //#define IEM_INSTR_IMPL_A64__msb_z_p_zzz(Zdn, Za, Pg, Zm, size)
|
---|
16731 |
|
---|
16732 |
|
---|
16733 |
|
---|
16734 | /*
|
---|
16735 | *
|
---|
16736 | * Instruction Set & Groups: sve_int_mlas_vvv_pred / sve_int_muladd_pred / sve / A64
|
---|
16737 | *
|
---|
16738 | */
|
---|
16739 |
|
---|
16740 | /* MLA <Zda>.<T>, <Pg>/M, <Zn>.<T>, <Zm>.<T> (ff20e000/04004000) */
|
---|
16741 | //#define IEM_INSTR_IMPL_A64__mla_z_p_zzz(Zda, Zn, Pg, Zm, size)
|
---|
16742 |
|
---|
16743 |
|
---|
16744 | /* MLS <Zda>.<T>, <Pg>/M, <Zn>.<T>, <Zm>.<T> (ff20e000/04006000) */
|
---|
16745 | //#define IEM_INSTR_IMPL_A64__mls_z_p_zzz(Zda, Zn, Pg, Zm, size)
|
---|
16746 |
|
---|
16747 |
|
---|
16748 |
|
---|
16749 | /*
|
---|
16750 | *
|
---|
16751 | * Instruction Set & Groups: sve_int_mov_p2v / sve_perm_unpred_d / sve / A64
|
---|
16752 | *
|
---|
16753 | */
|
---|
16754 |
|
---|
16755 | /* PMOV <Zd>, <Pn>.B (fffffe00/052b3800) */
|
---|
16756 | //#define IEM_INSTR_IMPL_A64__pmov_z_pi_b(Zd, Pn)
|
---|
16757 |
|
---|
16758 |
|
---|
16759 | /* PMOV <Zd>{[<imm>]}, <Pn>.H (fffdfe00/052d3800) */
|
---|
16760 | //#define IEM_INSTR_IMPL_A64__pmov_z_pi_h(Zd, Pn, i1)
|
---|
16761 |
|
---|
16762 |
|
---|
16763 | /* PMOV <Zd>{[<imm>]}, <Pn>.S (fff9fe00/05693800) */
|
---|
16764 | //#define IEM_INSTR_IMPL_A64__pmov_z_pi_s(Zd, Pn, i2)
|
---|
16765 |
|
---|
16766 |
|
---|
16767 | /* PMOV <Zd>{[<imm>]}, <Pn>.D (ffb9fe00/05a93800) */
|
---|
16768 | //#define IEM_INSTR_IMPL_A64__pmov_z_pi_d(Zd, Pn, i3l, i3h)
|
---|
16769 |
|
---|
16770 |
|
---|
16771 |
|
---|
16772 | /*
|
---|
16773 | *
|
---|
16774 | * Instruction Set & Groups: sve_int_mov_v2p / sve_perm_unpred_d / sve / A64
|
---|
16775 | *
|
---|
16776 | */
|
---|
16777 |
|
---|
16778 | /* PMOV <Pd>.B, <Zn> (fffffc10/052a3800) */
|
---|
16779 | //#define IEM_INSTR_IMPL_A64__pmov_p_zi_b(Pd, Zn)
|
---|
16780 |
|
---|
16781 |
|
---|
16782 | /* PMOV <Pd>.H, <Zn>{[<imm>]} (fffdfc10/052c3800) */
|
---|
16783 | //#define IEM_INSTR_IMPL_A64__pmov_p_zi_h(Pd, Zn, i1)
|
---|
16784 |
|
---|
16785 |
|
---|
16786 | /* PMOV <Pd>.S, <Zn>{[<imm>]} (fff9fc10/05683800) */
|
---|
16787 | //#define IEM_INSTR_IMPL_A64__pmov_p_zi_s(Pd, Zn, i2)
|
---|
16788 |
|
---|
16789 |
|
---|
16790 | /* PMOV <Pd>.D, <Zn>{[<imm>]} (ffb9fc10/05a83800) */
|
---|
16791 | //#define IEM_INSTR_IMPL_A64__pmov_p_zi_d(Pd, Zn, i3l, i3h)
|
---|
16792 |
|
---|
16793 |
|
---|
16794 |
|
---|
16795 | /*
|
---|
16796 | *
|
---|
16797 | * Instruction Set & Groups: sve_int_movprfx_pred / sve_int_pred_red / sve / A64
|
---|
16798 | *
|
---|
16799 | */
|
---|
16800 |
|
---|
16801 | /* MOVPRFX <Zd>.<T>, <Pg>/<ZM>, <Zn>.<T> (ff3ee000/04102000) */
|
---|
16802 | //#define IEM_INSTR_IMPL_A64__movprfx_z_p_z(Zd, Zn, Pg, M, size)
|
---|
16803 |
|
---|
16804 |
|
---|
16805 |
|
---|
16806 | /*
|
---|
16807 | *
|
---|
16808 | * Instruction Set & Groups: sve_int_mul_b / sve_int_unpred_arit_b / sve / A64
|
---|
16809 | *
|
---|
16810 | */
|
---|
16811 |
|
---|
16812 | /* MUL <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/04206000) */
|
---|
16813 | //#define IEM_INSTR_IMPL_A64__mul_z_zz(Zd, Zn, Zm, size)
|
---|
16814 |
|
---|
16815 |
|
---|
16816 | /* PMUL <Zd>.B, <Zn>.B, <Zm>.B (ffe0fc00/04206400) */
|
---|
16817 | //#define IEM_INSTR_IMPL_A64__pmul_z_zz(Zd, Zn, Zm)
|
---|
16818 |
|
---|
16819 |
|
---|
16820 | /* SMULH <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/04206800) */
|
---|
16821 | //#define IEM_INSTR_IMPL_A64__smulh_z_zz(Zd, Zn, U, Zm, size)
|
---|
16822 |
|
---|
16823 |
|
---|
16824 | /* UMULH <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/04206c00) */
|
---|
16825 | //#define IEM_INSTR_IMPL_A64__umulh_z_zz(Zd, Zn, U, Zm, size)
|
---|
16826 |
|
---|
16827 |
|
---|
16828 |
|
---|
16829 | /*
|
---|
16830 | *
|
---|
16831 | * Instruction Set & Groups: sve_int_pcount_pn / sve_pred_count_a / sve / A64
|
---|
16832 | *
|
---|
16833 | */
|
---|
16834 |
|
---|
16835 | /* CNTP <Xd>, <PNn>.<T>, <vl> (ff3ffa00/25208200) */
|
---|
16836 | //#define IEM_INSTR_IMPL_A64__cntp_r_pn(Rd, PNn, vl, size)
|
---|
16837 |
|
---|
16838 |
|
---|
16839 |
|
---|
16840 | /*
|
---|
16841 | *
|
---|
16842 | * Instruction Set & Groups: sve_int_pcount_pred / sve_pred_count_a / sve / A64
|
---|
16843 | *
|
---|
16844 | */
|
---|
16845 |
|
---|
16846 | /* CNTP <Xd>, <Pg>, <Pn>.<T> (ff3fc200/25208000) */
|
---|
16847 | //#define IEM_INSTR_IMPL_A64__cntp_r_p_p(Rd, Pn, Pg, size)
|
---|
16848 |
|
---|
16849 |
|
---|
16850 | /* FIRSTP <Xd>, <Pg>, <Pn>.<T> (ff3fc200/25218000) */
|
---|
16851 | //#define IEM_INSTR_IMPL_A64__firstp_r_p_p(Rd, Pn, Pg, size)
|
---|
16852 |
|
---|
16853 |
|
---|
16854 | /* LASTP <Xd>, <Pg>, <Pn>.<T> (ff3fc200/25228000) */
|
---|
16855 | //#define IEM_INSTR_IMPL_A64__lastp_r_p_p(Rd, Pn, Pg, size)
|
---|
16856 |
|
---|
16857 |
|
---|
16858 |
|
---|
16859 | /*
|
---|
16860 | *
|
---|
16861 | * Instruction Set & Groups: sve_int_perm_bin_long_perm_zz / sve_perm_inter_long / sve / A64
|
---|
16862 | *
|
---|
16863 | */
|
---|
16864 |
|
---|
16865 | /* ZIP1 <Zd>.Q, <Zn>.Q, <Zm>.Q (ffe0fc00/05a00000) */
|
---|
16866 | //#define IEM_INSTR_IMPL_A64__zip1_z_zz_q(Zd, Zn, H, Zm)
|
---|
16867 |
|
---|
16868 |
|
---|
16869 | /* UZP1 <Zd>.Q, <Zn>.Q, <Zm>.Q (ffe0fc00/05a00800) */
|
---|
16870 | //#define IEM_INSTR_IMPL_A64__uzp1_z_zz_q(Zd, Zn, H, Zm)
|
---|
16871 |
|
---|
16872 |
|
---|
16873 | /* TRN1 <Zd>.Q, <Zn>.Q, <Zm>.Q (ffe0fc00/05a01800) */
|
---|
16874 | //#define IEM_INSTR_IMPL_A64__trn1_z_zz_q(Zd, Zn, H, Zm)
|
---|
16875 |
|
---|
16876 |
|
---|
16877 | /* ZIP2 <Zd>.Q, <Zn>.Q, <Zm>.Q (ffe0fc00/05a00400) */
|
---|
16878 | //#define IEM_INSTR_IMPL_A64__zip2_z_zz_q(Zd, Zn, H, Zm)
|
---|
16879 |
|
---|
16880 |
|
---|
16881 | /* UZP2 <Zd>.Q, <Zn>.Q, <Zm>.Q (ffe0fc00/05a00c00) */
|
---|
16882 | //#define IEM_INSTR_IMPL_A64__uzp2_z_zz_q(Zd, Zn, H, Zm)
|
---|
16883 |
|
---|
16884 |
|
---|
16885 | /* TRN2 <Zd>.Q, <Zn>.Q, <Zm>.Q (ffe0fc00/05a01c00) */
|
---|
16886 | //#define IEM_INSTR_IMPL_A64__trn2_z_zz_q(Zd, Zn, H, Zm)
|
---|
16887 |
|
---|
16888 |
|
---|
16889 |
|
---|
16890 | /*
|
---|
16891 | *
|
---|
16892 | * Instruction Set & Groups: sve_int_perm_bin_perm_pp / sve_perm_predicates / sve / A64
|
---|
16893 | *
|
---|
16894 | */
|
---|
16895 |
|
---|
16896 | /* ZIP1 <Pd>.<T>, <Pn>.<T>, <Pm>.<T> (ff30fe10/05204000) */
|
---|
16897 | //#define IEM_INSTR_IMPL_A64__zip1_p_pp(Pd, Pn, H, Pm, size)
|
---|
16898 |
|
---|
16899 |
|
---|
16900 | /* UZP1 <Pd>.<T>, <Pn>.<T>, <Pm>.<T> (ff30fe10/05204800) */
|
---|
16901 | //#define IEM_INSTR_IMPL_A64__uzp1_p_pp(Pd, Pn, H, Pm, size)
|
---|
16902 |
|
---|
16903 |
|
---|
16904 | /* TRN1 <Pd>.<T>, <Pn>.<T>, <Pm>.<T> (ff30fe10/05205000) */
|
---|
16905 | //#define IEM_INSTR_IMPL_A64__trn1_p_pp(Pd, Pn, H, Pm, size)
|
---|
16906 |
|
---|
16907 |
|
---|
16908 | /* ZIP2 <Pd>.<T>, <Pn>.<T>, <Pm>.<T> (ff30fe10/05204400) */
|
---|
16909 | //#define IEM_INSTR_IMPL_A64__zip2_p_pp(Pd, Pn, H, Pm, size)
|
---|
16910 |
|
---|
16911 |
|
---|
16912 | /* UZP2 <Pd>.<T>, <Pn>.<T>, <Pm>.<T> (ff30fe10/05204c00) */
|
---|
16913 | //#define IEM_INSTR_IMPL_A64__uzp2_p_pp(Pd, Pn, H, Pm, size)
|
---|
16914 |
|
---|
16915 |
|
---|
16916 | /* TRN2 <Pd>.<T>, <Pn>.<T>, <Pm>.<T> (ff30fe10/05205400) */
|
---|
16917 | //#define IEM_INSTR_IMPL_A64__trn2_p_pp(Pd, Pn, H, Pm, size)
|
---|
16918 |
|
---|
16919 |
|
---|
16920 |
|
---|
16921 | /*
|
---|
16922 | *
|
---|
16923 | * Instruction Set & Groups: sve_int_perm_bin_perm_zz / sve_perm_inter / sve / A64
|
---|
16924 | *
|
---|
16925 | */
|
---|
16926 |
|
---|
16927 | /* ZIP1 <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/05206000) */
|
---|
16928 | //#define IEM_INSTR_IMPL_A64__zip1_z_zz(Zd, Zn, H, Zm, size)
|
---|
16929 |
|
---|
16930 |
|
---|
16931 | /* UZP1 <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/05206800) */
|
---|
16932 | //#define IEM_INSTR_IMPL_A64__uzp1_z_zz(Zd, Zn, H, Zm, size)
|
---|
16933 |
|
---|
16934 |
|
---|
16935 | /* TRN1 <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/05207000) */
|
---|
16936 | //#define IEM_INSTR_IMPL_A64__trn1_z_zz(Zd, Zn, H, Zm, size)
|
---|
16937 |
|
---|
16938 |
|
---|
16939 | /* ZIP2 <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/05206400) */
|
---|
16940 | //#define IEM_INSTR_IMPL_A64__zip2_z_zz(Zd, Zn, H, Zm, size)
|
---|
16941 |
|
---|
16942 |
|
---|
16943 | /* UZP2 <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/05206c00) */
|
---|
16944 | //#define IEM_INSTR_IMPL_A64__uzp2_z_zz(Zd, Zn, H, Zm, size)
|
---|
16945 |
|
---|
16946 |
|
---|
16947 | /* TRN2 <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/05207400) */
|
---|
16948 | //#define IEM_INSTR_IMPL_A64__trn2_z_zz(Zd, Zn, H, Zm, size)
|
---|
16949 |
|
---|
16950 |
|
---|
16951 |
|
---|
16952 | /*
|
---|
16953 | *
|
---|
16954 | * Instruction Set & Groups: sve_int_perm_binquads / sve_perm_quads_b / sve / A64
|
---|
16955 | *
|
---|
16956 | */
|
---|
16957 |
|
---|
16958 | /* ZIPQ1 <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/4400e000) */
|
---|
16959 | //#define IEM_INSTR_IMPL_A64__zipq1_z_zz(Zd, Zn, H, Zm, size)
|
---|
16960 |
|
---|
16961 |
|
---|
16962 | /* UZPQ1 <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/4400e800) */
|
---|
16963 | //#define IEM_INSTR_IMPL_A64__uzpq1_z_zz(Zd, Zn, H, Zm, size)
|
---|
16964 |
|
---|
16965 |
|
---|
16966 | /* TBLQ <Zd>.<T>, { <Zn>.<T> }, <Zm>.<T> (ff20fc00/4400f800) */
|
---|
16967 | //#define IEM_INSTR_IMPL_A64__tblq_z_zz(Zd, Zn, Zm, size)
|
---|
16968 |
|
---|
16969 |
|
---|
16970 | /* ZIPQ2 <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/4400e400) */
|
---|
16971 | //#define IEM_INSTR_IMPL_A64__zipq2_z_zz(Zd, Zn, H, Zm, size)
|
---|
16972 |
|
---|
16973 |
|
---|
16974 | /* UZPQ2 <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/4400ec00) */
|
---|
16975 | //#define IEM_INSTR_IMPL_A64__uzpq2_z_zz(Zd, Zn, H, Zm, size)
|
---|
16976 |
|
---|
16977 |
|
---|
16978 |
|
---|
16979 | /*
|
---|
16980 | *
|
---|
16981 | * Instruction Set & Groups: sve_int_perm_clast_rz / sve_perm_pred / sve / A64
|
---|
16982 | *
|
---|
16983 | */
|
---|
16984 |
|
---|
16985 | /* CLASTA <R><dn>, <Pg>, <R><dn>, <Zm>.<T> (ff3fe000/0530a000) */
|
---|
16986 | //#define IEM_INSTR_IMPL_A64__clasta_r_p_z(Rdn, Zm, Pg, B, size)
|
---|
16987 |
|
---|
16988 |
|
---|
16989 | /* CLASTB <R><dn>, <Pg>, <R><dn>, <Zm>.<T> (ff3fe000/0531a000) */
|
---|
16990 | //#define IEM_INSTR_IMPL_A64__clastb_r_p_z(Rdn, Zm, Pg, B, size)
|
---|
16991 |
|
---|
16992 |
|
---|
16993 |
|
---|
16994 | /*
|
---|
16995 | *
|
---|
16996 | * Instruction Set & Groups: sve_int_perm_clast_vz / sve_perm_pred / sve / A64
|
---|
16997 | *
|
---|
16998 | */
|
---|
16999 |
|
---|
17000 | /* CLASTA <V><dn>, <Pg>, <V><dn>, <Zm>.<T> (ff3fe000/052a8000) */
|
---|
17001 | //#define IEM_INSTR_IMPL_A64__clasta_v_p_z(Vdn, Zm, Pg, size)
|
---|
17002 |
|
---|
17003 |
|
---|
17004 | /* CLASTB <V><dn>, <Pg>, <V><dn>, <Zm>.<T> (ff3fe000/052b8000) */
|
---|
17005 | //#define IEM_INSTR_IMPL_A64__clastb_v_p_z(Vdn, Zm, Pg, size)
|
---|
17006 |
|
---|
17007 |
|
---|
17008 |
|
---|
17009 | /*
|
---|
17010 | *
|
---|
17011 | * Instruction Set & Groups: sve_int_perm_clast_zz / sve_perm_pred / sve / A64
|
---|
17012 | *
|
---|
17013 | */
|
---|
17014 |
|
---|
17015 | /* CLASTA <Zdn>.<T>, <Pg>, <Zdn>.<T>, <Zm>.<T> (ff3fe000/05288000) */
|
---|
17016 | //#define IEM_INSTR_IMPL_A64__clasta_z_p_zz(Zdn, Zm, Pg, B, size)
|
---|
17017 |
|
---|
17018 |
|
---|
17019 | /* CLASTB <Zdn>.<T>, <Pg>, <Zdn>.<T>, <Zm>.<T> (ff3fe000/05298000) */
|
---|
17020 | //#define IEM_INSTR_IMPL_A64__clastb_z_p_zz(Zdn, Zm, Pg, B, size)
|
---|
17021 |
|
---|
17022 |
|
---|
17023 |
|
---|
17024 | /*
|
---|
17025 | *
|
---|
17026 | * Instruction Set & Groups: sve_int_perm_compact / sve_perm_pred / sve / A64
|
---|
17027 | *
|
---|
17028 | */
|
---|
17029 |
|
---|
17030 | /* COMPACT <Zd>.<T>, <Pg>, <Zn>.<T> (ffbfe000/05218000) */
|
---|
17031 | //#define IEM_INSTR_IMPL_A64__compact_z_p_z_s(Zd, Zn, Pg, sz)
|
---|
17032 |
|
---|
17033 |
|
---|
17034 | /* COMPACT <Zd>.<T>, <Pg>, <Zn>.<T> (ffbfe000/05a18000) */
|
---|
17035 | //#define IEM_INSTR_IMPL_A64__compact_z_p_z(Zd, Zn, Pg, sz)
|
---|
17036 |
|
---|
17037 |
|
---|
17038 |
|
---|
17039 | /*
|
---|
17040 | *
|
---|
17041 | * Instruction Set & Groups: sve_int_perm_cpy_r / sve_perm_pred / sve / A64
|
---|
17042 | *
|
---|
17043 | */
|
---|
17044 |
|
---|
17045 | /* CPY <Zd>.<T>, <Pg>/M, <R><n|SP> (ff3fe000/0528a000) */
|
---|
17046 | //#define IEM_INSTR_IMPL_A64__cpy_z_p_r(Zd, Rn, Pg, size)
|
---|
17047 |
|
---|
17048 |
|
---|
17049 |
|
---|
17050 | /*
|
---|
17051 | *
|
---|
17052 | * Instruction Set & Groups: sve_int_perm_cpy_v / sve_perm_pred / sve / A64
|
---|
17053 | *
|
---|
17054 | */
|
---|
17055 |
|
---|
17056 | /* CPY <Zd>.<T>, <Pg>/M, <V><n> (ff3fe000/05208000) */
|
---|
17057 | //#define IEM_INSTR_IMPL_A64__cpy_z_p_v(Zd, Vn, Pg, size)
|
---|
17058 |
|
---|
17059 |
|
---|
17060 |
|
---|
17061 | /*
|
---|
17062 | *
|
---|
17063 | * Instruction Set & Groups: sve_int_perm_dup_i / sve_perm_unpred_a / sve / A64
|
---|
17064 | *
|
---|
17065 | */
|
---|
17066 |
|
---|
17067 | /* DUP <Zd>.<T>, <Zn>.<T>[<imm>] (ff20fc00/05202000) */
|
---|
17068 | //#define IEM_INSTR_IMPL_A64__dup_z_zi(Zd, Zn, tsz, imm2)
|
---|
17069 |
|
---|
17070 |
|
---|
17071 |
|
---|
17072 | /*
|
---|
17073 | *
|
---|
17074 | * Instruction Set & Groups: sve_int_perm_dup_r / sve_perm_unpred_d / sve / A64
|
---|
17075 | *
|
---|
17076 | */
|
---|
17077 |
|
---|
17078 | /* DUP <Zd>.<T>, <R><n|SP> (ff3ffc00/05203800) */
|
---|
17079 | //#define IEM_INSTR_IMPL_A64__dup_z_r(Zd, Rn, size)
|
---|
17080 |
|
---|
17081 |
|
---|
17082 |
|
---|
17083 | /*
|
---|
17084 | *
|
---|
17085 | * Instruction Set & Groups: sve_int_perm_dupq_i / sve_perm_quads_a / sve / A64
|
---|
17086 | *
|
---|
17087 | */
|
---|
17088 |
|
---|
17089 | /* DUPQ <Zd>.<T>, <Zn>.<T>[<imm>] (ffe0fc00/05202400) */
|
---|
17090 | //#define IEM_INSTR_IMPL_A64__dupq_z_zi(Zd, Zn, tsz, i1)
|
---|
17091 |
|
---|
17092 |
|
---|
17093 |
|
---|
17094 | /*
|
---|
17095 | *
|
---|
17096 | * Instruction Set & Groups: sve_int_perm_expand / sve_perm_pred / sve / A64
|
---|
17097 | *
|
---|
17098 | */
|
---|
17099 |
|
---|
17100 | /* EXPAND <Zd>.<T>, <Pg>, <Zn>.<T> (ff3fe000/05318000) */
|
---|
17101 | //#define IEM_INSTR_IMPL_A64__expand_z_p_z(Zd, Zn, Pg, size)
|
---|
17102 |
|
---|
17103 |
|
---|
17104 |
|
---|
17105 | /*
|
---|
17106 | *
|
---|
17107 | * Instruction Set & Groups: sve_int_perm_extq / sve_perm_quads_a / sve / A64
|
---|
17108 | *
|
---|
17109 | */
|
---|
17110 |
|
---|
17111 | /* EXTQ <Zdn>.B, <Zdn>.B, <Zm>.B, #<imm> (fff0fc00/05602400) */
|
---|
17112 | //#define IEM_INSTR_IMPL_A64__extq_z_zi_des(Zdn, Zm, imm4)
|
---|
17113 |
|
---|
17114 |
|
---|
17115 |
|
---|
17116 | /*
|
---|
17117 | *
|
---|
17118 | * Instruction Set & Groups: sve_int_perm_extract_i / sve_perm_extract / sve / A64
|
---|
17119 | *
|
---|
17120 | */
|
---|
17121 |
|
---|
17122 | /* EXT <Zdn>.B, <Zdn>.B, <Zm>.B, #<imm> (ffe0e000/05200000) */
|
---|
17123 | //#define IEM_INSTR_IMPL_A64__ext_z_zi_des(Zdn, Zm, imm8l, imm8h)
|
---|
17124 |
|
---|
17125 |
|
---|
17126 |
|
---|
17127 | /*
|
---|
17128 | *
|
---|
17129 | * Instruction Set & Groups: sve_int_perm_insrs / sve_perm_unpred_d / sve / A64
|
---|
17130 | *
|
---|
17131 | */
|
---|
17132 |
|
---|
17133 | /* INSR <Zdn>.<T>, <R><m> (ff3ffc00/05243800) */
|
---|
17134 | //#define IEM_INSTR_IMPL_A64__insr_z_r(Zdn, Rm, size)
|
---|
17135 |
|
---|
17136 |
|
---|
17137 |
|
---|
17138 | /*
|
---|
17139 | *
|
---|
17140 | * Instruction Set & Groups: sve_int_perm_insrv / sve_perm_unpred_d / sve / A64
|
---|
17141 | *
|
---|
17142 | */
|
---|
17143 |
|
---|
17144 | /* INSR <Zdn>.<T>, <V><m> (ff3ffc00/05343800) */
|
---|
17145 | //#define IEM_INSTR_IMPL_A64__insr_z_v(Zdn, Vm, size)
|
---|
17146 |
|
---|
17147 |
|
---|
17148 |
|
---|
17149 | /*
|
---|
17150 | *
|
---|
17151 | * Instruction Set & Groups: sve_int_perm_last_r / sve_perm_pred / sve / A64
|
---|
17152 | *
|
---|
17153 | */
|
---|
17154 |
|
---|
17155 | /* LASTA <R><d>, <Pg>, <Zn>.<T> (ff3fe000/0520a000) */
|
---|
17156 | //#define IEM_INSTR_IMPL_A64__lasta_r_p_z(Rd, Zn, Pg, B, size)
|
---|
17157 |
|
---|
17158 |
|
---|
17159 | /* LASTB <R><d>, <Pg>, <Zn>.<T> (ff3fe000/0521a000) */
|
---|
17160 | //#define IEM_INSTR_IMPL_A64__lastb_r_p_z(Rd, Zn, Pg, B, size)
|
---|
17161 |
|
---|
17162 |
|
---|
17163 |
|
---|
17164 | /*
|
---|
17165 | *
|
---|
17166 | * Instruction Set & Groups: sve_int_perm_last_v / sve_perm_pred / sve / A64
|
---|
17167 | *
|
---|
17168 | */
|
---|
17169 |
|
---|
17170 | /* LASTA <V><d>, <Pg>, <Zn>.<T> (ff3fe000/05228000) */
|
---|
17171 | //#define IEM_INSTR_IMPL_A64__lasta_v_p_z(Vd, Zn, Pg, B, size)
|
---|
17172 |
|
---|
17173 |
|
---|
17174 | /* LASTB <V><d>, <Pg>, <Zn>.<T> (ff3fe000/05238000) */
|
---|
17175 | //#define IEM_INSTR_IMPL_A64__lastb_v_p_z(Vd, Zn, Pg, B, size)
|
---|
17176 |
|
---|
17177 |
|
---|
17178 |
|
---|
17179 | /*
|
---|
17180 | *
|
---|
17181 | * Instruction Set & Groups: sve_int_perm_punpk / sve_perm_predicates / sve / A64
|
---|
17182 | *
|
---|
17183 | */
|
---|
17184 |
|
---|
17185 | /* PUNPKLO <Pd>.H, <Pn>.B (fffffe10/05304000) */
|
---|
17186 | //#define IEM_INSTR_IMPL_A64__punpklo_p_p(Pd, Pn, H)
|
---|
17187 |
|
---|
17188 |
|
---|
17189 | /* PUNPKHI <Pd>.H, <Pn>.B (fffffe10/05314000) */
|
---|
17190 | //#define IEM_INSTR_IMPL_A64__punpkhi_p_p(Pd, Pn, H)
|
---|
17191 |
|
---|
17192 |
|
---|
17193 |
|
---|
17194 | /*
|
---|
17195 | *
|
---|
17196 | * Instruction Set & Groups: sve_int_perm_rev / sve_perm_pred / sve / A64
|
---|
17197 | *
|
---|
17198 | */
|
---|
17199 |
|
---|
17200 | /* REVB <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/05248000) */
|
---|
17201 | //#define IEM_INSTR_IMPL_A64__revb_z_z_m(Zd, Zn, Pg, size)
|
---|
17202 |
|
---|
17203 |
|
---|
17204 | /* REVB <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/0524a000) */
|
---|
17205 | //#define IEM_INSTR_IMPL_A64__revb_z_z_z(Zd, Zn, Pg, size)
|
---|
17206 |
|
---|
17207 |
|
---|
17208 | /* REVH <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/05258000) */
|
---|
17209 | //#define IEM_INSTR_IMPL_A64__revh_z_z_m(Zd, Zn, Pg, size)
|
---|
17210 |
|
---|
17211 |
|
---|
17212 | /* REVH <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/0525a000) */
|
---|
17213 | //#define IEM_INSTR_IMPL_A64__revh_z_z_z(Zd, Zn, Pg, size)
|
---|
17214 |
|
---|
17215 |
|
---|
17216 | /* REVW <Zd>.D, <Pg>/M, <Zn>.D (ff3fe000/05268000) */
|
---|
17217 | //#define IEM_INSTR_IMPL_A64__revw_z_z_m(Zd, Zn, Pg, size)
|
---|
17218 |
|
---|
17219 |
|
---|
17220 | /* REVW <Zd>.D, <Pg>/Z, <Zn>.D (ff3fe000/0526a000) */
|
---|
17221 | //#define IEM_INSTR_IMPL_A64__revw_z_z_z(Zd, Zn, Pg, size)
|
---|
17222 |
|
---|
17223 |
|
---|
17224 | /* RBIT <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/05278000) */
|
---|
17225 | //#define IEM_INSTR_IMPL_A64__rbit_z_p_z_m(Zd, Zn, Pg, size)
|
---|
17226 |
|
---|
17227 |
|
---|
17228 | /* RBIT <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/0527a000) */
|
---|
17229 | //#define IEM_INSTR_IMPL_A64__rbit_z_p_z_z(Zd, Zn, Pg, size)
|
---|
17230 |
|
---|
17231 |
|
---|
17232 |
|
---|
17233 | /*
|
---|
17234 | *
|
---|
17235 | * Instruction Set & Groups: sve_int_perm_revd / sve_perm_pred / sve / A64
|
---|
17236 | *
|
---|
17237 | */
|
---|
17238 |
|
---|
17239 | /* REVD <Zd>.Q, <Pg>/M, <Zn>.Q (ffffe000/052e8000) */
|
---|
17240 | //#define IEM_INSTR_IMPL_A64__revd_z_p_z_m(Zd, Zn, Pg)
|
---|
17241 |
|
---|
17242 |
|
---|
17243 | /* REVD <Zd>.Q, <Pg>/Z, <Zn>.Q (ffffe000/052ea000) */
|
---|
17244 | //#define IEM_INSTR_IMPL_A64__revd_z_p_z_z(Zd, Zn, Pg)
|
---|
17245 |
|
---|
17246 |
|
---|
17247 |
|
---|
17248 | /*
|
---|
17249 | *
|
---|
17250 | * Instruction Set & Groups: sve_int_perm_reverse_p / sve_perm_predicates / sve / A64
|
---|
17251 | *
|
---|
17252 | */
|
---|
17253 |
|
---|
17254 | /* REV <Pd>.<T>, <Pn>.<T> (ff3ffe10/05344000) */
|
---|
17255 | //#define IEM_INSTR_IMPL_A64__rev_p_p(Pd, Pn, size)
|
---|
17256 |
|
---|
17257 |
|
---|
17258 |
|
---|
17259 | /*
|
---|
17260 | *
|
---|
17261 | * Instruction Set & Groups: sve_int_perm_reverse_z / sve_perm_unpred_d / sve / A64
|
---|
17262 | *
|
---|
17263 | */
|
---|
17264 |
|
---|
17265 | /* REV <Zd>.<T>, <Zn>.<T> (ff3ffc00/05383800) */
|
---|
17266 | //#define IEM_INSTR_IMPL_A64__rev_z_z(Zd, Zn, size)
|
---|
17267 |
|
---|
17268 |
|
---|
17269 |
|
---|
17270 | /*
|
---|
17271 | *
|
---|
17272 | * Instruction Set & Groups: sve_int_perm_splice / sve_perm_pred / sve / A64
|
---|
17273 | *
|
---|
17274 | */
|
---|
17275 |
|
---|
17276 | /* SPLICE <Zdn>.<T>, <Pv>, <Zdn>.<T>, <Zm>.<T> (ff3fe000/052c8000) */
|
---|
17277 | //#define IEM_INSTR_IMPL_A64__splice_z_p_zz_des(Zdn, Zm, Pv, size)
|
---|
17278 |
|
---|
17279 |
|
---|
17280 |
|
---|
17281 | /*
|
---|
17282 | *
|
---|
17283 | * Instruction Set & Groups: sve_int_perm_tbl / sve_perm_unpred_c / sve / A64
|
---|
17284 | *
|
---|
17285 | */
|
---|
17286 |
|
---|
17287 | /* TBL <Zd>.<T>, { <Zn>.<T> }, <Zm>.<T> (ff20fc00/05203000) */
|
---|
17288 | //#define IEM_INSTR_IMPL_A64__tbl_z_zz_1(Zd, Zn, Zm, size)
|
---|
17289 |
|
---|
17290 |
|
---|
17291 |
|
---|
17292 | /*
|
---|
17293 | *
|
---|
17294 | * Instruction Set & Groups: sve_int_perm_tbl_3src / sve_perm_unpred_b / sve / A64
|
---|
17295 | *
|
---|
17296 | */
|
---|
17297 |
|
---|
17298 | /* TBL <Zd>.<T>, { <Zn1>.<T>, <Zn2>.<T> }, <Zm>.<T> (ff20fc00/05202800) */
|
---|
17299 | //#define IEM_INSTR_IMPL_A64__tbl_z_zz_2(Zd, Zn, Zm, size)
|
---|
17300 |
|
---|
17301 |
|
---|
17302 | /* TBX <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/05202c00) */
|
---|
17303 | //#define IEM_INSTR_IMPL_A64__tbx_z_zz(Zd, Zn, Zm, size)
|
---|
17304 |
|
---|
17305 |
|
---|
17306 |
|
---|
17307 | /*
|
---|
17308 | *
|
---|
17309 | * Instruction Set & Groups: sve_int_perm_tbxquads / sve_perm_quads_c / sve / A64
|
---|
17310 | *
|
---|
17311 | */
|
---|
17312 |
|
---|
17313 | /* TBXQ <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/05203400) */
|
---|
17314 | //#define IEM_INSTR_IMPL_A64__tbxq_z_zz(Zd, Zn, Zm, size)
|
---|
17315 |
|
---|
17316 |
|
---|
17317 |
|
---|
17318 | /*
|
---|
17319 | *
|
---|
17320 | * Instruction Set & Groups: sve_int_perm_unpk / sve_perm_unpred_d / sve / A64
|
---|
17321 | *
|
---|
17322 | */
|
---|
17323 |
|
---|
17324 | /* SUNPKLO <Zd>.<T>, <Zn>.<Tb> (ff3ffc00/05303800) */
|
---|
17325 | //#define IEM_INSTR_IMPL_A64__sunpklo_z_z(Zd, Zn, H, U, size)
|
---|
17326 |
|
---|
17327 |
|
---|
17328 | /* SUNPKHI <Zd>.<T>, <Zn>.<Tb> (ff3ffc00/05313800) */
|
---|
17329 | //#define IEM_INSTR_IMPL_A64__sunpkhi_z_z(Zd, Zn, H, U, size)
|
---|
17330 |
|
---|
17331 |
|
---|
17332 | /* UUNPKLO <Zd>.<T>, <Zn>.<Tb> (ff3ffc00/05323800) */
|
---|
17333 | //#define IEM_INSTR_IMPL_A64__uunpklo_z_z(Zd, Zn, H, U, size)
|
---|
17334 |
|
---|
17335 |
|
---|
17336 | /* UUNPKHI <Zd>.<T>, <Zn>.<Tb> (ff3ffc00/05333800) */
|
---|
17337 | //#define IEM_INSTR_IMPL_A64__uunpkhi_z_z(Zd, Zn, H, U, size)
|
---|
17338 |
|
---|
17339 |
|
---|
17340 |
|
---|
17341 | /*
|
---|
17342 | *
|
---|
17343 | * Instruction Set & Groups: sve_int_pfalse / sve_pred_gen_d / sve / A64
|
---|
17344 | *
|
---|
17345 | */
|
---|
17346 |
|
---|
17347 | /* PFALSE <Pd>.B (fffffff0/2518e400) */
|
---|
17348 | //#define IEM_INSTR_IMPL_A64__pfalse_p(Pd)
|
---|
17349 |
|
---|
17350 |
|
---|
17351 |
|
---|
17352 | /*
|
---|
17353 | *
|
---|
17354 | * Instruction Set & Groups: sve_int_pfirst / sve_pred_gen_d / sve / A64
|
---|
17355 | *
|
---|
17356 | */
|
---|
17357 |
|
---|
17358 | /* PFIRST <Pdn>.B, <Pg>, <Pdn>.B (fffffe10/2558c000) */
|
---|
17359 | //#define IEM_INSTR_IMPL_A64__pfirst_p_p_p(Pdn, Pg)
|
---|
17360 |
|
---|
17361 |
|
---|
17362 |
|
---|
17363 | /*
|
---|
17364 | *
|
---|
17365 | * Instruction Set & Groups: sve_int_pn_ptrue / sve_while_pn / sve / A64
|
---|
17366 | *
|
---|
17367 | */
|
---|
17368 |
|
---|
17369 | /* PTRUE <PNd>.<T> (ff3ffff8/25207810) */
|
---|
17370 | //#define IEM_INSTR_IMPL_A64__ptrue_pn_i(PNd, size)
|
---|
17371 |
|
---|
17372 |
|
---|
17373 |
|
---|
17374 | /*
|
---|
17375 | *
|
---|
17376 | * Instruction Set & Groups: sve_int_pnext / sve_pred_gen_d / sve / A64
|
---|
17377 | *
|
---|
17378 | */
|
---|
17379 |
|
---|
17380 | /* PNEXT <Pdn>.<T>, <Pv>, <Pdn>.<T> (ff3ffe10/2519c400) */
|
---|
17381 | //#define IEM_INSTR_IMPL_A64__pnext_p_p_p(Pdn, Pv, size)
|
---|
17382 |
|
---|
17383 |
|
---|
17384 |
|
---|
17385 | /*
|
---|
17386 | *
|
---|
17387 | * Instruction Set & Groups: sve_int_pred_dup / sve_pred_dup / sve / A64
|
---|
17388 | *
|
---|
17389 | */
|
---|
17390 |
|
---|
17391 | /* PSEL <Pd>, <Pn>, <Pm>.<T>[<Wv>, <imm>] (ff20c210/25204000) */
|
---|
17392 | //#define IEM_INSTR_IMPL_A64__psel_p_ppi(Pd, Pm, Pn, Rv, tszl, tszh, i1)
|
---|
17393 |
|
---|
17394 |
|
---|
17395 |
|
---|
17396 | /*
|
---|
17397 | *
|
---|
17398 | * Instruction Set & Groups: sve_int_pred_log / sve_pred_gen_a / sve / A64
|
---|
17399 | *
|
---|
17400 | */
|
---|
17401 |
|
---|
17402 | /* AND <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25004000) */
|
---|
17403 | //#define IEM_INSTR_IMPL_A64__and_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17404 |
|
---|
17405 |
|
---|
17406 | /* BIC <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25004010) */
|
---|
17407 | //#define IEM_INSTR_IMPL_A64__bic_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17408 |
|
---|
17409 |
|
---|
17410 | /* ORR <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25804000) */
|
---|
17411 | //#define IEM_INSTR_IMPL_A64__orr_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17412 |
|
---|
17413 |
|
---|
17414 | /* ORN <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25804010) */
|
---|
17415 | //#define IEM_INSTR_IMPL_A64__orn_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17416 |
|
---|
17417 |
|
---|
17418 | /* EOR <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25004200) */
|
---|
17419 | //#define IEM_INSTR_IMPL_A64__eor_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17420 |
|
---|
17421 |
|
---|
17422 | /* SEL <Pd>.B, <Pg>, <Pn>.B, <Pm>.B (fff0c210/25004210) */
|
---|
17423 | //#define IEM_INSTR_IMPL_A64__sel_p_p_pp(Pd, Pn, Pg, Pm)
|
---|
17424 |
|
---|
17425 |
|
---|
17426 | /* NOR <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25804200) */
|
---|
17427 | //#define IEM_INSTR_IMPL_A64__nor_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17428 |
|
---|
17429 |
|
---|
17430 | /* NAND <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25804210) */
|
---|
17431 | //#define IEM_INSTR_IMPL_A64__nand_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17432 |
|
---|
17433 |
|
---|
17434 | /* ANDS <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25404000) */
|
---|
17435 | //#define IEM_INSTR_IMPL_A64__ands_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17436 |
|
---|
17437 |
|
---|
17438 | /* BICS <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25404010) */
|
---|
17439 | //#define IEM_INSTR_IMPL_A64__bics_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17440 |
|
---|
17441 |
|
---|
17442 | /* ORRS <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25c04000) */
|
---|
17443 | //#define IEM_INSTR_IMPL_A64__orrs_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17444 |
|
---|
17445 |
|
---|
17446 | /* ORNS <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25c04010) */
|
---|
17447 | //#define IEM_INSTR_IMPL_A64__orns_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17448 |
|
---|
17449 |
|
---|
17450 | /* EORS <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25404200) */
|
---|
17451 | //#define IEM_INSTR_IMPL_A64__eors_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17452 |
|
---|
17453 |
|
---|
17454 | /* NORS <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25c04200) */
|
---|
17455 | //#define IEM_INSTR_IMPL_A64__nors_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17456 |
|
---|
17457 |
|
---|
17458 | /* NANDS <Pd>.B, <Pg>/Z, <Pn>.B, <Pm>.B (fff0c210/25c04210) */
|
---|
17459 | //#define IEM_INSTR_IMPL_A64__nands_p_p_pp_z(Pd, Pn, Pg, Pm, S)
|
---|
17460 |
|
---|
17461 |
|
---|
17462 |
|
---|
17463 | /*
|
---|
17464 | *
|
---|
17465 | * Instruction Set & Groups: sve_int_pred_pattern_a / sve_countelt / sve / A64
|
---|
17466 | *
|
---|
17467 | */
|
---|
17468 |
|
---|
17469 | /* INCB <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0430e000) */
|
---|
17470 | //#define IEM_INSTR_IMPL_A64__incb_r_rs(Rdn, pattern, imm4, size)
|
---|
17471 |
|
---|
17472 |
|
---|
17473 | /* DECB <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0430e400) */
|
---|
17474 | //#define IEM_INSTR_IMPL_A64__decb_r_rs(Rdn, pattern, imm4, size)
|
---|
17475 |
|
---|
17476 |
|
---|
17477 | /* INCH <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0470e000) */
|
---|
17478 | //#define IEM_INSTR_IMPL_A64__inch_r_rs(Rdn, pattern, imm4, size)
|
---|
17479 |
|
---|
17480 |
|
---|
17481 | /* DECH <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0470e400) */
|
---|
17482 | //#define IEM_INSTR_IMPL_A64__dech_r_rs(Rdn, pattern, imm4, size)
|
---|
17483 |
|
---|
17484 |
|
---|
17485 | /* INCW <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04b0e000) */
|
---|
17486 | //#define IEM_INSTR_IMPL_A64__incw_r_rs(Rdn, pattern, imm4, size)
|
---|
17487 |
|
---|
17488 |
|
---|
17489 | /* DECW <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04b0e400) */
|
---|
17490 | //#define IEM_INSTR_IMPL_A64__decw_r_rs(Rdn, pattern, imm4, size)
|
---|
17491 |
|
---|
17492 |
|
---|
17493 | /* INCD <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04f0e000) */
|
---|
17494 | //#define IEM_INSTR_IMPL_A64__incd_r_rs(Rdn, pattern, imm4, size)
|
---|
17495 |
|
---|
17496 |
|
---|
17497 | /* DECD <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04f0e400) */
|
---|
17498 | //#define IEM_INSTR_IMPL_A64__decd_r_rs(Rdn, pattern, imm4, size)
|
---|
17499 |
|
---|
17500 |
|
---|
17501 |
|
---|
17502 | /*
|
---|
17503 | *
|
---|
17504 | * Instruction Set & Groups: sve_int_pred_pattern_b / sve_countelt / sve / A64
|
---|
17505 | *
|
---|
17506 | */
|
---|
17507 |
|
---|
17508 | /* SQINCB <Xdn>, <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0420f000) */
|
---|
17509 | //#define IEM_INSTR_IMPL_A64__sqincb_r_rs_sx(Rdn, pattern, imm4, size)
|
---|
17510 |
|
---|
17511 |
|
---|
17512 | /* UQINCB <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0420f400) */
|
---|
17513 | //#define IEM_INSTR_IMPL_A64__uqincb_r_rs_uw(Rdn, pattern, imm4, size)
|
---|
17514 |
|
---|
17515 |
|
---|
17516 | /* SQDECB <Xdn>, <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0420f800) */
|
---|
17517 | //#define IEM_INSTR_IMPL_A64__sqdecb_r_rs_sx(Rdn, pattern, imm4, size)
|
---|
17518 |
|
---|
17519 |
|
---|
17520 | /* UQDECB <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0420fc00) */
|
---|
17521 | //#define IEM_INSTR_IMPL_A64__uqdecb_r_rs_uw(Rdn, pattern, imm4, size)
|
---|
17522 |
|
---|
17523 |
|
---|
17524 | /* SQINCB <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0430f000) */
|
---|
17525 | //#define IEM_INSTR_IMPL_A64__sqincb_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17526 |
|
---|
17527 |
|
---|
17528 | /* SQDECB <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0430f800) */
|
---|
17529 | //#define IEM_INSTR_IMPL_A64__sqdecb_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17530 |
|
---|
17531 |
|
---|
17532 | /* SQINCH <Xdn>, <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0460f000) */
|
---|
17533 | //#define IEM_INSTR_IMPL_A64__sqinch_r_rs_sx(Rdn, pattern, imm4, size)
|
---|
17534 |
|
---|
17535 |
|
---|
17536 | /* UQINCH <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0460f400) */
|
---|
17537 | //#define IEM_INSTR_IMPL_A64__uqinch_r_rs_uw(Rdn, pattern, imm4, size)
|
---|
17538 |
|
---|
17539 |
|
---|
17540 | /* SQDECH <Xdn>, <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0460f800) */
|
---|
17541 | //#define IEM_INSTR_IMPL_A64__sqdech_r_rs_sx(Rdn, pattern, imm4, size)
|
---|
17542 |
|
---|
17543 |
|
---|
17544 | /* UQDECH <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0460fc00) */
|
---|
17545 | //#define IEM_INSTR_IMPL_A64__uqdech_r_rs_uw(Rdn, pattern, imm4, size)
|
---|
17546 |
|
---|
17547 |
|
---|
17548 | /* SQINCH <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0470f000) */
|
---|
17549 | //#define IEM_INSTR_IMPL_A64__sqinch_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17550 |
|
---|
17551 |
|
---|
17552 | /* SQDECH <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0470f800) */
|
---|
17553 | //#define IEM_INSTR_IMPL_A64__sqdech_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17554 |
|
---|
17555 |
|
---|
17556 | /* SQINCW <Xdn>, <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04a0f000) */
|
---|
17557 | //#define IEM_INSTR_IMPL_A64__sqincw_r_rs_sx(Rdn, pattern, imm4, size)
|
---|
17558 |
|
---|
17559 |
|
---|
17560 | /* UQINCW <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04a0f400) */
|
---|
17561 | //#define IEM_INSTR_IMPL_A64__uqincw_r_rs_uw(Rdn, pattern, imm4, size)
|
---|
17562 |
|
---|
17563 |
|
---|
17564 | /* SQDECW <Xdn>, <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04a0f800) */
|
---|
17565 | //#define IEM_INSTR_IMPL_A64__sqdecw_r_rs_sx(Rdn, pattern, imm4, size)
|
---|
17566 |
|
---|
17567 |
|
---|
17568 | /* UQDECW <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04a0fc00) */
|
---|
17569 | //#define IEM_INSTR_IMPL_A64__uqdecw_r_rs_uw(Rdn, pattern, imm4, size)
|
---|
17570 |
|
---|
17571 |
|
---|
17572 | /* SQINCW <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04b0f000) */
|
---|
17573 | //#define IEM_INSTR_IMPL_A64__sqincw_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17574 |
|
---|
17575 |
|
---|
17576 | /* SQDECW <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04b0f800) */
|
---|
17577 | //#define IEM_INSTR_IMPL_A64__sqdecw_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17578 |
|
---|
17579 |
|
---|
17580 | /* SQINCD <Xdn>, <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04e0f000) */
|
---|
17581 | //#define IEM_INSTR_IMPL_A64__sqincd_r_rs_sx(Rdn, pattern, imm4, size)
|
---|
17582 |
|
---|
17583 |
|
---|
17584 | /* UQINCD <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04e0f400) */
|
---|
17585 | //#define IEM_INSTR_IMPL_A64__uqincd_r_rs_uw(Rdn, pattern, imm4, size)
|
---|
17586 |
|
---|
17587 |
|
---|
17588 | /* SQDECD <Xdn>, <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04e0f800) */
|
---|
17589 | //#define IEM_INSTR_IMPL_A64__sqdecd_r_rs_sx(Rdn, pattern, imm4, size)
|
---|
17590 |
|
---|
17591 |
|
---|
17592 | /* UQDECD <Wdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04e0fc00) */
|
---|
17593 | //#define IEM_INSTR_IMPL_A64__uqdecd_r_rs_uw(Rdn, pattern, imm4, size)
|
---|
17594 |
|
---|
17595 |
|
---|
17596 | /* SQINCD <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04f0f000) */
|
---|
17597 | //#define IEM_INSTR_IMPL_A64__sqincd_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17598 |
|
---|
17599 |
|
---|
17600 | /* SQDECD <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04f0f800) */
|
---|
17601 | //#define IEM_INSTR_IMPL_A64__sqdecd_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17602 |
|
---|
17603 |
|
---|
17604 | /* UQINCB <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0430f400) */
|
---|
17605 | //#define IEM_INSTR_IMPL_A64__uqincb_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17606 |
|
---|
17607 |
|
---|
17608 | /* UQDECB <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0430fc00) */
|
---|
17609 | //#define IEM_INSTR_IMPL_A64__uqdecb_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17610 |
|
---|
17611 |
|
---|
17612 | /* UQINCH <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0470f400) */
|
---|
17613 | //#define IEM_INSTR_IMPL_A64__uqinch_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17614 |
|
---|
17615 |
|
---|
17616 | /* UQDECH <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/0470fc00) */
|
---|
17617 | //#define IEM_INSTR_IMPL_A64__uqdech_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17618 |
|
---|
17619 |
|
---|
17620 | /* UQINCW <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04b0f400) */
|
---|
17621 | //#define IEM_INSTR_IMPL_A64__uqincw_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17622 |
|
---|
17623 |
|
---|
17624 | /* UQDECW <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04b0fc00) */
|
---|
17625 | //#define IEM_INSTR_IMPL_A64__uqdecw_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17626 |
|
---|
17627 |
|
---|
17628 | /* UQINCD <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04f0f400) */
|
---|
17629 | //#define IEM_INSTR_IMPL_A64__uqincd_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17630 |
|
---|
17631 |
|
---|
17632 | /* UQDECD <Xdn>{, <pattern>{, MUL #<imm>}} (fff0fc00/04f0fc00) */
|
---|
17633 | //#define IEM_INSTR_IMPL_A64__uqdecd_r_rs_x(Rdn, pattern, U, imm4, size)
|
---|
17634 |
|
---|
17635 |
|
---|
17636 |
|
---|
17637 | /*
|
---|
17638 | *
|
---|
17639 | * Instruction Set & Groups: sve_int_ptest / sve_pred_gen_d / sve / A64
|
---|
17640 | *
|
---|
17641 | */
|
---|
17642 |
|
---|
17643 | /* PTEST <Pg>, <Pn>.B (ffffc21f/2550c000) */
|
---|
17644 | //#define IEM_INSTR_IMPL_A64__ptest__p_p(Pn, Pg)
|
---|
17645 |
|
---|
17646 |
|
---|
17647 |
|
---|
17648 | /*
|
---|
17649 | *
|
---|
17650 | * Instruction Set & Groups: sve_int_ptrue / sve_pred_gen_d / sve / A64
|
---|
17651 | *
|
---|
17652 | */
|
---|
17653 |
|
---|
17654 | /* PTRUE <Pd>.<T>{, <pattern>} (ff3ffc10/2518e000) */
|
---|
17655 | //#define IEM_INSTR_IMPL_A64__ptrue_p_s(Pd, pattern, S, size)
|
---|
17656 |
|
---|
17657 |
|
---|
17658 | /* PTRUES <Pd>.<T>{, <pattern>} (ff3ffc10/2519e000) */
|
---|
17659 | //#define IEM_INSTR_IMPL_A64__ptrues_p_s(Pd, pattern, S, size)
|
---|
17660 |
|
---|
17661 |
|
---|
17662 |
|
---|
17663 | /*
|
---|
17664 | *
|
---|
17665 | * Instruction Set & Groups: sve_int_rdffr / sve_pred_gen_d / sve / A64
|
---|
17666 | *
|
---|
17667 | */
|
---|
17668 |
|
---|
17669 | /* RDFFR <Pd>.B, <Pg>/Z (fffffe10/2518f000) */
|
---|
17670 | //#define IEM_INSTR_IMPL_A64__rdffr_p_p_f(Pd, Pg, S)
|
---|
17671 |
|
---|
17672 |
|
---|
17673 | /* RDFFRS <Pd>.B, <Pg>/Z (fffffe10/2558f000) */
|
---|
17674 | //#define IEM_INSTR_IMPL_A64__rdffrs_p_p_f(Pd, Pg, S)
|
---|
17675 |
|
---|
17676 |
|
---|
17677 |
|
---|
17678 | /*
|
---|
17679 | *
|
---|
17680 | * Instruction Set & Groups: sve_int_rdffr_2 / sve_pred_gen_d / sve / A64
|
---|
17681 | *
|
---|
17682 | */
|
---|
17683 |
|
---|
17684 | /* RDFFR <Pd>.B (fffffff0/2519f000) */
|
---|
17685 | //#define IEM_INSTR_IMPL_A64__rdffr_p_f(Pd)
|
---|
17686 |
|
---|
17687 |
|
---|
17688 |
|
---|
17689 | /*
|
---|
17690 | *
|
---|
17691 | * Instruction Set & Groups: sve_int_read_svl_a / sve_alloca / sve / A64
|
---|
17692 | *
|
---|
17693 | */
|
---|
17694 |
|
---|
17695 | /* RDSVL <Xd>, #<imm> (fffff800/04bf5800) */
|
---|
17696 | //#define IEM_INSTR_IMPL_A64__rdsvl_r_i(Rd, imm6)
|
---|
17697 |
|
---|
17698 |
|
---|
17699 |
|
---|
17700 | /*
|
---|
17701 | *
|
---|
17702 | * Instruction Set & Groups: sve_int_read_vl_a / sve_alloca / sve / A64
|
---|
17703 | *
|
---|
17704 | */
|
---|
17705 |
|
---|
17706 | /* RDVL <Xd>, #<imm> (fffff800/04bf5000) */
|
---|
17707 | //#define IEM_INSTR_IMPL_A64__rdvl_r_i(Rd, imm6)
|
---|
17708 |
|
---|
17709 |
|
---|
17710 |
|
---|
17711 | /*
|
---|
17712 | *
|
---|
17713 | * Instruction Set & Groups: sve_int_reduce_0 / sve_int_pred_red / sve / A64
|
---|
17714 | *
|
---|
17715 | */
|
---|
17716 |
|
---|
17717 | /* SADDV <Dd>, <Pg>, <Zn>.<T> (ff3fe000/04002000) */
|
---|
17718 | //#define IEM_INSTR_IMPL_A64__saddv_r_p_z(Vd, Zn, Pg, size)
|
---|
17719 |
|
---|
17720 |
|
---|
17721 | /* UADDV <Dd>, <Pg>, <Zn>.<T> (ff3fe000/04012000) */
|
---|
17722 | //#define IEM_INSTR_IMPL_A64__uaddv_r_p_z(Vd, Zn, Pg, size)
|
---|
17723 |
|
---|
17724 |
|
---|
17725 |
|
---|
17726 | /*
|
---|
17727 | *
|
---|
17728 | * Instruction Set & Groups: sve_int_reduce_0q / sve_int_pred_red / sve / A64
|
---|
17729 | *
|
---|
17730 | */
|
---|
17731 |
|
---|
17732 | /* ADDQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/04052000) */
|
---|
17733 | //#define IEM_INSTR_IMPL_A64__addqv_z_p_z(Vd, Zn, Pg, size)
|
---|
17734 |
|
---|
17735 |
|
---|
17736 |
|
---|
17737 | /*
|
---|
17738 | *
|
---|
17739 | * Instruction Set & Groups: sve_int_reduce_1 / sve_int_pred_red / sve / A64
|
---|
17740 | *
|
---|
17741 | */
|
---|
17742 |
|
---|
17743 | /* SMAXV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/04082000) */
|
---|
17744 | //#define IEM_INSTR_IMPL_A64__smaxv_r_p_z(Vd, Zn, Pg, U, size)
|
---|
17745 |
|
---|
17746 |
|
---|
17747 | /* SMINV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/040a2000) */
|
---|
17748 | //#define IEM_INSTR_IMPL_A64__sminv_r_p_z(Vd, Zn, Pg, U, size)
|
---|
17749 |
|
---|
17750 |
|
---|
17751 | /* UMAXV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/04092000) */
|
---|
17752 | //#define IEM_INSTR_IMPL_A64__umaxv_r_p_z(Vd, Zn, Pg, U, size)
|
---|
17753 |
|
---|
17754 |
|
---|
17755 | /* UMINV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/040b2000) */
|
---|
17756 | //#define IEM_INSTR_IMPL_A64__uminv_r_p_z(Vd, Zn, Pg, U, size)
|
---|
17757 |
|
---|
17758 |
|
---|
17759 |
|
---|
17760 | /*
|
---|
17761 | *
|
---|
17762 | * Instruction Set & Groups: sve_int_reduce_1q / sve_int_pred_red / sve / A64
|
---|
17763 | *
|
---|
17764 | */
|
---|
17765 |
|
---|
17766 | /* SMAXQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/040c2000) */
|
---|
17767 | //#define IEM_INSTR_IMPL_A64__smaxqv_z_p_z(Vd, Zn, Pg, U, size)
|
---|
17768 |
|
---|
17769 |
|
---|
17770 | /* SMINQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/040e2000) */
|
---|
17771 | //#define IEM_INSTR_IMPL_A64__sminqv_z_p_z(Vd, Zn, Pg, U, size)
|
---|
17772 |
|
---|
17773 |
|
---|
17774 | /* UMAXQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/040d2000) */
|
---|
17775 | //#define IEM_INSTR_IMPL_A64__umaxqv_z_p_z(Vd, Zn, Pg, U, size)
|
---|
17776 |
|
---|
17777 |
|
---|
17778 | /* UMINQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/040f2000) */
|
---|
17779 | //#define IEM_INSTR_IMPL_A64__uminqv_z_p_z(Vd, Zn, Pg, U, size)
|
---|
17780 |
|
---|
17781 |
|
---|
17782 |
|
---|
17783 | /*
|
---|
17784 | *
|
---|
17785 | * Instruction Set & Groups: sve_int_reduce_2 / sve_int_pred_red / sve / A64
|
---|
17786 | *
|
---|
17787 | */
|
---|
17788 |
|
---|
17789 | /* ORV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/04182000) */
|
---|
17790 | //#define IEM_INSTR_IMPL_A64__orv_r_p_z(Vd, Zn, Pg, size)
|
---|
17791 |
|
---|
17792 |
|
---|
17793 | /* EORV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/04192000) */
|
---|
17794 | //#define IEM_INSTR_IMPL_A64__eorv_r_p_z(Vd, Zn, Pg, size)
|
---|
17795 |
|
---|
17796 |
|
---|
17797 | /* ANDV <V><d>, <Pg>, <Zn>.<T> (ff3fe000/041a2000) */
|
---|
17798 | //#define IEM_INSTR_IMPL_A64__andv_r_p_z(Vd, Zn, Pg, size)
|
---|
17799 |
|
---|
17800 |
|
---|
17801 |
|
---|
17802 | /*
|
---|
17803 | *
|
---|
17804 | * Instruction Set & Groups: sve_int_reduce_2q / sve_int_pred_red / sve / A64
|
---|
17805 | *
|
---|
17806 | */
|
---|
17807 |
|
---|
17808 | /* ORQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/041c2000) */
|
---|
17809 | //#define IEM_INSTR_IMPL_A64__orqv_z_p_z(Vd, Zn, Pg, size)
|
---|
17810 |
|
---|
17811 |
|
---|
17812 | /* EORQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/041d2000) */
|
---|
17813 | //#define IEM_INSTR_IMPL_A64__eorqv_z_p_z(Vd, Zn, Pg, size)
|
---|
17814 |
|
---|
17815 |
|
---|
17816 | /* ANDQV <Vd>.<T>, <Pg>, <Zn>.<Tb> (ff3fe000/041e2000) */
|
---|
17817 | //#define IEM_INSTR_IMPL_A64__andqv_z_p_z(Vd, Zn, Pg, size)
|
---|
17818 |
|
---|
17819 |
|
---|
17820 |
|
---|
17821 | /*
|
---|
17822 | *
|
---|
17823 | * Instruction Set & Groups: sve_int_rotate_imm / sve_int_unpred_logical / sve / A64
|
---|
17824 | *
|
---|
17825 | */
|
---|
17826 |
|
---|
17827 | /* XAR <Zdn>.<T>, <Zdn>.<T>, <Zm>.<T>, #<const> (ff20fc00/04203400) */
|
---|
17828 | //#define IEM_INSTR_IMPL_A64__xar_z_zzi(Zdn, Zm, imm3, tszl, tszh)
|
---|
17829 |
|
---|
17830 |
|
---|
17831 |
|
---|
17832 | /*
|
---|
17833 | *
|
---|
17834 | * Instruction Set & Groups: sve_int_scmp_vi / sve_cmpsimm / sve / A64
|
---|
17835 | *
|
---|
17836 | */
|
---|
17837 |
|
---|
17838 | /* CMPGE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #<imm> (ff20e010/25000000) */
|
---|
17839 | //#define IEM_INSTR_IMPL_A64__cmpge_p_p_zi(Pd, ne, Zn, Pg, lt, imm5, size)
|
---|
17840 |
|
---|
17841 |
|
---|
17842 | /* CMPEQ <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #<imm> (ff20e010/25008000) */
|
---|
17843 | //#define IEM_INSTR_IMPL_A64__cmpeq_p_p_zi(Pd, ne, Zn, Pg, imm5, size)
|
---|
17844 |
|
---|
17845 |
|
---|
17846 | /* CMPLT <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #<imm> (ff20e010/25002000) */
|
---|
17847 | //#define IEM_INSTR_IMPL_A64__cmplt_p_p_zi(Pd, ne, Zn, Pg, lt, imm5, size)
|
---|
17848 |
|
---|
17849 |
|
---|
17850 | /* CMPGT <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #<imm> (ff20e010/25000010) */
|
---|
17851 | //#define IEM_INSTR_IMPL_A64__cmpgt_p_p_zi(Pd, ne, Zn, Pg, lt, imm5, size)
|
---|
17852 |
|
---|
17853 |
|
---|
17854 | /* CMPNE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #<imm> (ff20e010/25008010) */
|
---|
17855 | //#define IEM_INSTR_IMPL_A64__cmpne_p_p_zi(Pd, ne, Zn, Pg, imm5, size)
|
---|
17856 |
|
---|
17857 |
|
---|
17858 | /* CMPLE <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #<imm> (ff20e010/25002010) */
|
---|
17859 | //#define IEM_INSTR_IMPL_A64__cmple_p_p_zi(Pd, ne, Zn, Pg, lt, imm5, size)
|
---|
17860 |
|
---|
17861 |
|
---|
17862 |
|
---|
17863 | /*
|
---|
17864 | *
|
---|
17865 | * Instruction Set & Groups: sve_int_sel_vvv / sve_int_select / sve / A64
|
---|
17866 | *
|
---|
17867 | */
|
---|
17868 |
|
---|
17869 | /* SEL <Zd>.<T>, <Pv>, <Zn>.<T>, <Zm>.<T> (ff20c000/0520c000) */
|
---|
17870 | //#define IEM_INSTR_IMPL_A64__sel_z_p_zz(Zd, Zn, Pv, Zm, size)
|
---|
17871 |
|
---|
17872 |
|
---|
17873 |
|
---|
17874 | /*
|
---|
17875 | *
|
---|
17876 | * Instruction Set & Groups: sve_int_setffr / sve_pred_wrffr / sve / A64
|
---|
17877 | *
|
---|
17878 | */
|
---|
17879 |
|
---|
17880 | /* SETFFR (ffffffff/252c9000) */
|
---|
17881 | //#define IEM_INSTR_IMPL_A64__setffr_f()
|
---|
17882 |
|
---|
17883 |
|
---|
17884 |
|
---|
17885 | /*
|
---|
17886 | *
|
---|
17887 | * Instruction Set & Groups: sve_int_sqdmulh / sve_int_unpred_arit_b / sve / A64
|
---|
17888 | *
|
---|
17889 | */
|
---|
17890 |
|
---|
17891 | /* SQDMULH <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/04207000) */
|
---|
17892 | //#define IEM_INSTR_IMPL_A64__sqdmulh_z_zz(Zd, Zn, Zm, size)
|
---|
17893 |
|
---|
17894 |
|
---|
17895 | /* SQRDMULH <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/04207400) */
|
---|
17896 | //#define IEM_INSTR_IMPL_A64__sqrdmulh_z_zz(Zd, Zn, Zm, size)
|
---|
17897 |
|
---|
17898 |
|
---|
17899 |
|
---|
17900 | /*
|
---|
17901 | *
|
---|
17902 | * Instruction Set & Groups: sve_int_tern_log / sve_int_unpred_logical / sve / A64
|
---|
17903 | *
|
---|
17904 | */
|
---|
17905 |
|
---|
17906 | /* EOR3 <Zdn>.D, <Zdn>.D, <Zm>.D, <Zk>.D (ffe0fc00/04203800) */
|
---|
17907 | //#define IEM_INSTR_IMPL_A64__eor3_z_zzz(Zdn, Zk, Zm)
|
---|
17908 |
|
---|
17909 |
|
---|
17910 | /* BCAX <Zdn>.D, <Zdn>.D, <Zm>.D, <Zk>.D (ffe0fc00/04603800) */
|
---|
17911 | //#define IEM_INSTR_IMPL_A64__bcax_z_zzz(Zdn, Zk, Zm)
|
---|
17912 |
|
---|
17913 |
|
---|
17914 | /* BSL <Zdn>.D, <Zdn>.D, <Zm>.D, <Zk>.D (ffe0fc00/04203c00) */
|
---|
17915 | //#define IEM_INSTR_IMPL_A64__bsl_z_zzz(Zdn, Zk, Zm)
|
---|
17916 |
|
---|
17917 |
|
---|
17918 | /* BSL1N <Zdn>.D, <Zdn>.D, <Zm>.D, <Zk>.D (ffe0fc00/04603c00) */
|
---|
17919 | //#define IEM_INSTR_IMPL_A64__bsl1n_z_zzz(Zdn, Zk, Zm)
|
---|
17920 |
|
---|
17921 |
|
---|
17922 | /* BSL2N <Zdn>.D, <Zdn>.D, <Zm>.D, <Zk>.D (ffe0fc00/04a03c00) */
|
---|
17923 | //#define IEM_INSTR_IMPL_A64__bsl2n_z_zzz(Zdn, Zk, Zm)
|
---|
17924 |
|
---|
17925 |
|
---|
17926 | /* NBSL <Zdn>.D, <Zdn>.D, <Zm>.D, <Zk>.D (ffe0fc00/04e03c00) */
|
---|
17927 | //#define IEM_INSTR_IMPL_A64__nbsl_z_zzz(Zdn, Zk, Zm)
|
---|
17928 |
|
---|
17929 |
|
---|
17930 |
|
---|
17931 | /*
|
---|
17932 | *
|
---|
17933 | * Instruction Set & Groups: sve_int_ucmp_vi / sve_cmpuimm / sve / A64
|
---|
17934 | *
|
---|
17935 | */
|
---|
17936 |
|
---|
17937 | /* CMPHS <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #<imm> (ff202010/24200000) */
|
---|
17938 | //#define IEM_INSTR_IMPL_A64__cmphs_p_p_zi(Pd, ne, Zn, Pg, lt, imm7, size)
|
---|
17939 |
|
---|
17940 |
|
---|
17941 | /* CMPHI <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #<imm> (ff202010/24200010) */
|
---|
17942 | //#define IEM_INSTR_IMPL_A64__cmphi_p_p_zi(Pd, ne, Zn, Pg, lt, imm7, size)
|
---|
17943 |
|
---|
17944 |
|
---|
17945 | /* CMPLO <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #<imm> (ff202010/24202000) */
|
---|
17946 | //#define IEM_INSTR_IMPL_A64__cmplo_p_p_zi(Pd, ne, Zn, Pg, lt, imm7, size)
|
---|
17947 |
|
---|
17948 |
|
---|
17949 | /* CMPLS <Pd>.<T>, <Pg>/Z, <Zn>.<T>, #<imm> (ff202010/24202010) */
|
---|
17950 | //#define IEM_INSTR_IMPL_A64__cmpls_p_p_zi(Pd, ne, Zn, Pg, lt, imm7, size)
|
---|
17951 |
|
---|
17952 |
|
---|
17953 |
|
---|
17954 | /*
|
---|
17955 | *
|
---|
17956 | * Instruction Set & Groups: sve_int_un_pred_arit_0 / sve_int_pred_un / sve / A64
|
---|
17957 | *
|
---|
17958 | */
|
---|
17959 |
|
---|
17960 | /* ABS <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/0416a000) */
|
---|
17961 | //#define IEM_INSTR_IMPL_A64__abs_z_p_z_m(Zd, Zn, Pg, size)
|
---|
17962 |
|
---|
17963 |
|
---|
17964 | /* ABS <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/0406a000) */
|
---|
17965 | //#define IEM_INSTR_IMPL_A64__abs_z_p_z_z(Zd, Zn, Pg, size)
|
---|
17966 |
|
---|
17967 |
|
---|
17968 | /* NEG <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/0417a000) */
|
---|
17969 | //#define IEM_INSTR_IMPL_A64__neg_z_p_z_m(Zd, Zn, Pg, size)
|
---|
17970 |
|
---|
17971 |
|
---|
17972 | /* NEG <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/0407a000) */
|
---|
17973 | //#define IEM_INSTR_IMPL_A64__neg_z_p_z_z(Zd, Zn, Pg, size)
|
---|
17974 |
|
---|
17975 |
|
---|
17976 | /* SXTW <Zd>.D, <Pg>/M, <Zn>.D (ff3fe000/0414a000) */
|
---|
17977 | //#define IEM_INSTR_IMPL_A64__sxtw_z_p_z_m(Zd, Zn, Pg, U, size)
|
---|
17978 |
|
---|
17979 |
|
---|
17980 | /* SXTW <Zd>.D, <Pg>/Z, <Zn>.D (ff3fe000/0404a000) */
|
---|
17981 | //#define IEM_INSTR_IMPL_A64__sxtw_z_p_z_z(Zd, Zn, Pg, U, size)
|
---|
17982 |
|
---|
17983 |
|
---|
17984 | /* SXTH <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/0412a000) */
|
---|
17985 | //#define IEM_INSTR_IMPL_A64__sxth_z_p_z_m(Zd, Zn, Pg, U, size)
|
---|
17986 |
|
---|
17987 |
|
---|
17988 | /* SXTH <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/0402a000) */
|
---|
17989 | //#define IEM_INSTR_IMPL_A64__sxth_z_p_z_z(Zd, Zn, Pg, U, size)
|
---|
17990 |
|
---|
17991 |
|
---|
17992 | /* SXTB <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/0410a000) */
|
---|
17993 | //#define IEM_INSTR_IMPL_A64__sxtb_z_p_z_m(Zd, Zn, Pg, U, size)
|
---|
17994 |
|
---|
17995 |
|
---|
17996 | /* SXTB <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/0400a000) */
|
---|
17997 | //#define IEM_INSTR_IMPL_A64__sxtb_z_p_z_z(Zd, Zn, Pg, U, size)
|
---|
17998 |
|
---|
17999 |
|
---|
18000 | /* UXTW <Zd>.D, <Pg>/M, <Zn>.D (ff3fe000/0415a000) */
|
---|
18001 | //#define IEM_INSTR_IMPL_A64__uxtw_z_p_z_m(Zd, Zn, Pg, U, size)
|
---|
18002 |
|
---|
18003 |
|
---|
18004 | /* UXTW <Zd>.D, <Pg>/Z, <Zn>.D (ff3fe000/0405a000) */
|
---|
18005 | //#define IEM_INSTR_IMPL_A64__uxtw_z_p_z_z(Zd, Zn, Pg, U, size)
|
---|
18006 |
|
---|
18007 |
|
---|
18008 | /* UXTH <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/0413a000) */
|
---|
18009 | //#define IEM_INSTR_IMPL_A64__uxth_z_p_z_m(Zd, Zn, Pg, U, size)
|
---|
18010 |
|
---|
18011 |
|
---|
18012 | /* UXTH <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/0403a000) */
|
---|
18013 | //#define IEM_INSTR_IMPL_A64__uxth_z_p_z_z(Zd, Zn, Pg, U, size)
|
---|
18014 |
|
---|
18015 |
|
---|
18016 | /* UXTB <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/0411a000) */
|
---|
18017 | //#define IEM_INSTR_IMPL_A64__uxtb_z_p_z_m(Zd, Zn, Pg, U, size)
|
---|
18018 |
|
---|
18019 |
|
---|
18020 | /* UXTB <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/0401a000) */
|
---|
18021 | //#define IEM_INSTR_IMPL_A64__uxtb_z_p_z_z(Zd, Zn, Pg, U, size)
|
---|
18022 |
|
---|
18023 |
|
---|
18024 |
|
---|
18025 | /*
|
---|
18026 | *
|
---|
18027 | * Instruction Set & Groups: sve_int_un_pred_arit_1 / sve_int_pred_un / sve / A64
|
---|
18028 | *
|
---|
18029 | */
|
---|
18030 |
|
---|
18031 | /* CLS <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/0418a000) */
|
---|
18032 | //#define IEM_INSTR_IMPL_A64__cls_z_p_z_m(Zd, Zn, Pg, size)
|
---|
18033 |
|
---|
18034 |
|
---|
18035 | /* CLS <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/0408a000) */
|
---|
18036 | //#define IEM_INSTR_IMPL_A64__cls_z_p_z_z(Zd, Zn, Pg, size)
|
---|
18037 |
|
---|
18038 |
|
---|
18039 | /* CLZ <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/0419a000) */
|
---|
18040 | //#define IEM_INSTR_IMPL_A64__clz_z_p_z_m(Zd, Zn, Pg, size)
|
---|
18041 |
|
---|
18042 |
|
---|
18043 | /* CLZ <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/0409a000) */
|
---|
18044 | //#define IEM_INSTR_IMPL_A64__clz_z_p_z_z(Zd, Zn, Pg, size)
|
---|
18045 |
|
---|
18046 |
|
---|
18047 | /* CNT <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/041aa000) */
|
---|
18048 | //#define IEM_INSTR_IMPL_A64__cnt_z_p_z_m(Zd, Zn, Pg, size)
|
---|
18049 |
|
---|
18050 |
|
---|
18051 | /* CNT <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/040aa000) */
|
---|
18052 | //#define IEM_INSTR_IMPL_A64__cnt_z_p_z_z(Zd, Zn, Pg, size)
|
---|
18053 |
|
---|
18054 |
|
---|
18055 | /* CNOT <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/041ba000) */
|
---|
18056 | //#define IEM_INSTR_IMPL_A64__cnot_z_p_z_m(Zd, Zn, Pg, size)
|
---|
18057 |
|
---|
18058 |
|
---|
18059 | /* CNOT <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/040ba000) */
|
---|
18060 | //#define IEM_INSTR_IMPL_A64__cnot_z_p_z_z(Zd, Zn, Pg, size)
|
---|
18061 |
|
---|
18062 |
|
---|
18063 | /* FABS <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/041ca000) */
|
---|
18064 | //#define IEM_INSTR_IMPL_A64__fabs_z_p_z_m(Zd, Zn, Pg, size)
|
---|
18065 |
|
---|
18066 |
|
---|
18067 | /* FABS <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/040ca000) */
|
---|
18068 | //#define IEM_INSTR_IMPL_A64__fabs_z_p_z_z(Zd, Zn, Pg, size)
|
---|
18069 |
|
---|
18070 |
|
---|
18071 | /* FNEG <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/041da000) */
|
---|
18072 | //#define IEM_INSTR_IMPL_A64__fneg_z_p_z_m(Zd, Zn, Pg, size)
|
---|
18073 |
|
---|
18074 |
|
---|
18075 | /* FNEG <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/040da000) */
|
---|
18076 | //#define IEM_INSTR_IMPL_A64__fneg_z_p_z_z(Zd, Zn, Pg, size)
|
---|
18077 |
|
---|
18078 |
|
---|
18079 | /* NOT <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/041ea000) */
|
---|
18080 | //#define IEM_INSTR_IMPL_A64__not_z_p_z_m(Zd, Zn, Pg, size)
|
---|
18081 |
|
---|
18082 |
|
---|
18083 | /* NOT <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/040ea000) */
|
---|
18084 | //#define IEM_INSTR_IMPL_A64__not_z_p_z_z(Zd, Zn, Pg, size)
|
---|
18085 |
|
---|
18086 |
|
---|
18087 |
|
---|
18088 | /*
|
---|
18089 | *
|
---|
18090 | * Instruction Set & Groups: sve_int_while_rr / sve_cmpgpr / sve / A64
|
---|
18091 | *
|
---|
18092 | */
|
---|
18093 |
|
---|
18094 | /* WHILEGE <Pd>.<T>, <R><n>, <R><m> (ff20ec10/25200000) */
|
---|
18095 | //#define IEM_INSTR_IMPL_A64__whilege_p_p_rr(Pd, eq, Rn, lt, sf, Rm, size)
|
---|
18096 |
|
---|
18097 |
|
---|
18098 | /* WHILEHS <Pd>.<T>, <R><n>, <R><m> (ff20ec10/25200800) */
|
---|
18099 | //#define IEM_INSTR_IMPL_A64__whilehs_p_p_rr(Pd, eq, Rn, lt, sf, Rm, size)
|
---|
18100 |
|
---|
18101 |
|
---|
18102 | /* WHILEGT <Pd>.<T>, <R><n>, <R><m> (ff20ec10/25200010) */
|
---|
18103 | //#define IEM_INSTR_IMPL_A64__whilegt_p_p_rr(Pd, eq, Rn, lt, sf, Rm, size)
|
---|
18104 |
|
---|
18105 |
|
---|
18106 | /* WHILEHI <Pd>.<T>, <R><n>, <R><m> (ff20ec10/25200810) */
|
---|
18107 | //#define IEM_INSTR_IMPL_A64__whilehi_p_p_rr(Pd, eq, Rn, lt, sf, Rm, size)
|
---|
18108 |
|
---|
18109 |
|
---|
18110 | /* WHILELT <Pd>.<T>, <R><n>, <R><m> (ff20ec10/25200400) */
|
---|
18111 | //#define IEM_INSTR_IMPL_A64__whilelt_p_p_rr(Pd, eq, Rn, lt, sf, Rm, size)
|
---|
18112 |
|
---|
18113 |
|
---|
18114 | /* WHILELO <Pd>.<T>, <R><n>, <R><m> (ff20ec10/25200c00) */
|
---|
18115 | //#define IEM_INSTR_IMPL_A64__whilelo_p_p_rr(Pd, eq, Rn, lt, sf, Rm, size)
|
---|
18116 |
|
---|
18117 |
|
---|
18118 | /* WHILELE <Pd>.<T>, <R><n>, <R><m> (ff20ec10/25200410) */
|
---|
18119 | //#define IEM_INSTR_IMPL_A64__whilele_p_p_rr(Pd, eq, Rn, lt, sf, Rm, size)
|
---|
18120 |
|
---|
18121 |
|
---|
18122 | /* WHILELS <Pd>.<T>, <R><n>, <R><m> (ff20ec10/25200c10) */
|
---|
18123 | //#define IEM_INSTR_IMPL_A64__whilels_p_p_rr(Pd, eq, Rn, lt, sf, Rm, size)
|
---|
18124 |
|
---|
18125 |
|
---|
18126 |
|
---|
18127 | /*
|
---|
18128 | *
|
---|
18129 | * Instruction Set & Groups: sve_int_while_rr_pair / sve_while_pn / sve / A64
|
---|
18130 | *
|
---|
18131 | */
|
---|
18132 |
|
---|
18133 | /* WHILEGE { <Pd1>.<T>, <Pd2>.<T> }, <Xn>, <Xm> (ff20fc11/25205010) */
|
---|
18134 | //#define IEM_INSTR_IMPL_A64__whilege_pp_rr(eq, Pd, Rn, lt, Rm, size)
|
---|
18135 |
|
---|
18136 |
|
---|
18137 | /* WHILEHS { <Pd1>.<T>, <Pd2>.<T> }, <Xn>, <Xm> (ff20fc11/25205810) */
|
---|
18138 | //#define IEM_INSTR_IMPL_A64__whilehs_pp_rr(eq, Pd, Rn, lt, Rm, size)
|
---|
18139 |
|
---|
18140 |
|
---|
18141 | /* WHILEGT { <Pd1>.<T>, <Pd2>.<T> }, <Xn>, <Xm> (ff20fc11/25205011) */
|
---|
18142 | //#define IEM_INSTR_IMPL_A64__whilegt_pp_rr(eq, Pd, Rn, lt, Rm, size)
|
---|
18143 |
|
---|
18144 |
|
---|
18145 | /* WHILEHI { <Pd1>.<T>, <Pd2>.<T> }, <Xn>, <Xm> (ff20fc11/25205811) */
|
---|
18146 | //#define IEM_INSTR_IMPL_A64__whilehi_pp_rr(eq, Pd, Rn, lt, Rm, size)
|
---|
18147 |
|
---|
18148 |
|
---|
18149 | /* WHILELT { <Pd1>.<T>, <Pd2>.<T> }, <Xn>, <Xm> (ff20fc11/25205410) */
|
---|
18150 | //#define IEM_INSTR_IMPL_A64__whilelt_pp_rr(eq, Pd, Rn, lt, Rm, size)
|
---|
18151 |
|
---|
18152 |
|
---|
18153 | /* WHILELO { <Pd1>.<T>, <Pd2>.<T> }, <Xn>, <Xm> (ff20fc11/25205c10) */
|
---|
18154 | //#define IEM_INSTR_IMPL_A64__whilelo_pp_rr(eq, Pd, Rn, lt, Rm, size)
|
---|
18155 |
|
---|
18156 |
|
---|
18157 | /* WHILELE { <Pd1>.<T>, <Pd2>.<T> }, <Xn>, <Xm> (ff20fc11/25205411) */
|
---|
18158 | //#define IEM_INSTR_IMPL_A64__whilele_pp_rr(eq, Pd, Rn, lt, Rm, size)
|
---|
18159 |
|
---|
18160 |
|
---|
18161 | /* WHILELS { <Pd1>.<T>, <Pd2>.<T> }, <Xn>, <Xm> (ff20fc11/25205c11) */
|
---|
18162 | //#define IEM_INSTR_IMPL_A64__whilels_pp_rr(eq, Pd, Rn, lt, Rm, size)
|
---|
18163 |
|
---|
18164 |
|
---|
18165 |
|
---|
18166 | /*
|
---|
18167 | *
|
---|
18168 | * Instruction Set & Groups: sve_int_while_rr_pn / sve_while_pn / sve / A64
|
---|
18169 | *
|
---|
18170 | */
|
---|
18171 |
|
---|
18172 | /* WHILEGE <PNd>.<T>, <Xn>, <Xm>, <vl> (ff20dc18/25204010) */
|
---|
18173 | //#define IEM_INSTR_IMPL_A64__whilege_pn_rr(PNd, eq, Rn, lt, vl, Rm, size)
|
---|
18174 |
|
---|
18175 |
|
---|
18176 | /* WHILEHS <PNd>.<T>, <Xn>, <Xm>, <vl> (ff20dc18/25204810) */
|
---|
18177 | //#define IEM_INSTR_IMPL_A64__whilehs_pn_rr(PNd, eq, Rn, lt, vl, Rm, size)
|
---|
18178 |
|
---|
18179 |
|
---|
18180 | /* WHILEGT <PNd>.<T>, <Xn>, <Xm>, <vl> (ff20dc18/25204018) */
|
---|
18181 | //#define IEM_INSTR_IMPL_A64__whilegt_pn_rr(PNd, eq, Rn, lt, vl, Rm, size)
|
---|
18182 |
|
---|
18183 |
|
---|
18184 | /* WHILEHI <PNd>.<T>, <Xn>, <Xm>, <vl> (ff20dc18/25204818) */
|
---|
18185 | //#define IEM_INSTR_IMPL_A64__whilehi_pn_rr(PNd, eq, Rn, lt, vl, Rm, size)
|
---|
18186 |
|
---|
18187 |
|
---|
18188 | /* WHILELT <PNd>.<T>, <Xn>, <Xm>, <vl> (ff20dc18/25204410) */
|
---|
18189 | //#define IEM_INSTR_IMPL_A64__whilelt_pn_rr(PNd, eq, Rn, lt, vl, Rm, size)
|
---|
18190 |
|
---|
18191 |
|
---|
18192 | /* WHILELO <PNd>.<T>, <Xn>, <Xm>, <vl> (ff20dc18/25204c10) */
|
---|
18193 | //#define IEM_INSTR_IMPL_A64__whilelo_pn_rr(PNd, eq, Rn, lt, vl, Rm, size)
|
---|
18194 |
|
---|
18195 |
|
---|
18196 | /* WHILELE <PNd>.<T>, <Xn>, <Xm>, <vl> (ff20dc18/25204418) */
|
---|
18197 | //#define IEM_INSTR_IMPL_A64__whilele_pn_rr(PNd, eq, Rn, lt, vl, Rm, size)
|
---|
18198 |
|
---|
18199 |
|
---|
18200 | /* WHILELS <PNd>.<T>, <Xn>, <Xm>, <vl> (ff20dc18/25204c18) */
|
---|
18201 | //#define IEM_INSTR_IMPL_A64__whilels_pn_rr(PNd, eq, Rn, lt, vl, Rm, size)
|
---|
18202 |
|
---|
18203 |
|
---|
18204 |
|
---|
18205 | /*
|
---|
18206 | *
|
---|
18207 | * Instruction Set & Groups: sve_int_whilenc / sve_cmpgpr / sve / A64
|
---|
18208 | *
|
---|
18209 | */
|
---|
18210 |
|
---|
18211 | /* WHILEWR <Pd>.<T>, <Xn>, <Xm> (ff20fc10/25203000) */
|
---|
18212 | //#define IEM_INSTR_IMPL_A64__whilewr_p_rr(Pd, Rn, Rm, size)
|
---|
18213 |
|
---|
18214 |
|
---|
18215 | /* WHILERW <Pd>.<T>, <Xn>, <Xm> (ff20fc10/25203010) */
|
---|
18216 | //#define IEM_INSTR_IMPL_A64__whilerw_p_rr(Pd, Rn, Rm, size)
|
---|
18217 |
|
---|
18218 |
|
---|
18219 |
|
---|
18220 | /*
|
---|
18221 | *
|
---|
18222 | * Instruction Set & Groups: sve_int_wrffr / sve_pred_wrffr / sve / A64
|
---|
18223 | *
|
---|
18224 | */
|
---|
18225 |
|
---|
18226 | /* WRFFR <Pn>.B (fffffe1f/25289000) */
|
---|
18227 | //#define IEM_INSTR_IMPL_A64__wrffr_f_p(Pn)
|
---|
18228 |
|
---|
18229 |
|
---|
18230 |
|
---|
18231 | /*
|
---|
18232 | *
|
---|
18233 | * Instruction Set & Groups: sve_intx_aba / sve_intx_acc / sve / A64
|
---|
18234 | *
|
---|
18235 | */
|
---|
18236 |
|
---|
18237 | /* SABA <Zda>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/4500f800) */
|
---|
18238 | //#define IEM_INSTR_IMPL_A64__saba_z_zzz(Zda, Zn, U, Zm, size)
|
---|
18239 |
|
---|
18240 |
|
---|
18241 | /* UABA <Zda>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/4500fc00) */
|
---|
18242 | //#define IEM_INSTR_IMPL_A64__uaba_z_zzz(Zda, Zn, U, Zm, size)
|
---|
18243 |
|
---|
18244 |
|
---|
18245 |
|
---|
18246 | /*
|
---|
18247 | *
|
---|
18248 | * Instruction Set & Groups: sve_intx_aba_long / sve_intx_acc / sve / A64
|
---|
18249 | *
|
---|
18250 | */
|
---|
18251 |
|
---|
18252 | /* SABALB <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/4500c000) */
|
---|
18253 | //#define IEM_INSTR_IMPL_A64__sabalb_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
18254 |
|
---|
18255 |
|
---|
18256 | /* SABALT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/4500c400) */
|
---|
18257 | //#define IEM_INSTR_IMPL_A64__sabalt_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
18258 |
|
---|
18259 |
|
---|
18260 | /* UABALB <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/4500c800) */
|
---|
18261 | //#define IEM_INSTR_IMPL_A64__uabalb_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
18262 |
|
---|
18263 |
|
---|
18264 | /* UABALT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/4500cc00) */
|
---|
18265 | //#define IEM_INSTR_IMPL_A64__uabalt_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
18266 |
|
---|
18267 |
|
---|
18268 |
|
---|
18269 | /*
|
---|
18270 | *
|
---|
18271 | * Instruction Set & Groups: sve_intx_accumulate_long_pairs / sve_intx_predicated / sve / A64
|
---|
18272 | *
|
---|
18273 | */
|
---|
18274 |
|
---|
18275 | /* SADALP <Zda>.<T>, <Pg>/M, <Zn>.<Tb> (ff3fe000/4404a000) */
|
---|
18276 | //#define IEM_INSTR_IMPL_A64__sadalp_z_p_z(Zda, Zn, Pg, U, size)
|
---|
18277 |
|
---|
18278 |
|
---|
18279 | /* UADALP <Zda>.<T>, <Pg>/M, <Zn>.<Tb> (ff3fe000/4405a000) */
|
---|
18280 | //#define IEM_INSTR_IMPL_A64__uadalp_z_p_z(Zda, Zn, Pg, U, size)
|
---|
18281 |
|
---|
18282 |
|
---|
18283 |
|
---|
18284 | /*
|
---|
18285 | *
|
---|
18286 | * Instruction Set & Groups: sve_intx_adc_long / sve_intx_acc / sve / A64
|
---|
18287 | *
|
---|
18288 | */
|
---|
18289 |
|
---|
18290 | /* ADCLB <Zda>.<T>, <Zn>.<T>, <Zm>.<T> (ffa0fc00/4500d000) */
|
---|
18291 | //#define IEM_INSTR_IMPL_A64__adclb_z_zzz(Zda, Zn, T, Zm, sz)
|
---|
18292 |
|
---|
18293 |
|
---|
18294 | /* SBCLB <Zda>.<T>, <Zn>.<T>, <Zm>.<T> (ffa0fc00/4580d000) */
|
---|
18295 | //#define IEM_INSTR_IMPL_A64__sbclb_z_zzz(Zda, Zn, T, Zm, sz)
|
---|
18296 |
|
---|
18297 |
|
---|
18298 | /* ADCLT <Zda>.<T>, <Zn>.<T>, <Zm>.<T> (ffa0fc00/4500d400) */
|
---|
18299 | //#define IEM_INSTR_IMPL_A64__adclt_z_zzz(Zda, Zn, T, Zm, sz)
|
---|
18300 |
|
---|
18301 |
|
---|
18302 | /* SBCLT <Zda>.<T>, <Zn>.<T>, <Zm>.<T> (ffa0fc00/4580d400) */
|
---|
18303 | //#define IEM_INSTR_IMPL_A64__sbclt_z_zzz(Zda, Zn, T, Zm, sz)
|
---|
18304 |
|
---|
18305 |
|
---|
18306 |
|
---|
18307 | /*
|
---|
18308 | *
|
---|
18309 | * Instruction Set & Groups: sve_intx_arith_binary_pairs / sve_intx_predicated / sve / A64
|
---|
18310 | *
|
---|
18311 | */
|
---|
18312 |
|
---|
18313 | /* ADDP <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/4411a000) */
|
---|
18314 | //#define IEM_INSTR_IMPL_A64__addp_z_p_zz(Zdn, Zm, Pg, size)
|
---|
18315 |
|
---|
18316 |
|
---|
18317 | /* SMAXP <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/4414a000) */
|
---|
18318 | //#define IEM_INSTR_IMPL_A64__smaxp_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18319 |
|
---|
18320 |
|
---|
18321 | /* SMINP <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/4416a000) */
|
---|
18322 | //#define IEM_INSTR_IMPL_A64__sminp_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18323 |
|
---|
18324 |
|
---|
18325 | /* UMAXP <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/4415a000) */
|
---|
18326 | //#define IEM_INSTR_IMPL_A64__umaxp_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18327 |
|
---|
18328 |
|
---|
18329 | /* UMINP <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/4417a000) */
|
---|
18330 | //#define IEM_INSTR_IMPL_A64__uminp_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18331 |
|
---|
18332 |
|
---|
18333 |
|
---|
18334 | /*
|
---|
18335 | *
|
---|
18336 | * Instruction Set & Groups: sve_intx_arith_narrow / sve_intx_narrowing / sve / A64
|
---|
18337 | *
|
---|
18338 | */
|
---|
18339 |
|
---|
18340 | /* ADDHNB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45206000) */
|
---|
18341 | //#define IEM_INSTR_IMPL_A64__addhnb_z_zz(Zd, Zn, T, Zm, size)
|
---|
18342 |
|
---|
18343 |
|
---|
18344 | /* RADDHNB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45206800) */
|
---|
18345 | //#define IEM_INSTR_IMPL_A64__raddhnb_z_zz(Zd, Zn, T, Zm, size)
|
---|
18346 |
|
---|
18347 |
|
---|
18348 | /* SUBHNB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45207000) */
|
---|
18349 | //#define IEM_INSTR_IMPL_A64__subhnb_z_zz(Zd, Zn, T, Zm, size)
|
---|
18350 |
|
---|
18351 |
|
---|
18352 | /* RSUBHNB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45207800) */
|
---|
18353 | //#define IEM_INSTR_IMPL_A64__rsubhnb_z_zz(Zd, Zn, T, Zm, size)
|
---|
18354 |
|
---|
18355 |
|
---|
18356 | /* ADDHNT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45206400) */
|
---|
18357 | //#define IEM_INSTR_IMPL_A64__addhnt_z_zz(Zd, Zn, T, Zm, size)
|
---|
18358 |
|
---|
18359 |
|
---|
18360 | /* RADDHNT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45206c00) */
|
---|
18361 | //#define IEM_INSTR_IMPL_A64__raddhnt_z_zz(Zd, Zn, T, Zm, size)
|
---|
18362 |
|
---|
18363 |
|
---|
18364 | /* SUBHNT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45207400) */
|
---|
18365 | //#define IEM_INSTR_IMPL_A64__subhnt_z_zz(Zd, Zn, T, Zm, size)
|
---|
18366 |
|
---|
18367 |
|
---|
18368 | /* RSUBHNT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45207c00) */
|
---|
18369 | //#define IEM_INSTR_IMPL_A64__rsubhnt_z_zz(Zd, Zn, T, Zm, size)
|
---|
18370 |
|
---|
18371 |
|
---|
18372 |
|
---|
18373 | /*
|
---|
18374 | *
|
---|
18375 | * Instruction Set & Groups: sve_intx_bin_pred_shift_sat_round / sve_intx_predicated / sve / A64
|
---|
18376 | *
|
---|
18377 | */
|
---|
18378 |
|
---|
18379 | /* SRSHL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44028000) */
|
---|
18380 | //#define IEM_INSTR_IMPL_A64__srshl_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18381 |
|
---|
18382 |
|
---|
18383 | /* SRSHLR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44068000) */
|
---|
18384 | //#define IEM_INSTR_IMPL_A64__srshlr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18385 |
|
---|
18386 |
|
---|
18387 | /* SQSHL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44088000) */
|
---|
18388 | //#define IEM_INSTR_IMPL_A64__sqshl_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18389 |
|
---|
18390 |
|
---|
18391 | /* SQRSHL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/440a8000) */
|
---|
18392 | //#define IEM_INSTR_IMPL_A64__sqrshl_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18393 |
|
---|
18394 |
|
---|
18395 | /* SQSHLR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/440c8000) */
|
---|
18396 | //#define IEM_INSTR_IMPL_A64__sqshlr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18397 |
|
---|
18398 |
|
---|
18399 | /* SQRSHLR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/440e8000) */
|
---|
18400 | //#define IEM_INSTR_IMPL_A64__sqrshlr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18401 |
|
---|
18402 |
|
---|
18403 | /* URSHL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44038000) */
|
---|
18404 | //#define IEM_INSTR_IMPL_A64__urshl_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18405 |
|
---|
18406 |
|
---|
18407 | /* URSHLR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44078000) */
|
---|
18408 | //#define IEM_INSTR_IMPL_A64__urshlr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18409 |
|
---|
18410 |
|
---|
18411 | /* UQSHL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44098000) */
|
---|
18412 | //#define IEM_INSTR_IMPL_A64__uqshl_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18413 |
|
---|
18414 |
|
---|
18415 | /* UQRSHL <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/440b8000) */
|
---|
18416 | //#define IEM_INSTR_IMPL_A64__uqrshl_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18417 |
|
---|
18418 |
|
---|
18419 | /* UQSHLR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/440d8000) */
|
---|
18420 | //#define IEM_INSTR_IMPL_A64__uqshlr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18421 |
|
---|
18422 |
|
---|
18423 | /* UQRSHLR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/440f8000) */
|
---|
18424 | //#define IEM_INSTR_IMPL_A64__uqrshlr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
18425 |
|
---|
18426 |
|
---|
18427 |
|
---|
18428 | /*
|
---|
18429 | *
|
---|
18430 | * Instruction Set & Groups: sve_intx_cadd / sve_intx_acc / sve / A64
|
---|
18431 | *
|
---|
18432 | */
|
---|
18433 |
|
---|
18434 | /* CADD <Zdn>.<T>, <Zdn>.<T>, <Zm>.<T>, <const> (ff3ff800/4500d800) */
|
---|
18435 | //#define IEM_INSTR_IMPL_A64__cadd_z_zz(Zdn, Zm, rot, size)
|
---|
18436 |
|
---|
18437 |
|
---|
18438 | /* SQCADD <Zdn>.<T>, <Zdn>.<T>, <Zm>.<T>, <const> (ff3ff800/4501d800) */
|
---|
18439 | //#define IEM_INSTR_IMPL_A64__sqcadd_z_zz(Zdn, Zm, rot, size)
|
---|
18440 |
|
---|
18441 |
|
---|
18442 |
|
---|
18443 | /*
|
---|
18444 | *
|
---|
18445 | * Instruction Set & Groups: sve_intx_cdot / sve_intx_muladd_unpred / sve / A64
|
---|
18446 | *
|
---|
18447 | */
|
---|
18448 |
|
---|
18449 | /* CDOT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb>, <const> (ff20f000/44001000) */
|
---|
18450 | //#define IEM_INSTR_IMPL_A64__cdot_z_zzz(Zda, Zn, rot, Zm, size)
|
---|
18451 |
|
---|
18452 |
|
---|
18453 |
|
---|
18454 | /*
|
---|
18455 | *
|
---|
18456 | * Instruction Set & Groups: sve_intx_cdot_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
18457 | *
|
---|
18458 | */
|
---|
18459 |
|
---|
18460 | /* CDOT <Zda>.S, <Zn>.B, <Zm>.B[<imm>], <const> (ffe0f000/44a04000) */
|
---|
18461 | //#define IEM_INSTR_IMPL_A64__cdot_z_zzzi_s(Zda, Zn, rot, Zm, i2)
|
---|
18462 |
|
---|
18463 |
|
---|
18464 | /* CDOT <Zda>.D, <Zn>.H, <Zm>.H[<imm>], <const> (ffe0f000/44e04000) */
|
---|
18465 | //#define IEM_INSTR_IMPL_A64__cdot_z_zzzi_d(Zda, Zn, rot, Zm, i1)
|
---|
18466 |
|
---|
18467 |
|
---|
18468 |
|
---|
18469 | /*
|
---|
18470 | *
|
---|
18471 | * Instruction Set & Groups: sve_intx_clamp_lvl2 / sve_intx_clamp / sve / A64
|
---|
18472 | *
|
---|
18473 | */
|
---|
18474 |
|
---|
18475 | /* SCLAMP <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/4400c000) */
|
---|
18476 | //#define IEM_INSTR_IMPL_A64__sclamp_z_zz(Zd, Zn, Zm, size)
|
---|
18477 |
|
---|
18478 |
|
---|
18479 | /* UCLAMP <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/4400c400) */
|
---|
18480 | //#define IEM_INSTR_IMPL_A64__uclamp_z_zz(Zd, Zn, Zm, size)
|
---|
18481 |
|
---|
18482 |
|
---|
18483 |
|
---|
18484 | /*
|
---|
18485 | *
|
---|
18486 | * Instruction Set & Groups: sve_intx_clong / sve_intx_constructive / sve / A64
|
---|
18487 | *
|
---|
18488 | */
|
---|
18489 |
|
---|
18490 | /* SADDLBT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45008000) */
|
---|
18491 | //#define IEM_INSTR_IMPL_A64__saddlbt_z_zz(Zd, Zn, Zm, size)
|
---|
18492 |
|
---|
18493 |
|
---|
18494 | /* SSUBLBT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45008800) */
|
---|
18495 | //#define IEM_INSTR_IMPL_A64__ssublbt_z_zz(Zd, Zn, Zm, size)
|
---|
18496 |
|
---|
18497 |
|
---|
18498 | /* SSUBLTB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45008c00) */
|
---|
18499 | //#define IEM_INSTR_IMPL_A64__ssubltb_z_zz(Zd, Zn, Zm, size)
|
---|
18500 |
|
---|
18501 |
|
---|
18502 |
|
---|
18503 | /*
|
---|
18504 | *
|
---|
18505 | * Instruction Set & Groups: sve_intx_cmla / sve_intx_muladd_unpred / sve / A64
|
---|
18506 | *
|
---|
18507 | */
|
---|
18508 |
|
---|
18509 | /* CMLA <Zda>.<T>, <Zn>.<T>, <Zm>.<T>, <const> (ff20f000/44002000) */
|
---|
18510 | //#define IEM_INSTR_IMPL_A64__cmla_z_zzz(Zda, Zn, rot, Zm, size)
|
---|
18511 |
|
---|
18512 |
|
---|
18513 | /* SQRDCMLAH <Zda>.<T>, <Zn>.<T>, <Zm>.<T>, <const> (ff20f000/44003000) */
|
---|
18514 | //#define IEM_INSTR_IMPL_A64__sqrdcmlah_z_zzz(Zda, Zn, rot, Zm, size)
|
---|
18515 |
|
---|
18516 |
|
---|
18517 |
|
---|
18518 | /*
|
---|
18519 | *
|
---|
18520 | * Instruction Set & Groups: sve_intx_cmla_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
18521 | *
|
---|
18522 | */
|
---|
18523 |
|
---|
18524 | /* CMLA <Zda>.H, <Zn>.H, <Zm>.H[<imm>], <const> (ffe0f000/44a06000) */
|
---|
18525 | //#define IEM_INSTR_IMPL_A64__cmla_z_zzzi_h(Zda, Zn, rot, Zm, i2)
|
---|
18526 |
|
---|
18527 |
|
---|
18528 | /* CMLA <Zda>.S, <Zn>.S, <Zm>.S[<imm>], <const> (ffe0f000/44e06000) */
|
---|
18529 | //#define IEM_INSTR_IMPL_A64__cmla_z_zzzi_s(Zda, Zn, rot, Zm, i1)
|
---|
18530 |
|
---|
18531 |
|
---|
18532 |
|
---|
18533 | /*
|
---|
18534 | *
|
---|
18535 | * Instruction Set & Groups: sve_intx_cons_arith_long / sve_intx_cons_widening / sve / A64
|
---|
18536 | *
|
---|
18537 | */
|
---|
18538 |
|
---|
18539 | /* SADDLB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45000000) */
|
---|
18540 | //#define IEM_INSTR_IMPL_A64__saddlb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18541 |
|
---|
18542 |
|
---|
18543 | /* SSUBLB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45001000) */
|
---|
18544 | //#define IEM_INSTR_IMPL_A64__ssublb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18545 |
|
---|
18546 |
|
---|
18547 | /* SABDLB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45003000) */
|
---|
18548 | //#define IEM_INSTR_IMPL_A64__sabdlb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18549 |
|
---|
18550 |
|
---|
18551 | /* SADDLT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45000400) */
|
---|
18552 | //#define IEM_INSTR_IMPL_A64__saddlt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18553 |
|
---|
18554 |
|
---|
18555 | /* SSUBLT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45001400) */
|
---|
18556 | //#define IEM_INSTR_IMPL_A64__ssublt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18557 |
|
---|
18558 |
|
---|
18559 | /* SABDLT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45003400) */
|
---|
18560 | //#define IEM_INSTR_IMPL_A64__sabdlt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18561 |
|
---|
18562 |
|
---|
18563 | /* UADDLB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45000800) */
|
---|
18564 | //#define IEM_INSTR_IMPL_A64__uaddlb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18565 |
|
---|
18566 |
|
---|
18567 | /* USUBLB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45001800) */
|
---|
18568 | //#define IEM_INSTR_IMPL_A64__usublb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18569 |
|
---|
18570 |
|
---|
18571 | /* UABDLB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45003800) */
|
---|
18572 | //#define IEM_INSTR_IMPL_A64__uabdlb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18573 |
|
---|
18574 |
|
---|
18575 | /* UADDLT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45000c00) */
|
---|
18576 | //#define IEM_INSTR_IMPL_A64__uaddlt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18577 |
|
---|
18578 |
|
---|
18579 | /* USUBLT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45001c00) */
|
---|
18580 | //#define IEM_INSTR_IMPL_A64__usublt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18581 |
|
---|
18582 |
|
---|
18583 | /* UABDLT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45003c00) */
|
---|
18584 | //#define IEM_INSTR_IMPL_A64__uabdlt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18585 |
|
---|
18586 |
|
---|
18587 |
|
---|
18588 | /*
|
---|
18589 | *
|
---|
18590 | * Instruction Set & Groups: sve_intx_cons_arith_wide / sve_intx_cons_widening / sve / A64
|
---|
18591 | *
|
---|
18592 | */
|
---|
18593 |
|
---|
18594 | /* SADDWB <Zd>.<T>, <Zn>.<T>, <Zm>.<Tb> (ff20fc00/45004000) */
|
---|
18595 | //#define IEM_INSTR_IMPL_A64__saddwb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18596 |
|
---|
18597 |
|
---|
18598 | /* SSUBWB <Zd>.<T>, <Zn>.<T>, <Zm>.<Tb> (ff20fc00/45005000) */
|
---|
18599 | //#define IEM_INSTR_IMPL_A64__ssubwb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18600 |
|
---|
18601 |
|
---|
18602 | /* SADDWT <Zd>.<T>, <Zn>.<T>, <Zm>.<Tb> (ff20fc00/45004400) */
|
---|
18603 | //#define IEM_INSTR_IMPL_A64__saddwt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18604 |
|
---|
18605 |
|
---|
18606 | /* SSUBWT <Zd>.<T>, <Zn>.<T>, <Zm>.<Tb> (ff20fc00/45005400) */
|
---|
18607 | //#define IEM_INSTR_IMPL_A64__ssubwt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18608 |
|
---|
18609 |
|
---|
18610 | /* UADDWB <Zd>.<T>, <Zn>.<T>, <Zm>.<Tb> (ff20fc00/45004800) */
|
---|
18611 | //#define IEM_INSTR_IMPL_A64__uaddwb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18612 |
|
---|
18613 |
|
---|
18614 | /* USUBWB <Zd>.<T>, <Zn>.<T>, <Zm>.<Tb> (ff20fc00/45005800) */
|
---|
18615 | //#define IEM_INSTR_IMPL_A64__usubwb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18616 |
|
---|
18617 |
|
---|
18618 | /* UADDWT <Zd>.<T>, <Zn>.<T>, <Zm>.<Tb> (ff20fc00/45004c00) */
|
---|
18619 | //#define IEM_INSTR_IMPL_A64__uaddwt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18620 |
|
---|
18621 |
|
---|
18622 | /* USUBWT <Zd>.<T>, <Zn>.<T>, <Zm>.<Tb> (ff20fc00/45005c00) */
|
---|
18623 | //#define IEM_INSTR_IMPL_A64__usubwt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18624 |
|
---|
18625 |
|
---|
18626 |
|
---|
18627 | /*
|
---|
18628 | *
|
---|
18629 | * Instruction Set & Groups: sve_intx_cons_mul_long / sve_intx_cons_widening / sve / A64
|
---|
18630 | *
|
---|
18631 | */
|
---|
18632 |
|
---|
18633 | /* SQDMULLB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45006000) */
|
---|
18634 | //#define IEM_INSTR_IMPL_A64__sqdmullb_z_zz(Zd, Zn, T, Zm, size)
|
---|
18635 |
|
---|
18636 |
|
---|
18637 | /* PMULLB <Zd>.Q, <Zn>.D, <Zm>.D (ffe0fc00/45006800) */
|
---|
18638 | //#define IEM_INSTR_IMPL_A64__pmullb_z_zz_q(Zd, Zn, T, Zm)
|
---|
18639 |
|
---|
18640 |
|
---|
18641 | /* PMULLB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45006800) */
|
---|
18642 | //#define IEM_INSTR_IMPL_A64__pmullb_z_zz(Zd, Zn, T, Zm, size)
|
---|
18643 |
|
---|
18644 |
|
---|
18645 | /* SMULLB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45007000) */
|
---|
18646 | //#define IEM_INSTR_IMPL_A64__smullb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18647 |
|
---|
18648 |
|
---|
18649 | /* SQDMULLT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45006400) */
|
---|
18650 | //#define IEM_INSTR_IMPL_A64__sqdmullt_z_zz(Zd, Zn, T, Zm, size)
|
---|
18651 |
|
---|
18652 |
|
---|
18653 | /* PMULLT <Zd>.Q, <Zn>.D, <Zm>.D (ffe0fc00/45006c00) */
|
---|
18654 | //#define IEM_INSTR_IMPL_A64__pmullt_z_zz_q(Zd, Zn, T, Zm)
|
---|
18655 |
|
---|
18656 |
|
---|
18657 | /* PMULLT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45006c00) */
|
---|
18658 | //#define IEM_INSTR_IMPL_A64__pmullt_z_zz(Zd, Zn, T, Zm, size)
|
---|
18659 |
|
---|
18660 |
|
---|
18661 | /* SMULLT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45007400) */
|
---|
18662 | //#define IEM_INSTR_IMPL_A64__smullt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18663 |
|
---|
18664 |
|
---|
18665 | /* UMULLB <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45007800) */
|
---|
18666 | //#define IEM_INSTR_IMPL_A64__umullb_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18667 |
|
---|
18668 |
|
---|
18669 | /* UMULLT <Zd>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/45007c00) */
|
---|
18670 | //#define IEM_INSTR_IMPL_A64__umullt_z_zz(Zd, Zn, T, U, Zm, size)
|
---|
18671 |
|
---|
18672 |
|
---|
18673 |
|
---|
18674 | /*
|
---|
18675 | *
|
---|
18676 | * Instruction Set & Groups: sve_intx_dot / sve_intx_muladd_unpred / sve / A64
|
---|
18677 | *
|
---|
18678 | */
|
---|
18679 |
|
---|
18680 | /* SDOT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ffa0fc00/44800000) */
|
---|
18681 | //#define IEM_INSTR_IMPL_A64__sdot_z_zzz(Zda, Zn, U, Zm, size)
|
---|
18682 |
|
---|
18683 |
|
---|
18684 | /* UDOT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ffa0fc00/44800400) */
|
---|
18685 | //#define IEM_INSTR_IMPL_A64__udot_z_zzz(Zda, Zn, U, Zm, size)
|
---|
18686 |
|
---|
18687 |
|
---|
18688 |
|
---|
18689 | /*
|
---|
18690 | *
|
---|
18691 | * Instruction Set & Groups: sve_intx_dot2_by_indexed_elem_lvl2 / sve_intx_dot2_by_indexed_elem / sve / A64
|
---|
18692 | *
|
---|
18693 | */
|
---|
18694 |
|
---|
18695 | /* SDOT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0fc00/4480c800) */
|
---|
18696 | //#define IEM_INSTR_IMPL_A64__sdot_z32_zzzi(Zda, Zn, U, Zm, i2)
|
---|
18697 |
|
---|
18698 |
|
---|
18699 | /* UDOT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0fc00/4480cc00) */
|
---|
18700 | //#define IEM_INSTR_IMPL_A64__udot_z32_zzzi(Zda, Zn, U, Zm, i2)
|
---|
18701 |
|
---|
18702 |
|
---|
18703 |
|
---|
18704 | /*
|
---|
18705 | *
|
---|
18706 | * Instruction Set & Groups: sve_intx_dot2_lvl2 / sve_intx_dot2 / sve / A64
|
---|
18707 | *
|
---|
18708 | */
|
---|
18709 |
|
---|
18710 | /* SDOT <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/4400c800) */
|
---|
18711 | //#define IEM_INSTR_IMPL_A64__sdot_z32_zzz(Zda, Zn, U, Zm)
|
---|
18712 |
|
---|
18713 |
|
---|
18714 | /* UDOT <Zda>.S, <Zn>.H, <Zm>.H (ffe0fc00/4400cc00) */
|
---|
18715 | //#define IEM_INSTR_IMPL_A64__udot_z32_zzz(Zda, Zn, U, Zm)
|
---|
18716 |
|
---|
18717 |
|
---|
18718 |
|
---|
18719 | /*
|
---|
18720 | *
|
---|
18721 | * Instruction Set & Groups: sve_intx_dot_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
18722 | *
|
---|
18723 | */
|
---|
18724 |
|
---|
18725 | /* SDOT <Zda>.S, <Zn>.B, <Zm>.B[<imm>] (ffe0fc00/44a00000) */
|
---|
18726 | //#define IEM_INSTR_IMPL_A64__sdot_z_zzzi_s(Zda, Zn, U, Zm, i2)
|
---|
18727 |
|
---|
18728 |
|
---|
18729 | /* SDOT <Zda>.D, <Zn>.H, <Zm>.H[<imm>] (ffe0fc00/44e00000) */
|
---|
18730 | //#define IEM_INSTR_IMPL_A64__sdot_z_zzzi_d(Zda, Zn, U, Zm, i1)
|
---|
18731 |
|
---|
18732 |
|
---|
18733 | /* UDOT <Zda>.S, <Zn>.B, <Zm>.B[<imm>] (ffe0fc00/44a00400) */
|
---|
18734 | //#define IEM_INSTR_IMPL_A64__udot_z_zzzi_s(Zda, Zn, U, Zm, i2)
|
---|
18735 |
|
---|
18736 |
|
---|
18737 | /* UDOT <Zda>.D, <Zn>.H, <Zm>.H[<imm>] (ffe0fc00/44e00400) */
|
---|
18738 | //#define IEM_INSTR_IMPL_A64__udot_z_zzzi_d(Zda, Zn, U, Zm, i1)
|
---|
18739 |
|
---|
18740 |
|
---|
18741 |
|
---|
18742 | /*
|
---|
18743 | *
|
---|
18744 | * Instruction Set & Groups: sve_intx_eorx / sve_intx_constructive / sve / A64
|
---|
18745 | *
|
---|
18746 | */
|
---|
18747 |
|
---|
18748 | /* EORBT <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/45009000) */
|
---|
18749 | //#define IEM_INSTR_IMPL_A64__eorbt_z_zz(Zd, Zn, Zm, size)
|
---|
18750 |
|
---|
18751 |
|
---|
18752 | /* EORTB <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/45009400) */
|
---|
18753 | //#define IEM_INSTR_IMPL_A64__eortb_z_zz(Zd, Zn, Zm, size)
|
---|
18754 |
|
---|
18755 |
|
---|
18756 |
|
---|
18757 | /*
|
---|
18758 | *
|
---|
18759 | * Instruction Set & Groups: sve_intx_extract_narrow / sve_intx_narrowing / sve / A64
|
---|
18760 | *
|
---|
18761 | */
|
---|
18762 |
|
---|
18763 | /* SQXTNB <Zd>.<T>, <Zn>.<Tb> (ffa7fc00/45204000) */
|
---|
18764 | //#define IEM_INSTR_IMPL_A64__sqxtnb_z_zz(Zd, Zn, T, U, tszl, tszh)
|
---|
18765 |
|
---|
18766 |
|
---|
18767 | /* SQXTUNB <Zd>.<T>, <Zn>.<Tb> (ffa7fc00/45205000) */
|
---|
18768 | //#define IEM_INSTR_IMPL_A64__sqxtunb_z_zz(Zd, Zn, T, tszl, tszh)
|
---|
18769 |
|
---|
18770 |
|
---|
18771 | /* SQXTNT <Zd>.<T>, <Zn>.<Tb> (ffa7fc00/45204400) */
|
---|
18772 | //#define IEM_INSTR_IMPL_A64__sqxtnt_z_zz(Zd, Zn, T, U, tszl, tszh)
|
---|
18773 |
|
---|
18774 |
|
---|
18775 | /* SQXTUNT <Zd>.<T>, <Zn>.<Tb> (ffa7fc00/45205400) */
|
---|
18776 | //#define IEM_INSTR_IMPL_A64__sqxtunt_z_zz(Zd, Zn, T, tszl, tszh)
|
---|
18777 |
|
---|
18778 |
|
---|
18779 | /* UQXTNB <Zd>.<T>, <Zn>.<Tb> (ffa7fc00/45204800) */
|
---|
18780 | //#define IEM_INSTR_IMPL_A64__uqxtnb_z_zz(Zd, Zn, T, U, tszl, tszh)
|
---|
18781 |
|
---|
18782 |
|
---|
18783 | /* UQXTNT <Zd>.<T>, <Zn>.<Tb> (ffa7fc00/45204c00) */
|
---|
18784 | //#define IEM_INSTR_IMPL_A64__uqxtnt_z_zz(Zd, Zn, T, U, tszl, tszh)
|
---|
18785 |
|
---|
18786 |
|
---|
18787 |
|
---|
18788 | /*
|
---|
18789 | *
|
---|
18790 | * Instruction Set & Groups: sve_intx_histcnt_lvl2 / sve_intx_histcnt / sve / A64
|
---|
18791 | *
|
---|
18792 | */
|
---|
18793 |
|
---|
18794 | /* HISTCNT <Zd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e000/4520c000) */
|
---|
18795 | //#define IEM_INSTR_IMPL_A64__histcnt_z_p_zz(Zd, Zn, Pg, Zm, size)
|
---|
18796 |
|
---|
18797 |
|
---|
18798 |
|
---|
18799 | /*
|
---|
18800 | *
|
---|
18801 | * Instruction Set & Groups: sve_intx_histseg / sve_intx_histseg_lut / sve / A64
|
---|
18802 | *
|
---|
18803 | */
|
---|
18804 |
|
---|
18805 | /* HISTSEG <Zd>.B, <Zn>.B, <Zm>.B (ff20fc00/4520a000) */
|
---|
18806 | //#define IEM_INSTR_IMPL_A64__histseg_z_zz(Zd, Zn, Zm, size)
|
---|
18807 |
|
---|
18808 |
|
---|
18809 |
|
---|
18810 | /*
|
---|
18811 | *
|
---|
18812 | * Instruction Set & Groups: sve_intx_lut2_16 / sve_intx_histseg_lut / sve / A64
|
---|
18813 | *
|
---|
18814 | */
|
---|
18815 |
|
---|
18816 | /* LUTI2 <Zd>.H, { <Zn>.H }, <Zm>[<index>] (ff20ec00/4520a800) */
|
---|
18817 | //#define IEM_INSTR_IMPL_A64__luti2_z_zz_16(Zd, Zn, i3l, Zm, i3h)
|
---|
18818 |
|
---|
18819 |
|
---|
18820 |
|
---|
18821 | /*
|
---|
18822 | *
|
---|
18823 | * Instruction Set & Groups: sve_intx_lut2_8 / sve_intx_histseg_lut / sve / A64
|
---|
18824 | *
|
---|
18825 | */
|
---|
18826 |
|
---|
18827 | /* LUTI2 <Zd>.B, { <Zn>.B }, <Zm>[<index>] (ff20fc00/4520b000) */
|
---|
18828 | //#define IEM_INSTR_IMPL_A64__luti2_z_zz_8(Zd, Zn, Zm, i2)
|
---|
18829 |
|
---|
18830 |
|
---|
18831 |
|
---|
18832 | /*
|
---|
18833 | *
|
---|
18834 | * Instruction Set & Groups: sve_intx_lut4_16 / sve_intx_histseg_lut / sve / A64
|
---|
18835 | *
|
---|
18836 | */
|
---|
18837 |
|
---|
18838 | /* LUTI4 <Zd>.H, { <Zn1>.H, <Zn2>.H }, <Zm>[<index>] (ff20fc00/4520b400) */
|
---|
18839 | //#define IEM_INSTR_IMPL_A64__luti4_z_zz_2x16(Zd, Zn, Zm, i2)
|
---|
18840 |
|
---|
18841 |
|
---|
18842 | /* LUTI4 <Zd>.H, { <Zn>.H }, <Zm>[<index>] (ff20fc00/4520bc00) */
|
---|
18843 | //#define IEM_INSTR_IMPL_A64__luti4_z_zz_1x16(Zd, Zn, Zm, i2)
|
---|
18844 |
|
---|
18845 |
|
---|
18846 |
|
---|
18847 | /*
|
---|
18848 | *
|
---|
18849 | * Instruction Set & Groups: sve_intx_lut4_8 / sve_intx_histseg_lut / sve / A64
|
---|
18850 | *
|
---|
18851 | */
|
---|
18852 |
|
---|
18853 | /* LUTI4 <Zd>.B, { <Zn>.B }, <Zm>[<index>] (ff60fc00/4560a400) */
|
---|
18854 | //#define IEM_INSTR_IMPL_A64__luti4_z_zz_8(Zd, Zn, Zm, i1)
|
---|
18855 |
|
---|
18856 |
|
---|
18857 |
|
---|
18858 | /*
|
---|
18859 | *
|
---|
18860 | * Instruction Set & Groups: sve_intx_match / sve_intx_string / sve / A64
|
---|
18861 | *
|
---|
18862 | */
|
---|
18863 |
|
---|
18864 | /* MATCH <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/45208000) */
|
---|
18865 | //#define IEM_INSTR_IMPL_A64__match_p_p_zz(Pd, Zn, Pg, Zm, size)
|
---|
18866 |
|
---|
18867 |
|
---|
18868 | /* NMATCH <Pd>.<T>, <Pg>/Z, <Zn>.<T>, <Zm>.<T> (ff20e010/45208010) */
|
---|
18869 | //#define IEM_INSTR_IMPL_A64__nmatch_p_p_zz(Pd, Zn, Pg, Zm, size)
|
---|
18870 |
|
---|
18871 |
|
---|
18872 |
|
---|
18873 | /*
|
---|
18874 | *
|
---|
18875 | * Instruction Set & Groups: sve_intx_mixed_dot / sve_intx_muladd_unpred / sve / A64
|
---|
18876 | *
|
---|
18877 | */
|
---|
18878 |
|
---|
18879 | /* USDOT <Zda>.S, <Zn>.B, <Zm>.B (ffe0fc00/44807800) */
|
---|
18880 | //#define IEM_INSTR_IMPL_A64__usdot_z_zzz_s(Zda, Zn, Zm)
|
---|
18881 |
|
---|
18882 |
|
---|
18883 |
|
---|
18884 | /*
|
---|
18885 | *
|
---|
18886 | * Instruction Set & Groups: sve_intx_mixed_dot_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
18887 | *
|
---|
18888 | */
|
---|
18889 |
|
---|
18890 | /* USDOT <Zda>.S, <Zn>.B, <Zm>.B[<imm>] (ffe0fc00/44a01800) */
|
---|
18891 | //#define IEM_INSTR_IMPL_A64__usdot_z_zzzi_s(Zda, Zn, U, Zm, i2)
|
---|
18892 |
|
---|
18893 |
|
---|
18894 | /* SUDOT <Zda>.S, <Zn>.B, <Zm>.B[<imm>] (ffe0fc00/44a01c00) */
|
---|
18895 | //#define IEM_INSTR_IMPL_A64__sudot_z_zzzi_s(Zda, Zn, U, Zm, i2)
|
---|
18896 |
|
---|
18897 |
|
---|
18898 |
|
---|
18899 | /*
|
---|
18900 | *
|
---|
18901 | * Instruction Set & Groups: sve_intx_mla_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
18902 | *
|
---|
18903 | */
|
---|
18904 |
|
---|
18905 | /* MLA <Zda>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/44200800) */
|
---|
18906 | //#define IEM_INSTR_IMPL_A64__mla_z_zzzi_h(Zda, Zn, S, Zm, i3l, i3h)
|
---|
18907 |
|
---|
18908 |
|
---|
18909 | /* MLA <Zda>.S, <Zn>.S, <Zm>.S[<imm>] (ffe0fc00/44a00800) */
|
---|
18910 | //#define IEM_INSTR_IMPL_A64__mla_z_zzzi_s(Zda, Zn, S, Zm, i2)
|
---|
18911 |
|
---|
18912 |
|
---|
18913 | /* MLA <Zda>.D, <Zn>.D, <Zm>.D[<imm>] (ffe0fc00/44e00800) */
|
---|
18914 | //#define IEM_INSTR_IMPL_A64__mla_z_zzzi_d(Zda, Zn, S, Zm, i1)
|
---|
18915 |
|
---|
18916 |
|
---|
18917 | /* MLS <Zda>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/44200c00) */
|
---|
18918 | //#define IEM_INSTR_IMPL_A64__mls_z_zzzi_h(Zda, Zn, S, Zm, i3l, i3h)
|
---|
18919 |
|
---|
18920 |
|
---|
18921 | /* MLS <Zda>.S, <Zn>.S, <Zm>.S[<imm>] (ffe0fc00/44a00c00) */
|
---|
18922 | //#define IEM_INSTR_IMPL_A64__mls_z_zzzi_s(Zda, Zn, S, Zm, i2)
|
---|
18923 |
|
---|
18924 |
|
---|
18925 | /* MLS <Zda>.D, <Zn>.D, <Zm>.D[<imm>] (ffe0fc00/44e00c00) */
|
---|
18926 | //#define IEM_INSTR_IMPL_A64__mls_z_zzzi_d(Zda, Zn, S, Zm, i1)
|
---|
18927 |
|
---|
18928 |
|
---|
18929 |
|
---|
18930 | /*
|
---|
18931 | *
|
---|
18932 | * Instruction Set & Groups: sve_intx_mla_long_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
18933 | *
|
---|
18934 | */
|
---|
18935 |
|
---|
18936 | /* SMLALB <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a08000) */
|
---|
18937 | //#define IEM_INSTR_IMPL_A64__smlalb_z_zzzi_s(Zda, Zn, T, i3l, U, S, Zm, i3h)
|
---|
18938 |
|
---|
18939 |
|
---|
18940 | /* SMLALB <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e08000) */
|
---|
18941 | //#define IEM_INSTR_IMPL_A64__smlalb_z_zzzi_d(Zda, Zn, T, i2l, U, S, Zm, i2h)
|
---|
18942 |
|
---|
18943 |
|
---|
18944 | /* SMLSLB <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a0a000) */
|
---|
18945 | //#define IEM_INSTR_IMPL_A64__smlslb_z_zzzi_s(Zda, Zn, T, i3l, U, S, Zm, i3h)
|
---|
18946 |
|
---|
18947 |
|
---|
18948 | /* SMLSLB <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e0a000) */
|
---|
18949 | //#define IEM_INSTR_IMPL_A64__smlslb_z_zzzi_d(Zda, Zn, T, i2l, U, S, Zm, i2h)
|
---|
18950 |
|
---|
18951 |
|
---|
18952 | /* SMLALT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a08400) */
|
---|
18953 | //#define IEM_INSTR_IMPL_A64__smlalt_z_zzzi_s(Zda, Zn, T, i3l, U, S, Zm, i3h)
|
---|
18954 |
|
---|
18955 |
|
---|
18956 | /* SMLALT <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e08400) */
|
---|
18957 | //#define IEM_INSTR_IMPL_A64__smlalt_z_zzzi_d(Zda, Zn, T, i2l, U, S, Zm, i2h)
|
---|
18958 |
|
---|
18959 |
|
---|
18960 | /* SMLSLT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a0a400) */
|
---|
18961 | //#define IEM_INSTR_IMPL_A64__smlslt_z_zzzi_s(Zda, Zn, T, i3l, U, S, Zm, i3h)
|
---|
18962 |
|
---|
18963 |
|
---|
18964 | /* SMLSLT <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e0a400) */
|
---|
18965 | //#define IEM_INSTR_IMPL_A64__smlslt_z_zzzi_d(Zda, Zn, T, i2l, U, S, Zm, i2h)
|
---|
18966 |
|
---|
18967 |
|
---|
18968 | /* UMLALB <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a09000) */
|
---|
18969 | //#define IEM_INSTR_IMPL_A64__umlalb_z_zzzi_s(Zda, Zn, T, i3l, U, S, Zm, i3h)
|
---|
18970 |
|
---|
18971 |
|
---|
18972 | /* UMLALB <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e09000) */
|
---|
18973 | //#define IEM_INSTR_IMPL_A64__umlalb_z_zzzi_d(Zda, Zn, T, i2l, U, S, Zm, i2h)
|
---|
18974 |
|
---|
18975 |
|
---|
18976 | /* UMLSLB <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a0b000) */
|
---|
18977 | //#define IEM_INSTR_IMPL_A64__umlslb_z_zzzi_s(Zda, Zn, T, i3l, U, S, Zm, i3h)
|
---|
18978 |
|
---|
18979 |
|
---|
18980 | /* UMLSLB <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e0b000) */
|
---|
18981 | //#define IEM_INSTR_IMPL_A64__umlslb_z_zzzi_d(Zda, Zn, T, i2l, U, S, Zm, i2h)
|
---|
18982 |
|
---|
18983 |
|
---|
18984 | /* UMLALT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a09400) */
|
---|
18985 | //#define IEM_INSTR_IMPL_A64__umlalt_z_zzzi_s(Zda, Zn, T, i3l, U, S, Zm, i3h)
|
---|
18986 |
|
---|
18987 |
|
---|
18988 | /* UMLALT <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e09400) */
|
---|
18989 | //#define IEM_INSTR_IMPL_A64__umlalt_z_zzzi_d(Zda, Zn, T, i2l, U, S, Zm, i2h)
|
---|
18990 |
|
---|
18991 |
|
---|
18992 | /* UMLSLT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a0b400) */
|
---|
18993 | //#define IEM_INSTR_IMPL_A64__umlslt_z_zzzi_s(Zda, Zn, T, i3l, U, S, Zm, i3h)
|
---|
18994 |
|
---|
18995 |
|
---|
18996 | /* UMLSLT <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e0b400) */
|
---|
18997 | //#define IEM_INSTR_IMPL_A64__umlslt_z_zzzi_d(Zda, Zn, T, i2l, U, S, Zm, i2h)
|
---|
18998 |
|
---|
18999 |
|
---|
19000 |
|
---|
19001 | /*
|
---|
19002 | *
|
---|
19003 | * Instruction Set & Groups: sve_intx_mlal_long / sve_intx_muladd_unpred / sve / A64
|
---|
19004 | *
|
---|
19005 | */
|
---|
19006 |
|
---|
19007 | /* SMLALB <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44004000) */
|
---|
19008 | //#define IEM_INSTR_IMPL_A64__smlalb_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
19009 |
|
---|
19010 |
|
---|
19011 | /* SMLSLB <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44005000) */
|
---|
19012 | //#define IEM_INSTR_IMPL_A64__smlslb_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
19013 |
|
---|
19014 |
|
---|
19015 | /* SMLALT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44004400) */
|
---|
19016 | //#define IEM_INSTR_IMPL_A64__smlalt_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
19017 |
|
---|
19018 |
|
---|
19019 | /* SMLSLT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44005400) */
|
---|
19020 | //#define IEM_INSTR_IMPL_A64__smlslt_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
19021 |
|
---|
19022 |
|
---|
19023 | /* UMLALB <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44004800) */
|
---|
19024 | //#define IEM_INSTR_IMPL_A64__umlalb_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
19025 |
|
---|
19026 |
|
---|
19027 | /* UMLSLB <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44005800) */
|
---|
19028 | //#define IEM_INSTR_IMPL_A64__umlslb_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
19029 |
|
---|
19030 |
|
---|
19031 | /* UMLALT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44004c00) */
|
---|
19032 | //#define IEM_INSTR_IMPL_A64__umlalt_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
19033 |
|
---|
19034 |
|
---|
19035 | /* UMLSLT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44005c00) */
|
---|
19036 | //#define IEM_INSTR_IMPL_A64__umlslt_z_zzz(Zda, Zn, T, U, Zm, size)
|
---|
19037 |
|
---|
19038 |
|
---|
19039 |
|
---|
19040 | /*
|
---|
19041 | *
|
---|
19042 | * Instruction Set & Groups: sve_intx_mmla / sve_intx_constructive / sve / A64
|
---|
19043 | *
|
---|
19044 | */
|
---|
19045 |
|
---|
19046 | /* SMMLA <Zda>.S, <Zn>.B, <Zm>.B (ffe0fc00/45009800) */
|
---|
19047 | //#define IEM_INSTR_IMPL_A64__smmla_z_zzz(Zda, Zn, Zm, uns)
|
---|
19048 |
|
---|
19049 |
|
---|
19050 | /* USMMLA <Zda>.S, <Zn>.B, <Zm>.B (ffe0fc00/45809800) */
|
---|
19051 | //#define IEM_INSTR_IMPL_A64__usmmla_z_zzz(Zda, Zn, Zm, uns)
|
---|
19052 |
|
---|
19053 |
|
---|
19054 | /* UMMLA <Zda>.S, <Zn>.B, <Zm>.B (ffe0fc00/45c09800) */
|
---|
19055 | //#define IEM_INSTR_IMPL_A64__ummla_z_zzz(Zda, Zn, Zm, uns)
|
---|
19056 |
|
---|
19057 |
|
---|
19058 |
|
---|
19059 | /*
|
---|
19060 | *
|
---|
19061 | * Instruction Set & Groups: sve_intx_mul_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
19062 | *
|
---|
19063 | */
|
---|
19064 |
|
---|
19065 | /* MUL <Zd>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/4420f800) */
|
---|
19066 | //#define IEM_INSTR_IMPL_A64__mul_z_zzi_h(Zd, Zn, Zm, i3l, i3h)
|
---|
19067 |
|
---|
19068 |
|
---|
19069 | /* MUL <Zd>.S, <Zn>.S, <Zm>.S[<imm>] (ffe0fc00/44a0f800) */
|
---|
19070 | //#define IEM_INSTR_IMPL_A64__mul_z_zzi_s(Zd, Zn, Zm, i2)
|
---|
19071 |
|
---|
19072 |
|
---|
19073 | /* MUL <Zd>.D, <Zn>.D, <Zm>.D[<imm>] (ffe0fc00/44e0f800) */
|
---|
19074 | //#define IEM_INSTR_IMPL_A64__mul_z_zzi_d(Zd, Zn, Zm, i1)
|
---|
19075 |
|
---|
19076 |
|
---|
19077 |
|
---|
19078 | /*
|
---|
19079 | *
|
---|
19080 | * Instruction Set & Groups: sve_intx_mul_long_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
19081 | *
|
---|
19082 | */
|
---|
19083 |
|
---|
19084 | /* SMULLB <Zd>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a0c000) */
|
---|
19085 | //#define IEM_INSTR_IMPL_A64__smullb_z_zzi_s(Zd, Zn, T, i3l, U, Zm, i3h)
|
---|
19086 |
|
---|
19087 |
|
---|
19088 | /* SMULLB <Zd>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e0c000) */
|
---|
19089 | //#define IEM_INSTR_IMPL_A64__smullb_z_zzi_d(Zd, Zn, T, i2l, U, Zm, i2h)
|
---|
19090 |
|
---|
19091 |
|
---|
19092 | /* SMULLT <Zd>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a0c400) */
|
---|
19093 | //#define IEM_INSTR_IMPL_A64__smullt_z_zzi_s(Zd, Zn, T, i3l, U, Zm, i3h)
|
---|
19094 |
|
---|
19095 |
|
---|
19096 | /* SMULLT <Zd>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e0c400) */
|
---|
19097 | //#define IEM_INSTR_IMPL_A64__smullt_z_zzi_d(Zd, Zn, T, i2l, U, Zm, i2h)
|
---|
19098 |
|
---|
19099 |
|
---|
19100 | /* UMULLB <Zd>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a0d000) */
|
---|
19101 | //#define IEM_INSTR_IMPL_A64__umullb_z_zzi_s(Zd, Zn, T, i3l, U, Zm, i3h)
|
---|
19102 |
|
---|
19103 |
|
---|
19104 | /* UMULLB <Zd>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e0d000) */
|
---|
19105 | //#define IEM_INSTR_IMPL_A64__umullb_z_zzi_d(Zd, Zn, T, i2l, U, Zm, i2h)
|
---|
19106 |
|
---|
19107 |
|
---|
19108 | /* UMULLT <Zd>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a0d400) */
|
---|
19109 | //#define IEM_INSTR_IMPL_A64__umullt_z_zzi_s(Zd, Zn, T, i3l, U, Zm, i3h)
|
---|
19110 |
|
---|
19111 |
|
---|
19112 | /* UMULLT <Zd>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e0d400) */
|
---|
19113 | //#define IEM_INSTR_IMPL_A64__umullt_z_zzi_d(Zd, Zn, T, i2l, U, Zm, i2h)
|
---|
19114 |
|
---|
19115 |
|
---|
19116 |
|
---|
19117 | /*
|
---|
19118 | *
|
---|
19119 | * Instruction Set & Groups: sve_intx_multi_extract_narrow / sve_intx_narrowing / sve / A64
|
---|
19120 | *
|
---|
19121 | */
|
---|
19122 |
|
---|
19123 | /* SQCVTN <Zd>.H, { <Zn1>.S-<Zn2>.S } (fffffc20/45314000) */
|
---|
19124 | //#define IEM_INSTR_IMPL_A64__sqcvtn_z_mz2(Zd, Zn, U)
|
---|
19125 |
|
---|
19126 |
|
---|
19127 | /* SQCVTUN <Zd>.H, { <Zn1>.S-<Zn2>.S } (fffffc20/45315000) */
|
---|
19128 | //#define IEM_INSTR_IMPL_A64__sqcvtun_z_mz2(Zd, Zn)
|
---|
19129 |
|
---|
19130 |
|
---|
19131 | /* UQCVTN <Zd>.H, { <Zn1>.S-<Zn2>.S } (fffffc20/45314800) */
|
---|
19132 | //#define IEM_INSTR_IMPL_A64__uqcvtn_z_mz2(Zd, Zn, U)
|
---|
19133 |
|
---|
19134 |
|
---|
19135 |
|
---|
19136 | /*
|
---|
19137 | *
|
---|
19138 | * Instruction Set & Groups: sve_intx_multi_shift_narrow / sve_intx_narrowing / sve / A64
|
---|
19139 | *
|
---|
19140 | */
|
---|
19141 |
|
---|
19142 | /* SQRSHRN <Zd>.H, { <Zn1>.S-<Zn2>.S }, #<const> (fff0fc20/45b02800) */
|
---|
19143 | //#define IEM_INSTR_IMPL_A64__sqrshrn_z_mz2(Zd, Zn, U, imm4)
|
---|
19144 |
|
---|
19145 |
|
---|
19146 | /* SQRSHRUN <Zd>.H, { <Zn1>.S-<Zn2>.S }, #<const> (fff0fc20/45b00800) */
|
---|
19147 | //#define IEM_INSTR_IMPL_A64__sqrshrun_z_mz2(Zd, Zn, imm4)
|
---|
19148 |
|
---|
19149 |
|
---|
19150 | /* UQRSHRN <Zd>.H, { <Zn1>.S-<Zn2>.S }, #<const> (fff0fc20/45b03800) */
|
---|
19151 | //#define IEM_INSTR_IMPL_A64__uqrshrn_z_mz2(Zd, Zn, U, imm4)
|
---|
19152 |
|
---|
19153 |
|
---|
19154 |
|
---|
19155 | /*
|
---|
19156 | *
|
---|
19157 | * Instruction Set & Groups: sve_intx_perm_bit / sve_intx_constructive / sve / A64
|
---|
19158 | *
|
---|
19159 | */
|
---|
19160 |
|
---|
19161 | /* BEXT <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/4500b000) */
|
---|
19162 | //#define IEM_INSTR_IMPL_A64__bext_z_zz(Zd, Zn, Zm, size)
|
---|
19163 |
|
---|
19164 |
|
---|
19165 | /* BDEP <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/4500b400) */
|
---|
19166 | //#define IEM_INSTR_IMPL_A64__bdep_z_zz(Zd, Zn, Zm, size)
|
---|
19167 |
|
---|
19168 |
|
---|
19169 | /* BGRP <Zd>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/4500b800) */
|
---|
19170 | //#define IEM_INSTR_IMPL_A64__bgrp_z_zz(Zd, Zn, Zm, size)
|
---|
19171 |
|
---|
19172 |
|
---|
19173 |
|
---|
19174 | /*
|
---|
19175 | *
|
---|
19176 | * Instruction Set & Groups: sve_intx_perm_extract_i / sve_perm_extract / sve / A64
|
---|
19177 | *
|
---|
19178 | */
|
---|
19179 |
|
---|
19180 | /* EXT <Zd>.B, { <Zn1>.B, <Zn2>.B }, #<imm> (ffe0e000/05600000) */
|
---|
19181 | //#define IEM_INSTR_IMPL_A64__ext_z_zi_con(Zd, Zn, imm8l, imm8h)
|
---|
19182 |
|
---|
19183 |
|
---|
19184 |
|
---|
19185 | /*
|
---|
19186 | *
|
---|
19187 | * Instruction Set & Groups: sve_intx_perm_splice / sve_perm_pred / sve / A64
|
---|
19188 | *
|
---|
19189 | */
|
---|
19190 |
|
---|
19191 | /* SPLICE <Zd>.<T>, <Pv>, { <Zn1>.<T>, <Zn2>.<T> } (ff3fe000/052d8000) */
|
---|
19192 | //#define IEM_INSTR_IMPL_A64__splice_z_p_zz_con(Zd, Zn, Pv, size)
|
---|
19193 |
|
---|
19194 |
|
---|
19195 |
|
---|
19196 | /*
|
---|
19197 | *
|
---|
19198 | * Instruction Set & Groups: sve_intx_pred_arith_binary / sve_intx_predicated / sve / A64
|
---|
19199 | *
|
---|
19200 | */
|
---|
19201 |
|
---|
19202 | /* SHADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44108000) */
|
---|
19203 | //#define IEM_INSTR_IMPL_A64__shadd_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19204 |
|
---|
19205 |
|
---|
19206 | /* SHSUB <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44128000) */
|
---|
19207 | //#define IEM_INSTR_IMPL_A64__shsub_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19208 |
|
---|
19209 |
|
---|
19210 | /* SRHADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44148000) */
|
---|
19211 | //#define IEM_INSTR_IMPL_A64__srhadd_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19212 |
|
---|
19213 |
|
---|
19214 | /* SHSUBR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44168000) */
|
---|
19215 | //#define IEM_INSTR_IMPL_A64__shsubr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19216 |
|
---|
19217 |
|
---|
19218 | /* UHADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44118000) */
|
---|
19219 | //#define IEM_INSTR_IMPL_A64__uhadd_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19220 |
|
---|
19221 |
|
---|
19222 | /* UHSUB <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44138000) */
|
---|
19223 | //#define IEM_INSTR_IMPL_A64__uhsub_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19224 |
|
---|
19225 |
|
---|
19226 | /* URHADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44158000) */
|
---|
19227 | //#define IEM_INSTR_IMPL_A64__urhadd_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19228 |
|
---|
19229 |
|
---|
19230 | /* UHSUBR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44178000) */
|
---|
19231 | //#define IEM_INSTR_IMPL_A64__uhsubr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19232 |
|
---|
19233 |
|
---|
19234 |
|
---|
19235 | /*
|
---|
19236 | *
|
---|
19237 | * Instruction Set & Groups: sve_intx_pred_arith_binary_sat / sve_intx_predicated / sve / A64
|
---|
19238 | *
|
---|
19239 | */
|
---|
19240 |
|
---|
19241 | /* SQADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44188000) */
|
---|
19242 | //#define IEM_INSTR_IMPL_A64__sqadd_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19243 |
|
---|
19244 |
|
---|
19245 | /* SQSUB <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/441a8000) */
|
---|
19246 | //#define IEM_INSTR_IMPL_A64__sqsub_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19247 |
|
---|
19248 |
|
---|
19249 | /* SUQADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/441c8000) */
|
---|
19250 | //#define IEM_INSTR_IMPL_A64__suqadd_z_p_zz(Zdn, Zm, Pg, size)
|
---|
19251 |
|
---|
19252 |
|
---|
19253 | /* USQADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/441d8000) */
|
---|
19254 | //#define IEM_INSTR_IMPL_A64__usqadd_z_p_zz(Zdn, Zm, Pg, size)
|
---|
19255 |
|
---|
19256 |
|
---|
19257 | /* SQSUBR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/441e8000) */
|
---|
19258 | //#define IEM_INSTR_IMPL_A64__sqsubr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19259 |
|
---|
19260 |
|
---|
19261 | /* UQADD <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/44198000) */
|
---|
19262 | //#define IEM_INSTR_IMPL_A64__uqadd_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19263 |
|
---|
19264 |
|
---|
19265 | /* UQSUB <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/441b8000) */
|
---|
19266 | //#define IEM_INSTR_IMPL_A64__uqsub_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19267 |
|
---|
19268 |
|
---|
19269 | /* UQSUBR <Zdn>.<T>, <Pg>/M, <Zdn>.<T>, <Zm>.<T> (ff3fe000/441f8000) */
|
---|
19270 | //#define IEM_INSTR_IMPL_A64__uqsubr_z_p_zz(Zdn, Zm, Pg, U, size)
|
---|
19271 |
|
---|
19272 |
|
---|
19273 |
|
---|
19274 | /*
|
---|
19275 | *
|
---|
19276 | * Instruction Set & Groups: sve_intx_pred_arith_unary / sve_intx_predicated / sve / A64
|
---|
19277 | *
|
---|
19278 | */
|
---|
19279 |
|
---|
19280 | /* URECPE <Zd>.S, <Pg>/M, <Zn>.S (ff3fe000/4400a000) */
|
---|
19281 | //#define IEM_INSTR_IMPL_A64__urecpe_z_p_z_m(Zd, Zn, Pg, size)
|
---|
19282 |
|
---|
19283 |
|
---|
19284 | /* URECPE <Zd>.S, <Pg>/Z, <Zn>.S (ff3fe000/4402a000) */
|
---|
19285 | //#define IEM_INSTR_IMPL_A64__urecpe_z_p_z_z(Zd, Zn, Pg, size)
|
---|
19286 |
|
---|
19287 |
|
---|
19288 | /* URSQRTE <Zd>.S, <Pg>/M, <Zn>.S (ff3fe000/4401a000) */
|
---|
19289 | //#define IEM_INSTR_IMPL_A64__ursqrte_z_p_z_m(Zd, Zn, Pg, size)
|
---|
19290 |
|
---|
19291 |
|
---|
19292 | /* URSQRTE <Zd>.S, <Pg>/Z, <Zn>.S (ff3fe000/4403a000) */
|
---|
19293 | //#define IEM_INSTR_IMPL_A64__ursqrte_z_p_z_z(Zd, Zn, Pg, size)
|
---|
19294 |
|
---|
19295 |
|
---|
19296 | /* SQABS <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/4408a000) */
|
---|
19297 | //#define IEM_INSTR_IMPL_A64__sqabs_z_p_z_m(Zd, Zn, Pg, size)
|
---|
19298 |
|
---|
19299 |
|
---|
19300 | /* SQABS <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/440aa000) */
|
---|
19301 | //#define IEM_INSTR_IMPL_A64__sqabs_z_p_z_z(Zd, Zn, Pg, size)
|
---|
19302 |
|
---|
19303 |
|
---|
19304 | /* SQNEG <Zd>.<T>, <Pg>/M, <Zn>.<T> (ff3fe000/4409a000) */
|
---|
19305 | //#define IEM_INSTR_IMPL_A64__sqneg_z_p_z_m(Zd, Zn, Pg, size)
|
---|
19306 |
|
---|
19307 |
|
---|
19308 | /* SQNEG <Zd>.<T>, <Pg>/Z, <Zn>.<T> (ff3fe000/440ba000) */
|
---|
19309 | //#define IEM_INSTR_IMPL_A64__sqneg_z_p_z_z(Zd, Zn, Pg, size)
|
---|
19310 |
|
---|
19311 |
|
---|
19312 |
|
---|
19313 | /*
|
---|
19314 | *
|
---|
19315 | * Instruction Set & Groups: sve_intx_qdmla_long_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
19316 | *
|
---|
19317 | */
|
---|
19318 |
|
---|
19319 | /* SQDMLALB <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a02000) */
|
---|
19320 | //#define IEM_INSTR_IMPL_A64__sqdmlalb_z_zzzi_s(Zda, Zn, T, i3l, S, Zm, i3h)
|
---|
19321 |
|
---|
19322 |
|
---|
19323 | /* SQDMLALB <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e02000) */
|
---|
19324 | //#define IEM_INSTR_IMPL_A64__sqdmlalb_z_zzzi_d(Zda, Zn, T, i2l, S, Zm, i2h)
|
---|
19325 |
|
---|
19326 |
|
---|
19327 | /* SQDMLSLB <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a03000) */
|
---|
19328 | //#define IEM_INSTR_IMPL_A64__sqdmlslb_z_zzzi_s(Zda, Zn, T, i3l, S, Zm, i3h)
|
---|
19329 |
|
---|
19330 |
|
---|
19331 | /* SQDMLSLB <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e03000) */
|
---|
19332 | //#define IEM_INSTR_IMPL_A64__sqdmlslb_z_zzzi_d(Zda, Zn, T, i2l, S, Zm, i2h)
|
---|
19333 |
|
---|
19334 |
|
---|
19335 | /* SQDMLALT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a02400) */
|
---|
19336 | //#define IEM_INSTR_IMPL_A64__sqdmlalt_z_zzzi_s(Zda, Zn, T, i3l, S, Zm, i3h)
|
---|
19337 |
|
---|
19338 |
|
---|
19339 | /* SQDMLALT <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e02400) */
|
---|
19340 | //#define IEM_INSTR_IMPL_A64__sqdmlalt_z_zzzi_d(Zda, Zn, T, i2l, S, Zm, i2h)
|
---|
19341 |
|
---|
19342 |
|
---|
19343 | /* SQDMLSLT <Zda>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a03400) */
|
---|
19344 | //#define IEM_INSTR_IMPL_A64__sqdmlslt_z_zzzi_s(Zda, Zn, T, i3l, S, Zm, i3h)
|
---|
19345 |
|
---|
19346 |
|
---|
19347 | /* SQDMLSLT <Zda>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e03400) */
|
---|
19348 | //#define IEM_INSTR_IMPL_A64__sqdmlslt_z_zzzi_d(Zda, Zn, T, i2l, S, Zm, i2h)
|
---|
19349 |
|
---|
19350 |
|
---|
19351 |
|
---|
19352 | /*
|
---|
19353 | *
|
---|
19354 | * Instruction Set & Groups: sve_intx_qdmlal_long / sve_intx_muladd_unpred / sve / A64
|
---|
19355 | *
|
---|
19356 | */
|
---|
19357 |
|
---|
19358 | /* SQDMLALB <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44006000) */
|
---|
19359 | //#define IEM_INSTR_IMPL_A64__sqdmlalb_z_zzz(Zda, Zn, T, Zm, size)
|
---|
19360 |
|
---|
19361 |
|
---|
19362 | /* SQDMLSLB <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44006800) */
|
---|
19363 | //#define IEM_INSTR_IMPL_A64__sqdmlslb_z_zzz(Zda, Zn, T, Zm, size)
|
---|
19364 |
|
---|
19365 |
|
---|
19366 | /* SQDMLALT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44006400) */
|
---|
19367 | //#define IEM_INSTR_IMPL_A64__sqdmlalt_z_zzz(Zda, Zn, T, Zm, size)
|
---|
19368 |
|
---|
19369 |
|
---|
19370 | /* SQDMLSLT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44006c00) */
|
---|
19371 | //#define IEM_INSTR_IMPL_A64__sqdmlslt_z_zzz(Zda, Zn, T, Zm, size)
|
---|
19372 |
|
---|
19373 |
|
---|
19374 |
|
---|
19375 | /*
|
---|
19376 | *
|
---|
19377 | * Instruction Set & Groups: sve_intx_qdmlalbt / sve_intx_muladd_unpred / sve / A64
|
---|
19378 | *
|
---|
19379 | */
|
---|
19380 |
|
---|
19381 | /* SQDMLALBT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44000800) */
|
---|
19382 | //#define IEM_INSTR_IMPL_A64__sqdmlalbt_z_zzz(Zda, Zn, Zm, size)
|
---|
19383 |
|
---|
19384 |
|
---|
19385 | /* SQDMLSLBT <Zda>.<T>, <Zn>.<Tb>, <Zm>.<Tb> (ff20fc00/44000c00) */
|
---|
19386 | //#define IEM_INSTR_IMPL_A64__sqdmlslbt_z_zzz(Zda, Zn, Zm, size)
|
---|
19387 |
|
---|
19388 |
|
---|
19389 |
|
---|
19390 | /*
|
---|
19391 | *
|
---|
19392 | * Instruction Set & Groups: sve_intx_qdmul_long_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
19393 | *
|
---|
19394 | */
|
---|
19395 |
|
---|
19396 | /* SQDMULLB <Zd>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a0e000) */
|
---|
19397 | //#define IEM_INSTR_IMPL_A64__sqdmullb_z_zzi_s(Zd, Zn, T, i3l, Zm, i3h)
|
---|
19398 |
|
---|
19399 |
|
---|
19400 | /* SQDMULLB <Zd>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e0e000) */
|
---|
19401 | //#define IEM_INSTR_IMPL_A64__sqdmullb_z_zzi_d(Zd, Zn, T, i2l, Zm, i2h)
|
---|
19402 |
|
---|
19403 |
|
---|
19404 | /* SQDMULLT <Zd>.S, <Zn>.H, <Zm>.H[<imm>] (ffe0f400/44a0e400) */
|
---|
19405 | //#define IEM_INSTR_IMPL_A64__sqdmullt_z_zzi_s(Zd, Zn, T, i3l, Zm, i3h)
|
---|
19406 |
|
---|
19407 |
|
---|
19408 | /* SQDMULLT <Zd>.D, <Zn>.S, <Zm>.S[<imm>] (ffe0f400/44e0e400) */
|
---|
19409 | //#define IEM_INSTR_IMPL_A64__sqdmullt_z_zzi_d(Zd, Zn, T, i2l, Zm, i2h)
|
---|
19410 |
|
---|
19411 |
|
---|
19412 |
|
---|
19413 | /*
|
---|
19414 | *
|
---|
19415 | * Instruction Set & Groups: sve_intx_qdmulh_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
19416 | *
|
---|
19417 | */
|
---|
19418 |
|
---|
19419 | /* SQDMULH <Zd>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/4420f000) */
|
---|
19420 | //#define IEM_INSTR_IMPL_A64__sqdmulh_z_zzi_h(Zd, Zn, Zm, i3l, i3h)
|
---|
19421 |
|
---|
19422 |
|
---|
19423 | /* SQDMULH <Zd>.S, <Zn>.S, <Zm>.S[<imm>] (ffe0fc00/44a0f000) */
|
---|
19424 | //#define IEM_INSTR_IMPL_A64__sqdmulh_z_zzi_s(Zd, Zn, Zm, i2)
|
---|
19425 |
|
---|
19426 |
|
---|
19427 | /* SQDMULH <Zd>.D, <Zn>.D, <Zm>.D[<imm>] (ffe0fc00/44e0f000) */
|
---|
19428 | //#define IEM_INSTR_IMPL_A64__sqdmulh_z_zzi_d(Zd, Zn, Zm, i1)
|
---|
19429 |
|
---|
19430 |
|
---|
19431 | /* SQRDMULH <Zd>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/4420f400) */
|
---|
19432 | //#define IEM_INSTR_IMPL_A64__sqrdmulh_z_zzi_h(Zd, Zn, Zm, i3l, i3h)
|
---|
19433 |
|
---|
19434 |
|
---|
19435 | /* SQRDMULH <Zd>.S, <Zn>.S, <Zm>.S[<imm>] (ffe0fc00/44a0f400) */
|
---|
19436 | //#define IEM_INSTR_IMPL_A64__sqrdmulh_z_zzi_s(Zd, Zn, Zm, i2)
|
---|
19437 |
|
---|
19438 |
|
---|
19439 | /* SQRDMULH <Zd>.D, <Zn>.D, <Zm>.D[<imm>] (ffe0fc00/44e0f400) */
|
---|
19440 | //#define IEM_INSTR_IMPL_A64__sqrdmulh_z_zzi_d(Zd, Zn, Zm, i1)
|
---|
19441 |
|
---|
19442 |
|
---|
19443 |
|
---|
19444 | /*
|
---|
19445 | *
|
---|
19446 | * Instruction Set & Groups: sve_intx_qrdcmla_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
19447 | *
|
---|
19448 | */
|
---|
19449 |
|
---|
19450 | /* SQRDCMLAH <Zda>.H, <Zn>.H, <Zm>.H[<imm>], <const> (ffe0f000/44a07000) */
|
---|
19451 | //#define IEM_INSTR_IMPL_A64__sqrdcmlah_z_zzzi_h(Zda, Zn, rot, Zm, i2)
|
---|
19452 |
|
---|
19453 |
|
---|
19454 | /* SQRDCMLAH <Zda>.S, <Zn>.S, <Zm>.S[<imm>], <const> (ffe0f000/44e07000) */
|
---|
19455 | //#define IEM_INSTR_IMPL_A64__sqrdcmlah_z_zzzi_s(Zda, Zn, rot, Zm, i1)
|
---|
19456 |
|
---|
19457 |
|
---|
19458 |
|
---|
19459 | /*
|
---|
19460 | *
|
---|
19461 | * Instruction Set & Groups: sve_intx_qrdmlah / sve_intx_muladd_unpred / sve / A64
|
---|
19462 | *
|
---|
19463 | */
|
---|
19464 |
|
---|
19465 | /* SQRDMLAH <Zda>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/44007000) */
|
---|
19466 | //#define IEM_INSTR_IMPL_A64__sqrdmlah_z_zzz(Zda, Zn, Zm, size)
|
---|
19467 |
|
---|
19468 |
|
---|
19469 | /* SQRDMLSH <Zda>.<T>, <Zn>.<T>, <Zm>.<T> (ff20fc00/44007400) */
|
---|
19470 | //#define IEM_INSTR_IMPL_A64__sqrdmlsh_z_zzz(Zda, Zn, Zm, size)
|
---|
19471 |
|
---|
19472 |
|
---|
19473 |
|
---|
19474 | /*
|
---|
19475 | *
|
---|
19476 | * Instruction Set & Groups: sve_intx_qrdmlah_by_indexed_elem / sve_intx_by_indexed_elem / sve / A64
|
---|
19477 | *
|
---|
19478 | */
|
---|
19479 |
|
---|
19480 | /* SQRDMLAH <Zda>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/44201000) */
|
---|
19481 | //#define IEM_INSTR_IMPL_A64__sqrdmlah_z_zzzi_h(Zda, Zn, S, Zm, i3l, i3h)
|
---|
19482 |
|
---|
19483 |
|
---|
19484 | /* SQRDMLAH <Zda>.S, <Zn>.S, <Zm>.S[<imm>] (ffe0fc00/44a01000) */
|
---|
19485 | //#define IEM_INSTR_IMPL_A64__sqrdmlah_z_zzzi_s(Zda, Zn, S, Zm, i2)
|
---|
19486 |
|
---|
19487 |
|
---|
19488 | /* SQRDMLAH <Zda>.D, <Zn>.D, <Zm>.D[<imm>] (ffe0fc00/44e01000) */
|
---|
19489 | //#define IEM_INSTR_IMPL_A64__sqrdmlah_z_zzzi_d(Zda, Zn, S, Zm, i1)
|
---|
19490 |
|
---|
19491 |
|
---|
19492 | /* SQRDMLSH <Zda>.H, <Zn>.H, <Zm>.H[<imm>] (ffa0fc00/44201400) */
|
---|
19493 | //#define IEM_INSTR_IMPL_A64__sqrdmlsh_z_zzzi_h(Zda, Zn, S, Zm, i3l, i3h)
|
---|
19494 |
|
---|
19495 |
|
---|
19496 | /* SQRDMLSH <Zda>.S, <Zn>.S, <Zm>.S[<imm>] (ffe0fc00/44a01400) */
|
---|
19497 | //#define IEM_INSTR_IMPL_A64__sqrdmlsh_z_zzzi_s(Zda, Zn, S, Zm, i2)
|
---|
19498 |
|
---|
19499 |
|
---|
19500 | /* SQRDMLSH <Zda>.D, <Zn>.D, <Zm>.D[<imm>] (ffe0fc00/44e01400) */
|
---|
19501 | //#define IEM_INSTR_IMPL_A64__sqrdmlsh_z_zzzi_d(Zda, Zn, S, Zm, i1)
|
---|
19502 |
|
---|
19503 |
|
---|
19504 |
|
---|
19505 | /*
|
---|
19506 | *
|
---|
19507 | * Instruction Set & Groups: sve_intx_shift_insert / sve_intx_acc / sve / A64
|
---|
19508 | *
|
---|
19509 | */
|
---|
19510 |
|
---|
19511 | /* SRI <Zd>.<T>, <Zn>.<T>, #<const> (ff20fc00/4500f000) */
|
---|
19512 | //#define IEM_INSTR_IMPL_A64__sri_z_zzi(Zd, Zn, imm3, tszl, tszh)
|
---|
19513 |
|
---|
19514 |
|
---|
19515 | /* SLI <Zd>.<T>, <Zn>.<T>, #<const> (ff20fc00/4500f400) */
|
---|
19516 | //#define IEM_INSTR_IMPL_A64__sli_z_zzi(Zd, Zn, imm3, tszl, tszh)
|
---|
19517 |
|
---|
19518 |
|
---|
19519 |
|
---|
19520 | /*
|
---|
19521 | *
|
---|
19522 | * Instruction Set & Groups: sve_intx_shift_long / sve_intx_constructive / sve / A64
|
---|
19523 | *
|
---|
19524 | */
|
---|
19525 |
|
---|
19526 | /* SSHLLB <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/4500a000) */
|
---|
19527 | //#define IEM_INSTR_IMPL_A64__sshllb_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19528 |
|
---|
19529 |
|
---|
19530 | /* SSHLLT <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/4500a400) */
|
---|
19531 | //#define IEM_INSTR_IMPL_A64__sshllt_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19532 |
|
---|
19533 |
|
---|
19534 | /* USHLLB <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/4500a800) */
|
---|
19535 | //#define IEM_INSTR_IMPL_A64__ushllb_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19536 |
|
---|
19537 |
|
---|
19538 | /* USHLLT <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/4500ac00) */
|
---|
19539 | //#define IEM_INSTR_IMPL_A64__ushllt_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19540 |
|
---|
19541 |
|
---|
19542 |
|
---|
19543 | /*
|
---|
19544 | *
|
---|
19545 | * Instruction Set & Groups: sve_intx_shift_narrow / sve_intx_narrowing / sve / A64
|
---|
19546 | *
|
---|
19547 | */
|
---|
19548 |
|
---|
19549 | /* SQSHRUNB <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45200000) */
|
---|
19550 | //#define IEM_INSTR_IMPL_A64__sqshrunb_z_zi(Zd, Zn, T, imm3, tszl, tszh)
|
---|
19551 |
|
---|
19552 |
|
---|
19553 | /* SQRSHRUNB <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45200800) */
|
---|
19554 | //#define IEM_INSTR_IMPL_A64__sqrshrunb_z_zi(Zd, Zn, T, imm3, tszl, tszh)
|
---|
19555 |
|
---|
19556 |
|
---|
19557 | /* SHRNB <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45201000) */
|
---|
19558 | //#define IEM_INSTR_IMPL_A64__shrnb_z_zi(Zd, Zn, T, imm3, tszl, tszh)
|
---|
19559 |
|
---|
19560 |
|
---|
19561 | /* RSHRNB <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45201800) */
|
---|
19562 | //#define IEM_INSTR_IMPL_A64__rshrnb_z_zi(Zd, Zn, T, imm3, tszl, tszh)
|
---|
19563 |
|
---|
19564 |
|
---|
19565 | /* SQSHRNB <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45202000) */
|
---|
19566 | //#define IEM_INSTR_IMPL_A64__sqshrnb_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19567 |
|
---|
19568 |
|
---|
19569 | /* SQRSHRNB <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45202800) */
|
---|
19570 | //#define IEM_INSTR_IMPL_A64__sqrshrnb_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19571 |
|
---|
19572 |
|
---|
19573 | /* SQSHRUNT <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45200400) */
|
---|
19574 | //#define IEM_INSTR_IMPL_A64__sqshrunt_z_zi(Zd, Zn, T, imm3, tszl, tszh)
|
---|
19575 |
|
---|
19576 |
|
---|
19577 | /* SQRSHRUNT <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45200c00) */
|
---|
19578 | //#define IEM_INSTR_IMPL_A64__sqrshrunt_z_zi(Zd, Zn, T, imm3, tszl, tszh)
|
---|
19579 |
|
---|
19580 |
|
---|
19581 | /* SHRNT <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45201400) */
|
---|
19582 | //#define IEM_INSTR_IMPL_A64__shrnt_z_zi(Zd, Zn, T, imm3, tszl, tszh)
|
---|
19583 |
|
---|
19584 |
|
---|
19585 | /* RSHRNT <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45201c00) */
|
---|
19586 | //#define IEM_INSTR_IMPL_A64__rshrnt_z_zi(Zd, Zn, T, imm3, tszl, tszh)
|
---|
19587 |
|
---|
19588 |
|
---|
19589 | /* SQSHRNT <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45202400) */
|
---|
19590 | //#define IEM_INSTR_IMPL_A64__sqshrnt_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19591 |
|
---|
19592 |
|
---|
19593 | /* SQRSHRNT <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45202c00) */
|
---|
19594 | //#define IEM_INSTR_IMPL_A64__sqrshrnt_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19595 |
|
---|
19596 |
|
---|
19597 | /* UQSHRNB <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45203000) */
|
---|
19598 | //#define IEM_INSTR_IMPL_A64__uqshrnb_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19599 |
|
---|
19600 |
|
---|
19601 | /* UQRSHRNB <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45203800) */
|
---|
19602 | //#define IEM_INSTR_IMPL_A64__uqrshrnb_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19603 |
|
---|
19604 |
|
---|
19605 | /* UQSHRNT <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45203400) */
|
---|
19606 | //#define IEM_INSTR_IMPL_A64__uqshrnt_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19607 |
|
---|
19608 |
|
---|
19609 | /* UQRSHRNT <Zd>.<T>, <Zn>.<Tb>, #<const> (ffa0fc00/45203c00) */
|
---|
19610 | //#define IEM_INSTR_IMPL_A64__uqrshrnt_z_zi(Zd, Zn, T, U, imm3, tszl, tszh)
|
---|
19611 |
|
---|
19612 |
|
---|
19613 |
|
---|
19614 | /*
|
---|
19615 | *
|
---|
19616 | * Instruction Set & Groups: sve_intx_sra / sve_intx_acc / sve / A64
|
---|
19617 | *
|
---|
19618 | */
|
---|
19619 |
|
---|
19620 | /* SSRA <Zda>.<T>, <Zn>.<T>, #<const> (ff20fc00/4500e000) */
|
---|
19621 | //#define IEM_INSTR_IMPL_A64__ssra_z_zi(Zda, Zn, U, imm3, tszl, tszh)
|
---|
19622 |
|
---|
19623 |
|
---|
19624 | /* SRSRA <Zda>.<T>, <Zn>.<T>, #<const> (ff20fc00/4500e800) */
|
---|
19625 | //#define IEM_INSTR_IMPL_A64__srsra_z_zi(Zda, Zn, U, imm3, tszl, tszh)
|
---|
19626 |
|
---|
19627 |
|
---|
19628 | /* USRA <Zda>.<T>, <Zn>.<T>, #<const> (ff20fc00/4500e400) */
|
---|
19629 | //#define IEM_INSTR_IMPL_A64__usra_z_zi(Zda, Zn, U, imm3, tszl, tszh)
|
---|
19630 |
|
---|
19631 |
|
---|
19632 | /* URSRA <Zda>.<T>, <Zn>.<T>, #<const> (ff20fc00/4500ec00) */
|
---|
19633 | //#define IEM_INSTR_IMPL_A64__ursra_z_zi(Zda, Zn, U, imm3, tszl, tszh)
|
---|
19634 |
|
---|
19635 |
|
---|
19636 |
|
---|
19637 | /*
|
---|
19638 | *
|
---|
19639 | * Instruction Set & Groups: sve_mem_32b_fill / sve_mem32 / sve / A64
|
---|
19640 | *
|
---|
19641 | */
|
---|
19642 |
|
---|
19643 | /* LDR <Zt>, [<Xn|SP>{, #<imm>, MUL VL}] (ffc0e000/85804000) */
|
---|
19644 | //#define IEM_INSTR_IMPL_A64__ldr_z_bi(Zt, Rn, imm9l, imm9h)
|
---|
19645 |
|
---|
19646 |
|
---|
19647 |
|
---|
19648 | /*
|
---|
19649 | *
|
---|
19650 | * Instruction Set & Groups: sve_mem_32b_gld_sv_a / sve_mem32 / sve / A64
|
---|
19651 | *
|
---|
19652 | */
|
---|
19653 |
|
---|
19654 | /* LD1SH { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod> #1] (ffa0e000/84a00000) */
|
---|
19655 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_bz_s_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19656 |
|
---|
19657 |
|
---|
19658 | /* LD1H { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod> #1] (ffa0e000/84a04000) */
|
---|
19659 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_bz_s_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19660 |
|
---|
19661 |
|
---|
19662 | /* LDFF1SH { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod> #1] (ffa0e000/84a02000) */
|
---|
19663 | //#define IEM_INSTR_IMPL_A64__ldff1sh_z_p_bz_s_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19664 |
|
---|
19665 |
|
---|
19666 | /* LDFF1H { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod> #1] (ffa0e000/84a06000) */
|
---|
19667 | //#define IEM_INSTR_IMPL_A64__ldff1h_z_p_bz_s_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19668 |
|
---|
19669 |
|
---|
19670 |
|
---|
19671 | /*
|
---|
19672 | *
|
---|
19673 | * Instruction Set & Groups: sve_mem_32b_gld_sv_b / sve_mem32 / sve / A64
|
---|
19674 | *
|
---|
19675 | */
|
---|
19676 |
|
---|
19677 | /* LD1W { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod> #2] (ffa0e000/85204000) */
|
---|
19678 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_bz_s_x32_scaled(Zt, Rn, Pg, ff, Zm, xs)
|
---|
19679 |
|
---|
19680 |
|
---|
19681 | /* LDFF1W { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod> #2] (ffa0e000/85206000) */
|
---|
19682 | //#define IEM_INSTR_IMPL_A64__ldff1w_z_p_bz_s_x32_scaled(Zt, Rn, Pg, ff, Zm, xs)
|
---|
19683 |
|
---|
19684 |
|
---|
19685 |
|
---|
19686 | /*
|
---|
19687 | *
|
---|
19688 | * Instruction Set & Groups: sve_mem_32b_gld_vi / sve_mem32 / sve / A64
|
---|
19689 | *
|
---|
19690 | */
|
---|
19691 |
|
---|
19692 | /* LD1SB { <Zt>.S }, <Pg>/Z, [<Zn>.S{, #<imm>}] (ffe0e000/84208000) */
|
---|
19693 | //#define IEM_INSTR_IMPL_A64__ld1sb_z_p_ai_s(Zt, Zn, Pg, ff, U, imm5)
|
---|
19694 |
|
---|
19695 |
|
---|
19696 | /* LD1SH { <Zt>.S }, <Pg>/Z, [<Zn>.S{, #<imm>}] (ffe0e000/84a08000) */
|
---|
19697 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_ai_s(Zt, Zn, Pg, ff, U, imm5)
|
---|
19698 |
|
---|
19699 |
|
---|
19700 | /* LD1W { <Zt>.S }, <Pg>/Z, [<Zn>.S{, #<imm>}] (ffe0e000/8520c000) */
|
---|
19701 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_ai_s(Zt, Zn, Pg, ff, imm5)
|
---|
19702 |
|
---|
19703 |
|
---|
19704 | /* LD1B { <Zt>.S }, <Pg>/Z, [<Zn>.S{, #<imm>}] (ffe0e000/8420c000) */
|
---|
19705 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_ai_s(Zt, Zn, Pg, ff, U, imm5)
|
---|
19706 |
|
---|
19707 |
|
---|
19708 | /* LD1H { <Zt>.S }, <Pg>/Z, [<Zn>.S{, #<imm>}] (ffe0e000/84a0c000) */
|
---|
19709 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_ai_s(Zt, Zn, Pg, ff, U, imm5)
|
---|
19710 |
|
---|
19711 |
|
---|
19712 | /* LDFF1SB { <Zt>.S }, <Pg>/Z, [<Zn>.S{, #<imm>}] (ffe0e000/8420a000) */
|
---|
19713 | //#define IEM_INSTR_IMPL_A64__ldff1sb_z_p_ai_s(Zt, Zn, Pg, ff, U, imm5)
|
---|
19714 |
|
---|
19715 |
|
---|
19716 | /* LDFF1SH { <Zt>.S }, <Pg>/Z, [<Zn>.S{, #<imm>}] (ffe0e000/84a0a000) */
|
---|
19717 | //#define IEM_INSTR_IMPL_A64__ldff1sh_z_p_ai_s(Zt, Zn, Pg, ff, U, imm5)
|
---|
19718 |
|
---|
19719 |
|
---|
19720 | /* LDFF1W { <Zt>.S }, <Pg>/Z, [<Zn>.S{, #<imm>}] (ffe0e000/8520e000) */
|
---|
19721 | //#define IEM_INSTR_IMPL_A64__ldff1w_z_p_ai_s(Zt, Zn, Pg, ff, imm5)
|
---|
19722 |
|
---|
19723 |
|
---|
19724 | /* LDFF1B { <Zt>.S }, <Pg>/Z, [<Zn>.S{, #<imm>}] (ffe0e000/8420e000) */
|
---|
19725 | //#define IEM_INSTR_IMPL_A64__ldff1b_z_p_ai_s(Zt, Zn, Pg, ff, U, imm5)
|
---|
19726 |
|
---|
19727 |
|
---|
19728 | /* LDFF1H { <Zt>.S }, <Pg>/Z, [<Zn>.S{, #<imm>}] (ffe0e000/84a0e000) */
|
---|
19729 | //#define IEM_INSTR_IMPL_A64__ldff1h_z_p_ai_s(Zt, Zn, Pg, ff, U, imm5)
|
---|
19730 |
|
---|
19731 |
|
---|
19732 |
|
---|
19733 | /*
|
---|
19734 | *
|
---|
19735 | * Instruction Set & Groups: sve_mem_32b_gld_vs / sve_mem32 / sve / A64
|
---|
19736 | *
|
---|
19737 | */
|
---|
19738 |
|
---|
19739 | /* LD1SB { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod>] (ffa0e000/84000000) */
|
---|
19740 | //#define IEM_INSTR_IMPL_A64__ld1sb_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19741 |
|
---|
19742 |
|
---|
19743 | /* LD1SH { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod>] (ffa0e000/84800000) */
|
---|
19744 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19745 |
|
---|
19746 |
|
---|
19747 | /* LD1W { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod>] (ffa0e000/85004000) */
|
---|
19748 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, ff, Zm, xs)
|
---|
19749 |
|
---|
19750 |
|
---|
19751 | /* LD1B { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod>] (ffa0e000/84004000) */
|
---|
19752 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19753 |
|
---|
19754 |
|
---|
19755 | /* LD1H { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod>] (ffa0e000/84804000) */
|
---|
19756 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19757 |
|
---|
19758 |
|
---|
19759 | /* LDFF1SB { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod>] (ffa0e000/84002000) */
|
---|
19760 | //#define IEM_INSTR_IMPL_A64__ldff1sb_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19761 |
|
---|
19762 |
|
---|
19763 | /* LDFF1SH { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod>] (ffa0e000/84802000) */
|
---|
19764 | //#define IEM_INSTR_IMPL_A64__ldff1sh_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19765 |
|
---|
19766 |
|
---|
19767 | /* LDFF1W { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod>] (ffa0e000/85006000) */
|
---|
19768 | //#define IEM_INSTR_IMPL_A64__ldff1w_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, ff, Zm, xs)
|
---|
19769 |
|
---|
19770 |
|
---|
19771 | /* LDFF1B { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod>] (ffa0e000/84006000) */
|
---|
19772 | //#define IEM_INSTR_IMPL_A64__ldff1b_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19773 |
|
---|
19774 |
|
---|
19775 | /* LDFF1H { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Zm>.S, <mod>] (ffa0e000/84806000) */
|
---|
19776 | //#define IEM_INSTR_IMPL_A64__ldff1h_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19777 |
|
---|
19778 |
|
---|
19779 |
|
---|
19780 | /*
|
---|
19781 | *
|
---|
19782 | * Instruction Set & Groups: sve_mem_32b_gldnt_vs / sve_mem32 / sve / A64
|
---|
19783 | *
|
---|
19784 | */
|
---|
19785 |
|
---|
19786 | /* LDNT1SB { <Zt>.S }, <Pg>/Z, [<Zn>.S{, <Xm>}] (ffe0e000/84008000) */
|
---|
19787 | //#define IEM_INSTR_IMPL_A64__ldnt1sb_z_p_ar_s_x32_unscaled(Zt, Zn, Pg, U, Rm)
|
---|
19788 |
|
---|
19789 |
|
---|
19790 | /* LDNT1SH { <Zt>.S }, <Pg>/Z, [<Zn>.S{, <Xm>}] (ffe0e000/84808000) */
|
---|
19791 | //#define IEM_INSTR_IMPL_A64__ldnt1sh_z_p_ar_s_x32_unscaled(Zt, Zn, Pg, U, Rm)
|
---|
19792 |
|
---|
19793 |
|
---|
19794 | /* LDNT1W { <Zt>.S }, <Pg>/Z, [<Zn>.S{, <Xm>}] (ffe0e000/8500a000) */
|
---|
19795 | //#define IEM_INSTR_IMPL_A64__ldnt1w_z_p_ar_s_x32_unscaled(Zt, Zn, Pg, Rm)
|
---|
19796 |
|
---|
19797 |
|
---|
19798 | /* LDNT1B { <Zt>.S }, <Pg>/Z, [<Zn>.S{, <Xm>}] (ffe0e000/8400a000) */
|
---|
19799 | //#define IEM_INSTR_IMPL_A64__ldnt1b_z_p_ar_s_x32_unscaled(Zt, Zn, Pg, U, Rm)
|
---|
19800 |
|
---|
19801 |
|
---|
19802 | /* LDNT1H { <Zt>.S }, <Pg>/Z, [<Zn>.S{, <Xm>}] (ffe0e000/8480a000) */
|
---|
19803 | //#define IEM_INSTR_IMPL_A64__ldnt1h_z_p_ar_s_x32_unscaled(Zt, Zn, Pg, U, Rm)
|
---|
19804 |
|
---|
19805 |
|
---|
19806 |
|
---|
19807 | /*
|
---|
19808 | *
|
---|
19809 | * Instruction Set & Groups: sve_mem_32b_pfill / sve_mem32 / sve / A64
|
---|
19810 | *
|
---|
19811 | */
|
---|
19812 |
|
---|
19813 | /* LDR <Pt>, [<Xn|SP>{, #<imm>, MUL VL}] (ffc0e010/85800000) */
|
---|
19814 | //#define IEM_INSTR_IMPL_A64__ldr_p_bi(Pt, Rn, imm9l, imm9h)
|
---|
19815 |
|
---|
19816 |
|
---|
19817 |
|
---|
19818 | /*
|
---|
19819 | *
|
---|
19820 | * Instruction Set & Groups: sve_mem_32b_prfm_sv / sve_mem32 / sve / A64
|
---|
19821 | *
|
---|
19822 | */
|
---|
19823 |
|
---|
19824 | /* PRFB <prfop>, <Pg>, [<Xn|SP>, <Zm>.S, <mod>] (ffa0e010/84200000) */
|
---|
19825 | //#define IEM_INSTR_IMPL_A64__prfb_i_p_bz_s_x32_scaled(prfop, Rn, Pg, msz, Zm, xs)
|
---|
19826 |
|
---|
19827 |
|
---|
19828 | /* PRFH <prfop>, <Pg>, [<Xn|SP>, <Zm>.S, <mod> #1] (ffa0e010/84202000) */
|
---|
19829 | //#define IEM_INSTR_IMPL_A64__prfh_i_p_bz_s_x32_scaled(prfop, Rn, Pg, msz, Zm, xs)
|
---|
19830 |
|
---|
19831 |
|
---|
19832 | /* PRFW <prfop>, <Pg>, [<Xn|SP>, <Zm>.S, <mod> #2] (ffa0e010/84204000) */
|
---|
19833 | //#define IEM_INSTR_IMPL_A64__prfw_i_p_bz_s_x32_scaled(prfop, Rn, Pg, msz, Zm, xs)
|
---|
19834 |
|
---|
19835 |
|
---|
19836 | /* PRFD <prfop>, <Pg>, [<Xn|SP>, <Zm>.S, <mod> #3] (ffa0e010/84206000) */
|
---|
19837 | //#define IEM_INSTR_IMPL_A64__prfd_i_p_bz_s_x32_scaled(prfop, Rn, Pg, msz, Zm, xs)
|
---|
19838 |
|
---|
19839 |
|
---|
19840 |
|
---|
19841 | /*
|
---|
19842 | *
|
---|
19843 | * Instruction Set & Groups: sve_mem_32b_prfm_vi / sve_mem32 / sve / A64
|
---|
19844 | *
|
---|
19845 | */
|
---|
19846 |
|
---|
19847 | /* PRFB <prfop>, <Pg>, [<Zn>.S{, #<imm>}] (ffe0e010/8400e000) */
|
---|
19848 | //#define IEM_INSTR_IMPL_A64__prfb_i_p_ai_s(prfop, Zn, Pg, imm5)
|
---|
19849 |
|
---|
19850 |
|
---|
19851 | /* PRFH <prfop>, <Pg>, [<Zn>.S{, #<imm>}] (ffe0e010/8480e000) */
|
---|
19852 | //#define IEM_INSTR_IMPL_A64__prfh_i_p_ai_s(prfop, Zn, Pg, imm5)
|
---|
19853 |
|
---|
19854 |
|
---|
19855 | /* PRFW <prfop>, <Pg>, [<Zn>.S{, #<imm>}] (ffe0e010/8500e000) */
|
---|
19856 | //#define IEM_INSTR_IMPL_A64__prfw_i_p_ai_s(prfop, Zn, Pg, imm5)
|
---|
19857 |
|
---|
19858 |
|
---|
19859 | /* PRFD <prfop>, <Pg>, [<Zn>.S{, #<imm>}] (ffe0e010/8580e000) */
|
---|
19860 | //#define IEM_INSTR_IMPL_A64__prfd_i_p_ai_s(prfop, Zn, Pg, imm5)
|
---|
19861 |
|
---|
19862 |
|
---|
19863 |
|
---|
19864 | /*
|
---|
19865 | *
|
---|
19866 | * Instruction Set & Groups: sve_mem_64b_gld_sv / sve_mem64 / sve / A64
|
---|
19867 | *
|
---|
19868 | */
|
---|
19869 |
|
---|
19870 | /* LD1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod> #1] (ffa0e000/c4a00000) */
|
---|
19871 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_bz_d_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19872 |
|
---|
19873 |
|
---|
19874 | /* LD1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod> #2] (ffa0e000/c5200000) */
|
---|
19875 | //#define IEM_INSTR_IMPL_A64__ld1sw_z_p_bz_d_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19876 |
|
---|
19877 |
|
---|
19878 | /* LD1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod> #3] (ffa0e000/c5a04000) */
|
---|
19879 | //#define IEM_INSTR_IMPL_A64__ld1d_z_p_bz_d_x32_scaled(Zt, Rn, Pg, ff, Zm, xs)
|
---|
19880 |
|
---|
19881 |
|
---|
19882 | /* LD1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod> #1] (ffa0e000/c4a04000) */
|
---|
19883 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_bz_d_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19884 |
|
---|
19885 |
|
---|
19886 | /* LD1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod> #2] (ffa0e000/c5204000) */
|
---|
19887 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_bz_d_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19888 |
|
---|
19889 |
|
---|
19890 | /* LDFF1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod> #1] (ffa0e000/c4a02000) */
|
---|
19891 | //#define IEM_INSTR_IMPL_A64__ldff1sh_z_p_bz_d_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19892 |
|
---|
19893 |
|
---|
19894 | /* LDFF1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod> #2] (ffa0e000/c5202000) */
|
---|
19895 | //#define IEM_INSTR_IMPL_A64__ldff1sw_z_p_bz_d_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19896 |
|
---|
19897 |
|
---|
19898 | /* LDFF1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod> #3] (ffa0e000/c5a06000) */
|
---|
19899 | //#define IEM_INSTR_IMPL_A64__ldff1d_z_p_bz_d_x32_scaled(Zt, Rn, Pg, ff, Zm, xs)
|
---|
19900 |
|
---|
19901 |
|
---|
19902 | /* LDFF1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod> #1] (ffa0e000/c4a06000) */
|
---|
19903 | //#define IEM_INSTR_IMPL_A64__ldff1h_z_p_bz_d_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19904 |
|
---|
19905 |
|
---|
19906 | /* LDFF1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod> #2] (ffa0e000/c5206000) */
|
---|
19907 | //#define IEM_INSTR_IMPL_A64__ldff1w_z_p_bz_d_x32_scaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
19908 |
|
---|
19909 |
|
---|
19910 |
|
---|
19911 | /*
|
---|
19912 | *
|
---|
19913 | * Instruction Set & Groups: sve_mem_64b_gld_sv2 / sve_mem64 / sve / A64
|
---|
19914 | *
|
---|
19915 | */
|
---|
19916 |
|
---|
19917 | /* LD1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, LSL #1] (ffe0e000/c4e08000) */
|
---|
19918 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_bz_d_64_scaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
19919 |
|
---|
19920 |
|
---|
19921 | /* LD1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, LSL #2] (ffe0e000/c5608000) */
|
---|
19922 | //#define IEM_INSTR_IMPL_A64__ld1sw_z_p_bz_d_64_scaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
19923 |
|
---|
19924 |
|
---|
19925 | /* LD1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, LSL #3] (ffe0e000/c5e0c000) */
|
---|
19926 | //#define IEM_INSTR_IMPL_A64__ld1d_z_p_bz_d_64_scaled(Zt, Rn, Pg, ff, Zm)
|
---|
19927 |
|
---|
19928 |
|
---|
19929 | /* LD1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, LSL #1] (ffe0e000/c4e0c000) */
|
---|
19930 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_bz_d_64_scaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
19931 |
|
---|
19932 |
|
---|
19933 | /* LD1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, LSL #2] (ffe0e000/c560c000) */
|
---|
19934 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_bz_d_64_scaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
19935 |
|
---|
19936 |
|
---|
19937 | /* LDFF1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, LSL #1] (ffe0e000/c4e0a000) */
|
---|
19938 | //#define IEM_INSTR_IMPL_A64__ldff1sh_z_p_bz_d_64_scaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
19939 |
|
---|
19940 |
|
---|
19941 | /* LDFF1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, LSL #2] (ffe0e000/c560a000) */
|
---|
19942 | //#define IEM_INSTR_IMPL_A64__ldff1sw_z_p_bz_d_64_scaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
19943 |
|
---|
19944 |
|
---|
19945 | /* LDFF1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, LSL #3] (ffe0e000/c5e0e000) */
|
---|
19946 | //#define IEM_INSTR_IMPL_A64__ldff1d_z_p_bz_d_64_scaled(Zt, Rn, Pg, ff, Zm)
|
---|
19947 |
|
---|
19948 |
|
---|
19949 | /* LDFF1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, LSL #1] (ffe0e000/c4e0e000) */
|
---|
19950 | //#define IEM_INSTR_IMPL_A64__ldff1h_z_p_bz_d_64_scaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
19951 |
|
---|
19952 |
|
---|
19953 | /* LDFF1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, LSL #2] (ffe0e000/c560e000) */
|
---|
19954 | //#define IEM_INSTR_IMPL_A64__ldff1w_z_p_bz_d_64_scaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
19955 |
|
---|
19956 |
|
---|
19957 |
|
---|
19958 | /*
|
---|
19959 | *
|
---|
19960 | * Instruction Set & Groups: sve_mem_64b_gld_vi / sve_mem64 / sve / A64
|
---|
19961 | *
|
---|
19962 | */
|
---|
19963 |
|
---|
19964 | /* LD1SB { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c4208000) */
|
---|
19965 | //#define IEM_INSTR_IMPL_A64__ld1sb_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
19966 |
|
---|
19967 |
|
---|
19968 | /* LD1SH { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c4a08000) */
|
---|
19969 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
19970 |
|
---|
19971 |
|
---|
19972 | /* LD1SW { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c5208000) */
|
---|
19973 | //#define IEM_INSTR_IMPL_A64__ld1sw_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
19974 |
|
---|
19975 |
|
---|
19976 | /* LD1D { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c5a0c000) */
|
---|
19977 | //#define IEM_INSTR_IMPL_A64__ld1d_z_p_ai_d(Zt, Zn, Pg, ff, imm5)
|
---|
19978 |
|
---|
19979 |
|
---|
19980 | /* LD1B { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c420c000) */
|
---|
19981 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
19982 |
|
---|
19983 |
|
---|
19984 | /* LD1H { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c4a0c000) */
|
---|
19985 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
19986 |
|
---|
19987 |
|
---|
19988 | /* LD1W { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c520c000) */
|
---|
19989 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
19990 |
|
---|
19991 |
|
---|
19992 | /* LDFF1SB { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c420a000) */
|
---|
19993 | //#define IEM_INSTR_IMPL_A64__ldff1sb_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
19994 |
|
---|
19995 |
|
---|
19996 | /* LDFF1SH { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c4a0a000) */
|
---|
19997 | //#define IEM_INSTR_IMPL_A64__ldff1sh_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
19998 |
|
---|
19999 |
|
---|
20000 | /* LDFF1SW { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c520a000) */
|
---|
20001 | //#define IEM_INSTR_IMPL_A64__ldff1sw_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
20002 |
|
---|
20003 |
|
---|
20004 | /* LDFF1D { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c5a0e000) */
|
---|
20005 | //#define IEM_INSTR_IMPL_A64__ldff1d_z_p_ai_d(Zt, Zn, Pg, ff, imm5)
|
---|
20006 |
|
---|
20007 |
|
---|
20008 | /* LDFF1B { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c420e000) */
|
---|
20009 | //#define IEM_INSTR_IMPL_A64__ldff1b_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
20010 |
|
---|
20011 |
|
---|
20012 | /* LDFF1H { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c4a0e000) */
|
---|
20013 | //#define IEM_INSTR_IMPL_A64__ldff1h_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
20014 |
|
---|
20015 |
|
---|
20016 | /* LDFF1W { <Zt>.D }, <Pg>/Z, [<Zn>.D{, #<imm>}] (ffe0e000/c520e000) */
|
---|
20017 | //#define IEM_INSTR_IMPL_A64__ldff1w_z_p_ai_d(Zt, Zn, Pg, ff, U, imm5)
|
---|
20018 |
|
---|
20019 |
|
---|
20020 |
|
---|
20021 | /*
|
---|
20022 | *
|
---|
20023 | * Instruction Set & Groups: sve_mem_64b_gld_vs / sve_mem64 / sve / A64
|
---|
20024 | *
|
---|
20025 | */
|
---|
20026 |
|
---|
20027 | /* LD1SB { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c4000000) */
|
---|
20028 | //#define IEM_INSTR_IMPL_A64__ld1sb_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20029 |
|
---|
20030 |
|
---|
20031 | /* LD1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c4800000) */
|
---|
20032 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20033 |
|
---|
20034 |
|
---|
20035 | /* LD1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c5000000) */
|
---|
20036 | //#define IEM_INSTR_IMPL_A64__ld1sw_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20037 |
|
---|
20038 |
|
---|
20039 | /* LD1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c5804000) */
|
---|
20040 | //#define IEM_INSTR_IMPL_A64__ld1d_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, Zm, xs)
|
---|
20041 |
|
---|
20042 |
|
---|
20043 | /* LD1B { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c4004000) */
|
---|
20044 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20045 |
|
---|
20046 |
|
---|
20047 | /* LD1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c4804000) */
|
---|
20048 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20049 |
|
---|
20050 |
|
---|
20051 | /* LD1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c5004000) */
|
---|
20052 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20053 |
|
---|
20054 |
|
---|
20055 | /* LDFF1SB { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c4002000) */
|
---|
20056 | //#define IEM_INSTR_IMPL_A64__ldff1sb_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20057 |
|
---|
20058 |
|
---|
20059 | /* LDFF1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c4802000) */
|
---|
20060 | //#define IEM_INSTR_IMPL_A64__ldff1sh_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20061 |
|
---|
20062 |
|
---|
20063 | /* LDFF1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c5002000) */
|
---|
20064 | //#define IEM_INSTR_IMPL_A64__ldff1sw_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20065 |
|
---|
20066 |
|
---|
20067 | /* LDFF1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c5806000) */
|
---|
20068 | //#define IEM_INSTR_IMPL_A64__ldff1d_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, Zm, xs)
|
---|
20069 |
|
---|
20070 |
|
---|
20071 | /* LDFF1B { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c4006000) */
|
---|
20072 | //#define IEM_INSTR_IMPL_A64__ldff1b_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20073 |
|
---|
20074 |
|
---|
20075 | /* LDFF1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c4806000) */
|
---|
20076 | //#define IEM_INSTR_IMPL_A64__ldff1h_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20077 |
|
---|
20078 |
|
---|
20079 | /* LDFF1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e000/c5006000) */
|
---|
20080 | //#define IEM_INSTR_IMPL_A64__ldff1w_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, ff, U, Zm, xs)
|
---|
20081 |
|
---|
20082 |
|
---|
20083 |
|
---|
20084 | /*
|
---|
20085 | *
|
---|
20086 | * Instruction Set & Groups: sve_mem_64b_gld_vs2 / sve_mem64 / sve / A64
|
---|
20087 | *
|
---|
20088 | */
|
---|
20089 |
|
---|
20090 | /* LD1SB { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c4408000) */
|
---|
20091 | //#define IEM_INSTR_IMPL_A64__ld1sb_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20092 |
|
---|
20093 |
|
---|
20094 | /* LD1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c4c08000) */
|
---|
20095 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20096 |
|
---|
20097 |
|
---|
20098 | /* LD1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c5408000) */
|
---|
20099 | //#define IEM_INSTR_IMPL_A64__ld1sw_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20100 |
|
---|
20101 |
|
---|
20102 | /* LD1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c5c0c000) */
|
---|
20103 | //#define IEM_INSTR_IMPL_A64__ld1d_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, Zm)
|
---|
20104 |
|
---|
20105 |
|
---|
20106 | /* LD1B { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c440c000) */
|
---|
20107 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20108 |
|
---|
20109 |
|
---|
20110 | /* LD1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c4c0c000) */
|
---|
20111 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20112 |
|
---|
20113 |
|
---|
20114 | /* LD1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c540c000) */
|
---|
20115 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20116 |
|
---|
20117 |
|
---|
20118 | /* LDFF1SB { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c440a000) */
|
---|
20119 | //#define IEM_INSTR_IMPL_A64__ldff1sb_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20120 |
|
---|
20121 |
|
---|
20122 | /* LDFF1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c4c0a000) */
|
---|
20123 | //#define IEM_INSTR_IMPL_A64__ldff1sh_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20124 |
|
---|
20125 |
|
---|
20126 | /* LDFF1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c540a000) */
|
---|
20127 | //#define IEM_INSTR_IMPL_A64__ldff1sw_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20128 |
|
---|
20129 |
|
---|
20130 | /* LDFF1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c5c0e000) */
|
---|
20131 | //#define IEM_INSTR_IMPL_A64__ldff1d_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, Zm)
|
---|
20132 |
|
---|
20133 |
|
---|
20134 | /* LDFF1B { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c440e000) */
|
---|
20135 | //#define IEM_INSTR_IMPL_A64__ldff1b_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20136 |
|
---|
20137 |
|
---|
20138 | /* LDFF1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c4c0e000) */
|
---|
20139 | //#define IEM_INSTR_IMPL_A64__ldff1h_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20140 |
|
---|
20141 |
|
---|
20142 | /* LDFF1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Zm>.D] (ffe0e000/c540e000) */
|
---|
20143 | //#define IEM_INSTR_IMPL_A64__ldff1w_z_p_bz_d_64_unscaled(Zt, Rn, Pg, ff, U, Zm)
|
---|
20144 |
|
---|
20145 |
|
---|
20146 |
|
---|
20147 | /*
|
---|
20148 | *
|
---|
20149 | * Instruction Set & Groups: sve_mem_64b_gldnt_vs / sve_mem64 / sve / A64
|
---|
20150 | *
|
---|
20151 | */
|
---|
20152 |
|
---|
20153 | /* LDNT1SB { <Zt>.D }, <Pg>/Z, [<Zn>.D{, <Xm>}] (ffe0e000/c4008000) */
|
---|
20154 | //#define IEM_INSTR_IMPL_A64__ldnt1sb_z_p_ar_d_64_unscaled(Zt, Zn, Pg, U, Rm)
|
---|
20155 |
|
---|
20156 |
|
---|
20157 | /* LDNT1SH { <Zt>.D }, <Pg>/Z, [<Zn>.D{, <Xm>}] (ffe0e000/c4808000) */
|
---|
20158 | //#define IEM_INSTR_IMPL_A64__ldnt1sh_z_p_ar_d_64_unscaled(Zt, Zn, Pg, U, Rm)
|
---|
20159 |
|
---|
20160 |
|
---|
20161 | /* LDNT1SW { <Zt>.D }, <Pg>/Z, [<Zn>.D{, <Xm>}] (ffe0e000/c5008000) */
|
---|
20162 | //#define IEM_INSTR_IMPL_A64__ldnt1sw_z_p_ar_d_64_unscaled(Zt, Zn, Pg, U, Rm)
|
---|
20163 |
|
---|
20164 |
|
---|
20165 | /* LDNT1D { <Zt>.D }, <Pg>/Z, [<Zn>.D{, <Xm>}] (ffe0e000/c580c000) */
|
---|
20166 | //#define IEM_INSTR_IMPL_A64__ldnt1d_z_p_ar_d_64_unscaled(Zt, Zn, Pg, Rm)
|
---|
20167 |
|
---|
20168 |
|
---|
20169 | /* LDNT1B { <Zt>.D }, <Pg>/Z, [<Zn>.D{, <Xm>}] (ffe0e000/c400c000) */
|
---|
20170 | //#define IEM_INSTR_IMPL_A64__ldnt1b_z_p_ar_d_64_unscaled(Zt, Zn, Pg, U, Rm)
|
---|
20171 |
|
---|
20172 |
|
---|
20173 | /* LDNT1H { <Zt>.D }, <Pg>/Z, [<Zn>.D{, <Xm>}] (ffe0e000/c480c000) */
|
---|
20174 | //#define IEM_INSTR_IMPL_A64__ldnt1h_z_p_ar_d_64_unscaled(Zt, Zn, Pg, U, Rm)
|
---|
20175 |
|
---|
20176 |
|
---|
20177 | /* LDNT1W { <Zt>.D }, <Pg>/Z, [<Zn>.D{, <Xm>}] (ffe0e000/c500c000) */
|
---|
20178 | //#define IEM_INSTR_IMPL_A64__ldnt1w_z_p_ar_d_64_unscaled(Zt, Zn, Pg, U, Rm)
|
---|
20179 |
|
---|
20180 |
|
---|
20181 |
|
---|
20182 | /*
|
---|
20183 | *
|
---|
20184 | * Instruction Set & Groups: sve_mem_64b_gldq_vs / sve_mem64 / sve / A64
|
---|
20185 | *
|
---|
20186 | */
|
---|
20187 |
|
---|
20188 | /* LD1Q { <Zt>.Q }, <Pg>/Z, [<Zn>.D{, <Xm>}] (ffe0e000/c400a000) */
|
---|
20189 | //#define IEM_INSTR_IMPL_A64__ld1q_z_p_ar_d_64_unscaled(Zt, Zn, Pg, Rm)
|
---|
20190 |
|
---|
20191 |
|
---|
20192 |
|
---|
20193 | /*
|
---|
20194 | *
|
---|
20195 | * Instruction Set & Groups: sve_mem_64b_prfm_sv / sve_mem64 / sve / A64
|
---|
20196 | *
|
---|
20197 | */
|
---|
20198 |
|
---|
20199 | /* PRFB <prfop>, <Pg>, [<Xn|SP>, <Zm>.D, <mod>] (ffa0e010/c4200000) */
|
---|
20200 | //#define IEM_INSTR_IMPL_A64__prfb_i_p_bz_d_x32_scaled(prfop, Rn, Pg, msz, Zm, xs)
|
---|
20201 |
|
---|
20202 |
|
---|
20203 | /* PRFH <prfop>, <Pg>, [<Xn|SP>, <Zm>.D, <mod> #1] (ffa0e010/c4202000) */
|
---|
20204 | //#define IEM_INSTR_IMPL_A64__prfh_i_p_bz_d_x32_scaled(prfop, Rn, Pg, msz, Zm, xs)
|
---|
20205 |
|
---|
20206 |
|
---|
20207 | /* PRFW <prfop>, <Pg>, [<Xn|SP>, <Zm>.D, <mod> #2] (ffa0e010/c4204000) */
|
---|
20208 | //#define IEM_INSTR_IMPL_A64__prfw_i_p_bz_d_x32_scaled(prfop, Rn, Pg, msz, Zm, xs)
|
---|
20209 |
|
---|
20210 |
|
---|
20211 | /* PRFD <prfop>, <Pg>, [<Xn|SP>, <Zm>.D, <mod> #3] (ffa0e010/c4206000) */
|
---|
20212 | //#define IEM_INSTR_IMPL_A64__prfd_i_p_bz_d_x32_scaled(prfop, Rn, Pg, msz, Zm, xs)
|
---|
20213 |
|
---|
20214 |
|
---|
20215 |
|
---|
20216 | /*
|
---|
20217 | *
|
---|
20218 | * Instruction Set & Groups: sve_mem_64b_prfm_sv2 / sve_mem64 / sve / A64
|
---|
20219 | *
|
---|
20220 | */
|
---|
20221 |
|
---|
20222 | /* PRFB <prfop>, <Pg>, [<Xn|SP>, <Zm>.D] (ffe0e010/c4608000) */
|
---|
20223 | //#define IEM_INSTR_IMPL_A64__prfb_i_p_bz_d_64_scaled(prfop, Rn, Pg, msz, Zm)
|
---|
20224 |
|
---|
20225 |
|
---|
20226 | /* PRFH <prfop>, <Pg>, [<Xn|SP>, <Zm>.D, LSL #1] (ffe0e010/c460a000) */
|
---|
20227 | //#define IEM_INSTR_IMPL_A64__prfh_i_p_bz_d_64_scaled(prfop, Rn, Pg, msz, Zm)
|
---|
20228 |
|
---|
20229 |
|
---|
20230 | /* PRFW <prfop>, <Pg>, [<Xn|SP>, <Zm>.D, LSL #2] (ffe0e010/c460c000) */
|
---|
20231 | //#define IEM_INSTR_IMPL_A64__prfw_i_p_bz_d_64_scaled(prfop, Rn, Pg, msz, Zm)
|
---|
20232 |
|
---|
20233 |
|
---|
20234 | /* PRFD <prfop>, <Pg>, [<Xn|SP>, <Zm>.D, LSL #3] (ffe0e010/c460e000) */
|
---|
20235 | //#define IEM_INSTR_IMPL_A64__prfd_i_p_bz_d_64_scaled(prfop, Rn, Pg, msz, Zm)
|
---|
20236 |
|
---|
20237 |
|
---|
20238 |
|
---|
20239 | /*
|
---|
20240 | *
|
---|
20241 | * Instruction Set & Groups: sve_mem_64b_prfm_vi / sve_mem64 / sve / A64
|
---|
20242 | *
|
---|
20243 | */
|
---|
20244 |
|
---|
20245 | /* PRFB <prfop>, <Pg>, [<Zn>.D{, #<imm>}] (ffe0e010/c400e000) */
|
---|
20246 | //#define IEM_INSTR_IMPL_A64__prfb_i_p_ai_d(prfop, Zn, Pg, imm5)
|
---|
20247 |
|
---|
20248 |
|
---|
20249 | /* PRFH <prfop>, <Pg>, [<Zn>.D{, #<imm>}] (ffe0e010/c480e000) */
|
---|
20250 | //#define IEM_INSTR_IMPL_A64__prfh_i_p_ai_d(prfop, Zn, Pg, imm5)
|
---|
20251 |
|
---|
20252 |
|
---|
20253 | /* PRFW <prfop>, <Pg>, [<Zn>.D{, #<imm>}] (ffe0e010/c500e000) */
|
---|
20254 | //#define IEM_INSTR_IMPL_A64__prfw_i_p_ai_d(prfop, Zn, Pg, imm5)
|
---|
20255 |
|
---|
20256 |
|
---|
20257 | /* PRFD <prfop>, <Pg>, [<Zn>.D{, #<imm>}] (ffe0e010/c580e000) */
|
---|
20258 | //#define IEM_INSTR_IMPL_A64__prfd_i_p_ai_d(prfop, Zn, Pg, imm5)
|
---|
20259 |
|
---|
20260 |
|
---|
20261 |
|
---|
20262 | /*
|
---|
20263 | *
|
---|
20264 | * Instruction Set & Groups: sve_mem_cld_si / sve_memcld / sve / A64
|
---|
20265 | *
|
---|
20266 | */
|
---|
20267 |
|
---|
20268 | /* LD1B { <Zt>.B }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a400a000) */
|
---|
20269 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_bi_u8(Zt, Rn, Pg, imm4, dtype)
|
---|
20270 |
|
---|
20271 |
|
---|
20272 | /* LD1B { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a420a000) */
|
---|
20273 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_bi_u16(Zt, Rn, Pg, imm4, dtype)
|
---|
20274 |
|
---|
20275 |
|
---|
20276 | /* LD1B { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a440a000) */
|
---|
20277 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_bi_u32(Zt, Rn, Pg, imm4, dtype)
|
---|
20278 |
|
---|
20279 |
|
---|
20280 | /* LD1B { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a460a000) */
|
---|
20281 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_bi_u64(Zt, Rn, Pg, imm4, dtype)
|
---|
20282 |
|
---|
20283 |
|
---|
20284 | /* LD1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a480a000) */
|
---|
20285 | //#define IEM_INSTR_IMPL_A64__ld1sw_z_p_bi_s64(Zt, Rn, Pg, imm4, dtype)
|
---|
20286 |
|
---|
20287 |
|
---|
20288 | /* LD1H { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a4a0a000) */
|
---|
20289 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_bi_u16(Zt, Rn, Pg, imm4, dtype)
|
---|
20290 |
|
---|
20291 |
|
---|
20292 | /* LD1H { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a4c0a000) */
|
---|
20293 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_bi_u32(Zt, Rn, Pg, imm4, dtype)
|
---|
20294 |
|
---|
20295 |
|
---|
20296 | /* LD1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a4e0a000) */
|
---|
20297 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_bi_u64(Zt, Rn, Pg, imm4, dtype)
|
---|
20298 |
|
---|
20299 |
|
---|
20300 | /* LD1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a500a000) */
|
---|
20301 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_bi_s64(Zt, Rn, Pg, imm4, dtype)
|
---|
20302 |
|
---|
20303 |
|
---|
20304 | /* LD1SH { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a520a000) */
|
---|
20305 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_bi_s32(Zt, Rn, Pg, imm4, dtype)
|
---|
20306 |
|
---|
20307 |
|
---|
20308 | /* LD1W { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a540a000) */
|
---|
20309 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_bi_u32(Zt, Rn, Pg, imm4, dtype)
|
---|
20310 |
|
---|
20311 |
|
---|
20312 | /* LD1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a560a000) */
|
---|
20313 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_bi_u64(Zt, Rn, Pg, imm4, dtype)
|
---|
20314 |
|
---|
20315 |
|
---|
20316 | /* LD1SB { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a580a000) */
|
---|
20317 | //#define IEM_INSTR_IMPL_A64__ld1sb_z_p_bi_s64(Zt, Rn, Pg, imm4, dtype)
|
---|
20318 |
|
---|
20319 |
|
---|
20320 | /* LD1SB { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a5a0a000) */
|
---|
20321 | //#define IEM_INSTR_IMPL_A64__ld1sb_z_p_bi_s32(Zt, Rn, Pg, imm4, dtype)
|
---|
20322 |
|
---|
20323 |
|
---|
20324 | /* LD1SB { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a5c0a000) */
|
---|
20325 | //#define IEM_INSTR_IMPL_A64__ld1sb_z_p_bi_s16(Zt, Rn, Pg, imm4, dtype)
|
---|
20326 |
|
---|
20327 |
|
---|
20328 | /* LD1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a5e0a000) */
|
---|
20329 | //#define IEM_INSTR_IMPL_A64__ld1d_z_p_bi_u64(Zt, Rn, Pg, imm4, dtype)
|
---|
20330 |
|
---|
20331 |
|
---|
20332 |
|
---|
20333 | /*
|
---|
20334 | *
|
---|
20335 | * Instruction Set & Groups: sve_mem_cld_si_q / sve_memcld / sve / A64
|
---|
20336 | *
|
---|
20337 | */
|
---|
20338 |
|
---|
20339 | /* LD1W { <Zt>.Q }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a5102000) */
|
---|
20340 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_bi_u128(Zt, Rn, Pg, imm4)
|
---|
20341 |
|
---|
20342 |
|
---|
20343 | /* LD1D { <Zt>.Q }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a5902000) */
|
---|
20344 | //#define IEM_INSTR_IMPL_A64__ld1d_z_p_bi_u128(Zt, Rn, Pg, imm4)
|
---|
20345 |
|
---|
20346 |
|
---|
20347 |
|
---|
20348 | /*
|
---|
20349 | *
|
---|
20350 | * Instruction Set & Groups: sve_mem_cld_ss / sve_memcld / sve / A64
|
---|
20351 | *
|
---|
20352 | */
|
---|
20353 |
|
---|
20354 | /* LD1B { <Zt>.B }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a4004000) */
|
---|
20355 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_br_u8(Zt, Rn, Pg, Rm, dtype)
|
---|
20356 |
|
---|
20357 |
|
---|
20358 | /* LD1B { <Zt>.H }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a4204000) */
|
---|
20359 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_br_u16(Zt, Rn, Pg, Rm, dtype)
|
---|
20360 |
|
---|
20361 |
|
---|
20362 | /* LD1B { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a4404000) */
|
---|
20363 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_br_u32(Zt, Rn, Pg, Rm, dtype)
|
---|
20364 |
|
---|
20365 |
|
---|
20366 | /* LD1B { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a4604000) */
|
---|
20367 | //#define IEM_INSTR_IMPL_A64__ld1b_z_p_br_u64(Zt, Rn, Pg, Rm, dtype)
|
---|
20368 |
|
---|
20369 |
|
---|
20370 | /* LD1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/a4804000) */
|
---|
20371 | //#define IEM_INSTR_IMPL_A64__ld1sw_z_p_br_s64(Zt, Rn, Pg, Rm, dtype)
|
---|
20372 |
|
---|
20373 |
|
---|
20374 | /* LD1H { <Zt>.H }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/a4a04000) */
|
---|
20375 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_br_u16(Zt, Rn, Pg, Rm, dtype)
|
---|
20376 |
|
---|
20377 |
|
---|
20378 | /* LD1H { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/a4c04000) */
|
---|
20379 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_br_u32(Zt, Rn, Pg, Rm, dtype)
|
---|
20380 |
|
---|
20381 |
|
---|
20382 | /* LD1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/a4e04000) */
|
---|
20383 | //#define IEM_INSTR_IMPL_A64__ld1h_z_p_br_u64(Zt, Rn, Pg, Rm, dtype)
|
---|
20384 |
|
---|
20385 |
|
---|
20386 | /* LD1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/a5004000) */
|
---|
20387 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_br_s64(Zt, Rn, Pg, Rm, dtype)
|
---|
20388 |
|
---|
20389 |
|
---|
20390 | /* LD1SH { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/a5204000) */
|
---|
20391 | //#define IEM_INSTR_IMPL_A64__ld1sh_z_p_br_s32(Zt, Rn, Pg, Rm, dtype)
|
---|
20392 |
|
---|
20393 |
|
---|
20394 | /* LD1W { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/a5404000) */
|
---|
20395 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_br_u32(Zt, Rn, Pg, Rm, dtype)
|
---|
20396 |
|
---|
20397 |
|
---|
20398 | /* LD1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/a5604000) */
|
---|
20399 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_br_u64(Zt, Rn, Pg, Rm, dtype)
|
---|
20400 |
|
---|
20401 |
|
---|
20402 | /* LD1SB { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a5804000) */
|
---|
20403 | //#define IEM_INSTR_IMPL_A64__ld1sb_z_p_br_s64(Zt, Rn, Pg, Rm, dtype)
|
---|
20404 |
|
---|
20405 |
|
---|
20406 | /* LD1SB { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a5a04000) */
|
---|
20407 | //#define IEM_INSTR_IMPL_A64__ld1sb_z_p_br_s32(Zt, Rn, Pg, Rm, dtype)
|
---|
20408 |
|
---|
20409 |
|
---|
20410 | /* LD1SB { <Zt>.H }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a5c04000) */
|
---|
20411 | //#define IEM_INSTR_IMPL_A64__ld1sb_z_p_br_s16(Zt, Rn, Pg, Rm, dtype)
|
---|
20412 |
|
---|
20413 |
|
---|
20414 | /* LD1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/a5e04000) */
|
---|
20415 | //#define IEM_INSTR_IMPL_A64__ld1d_z_p_br_u64(Zt, Rn, Pg, Rm, dtype)
|
---|
20416 |
|
---|
20417 |
|
---|
20418 |
|
---|
20419 | /*
|
---|
20420 | *
|
---|
20421 | * Instruction Set & Groups: sve_mem_cld_ss_q / sve_memcld / sve / A64
|
---|
20422 | *
|
---|
20423 | */
|
---|
20424 |
|
---|
20425 | /* LD1W { <Zt>.Q }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/a5008000) */
|
---|
20426 | //#define IEM_INSTR_IMPL_A64__ld1w_z_p_br_u128(Zt, Rn, Pg, Rm)
|
---|
20427 |
|
---|
20428 |
|
---|
20429 | /* LD1D { <Zt>.Q }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/a5808000) */
|
---|
20430 | //#define IEM_INSTR_IMPL_A64__ld1d_z_p_br_u128(Zt, Rn, Pg, Rm)
|
---|
20431 |
|
---|
20432 |
|
---|
20433 |
|
---|
20434 | /*
|
---|
20435 | *
|
---|
20436 | * Instruction Set & Groups: sve_mem_cldff_ss / sve_memcld / sve / A64
|
---|
20437 | *
|
---|
20438 | */
|
---|
20439 |
|
---|
20440 | /* LDFF1B { <Zt>.B }, <Pg>/Z, [<Xn|SP>{, <Xm>}] (ffe0e000/a4006000) */
|
---|
20441 | //#define IEM_INSTR_IMPL_A64__ldff1b_z_p_br_u8(Zt, Rn, Pg, Rm, dtype)
|
---|
20442 |
|
---|
20443 |
|
---|
20444 | /* LDFF1B { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, <Xm>}] (ffe0e000/a4206000) */
|
---|
20445 | //#define IEM_INSTR_IMPL_A64__ldff1b_z_p_br_u16(Zt, Rn, Pg, Rm, dtype)
|
---|
20446 |
|
---|
20447 |
|
---|
20448 | /* LDFF1B { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, <Xm>}] (ffe0e000/a4406000) */
|
---|
20449 | //#define IEM_INSTR_IMPL_A64__ldff1b_z_p_br_u32(Zt, Rn, Pg, Rm, dtype)
|
---|
20450 |
|
---|
20451 |
|
---|
20452 | /* LDFF1B { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, <Xm>}] (ffe0e000/a4606000) */
|
---|
20453 | //#define IEM_INSTR_IMPL_A64__ldff1b_z_p_br_u64(Zt, Rn, Pg, Rm, dtype)
|
---|
20454 |
|
---|
20455 |
|
---|
20456 | /* LDFF1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #2}] (ffe0e000/a4806000) */
|
---|
20457 | //#define IEM_INSTR_IMPL_A64__ldff1sw_z_p_br_s64(Zt, Rn, Pg, Rm, dtype)
|
---|
20458 |
|
---|
20459 |
|
---|
20460 | /* LDFF1H { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #1}] (ffe0e000/a4a06000) */
|
---|
20461 | //#define IEM_INSTR_IMPL_A64__ldff1h_z_p_br_u16(Zt, Rn, Pg, Rm, dtype)
|
---|
20462 |
|
---|
20463 |
|
---|
20464 | /* LDFF1H { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #1}] (ffe0e000/a4c06000) */
|
---|
20465 | //#define IEM_INSTR_IMPL_A64__ldff1h_z_p_br_u32(Zt, Rn, Pg, Rm, dtype)
|
---|
20466 |
|
---|
20467 |
|
---|
20468 | /* LDFF1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #1}] (ffe0e000/a4e06000) */
|
---|
20469 | //#define IEM_INSTR_IMPL_A64__ldff1h_z_p_br_u64(Zt, Rn, Pg, Rm, dtype)
|
---|
20470 |
|
---|
20471 |
|
---|
20472 | /* LDFF1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #1}] (ffe0e000/a5006000) */
|
---|
20473 | //#define IEM_INSTR_IMPL_A64__ldff1sh_z_p_br_s64(Zt, Rn, Pg, Rm, dtype)
|
---|
20474 |
|
---|
20475 |
|
---|
20476 | /* LDFF1SH { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #1}] (ffe0e000/a5206000) */
|
---|
20477 | //#define IEM_INSTR_IMPL_A64__ldff1sh_z_p_br_s32(Zt, Rn, Pg, Rm, dtype)
|
---|
20478 |
|
---|
20479 |
|
---|
20480 | /* LDFF1W { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #2}] (ffe0e000/a5406000) */
|
---|
20481 | //#define IEM_INSTR_IMPL_A64__ldff1w_z_p_br_u32(Zt, Rn, Pg, Rm, dtype)
|
---|
20482 |
|
---|
20483 |
|
---|
20484 | /* LDFF1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #2}] (ffe0e000/a5606000) */
|
---|
20485 | //#define IEM_INSTR_IMPL_A64__ldff1w_z_p_br_u64(Zt, Rn, Pg, Rm, dtype)
|
---|
20486 |
|
---|
20487 |
|
---|
20488 | /* LDFF1SB { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, <Xm>}] (ffe0e000/a5806000) */
|
---|
20489 | //#define IEM_INSTR_IMPL_A64__ldff1sb_z_p_br_s64(Zt, Rn, Pg, Rm, dtype)
|
---|
20490 |
|
---|
20491 |
|
---|
20492 | /* LDFF1SB { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, <Xm>}] (ffe0e000/a5a06000) */
|
---|
20493 | //#define IEM_INSTR_IMPL_A64__ldff1sb_z_p_br_s32(Zt, Rn, Pg, Rm, dtype)
|
---|
20494 |
|
---|
20495 |
|
---|
20496 | /* LDFF1SB { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, <Xm>}] (ffe0e000/a5c06000) */
|
---|
20497 | //#define IEM_INSTR_IMPL_A64__ldff1sb_z_p_br_s16(Zt, Rn, Pg, Rm, dtype)
|
---|
20498 |
|
---|
20499 |
|
---|
20500 | /* LDFF1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, <Xm>, LSL #3}] (ffe0e000/a5e06000) */
|
---|
20501 | //#define IEM_INSTR_IMPL_A64__ldff1d_z_p_br_u64(Zt, Rn, Pg, Rm, dtype)
|
---|
20502 |
|
---|
20503 |
|
---|
20504 |
|
---|
20505 | /*
|
---|
20506 | *
|
---|
20507 | * Instruction Set & Groups: sve_mem_cldnf_si / sve_memcld / sve / A64
|
---|
20508 | *
|
---|
20509 | */
|
---|
20510 |
|
---|
20511 | /* LDNF1B { <Zt>.B }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a410a000) */
|
---|
20512 | //#define IEM_INSTR_IMPL_A64__ldnf1b_z_p_bi_u8(Zt, Rn, Pg, imm4, dtype)
|
---|
20513 |
|
---|
20514 |
|
---|
20515 | /* LDNF1B { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a430a000) */
|
---|
20516 | //#define IEM_INSTR_IMPL_A64__ldnf1b_z_p_bi_u16(Zt, Rn, Pg, imm4, dtype)
|
---|
20517 |
|
---|
20518 |
|
---|
20519 | /* LDNF1B { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a450a000) */
|
---|
20520 | //#define IEM_INSTR_IMPL_A64__ldnf1b_z_p_bi_u32(Zt, Rn, Pg, imm4, dtype)
|
---|
20521 |
|
---|
20522 |
|
---|
20523 | /* LDNF1B { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a470a000) */
|
---|
20524 | //#define IEM_INSTR_IMPL_A64__ldnf1b_z_p_bi_u64(Zt, Rn, Pg, imm4, dtype)
|
---|
20525 |
|
---|
20526 |
|
---|
20527 | /* LDNF1SW { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a490a000) */
|
---|
20528 | //#define IEM_INSTR_IMPL_A64__ldnf1sw_z_p_bi_s64(Zt, Rn, Pg, imm4, dtype)
|
---|
20529 |
|
---|
20530 |
|
---|
20531 | /* LDNF1H { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a4b0a000) */
|
---|
20532 | //#define IEM_INSTR_IMPL_A64__ldnf1h_z_p_bi_u16(Zt, Rn, Pg, imm4, dtype)
|
---|
20533 |
|
---|
20534 |
|
---|
20535 | /* LDNF1H { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a4d0a000) */
|
---|
20536 | //#define IEM_INSTR_IMPL_A64__ldnf1h_z_p_bi_u32(Zt, Rn, Pg, imm4, dtype)
|
---|
20537 |
|
---|
20538 |
|
---|
20539 | /* LDNF1H { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a4f0a000) */
|
---|
20540 | //#define IEM_INSTR_IMPL_A64__ldnf1h_z_p_bi_u64(Zt, Rn, Pg, imm4, dtype)
|
---|
20541 |
|
---|
20542 |
|
---|
20543 | /* LDNF1SH { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a510a000) */
|
---|
20544 | //#define IEM_INSTR_IMPL_A64__ldnf1sh_z_p_bi_s64(Zt, Rn, Pg, imm4, dtype)
|
---|
20545 |
|
---|
20546 |
|
---|
20547 | /* LDNF1SH { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a530a000) */
|
---|
20548 | //#define IEM_INSTR_IMPL_A64__ldnf1sh_z_p_bi_s32(Zt, Rn, Pg, imm4, dtype)
|
---|
20549 |
|
---|
20550 |
|
---|
20551 | /* LDNF1W { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a550a000) */
|
---|
20552 | //#define IEM_INSTR_IMPL_A64__ldnf1w_z_p_bi_u32(Zt, Rn, Pg, imm4, dtype)
|
---|
20553 |
|
---|
20554 |
|
---|
20555 | /* LDNF1W { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a570a000) */
|
---|
20556 | //#define IEM_INSTR_IMPL_A64__ldnf1w_z_p_bi_u64(Zt, Rn, Pg, imm4, dtype)
|
---|
20557 |
|
---|
20558 |
|
---|
20559 | /* LDNF1SB { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a590a000) */
|
---|
20560 | //#define IEM_INSTR_IMPL_A64__ldnf1sb_z_p_bi_s64(Zt, Rn, Pg, imm4, dtype)
|
---|
20561 |
|
---|
20562 |
|
---|
20563 | /* LDNF1SB { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a5b0a000) */
|
---|
20564 | //#define IEM_INSTR_IMPL_A64__ldnf1sb_z_p_bi_s32(Zt, Rn, Pg, imm4, dtype)
|
---|
20565 |
|
---|
20566 |
|
---|
20567 | /* LDNF1SB { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a5d0a000) */
|
---|
20568 | //#define IEM_INSTR_IMPL_A64__ldnf1sb_z_p_bi_s16(Zt, Rn, Pg, imm4, dtype)
|
---|
20569 |
|
---|
20570 |
|
---|
20571 | /* LDNF1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a5f0a000) */
|
---|
20572 | //#define IEM_INSTR_IMPL_A64__ldnf1d_z_p_bi_u64(Zt, Rn, Pg, imm4, dtype)
|
---|
20573 |
|
---|
20574 |
|
---|
20575 |
|
---|
20576 | /*
|
---|
20577 | *
|
---|
20578 | * Instruction Set & Groups: sve_mem_cldnt_si / sve_memcld / sve / A64
|
---|
20579 | *
|
---|
20580 | */
|
---|
20581 |
|
---|
20582 | /* LDNT1B { <Zt>.B }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a400e000) */
|
---|
20583 | //#define IEM_INSTR_IMPL_A64__ldnt1b_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20584 |
|
---|
20585 |
|
---|
20586 | /* LDNT1H { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a480e000) */
|
---|
20587 | //#define IEM_INSTR_IMPL_A64__ldnt1h_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20588 |
|
---|
20589 |
|
---|
20590 | /* LDNT1W { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a500e000) */
|
---|
20591 | //#define IEM_INSTR_IMPL_A64__ldnt1w_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20592 |
|
---|
20593 |
|
---|
20594 | /* LDNT1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a580e000) */
|
---|
20595 | //#define IEM_INSTR_IMPL_A64__ldnt1d_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20596 |
|
---|
20597 |
|
---|
20598 |
|
---|
20599 | /*
|
---|
20600 | *
|
---|
20601 | * Instruction Set & Groups: sve_mem_cldnt_ss / sve_memcld / sve / A64
|
---|
20602 | *
|
---|
20603 | */
|
---|
20604 |
|
---|
20605 | /* LDNT1B { <Zt>.B }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a400c000) */
|
---|
20606 | //#define IEM_INSTR_IMPL_A64__ldnt1b_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20607 |
|
---|
20608 |
|
---|
20609 | /* LDNT1H { <Zt>.H }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/a480c000) */
|
---|
20610 | //#define IEM_INSTR_IMPL_A64__ldnt1h_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20611 |
|
---|
20612 |
|
---|
20613 | /* LDNT1W { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/a500c000) */
|
---|
20614 | //#define IEM_INSTR_IMPL_A64__ldnt1w_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20615 |
|
---|
20616 |
|
---|
20617 | /* LDNT1D { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/a580c000) */
|
---|
20618 | //#define IEM_INSTR_IMPL_A64__ldnt1d_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20619 |
|
---|
20620 |
|
---|
20621 |
|
---|
20622 | /*
|
---|
20623 | *
|
---|
20624 | * Instruction Set & Groups: sve_mem_cst_si / sve_memst_si / sve / A64
|
---|
20625 | *
|
---|
20626 | */
|
---|
20627 |
|
---|
20628 | /* ST1B { <Zt>.<T> }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (ff90e000/e400e000) */
|
---|
20629 | //#define IEM_INSTR_IMPL_A64__st1b_z_p_bi(Zt, Rn, Pg, imm4, size)
|
---|
20630 |
|
---|
20631 |
|
---|
20632 | /* ST1H { <Zt>.<T> }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (ff90e000/e480e000) */
|
---|
20633 | //#define IEM_INSTR_IMPL_A64__st1h_z_p_bi(Zt, Rn, Pg, imm4, size)
|
---|
20634 |
|
---|
20635 |
|
---|
20636 | /* ST1W { <Zt>.Q }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e500e000) */
|
---|
20637 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_bi_u128(Zt, Rn, Pg, imm4)
|
---|
20638 |
|
---|
20639 |
|
---|
20640 | /* ST1W { <Zt>.<T> }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (ffd0e000/e540e000) */
|
---|
20641 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_bi(Zt, Rn, Pg, imm4, sz)
|
---|
20642 |
|
---|
20643 |
|
---|
20644 | /* ST1D { <Zt>.Q }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e5c0e000) */
|
---|
20645 | //#define IEM_INSTR_IMPL_A64__st1d_z_p_bi_u128(Zt, Rn, Pg, imm4)
|
---|
20646 |
|
---|
20647 |
|
---|
20648 | /* ST1D { <Zt>.D }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e5e0e000) */
|
---|
20649 | //#define IEM_INSTR_IMPL_A64__st1d_z_p_bi(Zt, Rn, Pg, imm4)
|
---|
20650 |
|
---|
20651 |
|
---|
20652 |
|
---|
20653 | /*
|
---|
20654 | *
|
---|
20655 | * Instruction Set & Groups: sve_mem_cst_ss / sve_memst_cs / sve / A64
|
---|
20656 | *
|
---|
20657 | */
|
---|
20658 |
|
---|
20659 | /* ST1B { <Zt>.<T> }, <Pg>, [<Xn|SP>, <Xm>] (ff80e000/e4004000) */
|
---|
20660 | //#define IEM_INSTR_IMPL_A64__st1b_z_p_br(Zt, Rn, Pg, Rm, size)
|
---|
20661 |
|
---|
20662 |
|
---|
20663 | /* ST1H { <Zt>.<T> }, <Pg>, [<Xn|SP>, <Xm>, LSL #1] (ff80e000/e4804000) */
|
---|
20664 | //#define IEM_INSTR_IMPL_A64__st1h_z_p_br(Zt, Rn, Pg, Rm, size)
|
---|
20665 |
|
---|
20666 |
|
---|
20667 | /* ST1W { <Zt>.Q }, <Pg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/e5004000) */
|
---|
20668 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_br_u128(Zt, Rn, Pg, Rm)
|
---|
20669 |
|
---|
20670 |
|
---|
20671 | /* ST1W { <Zt>.<T> }, <Pg>, [<Xn|SP>, <Xm>, LSL #2] (ffc0e000/e5404000) */
|
---|
20672 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_br(Zt, Rn, Pg, Rm, sz)
|
---|
20673 |
|
---|
20674 |
|
---|
20675 | /* ST1D { <Zt>.Q }, <Pg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/e5c04000) */
|
---|
20676 | //#define IEM_INSTR_IMPL_A64__st1d_z_p_br_u128(Zt, Rn, Pg, Rm)
|
---|
20677 |
|
---|
20678 |
|
---|
20679 | /* ST1D { <Zt>.D }, <Pg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/e5e04000) */
|
---|
20680 | //#define IEM_INSTR_IMPL_A64__st1d_z_p_br(Zt, Rn, Pg, Rm)
|
---|
20681 |
|
---|
20682 |
|
---|
20683 |
|
---|
20684 | /*
|
---|
20685 | *
|
---|
20686 | * Instruction Set & Groups: sve_mem_cstnt_si / sve_memst_si / sve / A64
|
---|
20687 | *
|
---|
20688 | */
|
---|
20689 |
|
---|
20690 | /* STNT1B { <Zt>.B }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e410e000) */
|
---|
20691 | //#define IEM_INSTR_IMPL_A64__stnt1b_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20692 |
|
---|
20693 |
|
---|
20694 | /* STNT1H { <Zt>.H }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e490e000) */
|
---|
20695 | //#define IEM_INSTR_IMPL_A64__stnt1h_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20696 |
|
---|
20697 |
|
---|
20698 | /* STNT1W { <Zt>.S }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e510e000) */
|
---|
20699 | //#define IEM_INSTR_IMPL_A64__stnt1w_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20700 |
|
---|
20701 |
|
---|
20702 | /* STNT1D { <Zt>.D }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e590e000) */
|
---|
20703 | //#define IEM_INSTR_IMPL_A64__stnt1d_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20704 |
|
---|
20705 |
|
---|
20706 |
|
---|
20707 | /*
|
---|
20708 | *
|
---|
20709 | * Instruction Set & Groups: sve_mem_cstnt_ss / sve_memcst_nt / sve / A64
|
---|
20710 | *
|
---|
20711 | */
|
---|
20712 |
|
---|
20713 | /* STNT1B { <Zt>.B }, <Pg>, [<Xn|SP>, <Xm>] (ffe0e000/e4006000) */
|
---|
20714 | //#define IEM_INSTR_IMPL_A64__stnt1b_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20715 |
|
---|
20716 |
|
---|
20717 | /* STNT1H { <Zt>.H }, <Pg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/e4806000) */
|
---|
20718 | //#define IEM_INSTR_IMPL_A64__stnt1h_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20719 |
|
---|
20720 |
|
---|
20721 | /* STNT1W { <Zt>.S }, <Pg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/e5006000) */
|
---|
20722 | //#define IEM_INSTR_IMPL_A64__stnt1w_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20723 |
|
---|
20724 |
|
---|
20725 | /* STNT1D { <Zt>.D }, <Pg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/e5806000) */
|
---|
20726 | //#define IEM_INSTR_IMPL_A64__stnt1d_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20727 |
|
---|
20728 |
|
---|
20729 |
|
---|
20730 | /*
|
---|
20731 | *
|
---|
20732 | * Instruction Set & Groups: sve_mem_eld_si / sve_memcld / sve / A64
|
---|
20733 | *
|
---|
20734 | */
|
---|
20735 |
|
---|
20736 | /* LD2B { <Zt1>.B, <Zt2>.B }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a420e000) */
|
---|
20737 | //#define IEM_INSTR_IMPL_A64__ld2b_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20738 |
|
---|
20739 |
|
---|
20740 | /* LD3B { <Zt1>.B, <Zt2>.B, <Zt3>.B }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a440e000) */
|
---|
20741 | //#define IEM_INSTR_IMPL_A64__ld3b_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20742 |
|
---|
20743 |
|
---|
20744 | /* LD4B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a460e000) */
|
---|
20745 | //#define IEM_INSTR_IMPL_A64__ld4b_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20746 |
|
---|
20747 |
|
---|
20748 | /* LD2H { <Zt1>.H, <Zt2>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a4a0e000) */
|
---|
20749 | //#define IEM_INSTR_IMPL_A64__ld2h_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20750 |
|
---|
20751 |
|
---|
20752 | /* LD3H { <Zt1>.H, <Zt2>.H, <Zt3>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a4c0e000) */
|
---|
20753 | //#define IEM_INSTR_IMPL_A64__ld3h_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20754 |
|
---|
20755 |
|
---|
20756 | /* LD4H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a4e0e000) */
|
---|
20757 | //#define IEM_INSTR_IMPL_A64__ld4h_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20758 |
|
---|
20759 |
|
---|
20760 | /* LD2W { <Zt1>.S, <Zt2>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a520e000) */
|
---|
20761 | //#define IEM_INSTR_IMPL_A64__ld2w_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20762 |
|
---|
20763 |
|
---|
20764 | /* LD3W { <Zt1>.S, <Zt2>.S, <Zt3>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a540e000) */
|
---|
20765 | //#define IEM_INSTR_IMPL_A64__ld3w_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20766 |
|
---|
20767 |
|
---|
20768 | /* LD4W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a560e000) */
|
---|
20769 | //#define IEM_INSTR_IMPL_A64__ld4w_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20770 |
|
---|
20771 |
|
---|
20772 | /* LD2D { <Zt1>.D, <Zt2>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a5a0e000) */
|
---|
20773 | //#define IEM_INSTR_IMPL_A64__ld2d_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20774 |
|
---|
20775 |
|
---|
20776 | /* LD3D { <Zt1>.D, <Zt2>.D, <Zt3>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a5c0e000) */
|
---|
20777 | //#define IEM_INSTR_IMPL_A64__ld3d_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20778 |
|
---|
20779 |
|
---|
20780 | /* LD4D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a5e0e000) */
|
---|
20781 | //#define IEM_INSTR_IMPL_A64__ld4d_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20782 |
|
---|
20783 |
|
---|
20784 |
|
---|
20785 | /*
|
---|
20786 | *
|
---|
20787 | * Instruction Set & Groups: sve_mem_eld_ss / sve_memcld / sve / A64
|
---|
20788 | *
|
---|
20789 | */
|
---|
20790 |
|
---|
20791 | /* LD2B { <Zt1>.B, <Zt2>.B }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a420c000) */
|
---|
20792 | //#define IEM_INSTR_IMPL_A64__ld2b_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20793 |
|
---|
20794 |
|
---|
20795 | /* LD3B { <Zt1>.B, <Zt2>.B, <Zt3>.B }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a440c000) */
|
---|
20796 | //#define IEM_INSTR_IMPL_A64__ld3b_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20797 |
|
---|
20798 |
|
---|
20799 | /* LD4B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a460c000) */
|
---|
20800 | //#define IEM_INSTR_IMPL_A64__ld4b_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20801 |
|
---|
20802 |
|
---|
20803 | /* LD2H { <Zt1>.H, <Zt2>.H }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/a4a0c000) */
|
---|
20804 | //#define IEM_INSTR_IMPL_A64__ld2h_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20805 |
|
---|
20806 |
|
---|
20807 | /* LD3H { <Zt1>.H, <Zt2>.H, <Zt3>.H }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/a4c0c000) */
|
---|
20808 | //#define IEM_INSTR_IMPL_A64__ld3h_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20809 |
|
---|
20810 |
|
---|
20811 | /* LD4H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/a4e0c000) */
|
---|
20812 | //#define IEM_INSTR_IMPL_A64__ld4h_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20813 |
|
---|
20814 |
|
---|
20815 | /* LD2W { <Zt1>.S, <Zt2>.S }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/a520c000) */
|
---|
20816 | //#define IEM_INSTR_IMPL_A64__ld2w_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20817 |
|
---|
20818 |
|
---|
20819 | /* LD3W { <Zt1>.S, <Zt2>.S, <Zt3>.S }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/a540c000) */
|
---|
20820 | //#define IEM_INSTR_IMPL_A64__ld3w_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20821 |
|
---|
20822 |
|
---|
20823 | /* LD4W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/a560c000) */
|
---|
20824 | //#define IEM_INSTR_IMPL_A64__ld4w_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20825 |
|
---|
20826 |
|
---|
20827 | /* LD2D { <Zt1>.D, <Zt2>.D }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/a5a0c000) */
|
---|
20828 | //#define IEM_INSTR_IMPL_A64__ld2d_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20829 |
|
---|
20830 |
|
---|
20831 | /* LD3D { <Zt1>.D, <Zt2>.D, <Zt3>.D }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/a5c0c000) */
|
---|
20832 | //#define IEM_INSTR_IMPL_A64__ld3d_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20833 |
|
---|
20834 |
|
---|
20835 | /* LD4D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/a5e0c000) */
|
---|
20836 | //#define IEM_INSTR_IMPL_A64__ld4d_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20837 |
|
---|
20838 |
|
---|
20839 |
|
---|
20840 | /*
|
---|
20841 | *
|
---|
20842 | * Instruction Set & Groups: sve_mem_eldq_si / sve_memcld / sve / A64
|
---|
20843 | *
|
---|
20844 | */
|
---|
20845 |
|
---|
20846 | /* LD2Q { <Zt1>.Q, <Zt2>.Q }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a490e000) */
|
---|
20847 | //#define IEM_INSTR_IMPL_A64__ld2q_z_p_bi_contiguous(Zt, Rn, Pg, imm4)
|
---|
20848 |
|
---|
20849 |
|
---|
20850 | /* LD3Q { <Zt1>.Q, <Zt2>.Q, <Zt3>.Q }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a510e000) */
|
---|
20851 | //#define IEM_INSTR_IMPL_A64__ld3q_z_p_bi_contiguous(Zt, Rn, Pg, imm4)
|
---|
20852 |
|
---|
20853 |
|
---|
20854 | /* LD4Q { <Zt1>.Q, <Zt2>.Q, <Zt3>.Q, <Zt4>.Q }, <Pg>/Z, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/a590e000) */
|
---|
20855 | //#define IEM_INSTR_IMPL_A64__ld4q_z_p_bi_contiguous(Zt, Rn, Pg, imm4)
|
---|
20856 |
|
---|
20857 |
|
---|
20858 |
|
---|
20859 | /*
|
---|
20860 | *
|
---|
20861 | * Instruction Set & Groups: sve_mem_eldq_ss / sve_memcld / sve / A64
|
---|
20862 | *
|
---|
20863 | */
|
---|
20864 |
|
---|
20865 | /* LD2Q { <Zt1>.Q, <Zt2>.Q }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #4] (ffe0e000/a4a08000) */
|
---|
20866 | //#define IEM_INSTR_IMPL_A64__ld2q_z_p_br_contiguous(Zt, Rn, Pg, Rm)
|
---|
20867 |
|
---|
20868 |
|
---|
20869 | /* LD3Q { <Zt1>.Q, <Zt2>.Q, <Zt3>.Q }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #4] (ffe0e000/a5208000) */
|
---|
20870 | //#define IEM_INSTR_IMPL_A64__ld3q_z_p_br_contiguous(Zt, Rn, Pg, Rm)
|
---|
20871 |
|
---|
20872 |
|
---|
20873 | /* LD4Q { <Zt1>.Q, <Zt2>.Q, <Zt3>.Q, <Zt4>.Q }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #4] (ffe0e000/a5a08000) */
|
---|
20874 | //#define IEM_INSTR_IMPL_A64__ld4q_z_p_br_contiguous(Zt, Rn, Pg, Rm)
|
---|
20875 |
|
---|
20876 |
|
---|
20877 |
|
---|
20878 | /*
|
---|
20879 | *
|
---|
20880 | * Instruction Set & Groups: sve_mem_est_si / sve_memst_si / sve / A64
|
---|
20881 | *
|
---|
20882 | */
|
---|
20883 |
|
---|
20884 | /* ST2B { <Zt1>.B, <Zt2>.B }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e430e000) */
|
---|
20885 | //#define IEM_INSTR_IMPL_A64__st2b_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20886 |
|
---|
20887 |
|
---|
20888 | /* ST3B { <Zt1>.B, <Zt2>.B, <Zt3>.B }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e450e000) */
|
---|
20889 | //#define IEM_INSTR_IMPL_A64__st3b_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20890 |
|
---|
20891 |
|
---|
20892 | /* ST4B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e470e000) */
|
---|
20893 | //#define IEM_INSTR_IMPL_A64__st4b_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20894 |
|
---|
20895 |
|
---|
20896 | /* ST2H { <Zt1>.H, <Zt2>.H }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e4b0e000) */
|
---|
20897 | //#define IEM_INSTR_IMPL_A64__st2h_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20898 |
|
---|
20899 |
|
---|
20900 | /* ST3H { <Zt1>.H, <Zt2>.H, <Zt3>.H }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e4d0e000) */
|
---|
20901 | //#define IEM_INSTR_IMPL_A64__st3h_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20902 |
|
---|
20903 |
|
---|
20904 | /* ST4H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e4f0e000) */
|
---|
20905 | //#define IEM_INSTR_IMPL_A64__st4h_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20906 |
|
---|
20907 |
|
---|
20908 | /* ST2W { <Zt1>.S, <Zt2>.S }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e530e000) */
|
---|
20909 | //#define IEM_INSTR_IMPL_A64__st2w_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20910 |
|
---|
20911 |
|
---|
20912 | /* ST3W { <Zt1>.S, <Zt2>.S, <Zt3>.S }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e550e000) */
|
---|
20913 | //#define IEM_INSTR_IMPL_A64__st3w_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20914 |
|
---|
20915 |
|
---|
20916 | /* ST4W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e570e000) */
|
---|
20917 | //#define IEM_INSTR_IMPL_A64__st4w_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20918 |
|
---|
20919 |
|
---|
20920 | /* ST2D { <Zt1>.D, <Zt2>.D }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e5b0e000) */
|
---|
20921 | //#define IEM_INSTR_IMPL_A64__st2d_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20922 |
|
---|
20923 |
|
---|
20924 | /* ST3D { <Zt1>.D, <Zt2>.D, <Zt3>.D }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e5d0e000) */
|
---|
20925 | //#define IEM_INSTR_IMPL_A64__st3d_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20926 |
|
---|
20927 |
|
---|
20928 | /* ST4D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e5f0e000) */
|
---|
20929 | //#define IEM_INSTR_IMPL_A64__st4d_z_p_bi_contiguous(Zt, Rn, Pg, imm4, msz)
|
---|
20930 |
|
---|
20931 |
|
---|
20932 |
|
---|
20933 | /*
|
---|
20934 | *
|
---|
20935 | * Instruction Set & Groups: sve_mem_est_ss / sve_memcst_nt / sve / A64
|
---|
20936 | *
|
---|
20937 | */
|
---|
20938 |
|
---|
20939 | /* ST2B { <Zt1>.B, <Zt2>.B }, <Pg>, [<Xn|SP>, <Xm>] (ffe0e000/e4206000) */
|
---|
20940 | //#define IEM_INSTR_IMPL_A64__st2b_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20941 |
|
---|
20942 |
|
---|
20943 | /* ST3B { <Zt1>.B, <Zt2>.B, <Zt3>.B }, <Pg>, [<Xn|SP>, <Xm>] (ffe0e000/e4406000) */
|
---|
20944 | //#define IEM_INSTR_IMPL_A64__st3b_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20945 |
|
---|
20946 |
|
---|
20947 | /* ST4B { <Zt1>.B, <Zt2>.B, <Zt3>.B, <Zt4>.B }, <Pg>, [<Xn|SP>, <Xm>] (ffe0e000/e4606000) */
|
---|
20948 | //#define IEM_INSTR_IMPL_A64__st4b_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20949 |
|
---|
20950 |
|
---|
20951 | /* ST2H { <Zt1>.H, <Zt2>.H }, <Pg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/e4a06000) */
|
---|
20952 | //#define IEM_INSTR_IMPL_A64__st2h_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20953 |
|
---|
20954 |
|
---|
20955 | /* ST3H { <Zt1>.H, <Zt2>.H, <Zt3>.H }, <Pg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/e4c06000) */
|
---|
20956 | //#define IEM_INSTR_IMPL_A64__st3h_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20957 |
|
---|
20958 |
|
---|
20959 | /* ST4H { <Zt1>.H, <Zt2>.H, <Zt3>.H, <Zt4>.H }, <Pg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/e4e06000) */
|
---|
20960 | //#define IEM_INSTR_IMPL_A64__st4h_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20961 |
|
---|
20962 |
|
---|
20963 | /* ST2W { <Zt1>.S, <Zt2>.S }, <Pg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/e5206000) */
|
---|
20964 | //#define IEM_INSTR_IMPL_A64__st2w_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20965 |
|
---|
20966 |
|
---|
20967 | /* ST3W { <Zt1>.S, <Zt2>.S, <Zt3>.S }, <Pg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/e5406000) */
|
---|
20968 | //#define IEM_INSTR_IMPL_A64__st3w_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20969 |
|
---|
20970 |
|
---|
20971 | /* ST4W { <Zt1>.S, <Zt2>.S, <Zt3>.S, <Zt4>.S }, <Pg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/e5606000) */
|
---|
20972 | //#define IEM_INSTR_IMPL_A64__st4w_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20973 |
|
---|
20974 |
|
---|
20975 | /* ST2D { <Zt1>.D, <Zt2>.D }, <Pg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/e5a06000) */
|
---|
20976 | //#define IEM_INSTR_IMPL_A64__st2d_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20977 |
|
---|
20978 |
|
---|
20979 | /* ST3D { <Zt1>.D, <Zt2>.D, <Zt3>.D }, <Pg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/e5c06000) */
|
---|
20980 | //#define IEM_INSTR_IMPL_A64__st3d_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20981 |
|
---|
20982 |
|
---|
20983 | /* ST4D { <Zt1>.D, <Zt2>.D, <Zt3>.D, <Zt4>.D }, <Pg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/e5e06000) */
|
---|
20984 | //#define IEM_INSTR_IMPL_A64__st4d_z_p_br_contiguous(Zt, Rn, Pg, Rm, msz)
|
---|
20985 |
|
---|
20986 |
|
---|
20987 |
|
---|
20988 | /*
|
---|
20989 | *
|
---|
20990 | * Instruction Set & Groups: sve_mem_estq_si / sve_memst_cs / sve / A64
|
---|
20991 | *
|
---|
20992 | */
|
---|
20993 |
|
---|
20994 | /* ST2Q { <Zt1>.Q, <Zt2>.Q }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e4400000) */
|
---|
20995 | //#define IEM_INSTR_IMPL_A64__st2q_z_p_bi_contiguous(Zt, Rn, Pg, imm4)
|
---|
20996 |
|
---|
20997 |
|
---|
20998 | /* ST3Q { <Zt1>.Q, <Zt2>.Q, <Zt3>.Q }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e4800000) */
|
---|
20999 | //#define IEM_INSTR_IMPL_A64__st3q_z_p_bi_contiguous(Zt, Rn, Pg, imm4)
|
---|
21000 |
|
---|
21001 |
|
---|
21002 | /* ST4Q { <Zt1>.Q, <Zt2>.Q, <Zt3>.Q, <Zt4>.Q }, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (fff0e000/e4c00000) */
|
---|
21003 | //#define IEM_INSTR_IMPL_A64__st4q_z_p_bi_contiguous(Zt, Rn, Pg, imm4)
|
---|
21004 |
|
---|
21005 |
|
---|
21006 |
|
---|
21007 | /*
|
---|
21008 | *
|
---|
21009 | * Instruction Set & Groups: sve_mem_estq_ss / sve_memst_cs / sve / A64
|
---|
21010 | *
|
---|
21011 | */
|
---|
21012 |
|
---|
21013 | /* ST2Q { <Zt1>.Q, <Zt2>.Q }, <Pg>, [<Xn|SP>, <Xm>, LSL #4] (ffe0e000/e4600000) */
|
---|
21014 | //#define IEM_INSTR_IMPL_A64__st2q_z_p_br_contiguous(Zt, Rn, Pg, Rm)
|
---|
21015 |
|
---|
21016 |
|
---|
21017 | /* ST3Q { <Zt1>.Q, <Zt2>.Q, <Zt3>.Q }, <Pg>, [<Xn|SP>, <Xm>, LSL #4] (ffe0e000/e4a00000) */
|
---|
21018 | //#define IEM_INSTR_IMPL_A64__st3q_z_p_br_contiguous(Zt, Rn, Pg, Rm)
|
---|
21019 |
|
---|
21020 |
|
---|
21021 | /* ST4Q { <Zt1>.Q, <Zt2>.Q, <Zt3>.Q, <Zt4>.Q }, <Pg>, [<Xn|SP>, <Xm>, LSL #4] (ffe0e000/e4e00000) */
|
---|
21022 | //#define IEM_INSTR_IMPL_A64__st4q_z_p_br_contiguous(Zt, Rn, Pg, Rm)
|
---|
21023 |
|
---|
21024 |
|
---|
21025 |
|
---|
21026 | /*
|
---|
21027 | *
|
---|
21028 | * Instruction Set & Groups: sve_mem_ld_dup / sve_mem32 / sve / A64
|
---|
21029 | *
|
---|
21030 | */
|
---|
21031 |
|
---|
21032 | /* LD1RB { <Zt>.B }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/84408000) */
|
---|
21033 | //#define IEM_INSTR_IMPL_A64__ld1rb_z_p_bi_u8(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21034 |
|
---|
21035 |
|
---|
21036 | /* LD1RB { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/8440a000) */
|
---|
21037 | //#define IEM_INSTR_IMPL_A64__ld1rb_z_p_bi_u16(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21038 |
|
---|
21039 |
|
---|
21040 | /* LD1RB { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/8440c000) */
|
---|
21041 | //#define IEM_INSTR_IMPL_A64__ld1rb_z_p_bi_u32(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21042 |
|
---|
21043 |
|
---|
21044 | /* LD1RB { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/8440e000) */
|
---|
21045 | //#define IEM_INSTR_IMPL_A64__ld1rb_z_p_bi_u64(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21046 |
|
---|
21047 |
|
---|
21048 | /* LD1RSW { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/84c08000) */
|
---|
21049 | //#define IEM_INSTR_IMPL_A64__ld1rsw_z_p_bi_s64(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21050 |
|
---|
21051 |
|
---|
21052 | /* LD1RH { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/84c0a000) */
|
---|
21053 | //#define IEM_INSTR_IMPL_A64__ld1rh_z_p_bi_u16(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21054 |
|
---|
21055 |
|
---|
21056 | /* LD1RH { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/84c0c000) */
|
---|
21057 | //#define IEM_INSTR_IMPL_A64__ld1rh_z_p_bi_u32(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21058 |
|
---|
21059 |
|
---|
21060 | /* LD1RH { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/84c0e000) */
|
---|
21061 | //#define IEM_INSTR_IMPL_A64__ld1rh_z_p_bi_u64(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21062 |
|
---|
21063 |
|
---|
21064 | /* LD1RSH { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/85408000) */
|
---|
21065 | //#define IEM_INSTR_IMPL_A64__ld1rsh_z_p_bi_s64(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21066 |
|
---|
21067 |
|
---|
21068 | /* LD1RSH { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/8540a000) */
|
---|
21069 | //#define IEM_INSTR_IMPL_A64__ld1rsh_z_p_bi_s32(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21070 |
|
---|
21071 |
|
---|
21072 | /* LD1RW { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/8540c000) */
|
---|
21073 | //#define IEM_INSTR_IMPL_A64__ld1rw_z_p_bi_u32(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21074 |
|
---|
21075 |
|
---|
21076 | /* LD1RW { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/8540e000) */
|
---|
21077 | //#define IEM_INSTR_IMPL_A64__ld1rw_z_p_bi_u64(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21078 |
|
---|
21079 |
|
---|
21080 | /* LD1RSB { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/85c08000) */
|
---|
21081 | //#define IEM_INSTR_IMPL_A64__ld1rsb_z_p_bi_s64(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21082 |
|
---|
21083 |
|
---|
21084 | /* LD1RSB { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/85c0a000) */
|
---|
21085 | //#define IEM_INSTR_IMPL_A64__ld1rsb_z_p_bi_s32(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21086 |
|
---|
21087 |
|
---|
21088 | /* LD1RSB { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/85c0c000) */
|
---|
21089 | //#define IEM_INSTR_IMPL_A64__ld1rsb_z_p_bi_s16(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21090 |
|
---|
21091 |
|
---|
21092 | /* LD1RD { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (ffc0e000/85c0e000) */
|
---|
21093 | //#define IEM_INSTR_IMPL_A64__ld1rd_z_p_bi_u64(Zt, Rn, Pg, dtypel, imm6, dtypeh)
|
---|
21094 |
|
---|
21095 |
|
---|
21096 |
|
---|
21097 | /*
|
---|
21098 | *
|
---|
21099 | * Instruction Set & Groups: sve_mem_ldqr_si / sve_memcld / sve / A64
|
---|
21100 | *
|
---|
21101 | */
|
---|
21102 |
|
---|
21103 | /* LD1RQB { <Zt>.B }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (fff0e000/a4002000) */
|
---|
21104 | //#define IEM_INSTR_IMPL_A64__ld1rqb_z_p_bi_u8(Zt, Rn, Pg, imm4, ssz, msz)
|
---|
21105 |
|
---|
21106 |
|
---|
21107 | /* LD1ROB { <Zt>.B }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (fff0e000/a4202000) */
|
---|
21108 | //#define IEM_INSTR_IMPL_A64__ld1rob_z_p_bi_u8(Zt, Rn, Pg, imm4, ssz, msz)
|
---|
21109 |
|
---|
21110 |
|
---|
21111 | /* LD1RQH { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (fff0e000/a4802000) */
|
---|
21112 | //#define IEM_INSTR_IMPL_A64__ld1rqh_z_p_bi_u16(Zt, Rn, Pg, imm4, ssz, msz)
|
---|
21113 |
|
---|
21114 |
|
---|
21115 | /* LD1ROH { <Zt>.H }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (fff0e000/a4a02000) */
|
---|
21116 | //#define IEM_INSTR_IMPL_A64__ld1roh_z_p_bi_u16(Zt, Rn, Pg, imm4, ssz, msz)
|
---|
21117 |
|
---|
21118 |
|
---|
21119 | /* LD1RQW { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (fff0e000/a5002000) */
|
---|
21120 | //#define IEM_INSTR_IMPL_A64__ld1rqw_z_p_bi_u32(Zt, Rn, Pg, imm4, ssz, msz)
|
---|
21121 |
|
---|
21122 |
|
---|
21123 | /* LD1ROW { <Zt>.S }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (fff0e000/a5202000) */
|
---|
21124 | //#define IEM_INSTR_IMPL_A64__ld1row_z_p_bi_u32(Zt, Rn, Pg, imm4, ssz, msz)
|
---|
21125 |
|
---|
21126 |
|
---|
21127 | /* LD1RQD { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (fff0e000/a5802000) */
|
---|
21128 | //#define IEM_INSTR_IMPL_A64__ld1rqd_z_p_bi_u64(Zt, Rn, Pg, imm4, ssz, msz)
|
---|
21129 |
|
---|
21130 |
|
---|
21131 | /* LD1ROD { <Zt>.D }, <Pg>/Z, [<Xn|SP>{, #<imm>}] (fff0e000/a5a02000) */
|
---|
21132 | //#define IEM_INSTR_IMPL_A64__ld1rod_z_p_bi_u64(Zt, Rn, Pg, imm4, ssz, msz)
|
---|
21133 |
|
---|
21134 |
|
---|
21135 |
|
---|
21136 | /*
|
---|
21137 | *
|
---|
21138 | * Instruction Set & Groups: sve_mem_ldqr_ss / sve_memcld / sve / A64
|
---|
21139 | *
|
---|
21140 | */
|
---|
21141 |
|
---|
21142 | /* LD1RQB { <Zt>.B }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a4000000) */
|
---|
21143 | //#define IEM_INSTR_IMPL_A64__ld1rqb_z_p_br_contiguous(Zt, Rn, Pg, Rm, ssz, msz)
|
---|
21144 |
|
---|
21145 |
|
---|
21146 | /* LD1ROB { <Zt>.B }, <Pg>/Z, [<Xn|SP>, <Xm>] (ffe0e000/a4200000) */
|
---|
21147 | //#define IEM_INSTR_IMPL_A64__ld1rob_z_p_br_contiguous(Zt, Rn, Pg, Rm, ssz, msz)
|
---|
21148 |
|
---|
21149 |
|
---|
21150 | /* LD1RQH { <Zt>.H }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/a4800000) */
|
---|
21151 | //#define IEM_INSTR_IMPL_A64__ld1rqh_z_p_br_contiguous(Zt, Rn, Pg, Rm, ssz, msz)
|
---|
21152 |
|
---|
21153 |
|
---|
21154 | /* LD1ROH { <Zt>.H }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #1] (ffe0e000/a4a00000) */
|
---|
21155 | //#define IEM_INSTR_IMPL_A64__ld1roh_z_p_br_contiguous(Zt, Rn, Pg, Rm, ssz, msz)
|
---|
21156 |
|
---|
21157 |
|
---|
21158 | /* LD1RQW { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/a5000000) */
|
---|
21159 | //#define IEM_INSTR_IMPL_A64__ld1rqw_z_p_br_contiguous(Zt, Rn, Pg, Rm, ssz, msz)
|
---|
21160 |
|
---|
21161 |
|
---|
21162 | /* LD1ROW { <Zt>.S }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #2] (ffe0e000/a5200000) */
|
---|
21163 | //#define IEM_INSTR_IMPL_A64__ld1row_z_p_br_contiguous(Zt, Rn, Pg, Rm, ssz, msz)
|
---|
21164 |
|
---|
21165 |
|
---|
21166 | /* LD1RQD { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/a5800000) */
|
---|
21167 | //#define IEM_INSTR_IMPL_A64__ld1rqd_z_p_br_contiguous(Zt, Rn, Pg, Rm, ssz, msz)
|
---|
21168 |
|
---|
21169 |
|
---|
21170 | /* LD1ROD { <Zt>.D }, <Pg>/Z, [<Xn|SP>, <Xm>, LSL #3] (ffe0e000/a5a00000) */
|
---|
21171 | //#define IEM_INSTR_IMPL_A64__ld1rod_z_p_br_contiguous(Zt, Rn, Pg, Rm, ssz, msz)
|
---|
21172 |
|
---|
21173 |
|
---|
21174 |
|
---|
21175 | /*
|
---|
21176 | *
|
---|
21177 | * Instruction Set & Groups: sve_mem_prfm_si / sve_mem32 / sve / A64
|
---|
21178 | *
|
---|
21179 | */
|
---|
21180 |
|
---|
21181 | /* PRFB <prfop>, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (ffc0e010/85c00000) */
|
---|
21182 | //#define IEM_INSTR_IMPL_A64__prfb_i_p_bi_s(prfop, Rn, Pg, imm6)
|
---|
21183 |
|
---|
21184 |
|
---|
21185 | /* PRFH <prfop>, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (ffc0e010/85c02000) */
|
---|
21186 | //#define IEM_INSTR_IMPL_A64__prfh_i_p_bi_s(prfop, Rn, Pg, imm6)
|
---|
21187 |
|
---|
21188 |
|
---|
21189 | /* PRFW <prfop>, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (ffc0e010/85c04000) */
|
---|
21190 | //#define IEM_INSTR_IMPL_A64__prfw_i_p_bi_s(prfop, Rn, Pg, imm6)
|
---|
21191 |
|
---|
21192 |
|
---|
21193 | /* PRFD <prfop>, <Pg>, [<Xn|SP>{, #<imm>, MUL VL}] (ffc0e010/85c06000) */
|
---|
21194 | //#define IEM_INSTR_IMPL_A64__prfd_i_p_bi_s(prfop, Rn, Pg, imm6)
|
---|
21195 |
|
---|
21196 |
|
---|
21197 |
|
---|
21198 | /*
|
---|
21199 | *
|
---|
21200 | * Instruction Set & Groups: sve_mem_prfm_ss / sve_mem32 / sve / A64
|
---|
21201 | *
|
---|
21202 | */
|
---|
21203 |
|
---|
21204 | /* PRFB <prfop>, <Pg>, [<Xn|SP>, <Xm>] (ffe0e010/8400c000) */
|
---|
21205 | //#define IEM_INSTR_IMPL_A64__prfb_i_p_br_s(prfop, Rn, Pg, Rm)
|
---|
21206 |
|
---|
21207 |
|
---|
21208 | /* PRFH <prfop>, <Pg>, [<Xn|SP>, <Xm>, LSL #1] (ffe0e010/8480c000) */
|
---|
21209 | //#define IEM_INSTR_IMPL_A64__prfh_i_p_br_s(prfop, Rn, Pg, Rm)
|
---|
21210 |
|
---|
21211 |
|
---|
21212 | /* PRFW <prfop>, <Pg>, [<Xn|SP>, <Xm>, LSL #2] (ffe0e010/8500c000) */
|
---|
21213 | //#define IEM_INSTR_IMPL_A64__prfw_i_p_br_s(prfop, Rn, Pg, Rm)
|
---|
21214 |
|
---|
21215 |
|
---|
21216 | /* PRFD <prfop>, <Pg>, [<Xn|SP>, <Xm>, LSL #3] (ffe0e010/8580c000) */
|
---|
21217 | //#define IEM_INSTR_IMPL_A64__prfd_i_p_br_s(prfop, Rn, Pg, Rm)
|
---|
21218 |
|
---|
21219 |
|
---|
21220 |
|
---|
21221 | /*
|
---|
21222 | *
|
---|
21223 | * Instruction Set & Groups: sve_mem_pspill / sve_memst_cs / sve / A64
|
---|
21224 | *
|
---|
21225 | */
|
---|
21226 |
|
---|
21227 | /* STR <Pt>, [<Xn|SP>{, #<imm>, MUL VL}] (ffc0e010/e5800000) */
|
---|
21228 | //#define IEM_INSTR_IMPL_A64__str_p_bi(Pt, Rn, imm9l, imm9h)
|
---|
21229 |
|
---|
21230 |
|
---|
21231 |
|
---|
21232 | /*
|
---|
21233 | *
|
---|
21234 | * Instruction Set & Groups: sve_mem_spill / sve_memst_cs / sve / A64
|
---|
21235 | *
|
---|
21236 | */
|
---|
21237 |
|
---|
21238 | /* STR <Zt>, [<Xn|SP>{, #<imm>, MUL VL}] (ffc0e000/e5804000) */
|
---|
21239 | //#define IEM_INSTR_IMPL_A64__str_z_bi(Zt, Rn, imm9l, imm9h)
|
---|
21240 |
|
---|
21241 |
|
---|
21242 |
|
---|
21243 | /*
|
---|
21244 | *
|
---|
21245 | * Instruction Set & Groups: sve_mem_sst_sv2 / sve_memst_ss2 / sve / A64
|
---|
21246 | *
|
---|
21247 | */
|
---|
21248 |
|
---|
21249 | /* ST1H { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D, LSL #1] (ffe0e000/e4a0a000) */
|
---|
21250 | //#define IEM_INSTR_IMPL_A64__st1h_z_p_bz_d_64_scaled(Zt, Rn, Pg, Zm)
|
---|
21251 |
|
---|
21252 |
|
---|
21253 | /* ST1W { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D, LSL #2] (ffe0e000/e520a000) */
|
---|
21254 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_bz_d_64_scaled(Zt, Rn, Pg, Zm)
|
---|
21255 |
|
---|
21256 |
|
---|
21257 | /* ST1D { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D, LSL #3] (ffe0e000/e5a0a000) */
|
---|
21258 | //#define IEM_INSTR_IMPL_A64__st1d_z_p_bz_d_64_scaled(Zt, Rn, Pg, Zm)
|
---|
21259 |
|
---|
21260 |
|
---|
21261 |
|
---|
21262 | /*
|
---|
21263 | *
|
---|
21264 | * Instruction Set & Groups: sve_mem_sst_sv_a / sve_memst_ss / sve / A64
|
---|
21265 | *
|
---|
21266 | */
|
---|
21267 |
|
---|
21268 | /* ST1H { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D, <mod> #1] (ffe0a000/e4a08000) */
|
---|
21269 | //#define IEM_INSTR_IMPL_A64__st1h_z_p_bz_d_x32_scaled(Zt, Rn, Pg, xs, Zm)
|
---|
21270 |
|
---|
21271 |
|
---|
21272 | /* ST1W { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D, <mod> #2] (ffe0a000/e5208000) */
|
---|
21273 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_bz_d_x32_scaled(Zt, Rn, Pg, xs, Zm)
|
---|
21274 |
|
---|
21275 |
|
---|
21276 | /* ST1D { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D, <mod> #3] (ffe0a000/e5a08000) */
|
---|
21277 | //#define IEM_INSTR_IMPL_A64__st1d_z_p_bz_d_x32_scaled(Zt, Rn, Pg, xs, Zm)
|
---|
21278 |
|
---|
21279 |
|
---|
21280 |
|
---|
21281 | /*
|
---|
21282 | *
|
---|
21283 | * Instruction Set & Groups: sve_mem_sst_sv_b / sve_memst_ss / sve / A64
|
---|
21284 | *
|
---|
21285 | */
|
---|
21286 |
|
---|
21287 | /* ST1H { <Zt>.S }, <Pg>, [<Xn|SP>, <Zm>.S, <mod> #1] (ffe0a000/e4e08000) */
|
---|
21288 | //#define IEM_INSTR_IMPL_A64__st1h_z_p_bz_s_x32_scaled(Zt, Rn, Pg, xs, Zm)
|
---|
21289 |
|
---|
21290 |
|
---|
21291 | /* ST1W { <Zt>.S }, <Pg>, [<Xn|SP>, <Zm>.S, <mod> #2] (ffe0a000/e5608000) */
|
---|
21292 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_bz_s_x32_scaled(Zt, Rn, Pg, xs, Zm)
|
---|
21293 |
|
---|
21294 |
|
---|
21295 |
|
---|
21296 | /*
|
---|
21297 | *
|
---|
21298 | * Instruction Set & Groups: sve_mem_sst_vi_a / sve_memst_ss2 / sve / A64
|
---|
21299 | *
|
---|
21300 | */
|
---|
21301 |
|
---|
21302 | /* ST1B { <Zt>.D }, <Pg>, [<Zn>.D{, #<imm>}] (ffe0e000/e440a000) */
|
---|
21303 | //#define IEM_INSTR_IMPL_A64__st1b_z_p_ai_d(Zt, Zn, Pg, imm5)
|
---|
21304 |
|
---|
21305 |
|
---|
21306 | /* ST1H { <Zt>.D }, <Pg>, [<Zn>.D{, #<imm>}] (ffe0e000/e4c0a000) */
|
---|
21307 | //#define IEM_INSTR_IMPL_A64__st1h_z_p_ai_d(Zt, Zn, Pg, imm5)
|
---|
21308 |
|
---|
21309 |
|
---|
21310 | /* ST1W { <Zt>.D }, <Pg>, [<Zn>.D{, #<imm>}] (ffe0e000/e540a000) */
|
---|
21311 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_ai_d(Zt, Zn, Pg, imm5)
|
---|
21312 |
|
---|
21313 |
|
---|
21314 | /* ST1D { <Zt>.D }, <Pg>, [<Zn>.D{, #<imm>}] (ffe0e000/e5c0a000) */
|
---|
21315 | //#define IEM_INSTR_IMPL_A64__st1d_z_p_ai_d(Zt, Zn, Pg, imm5)
|
---|
21316 |
|
---|
21317 |
|
---|
21318 |
|
---|
21319 | /*
|
---|
21320 | *
|
---|
21321 | * Instruction Set & Groups: sve_mem_sst_vi_b / sve_memst_ss2 / sve / A64
|
---|
21322 | *
|
---|
21323 | */
|
---|
21324 |
|
---|
21325 | /* ST1B { <Zt>.S }, <Pg>, [<Zn>.S{, #<imm>}] (ffe0e000/e460a000) */
|
---|
21326 | //#define IEM_INSTR_IMPL_A64__st1b_z_p_ai_s(Zt, Zn, Pg, imm5)
|
---|
21327 |
|
---|
21328 |
|
---|
21329 | /* ST1H { <Zt>.S }, <Pg>, [<Zn>.S{, #<imm>}] (ffe0e000/e4e0a000) */
|
---|
21330 | //#define IEM_INSTR_IMPL_A64__st1h_z_p_ai_s(Zt, Zn, Pg, imm5)
|
---|
21331 |
|
---|
21332 |
|
---|
21333 | /* ST1W { <Zt>.S }, <Pg>, [<Zn>.S{, #<imm>}] (ffe0e000/e560a000) */
|
---|
21334 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_ai_s(Zt, Zn, Pg, imm5)
|
---|
21335 |
|
---|
21336 |
|
---|
21337 |
|
---|
21338 | /*
|
---|
21339 | *
|
---|
21340 | * Instruction Set & Groups: sve_mem_sst_vs2 / sve_memst_ss2 / sve / A64
|
---|
21341 | *
|
---|
21342 | */
|
---|
21343 |
|
---|
21344 | /* ST1B { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D] (ffe0e000/e400a000) */
|
---|
21345 | //#define IEM_INSTR_IMPL_A64__st1b_z_p_bz_d_64_unscaled(Zt, Rn, Pg, Zm)
|
---|
21346 |
|
---|
21347 |
|
---|
21348 | /* ST1H { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D] (ffe0e000/e480a000) */
|
---|
21349 | //#define IEM_INSTR_IMPL_A64__st1h_z_p_bz_d_64_unscaled(Zt, Rn, Pg, Zm)
|
---|
21350 |
|
---|
21351 |
|
---|
21352 | /* ST1W { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D] (ffe0e000/e500a000) */
|
---|
21353 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_bz_d_64_unscaled(Zt, Rn, Pg, Zm)
|
---|
21354 |
|
---|
21355 |
|
---|
21356 | /* ST1D { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D] (ffe0e000/e580a000) */
|
---|
21357 | //#define IEM_INSTR_IMPL_A64__st1d_z_p_bz_d_64_unscaled(Zt, Rn, Pg, Zm)
|
---|
21358 |
|
---|
21359 |
|
---|
21360 |
|
---|
21361 | /*
|
---|
21362 | *
|
---|
21363 | * Instruction Set & Groups: sve_mem_sst_vs_a / sve_memst_ss / sve / A64
|
---|
21364 | *
|
---|
21365 | */
|
---|
21366 |
|
---|
21367 | /* ST1B { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D, <mod>] (ffe0a000/e4008000) */
|
---|
21368 | //#define IEM_INSTR_IMPL_A64__st1b_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, xs, Zm)
|
---|
21369 |
|
---|
21370 |
|
---|
21371 | /* ST1H { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D, <mod>] (ffe0a000/e4808000) */
|
---|
21372 | //#define IEM_INSTR_IMPL_A64__st1h_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, xs, Zm)
|
---|
21373 |
|
---|
21374 |
|
---|
21375 | /* ST1W { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D, <mod>] (ffe0a000/e5008000) */
|
---|
21376 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, xs, Zm)
|
---|
21377 |
|
---|
21378 |
|
---|
21379 | /* ST1D { <Zt>.D }, <Pg>, [<Xn|SP>, <Zm>.D, <mod>] (ffe0a000/e5808000) */
|
---|
21380 | //#define IEM_INSTR_IMPL_A64__st1d_z_p_bz_d_x32_unscaled(Zt, Rn, Pg, xs, Zm)
|
---|
21381 |
|
---|
21382 |
|
---|
21383 |
|
---|
21384 | /*
|
---|
21385 | *
|
---|
21386 | * Instruction Set & Groups: sve_mem_sst_vs_b / sve_memst_ss / sve / A64
|
---|
21387 | *
|
---|
21388 | */
|
---|
21389 |
|
---|
21390 | /* ST1B { <Zt>.S }, <Pg>, [<Xn|SP>, <Zm>.S, <mod>] (ffe0a000/e4408000) */
|
---|
21391 | //#define IEM_INSTR_IMPL_A64__st1b_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, xs, Zm)
|
---|
21392 |
|
---|
21393 |
|
---|
21394 | /* ST1H { <Zt>.S }, <Pg>, [<Xn|SP>, <Zm>.S, <mod>] (ffe0a000/e4c08000) */
|
---|
21395 | //#define IEM_INSTR_IMPL_A64__st1h_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, xs, Zm)
|
---|
21396 |
|
---|
21397 |
|
---|
21398 | /* ST1W { <Zt>.S }, <Pg>, [<Xn|SP>, <Zm>.S, <mod>] (ffe0a000/e5408000) */
|
---|
21399 | //#define IEM_INSTR_IMPL_A64__st1w_z_p_bz_s_x32_unscaled(Zt, Rn, Pg, xs, Zm)
|
---|
21400 |
|
---|
21401 |
|
---|
21402 |
|
---|
21403 | /*
|
---|
21404 | *
|
---|
21405 | * Instruction Set & Groups: sve_mem_sstnt_32b_vs / sve_memsst_nt / sve / A64
|
---|
21406 | *
|
---|
21407 | */
|
---|
21408 |
|
---|
21409 | /* STNT1B { <Zt>.S }, <Pg>, [<Zn>.S{, <Xm>}] (ffe0e000/e4402000) */
|
---|
21410 | //#define IEM_INSTR_IMPL_A64__stnt1b_z_p_ar_s_x32_unscaled(Zt, Zn, Pg, Rm)
|
---|
21411 |
|
---|
21412 |
|
---|
21413 | /* STNT1H { <Zt>.S }, <Pg>, [<Zn>.S{, <Xm>}] (ffe0e000/e4c02000) */
|
---|
21414 | //#define IEM_INSTR_IMPL_A64__stnt1h_z_p_ar_s_x32_unscaled(Zt, Zn, Pg, Rm)
|
---|
21415 |
|
---|
21416 |
|
---|
21417 | /* STNT1W { <Zt>.S }, <Pg>, [<Zn>.S{, <Xm>}] (ffe0e000/e5402000) */
|
---|
21418 | //#define IEM_INSTR_IMPL_A64__stnt1w_z_p_ar_s_x32_unscaled(Zt, Zn, Pg, Rm)
|
---|
21419 |
|
---|
21420 |
|
---|
21421 |
|
---|
21422 | /*
|
---|
21423 | *
|
---|
21424 | * Instruction Set & Groups: sve_mem_sstnt_64b_vs / sve_memsst_nt / sve / A64
|
---|
21425 | *
|
---|
21426 | */
|
---|
21427 |
|
---|
21428 | /* STNT1B { <Zt>.D }, <Pg>, [<Zn>.D{, <Xm>}] (ffe0e000/e4002000) */
|
---|
21429 | //#define IEM_INSTR_IMPL_A64__stnt1b_z_p_ar_d_64_unscaled(Zt, Zn, Pg, Rm)
|
---|
21430 |
|
---|
21431 |
|
---|
21432 | /* STNT1H { <Zt>.D }, <Pg>, [<Zn>.D{, <Xm>}] (ffe0e000/e4802000) */
|
---|
21433 | //#define IEM_INSTR_IMPL_A64__stnt1h_z_p_ar_d_64_unscaled(Zt, Zn, Pg, Rm)
|
---|
21434 |
|
---|
21435 |
|
---|
21436 | /* STNT1W { <Zt>.D }, <Pg>, [<Zn>.D{, <Xm>}] (ffe0e000/e5002000) */
|
---|
21437 | //#define IEM_INSTR_IMPL_A64__stnt1w_z_p_ar_d_64_unscaled(Zt, Zn, Pg, Rm)
|
---|
21438 |
|
---|
21439 |
|
---|
21440 | /* STNT1D { <Zt>.D }, <Pg>, [<Zn>.D{, <Xm>}] (ffe0e000/e5802000) */
|
---|
21441 | //#define IEM_INSTR_IMPL_A64__stnt1d_z_p_ar_d_64_unscaled(Zt, Zn, Pg, Rm)
|
---|
21442 |
|
---|
21443 |
|
---|
21444 |
|
---|
21445 | /*
|
---|
21446 | *
|
---|
21447 | * Instruction Set & Groups: sve_mem_sstq_64b_vs / sve_memsst_nt / sve / A64
|
---|
21448 | *
|
---|
21449 | */
|
---|
21450 |
|
---|
21451 | /* ST1Q { <Zt>.Q }, <Pg>, [<Zn>.D{, <Xm>}] (ffe0e000/e4202000) */
|
---|
21452 | //#define IEM_INSTR_IMPL_A64__st1q_z_p_ar_d_64_unscaled(Zt, Zn, Pg, Rm)
|
---|
21453 |
|
---|
21454 |
|
---|
21455 |
|
---|
21456 | /*
|
---|
21457 | *
|
---|
21458 | * Instruction Set & Groups: sve_ptr_muladd_unpred_lvl2 / sve_ptr_muladd_unpred / sve / A64
|
---|
21459 | *
|
---|
21460 | */
|
---|
21461 |
|
---|
21462 | /* MLAPT <Zda>.D, <Zn>.D, <Zm>.D (ffe0fc00/44c0d000) */
|
---|
21463 | //#define IEM_INSTR_IMPL_A64__mlapt_z_zzz(Zda, Zn, Zm)
|
---|
21464 |
|
---|
21465 |
|
---|
21466 | /* MADPT <Zdn>.D, <Zm>.D, <Za>.D (ffe0fc00/44c0d800) */
|
---|
21467 | //#define IEM_INSTR_IMPL_A64__madpt_z_zzz(Zdn, Za, Zm)
|
---|
21468 |
|
---|
21469 |
|
---|
21470 |
|
---|
21471 | /*
|
---|
21472 | *
|
---|
21473 | * Instruction Set & Groups: syspairinstrs / control / A64
|
---|
21474 | *
|
---|
21475 | */
|
---|
21476 |
|
---|
21477 | /* SYSP #<op1>, <Cn>, <Cm>, #<op2>{, <Xt1>, <Xt2>} (fff80000/d5480000) */
|
---|
21478 | //#define IEM_INSTR_IMPL_A64__SYSP_CR_syspairinstrs(Rt, op2, CRm, CRn, op1)
|
---|
21479 |
|
---|
21480 |
|
---|
21481 |
|
---|
21482 | /*
|
---|
21483 | *
|
---|
21484 | * Instruction Set & Groups: systeminstrs / control / A64
|
---|
21485 | *
|
---|
21486 | */
|
---|
21487 |
|
---|
21488 | /* SYS #<op1>, <Cn>, <Cm>, #<op2>{, <Xt>} (fff80000/d5080000) */
|
---|
21489 | //#define IEM_INSTR_IMPL_A64__SYS_CR_systeminstrs(Rt, op2, CRm, CRn, op1)
|
---|
21490 |
|
---|
21491 |
|
---|
21492 | /* SYSL <Xt>, #<op1>, <Cn>, <Cm>, #<op2> (fff80000/d5280000) */
|
---|
21493 | //#define IEM_INSTR_IMPL_A64__SYSL_RC_systeminstrs(Rt, op2, CRm, CRn, op1)
|
---|
21494 |
|
---|
21495 |
|
---|
21496 |
|
---|
21497 | /*
|
---|
21498 | *
|
---|
21499 | * Instruction Set & Groups: systeminstrswithreg / control / A64
|
---|
21500 | *
|
---|
21501 | */
|
---|
21502 |
|
---|
21503 | /* WFET <Xt> (ffffffe0/d5031000) */
|
---|
21504 | //#define IEM_INSTR_IMPL_A64__WFET_only_systeminstrswithreg(Rd)
|
---|
21505 |
|
---|
21506 |
|
---|
21507 | /* WFIT <Xt> (ffffffe0/d5031020) */
|
---|
21508 | //#define IEM_INSTR_IMPL_A64__WFIT_only_systeminstrswithreg(Rd)
|
---|
21509 |
|
---|
21510 |
|
---|
21511 |
|
---|
21512 | /*
|
---|
21513 | *
|
---|
21514 | * Instruction Set & Groups: systemmove / control / A64
|
---|
21515 | *
|
---|
21516 | */
|
---|
21517 |
|
---|
21518 | /* MSR {<systemreg> | S<op0>_<op1>_<Cn>_<Cm>_<op2>}, <Xt> (fff00000/d5100000) */
|
---|
21519 | //#define IEM_INSTR_IMPL_A64__MSR_SR_systemmove(Rt, op2, CRm, CRn, op1, o0)
|
---|
21520 |
|
---|
21521 |
|
---|
21522 | /* MRS <Xt>, {<systemreg> | S<op0>_<op1>_<Cn>_<Cm>_<op2>} (fff00000/d5300000) */
|
---|
21523 | //#define IEM_INSTR_IMPL_A64__MRS_RS_systemmove(Rt, op2, CRm, CRn, op1, o0)
|
---|
21524 |
|
---|
21525 |
|
---|
21526 |
|
---|
21527 | /*
|
---|
21528 | *
|
---|
21529 | * Instruction Set & Groups: systemmovepr / control / A64
|
---|
21530 | *
|
---|
21531 | */
|
---|
21532 |
|
---|
21533 | /* MSRR {<systemreg> | S<op0>_<op1>_<Cn>_<Cm>_<op2>}, <Xt>, <Xt+1> (fff00000/d5500000) */
|
---|
21534 | //#define IEM_INSTR_IMPL_A64__MSRR_SR_systemmovepr(Rt, op2, CRm, CRn, op1, o0)
|
---|
21535 |
|
---|
21536 |
|
---|
21537 | /* MRRS <Xt>, <Xt+1>, {<systemreg> | S<op0>_<op1>_<Cn>_<Cm>_<op2>} (fff00000/d5700000) */
|
---|
21538 | //#define IEM_INSTR_IMPL_A64__MRRS_RS_systemmovepr(Rt, op2, CRm, CRn, op1, o0)
|
---|
21539 |
|
---|
21540 |
|
---|
21541 |
|
---|
21542 | /*
|
---|
21543 | *
|
---|
21544 | * Instruction Set & Groups: systemresult / control / A64
|
---|
21545 | *
|
---|
21546 | */
|
---|
21547 |
|
---|
21548 | /* TSTART <Xt> (ffffffe0/d5233060) */
|
---|
21549 | //#define IEM_INSTR_IMPL_A64__TSTART_BR_systemresult(Rt)
|
---|
21550 |
|
---|
21551 |
|
---|
21552 | /* TTEST <Xt> (ffffffe0/d5233160) */
|
---|
21553 | //#define IEM_INSTR_IMPL_A64__TTEST_BR_systemresult(Rt)
|
---|
21554 |
|
---|
21555 |
|
---|
21556 |
|
---|
21557 | /*
|
---|
21558 | *
|
---|
21559 | * Instruction Set & Groups: testbranch / control / A64
|
---|
21560 | *
|
---|
21561 | */
|
---|
21562 |
|
---|
21563 | /* TBZ <R><t>, #<imm>, <label> (7f000000/36000000) */
|
---|
21564 | //#define IEM_INSTR_IMPL_A64__TBZ_only_testbranch(Rt, imm14, b40, b5)
|
---|
21565 |
|
---|
21566 |
|
---|
21567 | /* TBNZ <R><t>, #<imm>, <label> (7f000000/37000000) */
|
---|
21568 | //#define IEM_INSTR_IMPL_A64__TBNZ_only_testbranch(Rt, imm14, b40, b5)
|
---|