1// Copyright 2020, VIXL authors
2// All rights reserved.
3//
4// Redistribution and use in source and binary forms, with or without
5// modification, are permitted provided that the following conditions are met:
6//
7//   * Redistributions of source code must retain the above copyright notice,
8//     this list of conditions and the following disclaimer.
9//   * Redistributions in binary form must reproduce the above copyright notice,
10//     this list of conditions and the following disclaimer in the documentation
11//     and/or other materials provided with the distribution.
12//   * Neither the name of ARM Limited nor the names of its contributors may be
13//     used to endorse or promote products derived from this software without
14//     specific prior written permission.
15//
16// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS CONTRIBUTORS "AS IS" AND
17// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
20// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
22// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
23// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
25// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
27// Initialisation data for a std::map, from instruction form to the visitor
28// function that handles it. This allows reuse of existing visitor functions
29// that support groups of instructions, though they may do extra decoding
30// no longer needed.
31// In the long term, it's expected that each component that uses the decoder
32// will want to group instruction handling in the way most appropriate to
33// the component's function, so this map initialisation will no longer be
34// shared.
35
36#define DEFAULT_FORM_TO_VISITOR_MAP(VISITORCLASS)                              \
37  {"abs_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},        \
38      {"addpl_r_ri"_h, &VISITORCLASS::VisitSVEStackFrameAdjustment},           \
39      {"addvl_r_ri"_h, &VISITORCLASS::VisitSVEStackFrameAdjustment},           \
40      {"add_z_p_zz"_h,                                                         \
41       &VISITORCLASS::VisitSVEIntAddSubtractVectors_Predicated},               \
42      {"add_z_zi"_h, &VISITORCLASS::VisitSVEIntAddSubtractImm_Unpredicated},   \
43      {"add_z_zz"_h, &VISITORCLASS::VisitSVEIntArithmeticUnpredicated},        \
44      {"adr_z_az_d_s32_scaled"_h, &VISITORCLASS::VisitSVEAddressGeneration},   \
45      {"adr_z_az_d_u32_scaled"_h, &VISITORCLASS::VisitSVEAddressGeneration},   \
46      {"adr_z_az_sd_same_scaled"_h, &VISITORCLASS::VisitSVEAddressGeneration}, \
47      {"ands_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},            \
48      {"andv_r_p_z"_h, &VISITORCLASS::VisitSVEIntReduction},                   \
49      {"and_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},             \
50      {"and_z_p_zz"_h, &VISITORCLASS::VisitSVEBitwiseLogical_Predicated},      \
51      {"and_z_zi"_h,                                                           \
52       &VISITORCLASS::VisitSVEBitwiseLogicalWithImm_Unpredicated},             \
53      {"and_z_zz"_h, &VISITORCLASS::VisitSVEBitwiseLogicalUnpredicated},       \
54      {"asrd_z_p_zi"_h, &VISITORCLASS::VisitSVEBitwiseShiftByImm_Predicated},  \
55      {"asrr_z_p_zz"_h,                                                        \
56       &VISITORCLASS::VisitSVEBitwiseShiftByVector_Predicated},                \
57      {"asr_z_p_zi"_h, &VISITORCLASS::VisitSVEBitwiseShiftByImm_Predicated},   \
58      {"asr_z_p_zw"_h,                                                         \
59       &VISITORCLASS::VisitSVEBitwiseShiftByWideElements_Predicated},          \
60      {"asr_z_p_zz"_h,                                                         \
61       &VISITORCLASS::VisitSVEBitwiseShiftByVector_Predicated},                \
62      {"asr_z_zi"_h, &VISITORCLASS::VisitSVEBitwiseShiftUnpredicated},         \
63      {"asr_z_zw"_h, &VISITORCLASS::VisitSVEBitwiseShiftUnpredicated},         \
64      {"bics_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},            \
65      {"bic_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},             \
66      {"bic_z_p_zz"_h, &VISITORCLASS::VisitSVEBitwiseLogical_Predicated},      \
67      {"bic_z_zz"_h, &VISITORCLASS::VisitSVEBitwiseLogicalUnpredicated},       \
68      {"brkas_p_p_p_z"_h, &VISITORCLASS::VisitSVEPartitionBreakCondition},     \
69      {"brka_p_p_p"_h, &VISITORCLASS::VisitSVEPartitionBreakCondition},        \
70      {"brkbs_p_p_p_z"_h, &VISITORCLASS::VisitSVEPartitionBreakCondition},     \
71      {"brkb_p_p_p"_h, &VISITORCLASS::VisitSVEPartitionBreakCondition},        \
72      {"brkns_p_p_pp"_h,                                                       \
73       &VISITORCLASS::VisitSVEPropagateBreakToNextPartition},                  \
74      {"brkn_p_p_pp"_h, &VISITORCLASS::VisitSVEPropagateBreakToNextPartition}, \
75      {"brkpas_p_p_pp"_h, &VISITORCLASS::VisitSVEPropagateBreak},              \
76      {"brkpa_p_p_pp"_h, &VISITORCLASS::VisitSVEPropagateBreak},               \
77      {"brkpbs_p_p_pp"_h, &VISITORCLASS::VisitSVEPropagateBreak},              \
78      {"brkpb_p_p_pp"_h, &VISITORCLASS::VisitSVEPropagateBreak},               \
79      {"clasta_r_p_z"_h,                                                       \
80       &VISITORCLASS::VisitSVEConditionallyExtractElementToGeneralRegister},   \
81      {"clasta_v_p_z"_h,                                                       \
82       &VISITORCLASS::VisitSVEConditionallyExtractElementToSIMDFPScalar},      \
83      {"clasta_z_p_zz"_h,                                                      \
84       &VISITORCLASS::VisitSVEConditionallyBroadcastElementToVector},          \
85      {"clastb_r_p_z"_h,                                                       \
86       &VISITORCLASS::VisitSVEConditionallyExtractElementToGeneralRegister},   \
87      {"clastb_v_p_z"_h,                                                       \
88       &VISITORCLASS::VisitSVEConditionallyExtractElementToSIMDFPScalar},      \
89      {"clastb_z_p_zz"_h,                                                      \
90       &VISITORCLASS::VisitSVEConditionallyBroadcastElementToVector},          \
91      {"cls_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},    \
92      {"clz_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},    \
93      {"cmpeq_p_p_zi"_h, &VISITORCLASS::VisitSVEIntCompareSignedImm},          \
94      {"cmpeq_p_p_zw"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
95      {"cmpeq_p_p_zz"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
96      {"cmpge_p_p_zi"_h, &VISITORCLASS::VisitSVEIntCompareSignedImm},          \
97      {"cmpge_p_p_zw"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
98      {"cmpge_p_p_zz"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
99      {"cmpgt_p_p_zi"_h, &VISITORCLASS::VisitSVEIntCompareSignedImm},          \
100      {"cmpgt_p_p_zw"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
101      {"cmpgt_p_p_zz"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
102      {"cmphi_p_p_zi"_h, &VISITORCLASS::VisitSVEIntCompareUnsignedImm},        \
103      {"cmphi_p_p_zw"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
104      {"cmphi_p_p_zz"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
105      {"cmphs_p_p_zi"_h, &VISITORCLASS::VisitSVEIntCompareUnsignedImm},        \
106      {"cmphs_p_p_zw"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
107      {"cmphs_p_p_zz"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
108      {"cmple_p_p_zi"_h, &VISITORCLASS::VisitSVEIntCompareSignedImm},          \
109      {"cmple_p_p_zw"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
110      {"cmplo_p_p_zi"_h, &VISITORCLASS::VisitSVEIntCompareUnsignedImm},        \
111      {"cmplo_p_p_zw"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
112      {"cmpls_p_p_zi"_h, &VISITORCLASS::VisitSVEIntCompareUnsignedImm},        \
113      {"cmpls_p_p_zw"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
114      {"cmplt_p_p_zi"_h, &VISITORCLASS::VisitSVEIntCompareSignedImm},          \
115      {"cmplt_p_p_zw"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
116      {"cmpne_p_p_zi"_h, &VISITORCLASS::VisitSVEIntCompareSignedImm},          \
117      {"cmpne_p_p_zw"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
118      {"cmpne_p_p_zz"_h, &VISITORCLASS::VisitSVEIntCompareVectors},            \
119      {"cnot_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},   \
120      {"cntb_r_s"_h, &VISITORCLASS::VisitSVEElementCount},                     \
121      {"cntd_r_s"_h, &VISITORCLASS::VisitSVEElementCount},                     \
122      {"cnth_r_s"_h, &VISITORCLASS::VisitSVEElementCount},                     \
123      {"cntp_r_p_p"_h, &VISITORCLASS::VisitSVEPredicateCount},                 \
124      {"cntw_r_s"_h, &VISITORCLASS::VisitSVEElementCount},                     \
125      {"cnt_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},    \
126      {"compact_z_p_z"_h, &VISITORCLASS::VisitSVECompressActiveElements},      \
127      {"cpy_z_o_i"_h, &VISITORCLASS::VisitSVECopyIntImm_Predicated},           \
128      {"cpy_z_p_i"_h, &VISITORCLASS::VisitSVECopyIntImm_Predicated},           \
129      {"cpy_z_p_r"_h,                                                          \
130       &VISITORCLASS::VisitSVECopyGeneralRegisterToVector_Predicated},         \
131      {"cpy_z_p_v"_h,                                                          \
132       &VISITORCLASS::VisitSVECopySIMDFPScalarRegisterToVector_Predicated},    \
133      {"ctermeq_rr"_h, &VISITORCLASS::VisitSVEConditionallyTerminateScalars},  \
134      {"ctermne_rr"_h, &VISITORCLASS::VisitSVEConditionallyTerminateScalars},  \
135      {"decb_r_rs"_h, &VISITORCLASS::VisitSVEIncDecRegisterByElementCount},    \
136      {"decd_r_rs"_h, &VISITORCLASS::VisitSVEIncDecRegisterByElementCount},    \
137      {"decd_z_zs"_h, &VISITORCLASS::VisitSVEIncDecVectorByElementCount},      \
138      {"dech_r_rs"_h, &VISITORCLASS::VisitSVEIncDecRegisterByElementCount},    \
139      {"dech_z_zs"_h, &VISITORCLASS::VisitSVEIncDecVectorByElementCount},      \
140      {"decp_r_p_r"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},         \
141      {"decp_z_p_z"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},         \
142      {"decw_r_rs"_h, &VISITORCLASS::VisitSVEIncDecRegisterByElementCount},    \
143      {"decw_z_zs"_h, &VISITORCLASS::VisitSVEIncDecVectorByElementCount},      \
144      {"dupm_z_i"_h, &VISITORCLASS::VisitSVEBroadcastBitmaskImm},              \
145      {"dup_z_i"_h, &VISITORCLASS::VisitSVEBroadcastIntImm_Unpredicated},      \
146      {"dup_z_r"_h, &VISITORCLASS::VisitSVEBroadcastGeneralRegister},          \
147      {"dup_z_zi"_h, &VISITORCLASS::VisitSVEBroadcastIndexElement},            \
148      {"eors_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},            \
149      {"eorv_r_p_z"_h, &VISITORCLASS::VisitSVEIntReduction},                   \
150      {"eor_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},             \
151      {"eor_z_p_zz"_h, &VISITORCLASS::VisitSVEBitwiseLogical_Predicated},      \
152      {"eor_z_zi"_h,                                                           \
153       &VISITORCLASS::VisitSVEBitwiseLogicalWithImm_Unpredicated},             \
154      {"eor_z_zz"_h, &VISITORCLASS::VisitSVEBitwiseLogicalUnpredicated},       \
155      {"ext_z_zi_des"_h, &VISITORCLASS::VisitSVEPermuteVectorExtract},         \
156      {"fabd_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},       \
157      {"fabs_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},   \
158      {"facge_p_p_zz"_h, &VISITORCLASS::VisitSVEFPCompareVectors},             \
159      {"facgt_p_p_zz"_h, &VISITORCLASS::VisitSVEFPCompareVectors},             \
160      {"fadda_v_p_z"_h, &VISITORCLASS::VisitSVEFPAccumulatingReduction},       \
161      {"faddv_v_p_z"_h, &VISITORCLASS::VisitSVEFPFastReduction},               \
162      {"fadd_z_p_zs"_h,                                                        \
163       &VISITORCLASS::VisitSVEFPArithmeticWithImm_Predicated},                 \
164      {"fadd_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},       \
165      {"fadd_z_zz"_h, &VISITORCLASS::VisitSVEFPArithmeticUnpredicated},        \
166      {"fcadd_z_p_zz"_h, &VISITORCLASS::VisitSVEFPComplexAddition},            \
167      {"fcmeq_p_p_z0"_h, &VISITORCLASS::VisitSVEFPCompareWithZero},            \
168      {"fcmeq_p_p_zz"_h, &VISITORCLASS::VisitSVEFPCompareVectors},             \
169      {"fcmge_p_p_z0"_h, &VISITORCLASS::VisitSVEFPCompareWithZero},            \
170      {"fcmge_p_p_zz"_h, &VISITORCLASS::VisitSVEFPCompareVectors},             \
171      {"fcmgt_p_p_z0"_h, &VISITORCLASS::VisitSVEFPCompareWithZero},            \
172      {"fcmgt_p_p_zz"_h, &VISITORCLASS::VisitSVEFPCompareVectors},             \
173      {"fcmla_z_p_zzz"_h, &VISITORCLASS::VisitSVEFPComplexMulAdd},             \
174      {"fcmla_z_zzzi_h"_h, &VISITORCLASS::VisitSVEFPComplexMulAddIndex},       \
175      {"fcmla_z_zzzi_s"_h, &VISITORCLASS::VisitSVEFPComplexMulAddIndex},       \
176      {"fcmle_p_p_z0"_h, &VISITORCLASS::VisitSVEFPCompareWithZero},            \
177      {"fcmlt_p_p_z0"_h, &VISITORCLASS::VisitSVEFPCompareWithZero},            \
178      {"fcmne_p_p_z0"_h, &VISITORCLASS::VisitSVEFPCompareWithZero},            \
179      {"fcmne_p_p_zz"_h, &VISITORCLASS::VisitSVEFPCompareVectors},             \
180      {"fcmuo_p_p_zz"_h, &VISITORCLASS::VisitSVEFPCompareVectors},             \
181      {"fcpy_z_p_i"_h, &VISITORCLASS::VisitSVECopyFPImm_Predicated},           \
182      {"fcvtzs_z_p_z_d2w"_h, &VISITORCLASS::VisitSVEFPConvertToInt},           \
183      {"fcvtzs_z_p_z_d2x"_h, &VISITORCLASS::VisitSVEFPConvertToInt},           \
184      {"fcvtzs_z_p_z_fp162h"_h, &VISITORCLASS::VisitSVEFPConvertToInt},        \
185      {"fcvtzs_z_p_z_fp162w"_h, &VISITORCLASS::VisitSVEFPConvertToInt},        \
186      {"fcvtzs_z_p_z_fp162x"_h, &VISITORCLASS::VisitSVEFPConvertToInt},        \
187      {"fcvtzs_z_p_z_s2w"_h, &VISITORCLASS::VisitSVEFPConvertToInt},           \
188      {"fcvtzs_z_p_z_s2x"_h, &VISITORCLASS::VisitSVEFPConvertToInt},           \
189      {"fcvtzu_z_p_z_d2w"_h, &VISITORCLASS::VisitSVEFPConvertToInt},           \
190      {"fcvtzu_z_p_z_d2x"_h, &VISITORCLASS::VisitSVEFPConvertToInt},           \
191      {"fcvtzu_z_p_z_fp162h"_h, &VISITORCLASS::VisitSVEFPConvertToInt},        \
192      {"fcvtzu_z_p_z_fp162w"_h, &VISITORCLASS::VisitSVEFPConvertToInt},        \
193      {"fcvtzu_z_p_z_fp162x"_h, &VISITORCLASS::VisitSVEFPConvertToInt},        \
194      {"fcvtzu_z_p_z_s2w"_h, &VISITORCLASS::VisitSVEFPConvertToInt},           \
195      {"fcvtzu_z_p_z_s2x"_h, &VISITORCLASS::VisitSVEFPConvertToInt},           \
196      {"fcvt_z_p_z_d2h"_h, &VISITORCLASS::VisitSVEFPConvertPrecision},         \
197      {"fcvt_z_p_z_d2s"_h, &VISITORCLASS::VisitSVEFPConvertPrecision},         \
198      {"fcvt_z_p_z_h2d"_h, &VISITORCLASS::VisitSVEFPConvertPrecision},         \
199      {"fcvt_z_p_z_h2s"_h, &VISITORCLASS::VisitSVEFPConvertPrecision},         \
200      {"fcvt_z_p_z_s2d"_h, &VISITORCLASS::VisitSVEFPConvertPrecision},         \
201      {"fcvt_z_p_z_s2h"_h, &VISITORCLASS::VisitSVEFPConvertPrecision},         \
202      {"fdivr_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},      \
203      {"fdiv_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},       \
204      {"fdup_z_i"_h, &VISITORCLASS::VisitSVEBroadcastFPImm_Unpredicated},      \
205      {"fexpa_z_z"_h, &VISITORCLASS::VisitSVEFPExponentialAccelerator},        \
206      {"fmad_z_p_zzz"_h, &VISITORCLASS::VisitSVEFPMulAdd},                     \
207      {"fmaxnmv_v_p_z"_h, &VISITORCLASS::VisitSVEFPFastReduction},             \
208      {"fmaxnm_z_p_zs"_h,                                                      \
209       &VISITORCLASS::VisitSVEFPArithmeticWithImm_Predicated},                 \
210      {"fmaxnm_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},     \
211      {"fmaxv_v_p_z"_h, &VISITORCLASS::VisitSVEFPFastReduction},               \
212      {"fmax_z_p_zs"_h,                                                        \
213       &VISITORCLASS::VisitSVEFPArithmeticWithImm_Predicated},                 \
214      {"fmax_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},       \
215      {"fminnmv_v_p_z"_h, &VISITORCLASS::VisitSVEFPFastReduction},             \
216      {"fminnm_z_p_zs"_h,                                                      \
217       &VISITORCLASS::VisitSVEFPArithmeticWithImm_Predicated},                 \
218      {"fminnm_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},     \
219      {"fminv_v_p_z"_h, &VISITORCLASS::VisitSVEFPFastReduction},               \
220      {"fmin_z_p_zs"_h,                                                        \
221       &VISITORCLASS::VisitSVEFPArithmeticWithImm_Predicated},                 \
222      {"fmin_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},       \
223      {"fmla_z_p_zzz"_h, &VISITORCLASS::VisitSVEFPMulAdd},                     \
224      {"fmla_z_zzzi_d"_h, &VISITORCLASS::VisitSVEFPMulAddIndex},               \
225      {"fmla_z_zzzi_h"_h, &VISITORCLASS::VisitSVEFPMulAddIndex},               \
226      {"fmla_z_zzzi_s"_h, &VISITORCLASS::VisitSVEFPMulAddIndex},               \
227      {"fmls_z_p_zzz"_h, &VISITORCLASS::VisitSVEFPMulAdd},                     \
228      {"fmls_z_zzzi_d"_h, &VISITORCLASS::VisitSVEFPMulAddIndex},               \
229      {"fmls_z_zzzi_h"_h, &VISITORCLASS::VisitSVEFPMulAddIndex},               \
230      {"fmls_z_zzzi_s"_h, &VISITORCLASS::VisitSVEFPMulAddIndex},               \
231      {"fmsb_z_p_zzz"_h, &VISITORCLASS::VisitSVEFPMulAdd},                     \
232      {"fmulx_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},      \
233      {"fmul_z_p_zs"_h,                                                        \
234       &VISITORCLASS::VisitSVEFPArithmeticWithImm_Predicated},                 \
235      {"fmul_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},       \
236      {"fmul_z_zz"_h, &VISITORCLASS::VisitSVEFPArithmeticUnpredicated},        \
237      {"fmul_z_zzi_d"_h, &VISITORCLASS::VisitSVEFPMulIndex},                   \
238      {"fmul_z_zzi_h"_h, &VISITORCLASS::VisitSVEFPMulIndex},                   \
239      {"fmul_z_zzi_s"_h, &VISITORCLASS::VisitSVEFPMulIndex},                   \
240      {"fneg_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},   \
241      {"fnmad_z_p_zzz"_h, &VISITORCLASS::VisitSVEFPMulAdd},                    \
242      {"fnmla_z_p_zzz"_h, &VISITORCLASS::VisitSVEFPMulAdd},                    \
243      {"fnmls_z_p_zzz"_h, &VISITORCLASS::VisitSVEFPMulAdd},                    \
244      {"fnmsb_z_p_zzz"_h, &VISITORCLASS::VisitSVEFPMulAdd},                    \
245      {"frecpe_z_z"_h, &VISITORCLASS::VisitSVEFPUnaryOpUnpredicated},          \
246      {"frecps_z_zz"_h, &VISITORCLASS::VisitSVEFPArithmeticUnpredicated},      \
247      {"frecpx_z_p_z"_h, &VISITORCLASS::VisitSVEFPUnaryOp},                    \
248      {"frinta_z_p_z"_h, &VISITORCLASS::VisitSVEFPRoundToIntegralValue},       \
249      {"frinti_z_p_z"_h, &VISITORCLASS::VisitSVEFPRoundToIntegralValue},       \
250      {"frintm_z_p_z"_h, &VISITORCLASS::VisitSVEFPRoundToIntegralValue},       \
251      {"frintn_z_p_z"_h, &VISITORCLASS::VisitSVEFPRoundToIntegralValue},       \
252      {"frintp_z_p_z"_h, &VISITORCLASS::VisitSVEFPRoundToIntegralValue},       \
253      {"frintx_z_p_z"_h, &VISITORCLASS::VisitSVEFPRoundToIntegralValue},       \
254      {"frintz_z_p_z"_h, &VISITORCLASS::VisitSVEFPRoundToIntegralValue},       \
255      {"frsqrte_z_z"_h, &VISITORCLASS::VisitSVEFPUnaryOpUnpredicated},         \
256      {"frsqrts_z_zz"_h, &VISITORCLASS::VisitSVEFPArithmeticUnpredicated},     \
257      {"fscale_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},     \
258      {"fsqrt_z_p_z"_h, &VISITORCLASS::VisitSVEFPUnaryOp},                     \
259      {"fsubr_z_p_zs"_h,                                                       \
260       &VISITORCLASS::VisitSVEFPArithmeticWithImm_Predicated},                 \
261      {"fsubr_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},      \
262      {"fsub_z_p_zs"_h,                                                        \
263       &VISITORCLASS::VisitSVEFPArithmeticWithImm_Predicated},                 \
264      {"fsub_z_p_zz"_h, &VISITORCLASS::VisitSVEFPArithmetic_Predicated},       \
265      {"fsub_z_zz"_h, &VISITORCLASS::VisitSVEFPArithmeticUnpredicated},        \
266      {"ftmad_z_zzi"_h, &VISITORCLASS::VisitSVEFPTrigMulAddCoefficient},       \
267      {"ftsmul_z_zz"_h, &VISITORCLASS::VisitSVEFPArithmeticUnpredicated},      \
268      {"ftssel_z_zz"_h, &VISITORCLASS::VisitSVEFPTrigSelectCoefficient},       \
269      {"incb_r_rs"_h, &VISITORCLASS::VisitSVEIncDecRegisterByElementCount},    \
270      {"incd_r_rs"_h, &VISITORCLASS::VisitSVEIncDecRegisterByElementCount},    \
271      {"incd_z_zs"_h, &VISITORCLASS::VisitSVEIncDecVectorByElementCount},      \
272      {"inch_r_rs"_h, &VISITORCLASS::VisitSVEIncDecRegisterByElementCount},    \
273      {"inch_z_zs"_h, &VISITORCLASS::VisitSVEIncDecVectorByElementCount},      \
274      {"incp_r_p_r"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},         \
275      {"incp_z_p_z"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},         \
276      {"incw_r_rs"_h, &VISITORCLASS::VisitSVEIncDecRegisterByElementCount},    \
277      {"incw_z_zs"_h, &VISITORCLASS::VisitSVEIncDecVectorByElementCount},      \
278      {"index_z_ii"_h, &VISITORCLASS::VisitSVEIndexGeneration},                \
279      {"index_z_ir"_h, &VISITORCLASS::VisitSVEIndexGeneration},                \
280      {"index_z_ri"_h, &VISITORCLASS::VisitSVEIndexGeneration},                \
281      {"index_z_rr"_h, &VISITORCLASS::VisitSVEIndexGeneration},                \
282      {"insr_z_r"_h, &VISITORCLASS::VisitSVEInsertGeneralRegister},            \
283      {"insr_z_v"_h, &VISITORCLASS::VisitSVEInsertSIMDFPScalarRegister},       \
284      {"lasta_r_p_z"_h,                                                        \
285       &VISITORCLASS::VisitSVEExtractElementToGeneralRegister},                \
286      {"lasta_v_p_z"_h,                                                        \
287       &VISITORCLASS::VisitSVEExtractElementToSIMDFPScalarRegister},           \
288      {"lastb_r_p_z"_h,                                                        \
289       &VISITORCLASS::VisitSVEExtractElementToGeneralRegister},                \
290      {"lastb_v_p_z"_h,                                                        \
291       &VISITORCLASS::VisitSVEExtractElementToSIMDFPScalarRegister},           \
292      {"ld1b_z_p_ai_d"_h,                                                      \
293       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
294      {"ld1b_z_p_ai_s"_h,                                                      \
295       &VISITORCLASS::VisitSVE32BitGatherLoad_VectorPlusImm},                  \
296      {"ld1b_z_p_bi_u16"_h,                                                    \
297       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
298      {"ld1b_z_p_bi_u32"_h,                                                    \
299       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
300      {"ld1b_z_p_bi_u64"_h,                                                    \
301       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
302      {"ld1b_z_p_bi_u8"_h,                                                     \
303       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
304      {"ld1b_z_p_br_u16"_h,                                                    \
305       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
306      {"ld1b_z_p_br_u32"_h,                                                    \
307       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
308      {"ld1b_z_p_br_u64"_h,                                                    \
309       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
310      {"ld1b_z_p_br_u8"_h,                                                     \
311       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
312      {"ld1b_z_p_bz_d_64_unscaled"_h,                                          \
313       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
314      {"ld1b_z_p_bz_d_x32_unscaled"_h,                                         \
315       &VISITORCLASS::                                                         \
316           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
317      {"ld1b_z_p_bz_s_x32_unscaled"_h,                                         \
318       &VISITORCLASS::VisitSVE32BitGatherLoad_ScalarPlus32BitUnscaledOffsets}, \
319      {"ld1d_z_p_ai_d"_h,                                                      \
320       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
321      {"ld1d_z_p_bi_u64"_h,                                                    \
322       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
323      {"ld1d_z_p_br_u64"_h,                                                    \
324       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
325      {"ld1d_z_p_bz_d_64_scaled"_h,                                            \
326       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitScaledOffsets},   \
327      {"ld1d_z_p_bz_d_64_unscaled"_h,                                          \
328       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
329      {"ld1d_z_p_bz_d_x32_scaled"_h,                                           \
330       &VISITORCLASS::                                                         \
331           VisitSVE64BitGatherLoad_ScalarPlus32BitUnpackedScaledOffsets},      \
332      {"ld1d_z_p_bz_d_x32_unscaled"_h,                                         \
333       &VISITORCLASS::                                                         \
334           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
335      {"ld1h_z_p_ai_d"_h,                                                      \
336       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
337      {"ld1h_z_p_ai_s"_h,                                                      \
338       &VISITORCLASS::VisitSVE32BitGatherLoad_VectorPlusImm},                  \
339      {"ld1h_z_p_bi_u16"_h,                                                    \
340       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
341      {"ld1h_z_p_bi_u32"_h,                                                    \
342       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
343      {"ld1h_z_p_bi_u64"_h,                                                    \
344       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
345      {"ld1h_z_p_br_u16"_h,                                                    \
346       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
347      {"ld1h_z_p_br_u32"_h,                                                    \
348       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
349      {"ld1h_z_p_br_u64"_h,                                                    \
350       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
351      {"ld1h_z_p_bz_d_64_scaled"_h,                                            \
352       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitScaledOffsets},   \
353      {"ld1h_z_p_bz_d_64_unscaled"_h,                                          \
354       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
355      {"ld1h_z_p_bz_d_x32_scaled"_h,                                           \
356       &VISITORCLASS::                                                         \
357           VisitSVE64BitGatherLoad_ScalarPlus32BitUnpackedScaledOffsets},      \
358      {"ld1h_z_p_bz_d_x32_unscaled"_h,                                         \
359       &VISITORCLASS::                                                         \
360           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
361      {"ld1h_z_p_bz_s_x32_scaled"_h,                                           \
362       &VISITORCLASS::                                                         \
363           VisitSVE32BitGatherLoadHalfwords_ScalarPlus32BitScaledOffsets},     \
364      {"ld1h_z_p_bz_s_x32_unscaled"_h,                                         \
365       &VISITORCLASS::VisitSVE32BitGatherLoad_ScalarPlus32BitUnscaledOffsets}, \
366      {"ld1rb_z_p_bi_u16"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement},  \
367      {"ld1rb_z_p_bi_u32"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement},  \
368      {"ld1rb_z_p_bi_u64"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement},  \
369      {"ld1rb_z_p_bi_u8"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement},   \
370      {"ld1rd_z_p_bi_u64"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement},  \
371      {"ld1rh_z_p_bi_u16"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement},  \
372      {"ld1rh_z_p_bi_u32"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement},  \
373      {"ld1rh_z_p_bi_u64"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement},  \
374      {"ld1rqb_z_p_bi_u8"_h,                                                   \
375       &VISITORCLASS::VisitSVELoadAndBroadcastQOWord_ScalarPlusImm},           \
376      {"ld1rqb_z_p_br_contiguous"_h,                                           \
377       &VISITORCLASS::VisitSVELoadAndBroadcastQOWord_ScalarPlusScalar},        \
378      {"ld1rqd_z_p_bi_u64"_h,                                                  \
379       &VISITORCLASS::VisitSVELoadAndBroadcastQOWord_ScalarPlusImm},           \
380      {"ld1rqd_z_p_br_contiguous"_h,                                           \
381       &VISITORCLASS::VisitSVELoadAndBroadcastQOWord_ScalarPlusScalar},        \
382      {"ld1rqh_z_p_bi_u16"_h,                                                  \
383       &VISITORCLASS::VisitSVELoadAndBroadcastQOWord_ScalarPlusImm},           \
384      {"ld1rqh_z_p_br_contiguous"_h,                                           \
385       &VISITORCLASS::VisitSVELoadAndBroadcastQOWord_ScalarPlusScalar},        \
386      {"ld1rqw_z_p_bi_u32"_h,                                                  \
387       &VISITORCLASS::VisitSVELoadAndBroadcastQOWord_ScalarPlusImm},           \
388      {"ld1rqw_z_p_br_contiguous"_h,                                           \
389       &VISITORCLASS::VisitSVELoadAndBroadcastQOWord_ScalarPlusScalar},        \
390      {"ld1rsb_z_p_bi_s16"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement}, \
391      {"ld1rsb_z_p_bi_s32"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement}, \
392      {"ld1rsb_z_p_bi_s64"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement}, \
393      {"ld1rsh_z_p_bi_s32"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement}, \
394      {"ld1rsh_z_p_bi_s64"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement}, \
395      {"ld1rsw_z_p_bi_s64"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement}, \
396      {"ld1rw_z_p_bi_u32"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement},  \
397      {"ld1rw_z_p_bi_u64"_h, &VISITORCLASS::VisitSVELoadAndBroadcastElement},  \
398      {"ld1sb_z_p_ai_d"_h,                                                     \
399       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
400      {"ld1sb_z_p_ai_s"_h,                                                     \
401       &VISITORCLASS::VisitSVE32BitGatherLoad_VectorPlusImm},                  \
402      {"ld1sb_z_p_bi_s16"_h,                                                   \
403       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
404      {"ld1sb_z_p_bi_s32"_h,                                                   \
405       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
406      {"ld1sb_z_p_bi_s64"_h,                                                   \
407       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
408      {"ld1sb_z_p_br_s16"_h,                                                   \
409       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
410      {"ld1sb_z_p_br_s32"_h,                                                   \
411       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
412      {"ld1sb_z_p_br_s64"_h,                                                   \
413       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
414      {"ld1sb_z_p_bz_d_64_unscaled"_h,                                         \
415       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
416      {"ld1sb_z_p_bz_d_x32_unscaled"_h,                                        \
417       &VISITORCLASS::                                                         \
418           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
419      {"ld1sb_z_p_bz_s_x32_unscaled"_h,                                        \
420       &VISITORCLASS::VisitSVE32BitGatherLoad_ScalarPlus32BitUnscaledOffsets}, \
421      {"ld1sh_z_p_ai_d"_h,                                                     \
422       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
423      {"ld1sh_z_p_ai_s"_h,                                                     \
424       &VISITORCLASS::VisitSVE32BitGatherLoad_VectorPlusImm},                  \
425      {"ld1sh_z_p_bi_s32"_h,                                                   \
426       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
427      {"ld1sh_z_p_bi_s64"_h,                                                   \
428       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
429      {"ld1sh_z_p_br_s32"_h,                                                   \
430       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
431      {"ld1sh_z_p_br_s64"_h,                                                   \
432       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
433      {"ld1sh_z_p_bz_d_64_scaled"_h,                                           \
434       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitScaledOffsets},   \
435      {"ld1sh_z_p_bz_d_64_unscaled"_h,                                         \
436       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
437      {"ld1sh_z_p_bz_d_x32_scaled"_h,                                          \
438       &VISITORCLASS::                                                         \
439           VisitSVE64BitGatherLoad_ScalarPlus32BitUnpackedScaledOffsets},      \
440      {"ld1sh_z_p_bz_d_x32_unscaled"_h,                                        \
441       &VISITORCLASS::                                                         \
442           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
443      {"ld1sh_z_p_bz_s_x32_scaled"_h,                                          \
444       &VISITORCLASS::                                                         \
445           VisitSVE32BitGatherLoadHalfwords_ScalarPlus32BitScaledOffsets},     \
446      {"ld1sh_z_p_bz_s_x32_unscaled"_h,                                        \
447       &VISITORCLASS::VisitSVE32BitGatherLoad_ScalarPlus32BitUnscaledOffsets}, \
448      {"ld1sw_z_p_ai_d"_h,                                                     \
449       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
450      {"ld1sw_z_p_bi_s64"_h,                                                   \
451       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
452      {"ld1sw_z_p_br_s64"_h,                                                   \
453       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
454      {"ld1sw_z_p_bz_d_64_scaled"_h,                                           \
455       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitScaledOffsets},   \
456      {"ld1sw_z_p_bz_d_64_unscaled"_h,                                         \
457       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
458      {"ld1sw_z_p_bz_d_x32_scaled"_h,                                          \
459       &VISITORCLASS::                                                         \
460           VisitSVE64BitGatherLoad_ScalarPlus32BitUnpackedScaledOffsets},      \
461      {"ld1sw_z_p_bz_d_x32_unscaled"_h,                                        \
462       &VISITORCLASS::                                                         \
463           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
464      {"ld1w_z_p_ai_d"_h,                                                      \
465       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
466      {"ld1w_z_p_ai_s"_h,                                                      \
467       &VISITORCLASS::VisitSVE32BitGatherLoad_VectorPlusImm},                  \
468      {"ld1w_z_p_bi_u32"_h,                                                    \
469       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
470      {"ld1w_z_p_bi_u64"_h,                                                    \
471       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusImm},                   \
472      {"ld1w_z_p_br_u32"_h,                                                    \
473       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
474      {"ld1w_z_p_br_u64"_h,                                                    \
475       &VISITORCLASS::VisitSVEContiguousLoad_ScalarPlusScalar},                \
476      {"ld1w_z_p_bz_d_64_scaled"_h,                                            \
477       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitScaledOffsets},   \
478      {"ld1w_z_p_bz_d_64_unscaled"_h,                                          \
479       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
480      {"ld1w_z_p_bz_d_x32_scaled"_h,                                           \
481       &VISITORCLASS::                                                         \
482           VisitSVE64BitGatherLoad_ScalarPlus32BitUnpackedScaledOffsets},      \
483      {"ld1w_z_p_bz_d_x32_unscaled"_h,                                         \
484       &VISITORCLASS::                                                         \
485           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
486      {"ld1w_z_p_bz_s_x32_scaled"_h,                                           \
487       &VISITORCLASS::                                                         \
488           VisitSVE32BitGatherLoadWords_ScalarPlus32BitScaledOffsets},         \
489      {"ld1w_z_p_bz_s_x32_unscaled"_h,                                         \
490       &VISITORCLASS::VisitSVE32BitGatherLoad_ScalarPlus32BitUnscaledOffsets}, \
491      {"ld2b_z_p_bi_contiguous"_h,                                             \
492       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
493      {"ld2b_z_p_br_contiguous"_h,                                             \
494       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
495      {"ld2d_z_p_bi_contiguous"_h,                                             \
496       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
497      {"ld2d_z_p_br_contiguous"_h,                                             \
498       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
499      {"ld2h_z_p_bi_contiguous"_h,                                             \
500       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
501      {"ld2h_z_p_br_contiguous"_h,                                             \
502       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
503      {"ld2w_z_p_bi_contiguous"_h,                                             \
504       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
505      {"ld2w_z_p_br_contiguous"_h,                                             \
506       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
507      {"ld3b_z_p_bi_contiguous"_h,                                             \
508       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
509      {"ld3b_z_p_br_contiguous"_h,                                             \
510       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
511      {"ld3d_z_p_bi_contiguous"_h,                                             \
512       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
513      {"ld3d_z_p_br_contiguous"_h,                                             \
514       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
515      {"ld3h_z_p_bi_contiguous"_h,                                             \
516       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
517      {"ld3h_z_p_br_contiguous"_h,                                             \
518       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
519      {"ld3w_z_p_bi_contiguous"_h,                                             \
520       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
521      {"ld3w_z_p_br_contiguous"_h,                                             \
522       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
523      {"ld4b_z_p_bi_contiguous"_h,                                             \
524       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
525      {"ld4b_z_p_br_contiguous"_h,                                             \
526       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
527      {"ld4d_z_p_bi_contiguous"_h,                                             \
528       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
529      {"ld4d_z_p_br_contiguous"_h,                                             \
530       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
531      {"ld4h_z_p_bi_contiguous"_h,                                             \
532       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
533      {"ld4h_z_p_br_contiguous"_h,                                             \
534       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
535      {"ld4w_z_p_bi_contiguous"_h,                                             \
536       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusImm},           \
537      {"ld4w_z_p_br_contiguous"_h,                                             \
538       &VISITORCLASS::VisitSVELoadMultipleStructures_ScalarPlusScalar},        \
539      {"ldff1b_z_p_ai_d"_h,                                                    \
540       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
541      {"ldff1b_z_p_ai_s"_h,                                                    \
542       &VISITORCLASS::VisitSVE32BitGatherLoad_VectorPlusImm},                  \
543      {"ldff1b_z_p_br_u16"_h,                                                  \
544       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
545      {"ldff1b_z_p_br_u32"_h,                                                  \
546       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
547      {"ldff1b_z_p_br_u64"_h,                                                  \
548       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
549      {"ldff1b_z_p_br_u8"_h,                                                   \
550       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
551      {"ldff1b_z_p_bz_d_64_unscaled"_h,                                        \
552       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
553      {"ldff1b_z_p_bz_d_x32_unscaled"_h,                                       \
554       &VISITORCLASS::                                                         \
555           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
556      {"ldff1b_z_p_bz_s_x32_unscaled"_h,                                       \
557       &VISITORCLASS::VisitSVE32BitGatherLoad_ScalarPlus32BitUnscaledOffsets}, \
558      {"ldff1d_z_p_ai_d"_h,                                                    \
559       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
560      {"ldff1d_z_p_br_u64"_h,                                                  \
561       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
562      {"ldff1d_z_p_bz_d_64_scaled"_h,                                          \
563       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitScaledOffsets},   \
564      {"ldff1d_z_p_bz_d_64_unscaled"_h,                                        \
565       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
566      {"ldff1d_z_p_bz_d_x32_scaled"_h,                                         \
567       &VISITORCLASS::                                                         \
568           VisitSVE64BitGatherLoad_ScalarPlus32BitUnpackedScaledOffsets},      \
569      {"ldff1d_z_p_bz_d_x32_unscaled"_h,                                       \
570       &VISITORCLASS::                                                         \
571           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
572      {"ldff1h_z_p_ai_d"_h,                                                    \
573       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
574      {"ldff1h_z_p_ai_s"_h,                                                    \
575       &VISITORCLASS::VisitSVE32BitGatherLoad_VectorPlusImm},                  \
576      {"ldff1h_z_p_br_u16"_h,                                                  \
577       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
578      {"ldff1h_z_p_br_u32"_h,                                                  \
579       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
580      {"ldff1h_z_p_br_u64"_h,                                                  \
581       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
582      {"ldff1h_z_p_bz_d_64_scaled"_h,                                          \
583       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitScaledOffsets},   \
584      {"ldff1h_z_p_bz_d_64_unscaled"_h,                                        \
585       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
586      {"ldff1h_z_p_bz_d_x32_scaled"_h,                                         \
587       &VISITORCLASS::                                                         \
588           VisitSVE64BitGatherLoad_ScalarPlus32BitUnpackedScaledOffsets},      \
589      {"ldff1h_z_p_bz_d_x32_unscaled"_h,                                       \
590       &VISITORCLASS::                                                         \
591           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
592      {"ldff1h_z_p_bz_s_x32_scaled"_h,                                         \
593       &VISITORCLASS::                                                         \
594           VisitSVE32BitGatherLoadHalfwords_ScalarPlus32BitScaledOffsets},     \
595      {"ldff1h_z_p_bz_s_x32_unscaled"_h,                                       \
596       &VISITORCLASS::VisitSVE32BitGatherLoad_ScalarPlus32BitUnscaledOffsets}, \
597      {"ldff1sb_z_p_ai_d"_h,                                                   \
598       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
599      {"ldff1sb_z_p_ai_s"_h,                                                   \
600       &VISITORCLASS::VisitSVE32BitGatherLoad_VectorPlusImm},                  \
601      {"ldff1sb_z_p_br_s16"_h,                                                 \
602       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
603      {"ldff1sb_z_p_br_s32"_h,                                                 \
604       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
605      {"ldff1sb_z_p_br_s64"_h,                                                 \
606       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
607      {"ldff1sb_z_p_bz_d_64_unscaled"_h,                                       \
608       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
609      {"ldff1sb_z_p_bz_d_x32_unscaled"_h,                                      \
610       &VISITORCLASS::                                                         \
611           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
612      {"ldff1sb_z_p_bz_s_x32_unscaled"_h,                                      \
613       &VISITORCLASS::VisitSVE32BitGatherLoad_ScalarPlus32BitUnscaledOffsets}, \
614      {"ldff1sh_z_p_ai_d"_h,                                                   \
615       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
616      {"ldff1sh_z_p_ai_s"_h,                                                   \
617       &VISITORCLASS::VisitSVE32BitGatherLoad_VectorPlusImm},                  \
618      {"ldff1sh_z_p_br_s32"_h,                                                 \
619       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
620      {"ldff1sh_z_p_br_s64"_h,                                                 \
621       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
622      {"ldff1sh_z_p_bz_d_64_scaled"_h,                                         \
623       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitScaledOffsets},   \
624      {"ldff1sh_z_p_bz_d_64_unscaled"_h,                                       \
625       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
626      {"ldff1sh_z_p_bz_d_x32_scaled"_h,                                        \
627       &VISITORCLASS::                                                         \
628           VisitSVE64BitGatherLoad_ScalarPlus32BitUnpackedScaledOffsets},      \
629      {"ldff1sh_z_p_bz_d_x32_unscaled"_h,                                      \
630       &VISITORCLASS::                                                         \
631           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
632      {"ldff1sh_z_p_bz_s_x32_scaled"_h,                                        \
633       &VISITORCLASS::                                                         \
634           VisitSVE32BitGatherLoadHalfwords_ScalarPlus32BitScaledOffsets},     \
635      {"ldff1sh_z_p_bz_s_x32_unscaled"_h,                                      \
636       &VISITORCLASS::VisitSVE32BitGatherLoad_ScalarPlus32BitUnscaledOffsets}, \
637      {"ldff1sw_z_p_ai_d"_h,                                                   \
638       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
639      {"ldff1sw_z_p_br_s64"_h,                                                 \
640       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
641      {"ldff1sw_z_p_bz_d_64_scaled"_h,                                         \
642       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitScaledOffsets},   \
643      {"ldff1sw_z_p_bz_d_64_unscaled"_h,                                       \
644       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
645      {"ldff1sw_z_p_bz_d_x32_scaled"_h,                                        \
646       &VISITORCLASS::                                                         \
647           VisitSVE64BitGatherLoad_ScalarPlus32BitUnpackedScaledOffsets},      \
648      {"ldff1sw_z_p_bz_d_x32_unscaled"_h,                                      \
649       &VISITORCLASS::                                                         \
650           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
651      {"ldff1w_z_p_ai_d"_h,                                                    \
652       &VISITORCLASS::VisitSVE64BitGatherLoad_VectorPlusImm},                  \
653      {"ldff1w_z_p_ai_s"_h,                                                    \
654       &VISITORCLASS::VisitSVE32BitGatherLoad_VectorPlusImm},                  \
655      {"ldff1w_z_p_br_u32"_h,                                                  \
656       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
657      {"ldff1w_z_p_br_u64"_h,                                                  \
658       &VISITORCLASS::VisitSVEContiguousFirstFaultLoad_ScalarPlusScalar},      \
659      {"ldff1w_z_p_bz_d_64_scaled"_h,                                          \
660       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitScaledOffsets},   \
661      {"ldff1w_z_p_bz_d_64_unscaled"_h,                                        \
662       &VISITORCLASS::VisitSVE64BitGatherLoad_ScalarPlus64BitUnscaledOffsets}, \
663      {"ldff1w_z_p_bz_d_x32_scaled"_h,                                         \
664       &VISITORCLASS::                                                         \
665           VisitSVE64BitGatherLoad_ScalarPlus32BitUnpackedScaledOffsets},      \
666      {"ldff1w_z_p_bz_d_x32_unscaled"_h,                                       \
667       &VISITORCLASS::                                                         \
668           VisitSVE64BitGatherLoad_ScalarPlusUnpacked32BitUnscaledOffsets},    \
669      {"ldff1w_z_p_bz_s_x32_scaled"_h,                                         \
670       &VISITORCLASS::                                                         \
671           VisitSVE32BitGatherLoadWords_ScalarPlus32BitScaledOffsets},         \
672      {"ldff1w_z_p_bz_s_x32_unscaled"_h,                                       \
673       &VISITORCLASS::VisitSVE32BitGatherLoad_ScalarPlus32BitUnscaledOffsets}, \
674      {"ldnf1b_z_p_bi_u16"_h,                                                  \
675       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
676      {"ldnf1b_z_p_bi_u32"_h,                                                  \
677       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
678      {"ldnf1b_z_p_bi_u64"_h,                                                  \
679       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
680      {"ldnf1b_z_p_bi_u8"_h,                                                   \
681       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
682      {"ldnf1d_z_p_bi_u64"_h,                                                  \
683       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
684      {"ldnf1h_z_p_bi_u16"_h,                                                  \
685       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
686      {"ldnf1h_z_p_bi_u32"_h,                                                  \
687       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
688      {"ldnf1h_z_p_bi_u64"_h,                                                  \
689       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
690      {"ldnf1sb_z_p_bi_s16"_h,                                                 \
691       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
692      {"ldnf1sb_z_p_bi_s32"_h,                                                 \
693       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
694      {"ldnf1sb_z_p_bi_s64"_h,                                                 \
695       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
696      {"ldnf1sh_z_p_bi_s32"_h,                                                 \
697       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
698      {"ldnf1sh_z_p_bi_s64"_h,                                                 \
699       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
700      {"ldnf1sw_z_p_bi_s64"_h,                                                 \
701       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
702      {"ldnf1w_z_p_bi_u32"_h,                                                  \
703       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
704      {"ldnf1w_z_p_bi_u64"_h,                                                  \
705       &VISITORCLASS::VisitSVEContiguousNonFaultLoad_ScalarPlusImm},           \
706      {"ldnt1b_z_p_bi_contiguous"_h,                                           \
707       &VISITORCLASS::VisitSVEContiguousNonTemporalLoad_ScalarPlusImm},        \
708      {"ldnt1b_z_p_br_contiguous"_h,                                           \
709       &VISITORCLASS::VisitSVEContiguousNonTemporalLoad_ScalarPlusScalar},     \
710      {"ldnt1d_z_p_bi_contiguous"_h,                                           \
711       &VISITORCLASS::VisitSVEContiguousNonTemporalLoad_ScalarPlusImm},        \
712      {"ldnt1d_z_p_br_contiguous"_h,                                           \
713       &VISITORCLASS::VisitSVEContiguousNonTemporalLoad_ScalarPlusScalar},     \
714      {"ldnt1h_z_p_bi_contiguous"_h,                                           \
715       &VISITORCLASS::VisitSVEContiguousNonTemporalLoad_ScalarPlusImm},        \
716      {"ldnt1h_z_p_br_contiguous"_h,                                           \
717       &VISITORCLASS::VisitSVEContiguousNonTemporalLoad_ScalarPlusScalar},     \
718      {"ldnt1w_z_p_bi_contiguous"_h,                                           \
719       &VISITORCLASS::VisitSVEContiguousNonTemporalLoad_ScalarPlusImm},        \
720      {"ldnt1w_z_p_br_contiguous"_h,                                           \
721       &VISITORCLASS::VisitSVEContiguousNonTemporalLoad_ScalarPlusScalar},     \
722      {"ldr_p_bi"_h, &VISITORCLASS::VisitSVELoadPredicateRegister},            \
723      {"ldr_z_bi"_h, &VISITORCLASS::VisitSVELoadVectorRegister},               \
724      {"lslr_z_p_zz"_h,                                                        \
725       &VISITORCLASS::VisitSVEBitwiseShiftByVector_Predicated},                \
726      {"lsl_z_p_zi"_h, &VISITORCLASS::VisitSVEBitwiseShiftByImm_Predicated},   \
727      {"lsl_z_p_zw"_h,                                                         \
728       &VISITORCLASS::VisitSVEBitwiseShiftByWideElements_Predicated},          \
729      {"lsl_z_p_zz"_h,                                                         \
730       &VISITORCLASS::VisitSVEBitwiseShiftByVector_Predicated},                \
731      {"lsl_z_zi"_h, &VISITORCLASS::VisitSVEBitwiseShiftUnpredicated},         \
732      {"lsl_z_zw"_h, &VISITORCLASS::VisitSVEBitwiseShiftUnpredicated},         \
733      {"lsrr_z_p_zz"_h,                                                        \
734       &VISITORCLASS::VisitSVEBitwiseShiftByVector_Predicated},                \
735      {"lsr_z_p_zi"_h, &VISITORCLASS::VisitSVEBitwiseShiftByImm_Predicated},   \
736      {"lsr_z_p_zw"_h,                                                         \
737       &VISITORCLASS::VisitSVEBitwiseShiftByWideElements_Predicated},          \
738      {"lsr_z_p_zz"_h,                                                         \
739       &VISITORCLASS::VisitSVEBitwiseShiftByVector_Predicated},                \
740      {"lsr_z_zi"_h, &VISITORCLASS::VisitSVEBitwiseShiftUnpredicated},         \
741      {"lsr_z_zw"_h, &VISITORCLASS::VisitSVEBitwiseShiftUnpredicated},         \
742      {"mad_z_p_zzz"_h, &VISITORCLASS::VisitSVEIntMulAddPredicated},           \
743      {"mla_z_p_zzz"_h, &VISITORCLASS::VisitSVEIntMulAddPredicated},           \
744      {"mls_z_p_zzz"_h, &VISITORCLASS::VisitSVEIntMulAddPredicated},           \
745      {"movprfx_z_p_z"_h, &VISITORCLASS::VisitSVEMovprfx},                     \
746      {"movprfx_z_z"_h,                                                        \
747       &VISITORCLASS::VisitSVEConstructivePrefix_Unpredicated},                \
748      {"msb_z_p_zzz"_h, &VISITORCLASS::VisitSVEIntMulAddPredicated},           \
749      {"mul_z_p_zz"_h, &VISITORCLASS::VisitSVEIntMulVectors_Predicated},       \
750      {"mul_z_zi"_h, &VISITORCLASS::VisitSVEIntMulImm_Unpredicated},           \
751      {"nands_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},           \
752      {"nand_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},            \
753      {"neg_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},    \
754      {"nors_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},            \
755      {"nor_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},             \
756      {"not_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},    \
757      {"orns_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},            \
758      {"orn_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},             \
759      {"orrs_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},            \
760      {"orr_p_p_pp_z"_h, &VISITORCLASS::VisitSVEPredicateLogical},             \
761      {"orr_z_p_zz"_h, &VISITORCLASS::VisitSVEBitwiseLogical_Predicated},      \
762      {"orr_z_zi"_h,                                                           \
763       &VISITORCLASS::VisitSVEBitwiseLogicalWithImm_Unpredicated},             \
764      {"orr_z_zz"_h, &VISITORCLASS::VisitSVEBitwiseLogicalUnpredicated},       \
765      {"orv_r_p_z"_h, &VISITORCLASS::VisitSVEIntReduction},                    \
766      {"pfalse_p"_h, &VISITORCLASS::VisitSVEPredicateZero},                    \
767      {"pfirst_p_p_p"_h, &VISITORCLASS::VisitSVEPredicateFirstActive},         \
768      {"pnext_p_p_p"_h, &VISITORCLASS::VisitSVEPredicateNextActive},           \
769      {"prfb_i_p_ai_d"_h,                                                      \
770       &VISITORCLASS::VisitSVE64BitGatherPrefetch_VectorPlusImm},              \
771      {"prfb_i_p_ai_s"_h,                                                      \
772       &VISITORCLASS::VisitSVE32BitGatherPrefetch_VectorPlusImm},              \
773      {"prfb_i_p_bi_s"_h,                                                      \
774       &VISITORCLASS::VisitSVEContiguousPrefetch_ScalarPlusImm},               \
775      {"prfb_i_p_br_s"_h,                                                      \
776       &VISITORCLASS::VisitSVEContiguousPrefetch_ScalarPlusScalar},            \
777      {"prfb_i_p_bz_d_64_scaled"_h,                                            \
778       &VISITORCLASS::                                                         \
779           VisitSVE64BitGatherPrefetch_ScalarPlus64BitScaledOffsets},          \
780      {"prfb_i_p_bz_d_x32_scaled"_h,                                           \
781       &VISITORCLASS::                                                         \
782           VisitSVE64BitGatherPrefetch_ScalarPlusUnpacked32BitScaledOffsets},  \
783      {"prfb_i_p_bz_s_x32_scaled"_h,                                           \
784       &VISITORCLASS::                                                         \
785           VisitSVE32BitGatherPrefetch_ScalarPlus32BitScaledOffsets},          \
786      {"prfd_i_p_ai_d"_h,                                                      \
787       &VISITORCLASS::VisitSVE64BitGatherPrefetch_VectorPlusImm},              \
788      {"prfd_i_p_ai_s"_h,                                                      \
789       &VISITORCLASS::VisitSVE32BitGatherPrefetch_VectorPlusImm},              \
790      {"prfd_i_p_bi_s"_h,                                                      \
791       &VISITORCLASS::VisitSVEContiguousPrefetch_ScalarPlusImm},               \
792      {"prfd_i_p_br_s"_h,                                                      \
793       &VISITORCLASS::VisitSVEContiguousPrefetch_ScalarPlusScalar},            \
794      {"prfd_i_p_bz_d_64_scaled"_h,                                            \
795       &VISITORCLASS::                                                         \
796           VisitSVE64BitGatherPrefetch_ScalarPlus64BitScaledOffsets},          \
797      {"prfd_i_p_bz_d_x32_scaled"_h,                                           \
798       &VISITORCLASS::                                                         \
799           VisitSVE64BitGatherPrefetch_ScalarPlusUnpacked32BitScaledOffsets},  \
800      {"prfd_i_p_bz_s_x32_scaled"_h,                                           \
801       &VISITORCLASS::                                                         \
802           VisitSVE32BitGatherPrefetch_ScalarPlus32BitScaledOffsets},          \
803      {"prfh_i_p_ai_d"_h,                                                      \
804       &VISITORCLASS::VisitSVE64BitGatherPrefetch_VectorPlusImm},              \
805      {"prfh_i_p_ai_s"_h,                                                      \
806       &VISITORCLASS::VisitSVE32BitGatherPrefetch_VectorPlusImm},              \
807      {"prfh_i_p_bi_s"_h,                                                      \
808       &VISITORCLASS::VisitSVEContiguousPrefetch_ScalarPlusImm},               \
809      {"prfh_i_p_br_s"_h,                                                      \
810       &VISITORCLASS::VisitSVEContiguousPrefetch_ScalarPlusScalar},            \
811      {"prfh_i_p_bz_d_64_scaled"_h,                                            \
812       &VISITORCLASS::                                                         \
813           VisitSVE64BitGatherPrefetch_ScalarPlus64BitScaledOffsets},          \
814      {"prfh_i_p_bz_d_x32_scaled"_h,                                           \
815       &VISITORCLASS::                                                         \
816           VisitSVE64BitGatherPrefetch_ScalarPlusUnpacked32BitScaledOffsets},  \
817      {"prfh_i_p_bz_s_x32_scaled"_h,                                           \
818       &VISITORCLASS::                                                         \
819           VisitSVE32BitGatherPrefetch_ScalarPlus32BitScaledOffsets},          \
820      {"prfw_i_p_ai_d"_h,                                                      \
821       &VISITORCLASS::VisitSVE64BitGatherPrefetch_VectorPlusImm},              \
822      {"prfw_i_p_ai_s"_h,                                                      \
823       &VISITORCLASS::VisitSVE32BitGatherPrefetch_VectorPlusImm},              \
824      {"prfw_i_p_bi_s"_h,                                                      \
825       &VISITORCLASS::VisitSVEContiguousPrefetch_ScalarPlusImm},               \
826      {"prfw_i_p_br_s"_h,                                                      \
827       &VISITORCLASS::VisitSVEContiguousPrefetch_ScalarPlusScalar},            \
828      {"prfw_i_p_bz_d_64_scaled"_h,                                            \
829       &VISITORCLASS::                                                         \
830           VisitSVE64BitGatherPrefetch_ScalarPlus64BitScaledOffsets},          \
831      {"prfw_i_p_bz_d_x32_scaled"_h,                                           \
832       &VISITORCLASS::                                                         \
833           VisitSVE64BitGatherPrefetch_ScalarPlusUnpacked32BitScaledOffsets},  \
834      {"prfw_i_p_bz_s_x32_scaled"_h,                                           \
835       &VISITORCLASS::                                                         \
836           VisitSVE32BitGatherPrefetch_ScalarPlus32BitScaledOffsets},          \
837      {"ptest_p_p"_h, &VISITORCLASS::VisitSVEPredicateTest},                   \
838      {"ptrues_p_s"_h, &VISITORCLASS::VisitSVEPredicateInitialize},            \
839      {"ptrue_p_s"_h, &VISITORCLASS::VisitSVEPredicateInitialize},             \
840      {"punpkhi_p_p"_h, &VISITORCLASS::VisitSVEUnpackPredicateElements},       \
841      {"punpklo_p_p"_h, &VISITORCLASS::VisitSVEUnpackPredicateElements},       \
842      {"rbit_z_p_z"_h, &VISITORCLASS::VisitSVEReverseWithinElements},          \
843      {"rdffrs_p_p_f"_h,                                                       \
844       &VISITORCLASS::VisitSVEPredicateReadFromFFR_Predicated},                \
845      {"rdffr_p_f"_h,                                                          \
846       &VISITORCLASS::VisitSVEPredicateReadFromFFR_Unpredicated},              \
847      {"rdffr_p_p_f"_h,                                                        \
848       &VISITORCLASS::VisitSVEPredicateReadFromFFR_Predicated},                \
849      {"rdvl_r_i"_h, &VISITORCLASS::VisitSVEStackFrameSize},                   \
850      {"revb_z_z"_h, &VISITORCLASS::VisitSVEReverseWithinElements},            \
851      {"revh_z_z"_h, &VISITORCLASS::VisitSVEReverseWithinElements},            \
852      {"revw_z_z"_h, &VISITORCLASS::VisitSVEReverseWithinElements},            \
853      {"rev_p_p"_h, &VISITORCLASS::VisitSVEReversePredicateElements},          \
854      {"rev_z_z"_h, &VISITORCLASS::VisitSVEReverseVectorElements},             \
855      {"sabd_z_p_zz"_h,                                                        \
856       &VISITORCLASS::VisitSVEIntMinMaxDifference_Predicated},                 \
857      {"saddv_r_p_z"_h, &VISITORCLASS::VisitSVEIntReduction},                  \
858      {"scvtf_z_p_z_h2fp16"_h, &VISITORCLASS::VisitSVEIntConvertToFP},         \
859      {"scvtf_z_p_z_w2d"_h, &VISITORCLASS::VisitSVEIntConvertToFP},            \
860      {"scvtf_z_p_z_w2fp16"_h, &VISITORCLASS::VisitSVEIntConvertToFP},         \
861      {"scvtf_z_p_z_w2s"_h, &VISITORCLASS::VisitSVEIntConvertToFP},            \
862      {"scvtf_z_p_z_x2d"_h, &VISITORCLASS::VisitSVEIntConvertToFP},            \
863      {"scvtf_z_p_z_x2fp16"_h, &VISITORCLASS::VisitSVEIntConvertToFP},         \
864      {"scvtf_z_p_z_x2s"_h, &VISITORCLASS::VisitSVEIntConvertToFP},            \
865      {"sdivr_z_p_zz"_h, &VISITORCLASS::VisitSVEIntDivideVectors_Predicated},  \
866      {"sdiv_z_p_zz"_h, &VISITORCLASS::VisitSVEIntDivideVectors_Predicated},   \
867      {"sdot_z_zzz"_h, &VISITORCLASS::VisitSVEIntMulAddUnpredicated},          \
868      {"sdot_z_zzzi_d"_h, &VISITORCLASS::VisitSVEMulIndex},                    \
869      {"sdot_z_zzzi_s"_h, &VISITORCLASS::VisitSVEMulIndex},                    \
870      {"sel_p_p_pp"_h, &VISITORCLASS::VisitSVEPredicateLogical},               \
871      {"sel_z_p_zz"_h, &VISITORCLASS::VisitSVEVectorSelect},                   \
872      {"setffr_f"_h, &VISITORCLASS::VisitSVEFFRInitialise},                    \
873      {"smaxv_r_p_z"_h, &VISITORCLASS::VisitSVEIntReduction},                  \
874      {"smax_z_p_zz"_h,                                                        \
875       &VISITORCLASS::VisitSVEIntMinMaxDifference_Predicated},                 \
876      {"smax_z_zi"_h, &VISITORCLASS::VisitSVEIntMinMaxImm_Unpredicated},       \
877      {"sminv_r_p_z"_h, &VISITORCLASS::VisitSVEIntReduction},                  \
878      {"smin_z_p_zz"_h,                                                        \
879       &VISITORCLASS::VisitSVEIntMinMaxDifference_Predicated},                 \
880      {"smin_z_zi"_h, &VISITORCLASS::VisitSVEIntMinMaxImm_Unpredicated},       \
881      {"smulh_z_p_zz"_h, &VISITORCLASS::VisitSVEIntMulVectors_Predicated},     \
882      {"splice_z_p_zz_des"_h, &VISITORCLASS::VisitSVEVectorSplice},            \
883      {"sqadd_z_zi"_h, &VISITORCLASS::VisitSVEIntAddSubtractImm_Unpredicated}, \
884      {"sqadd_z_zz"_h, &VISITORCLASS::VisitSVEIntArithmeticUnpredicated},      \
885      {"sqdecb_r_rs_sx"_h,                                                     \
886       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
887      {"sqdecb_r_rs_x"_h,                                                      \
888       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
889      {"sqdecd_r_rs_sx"_h,                                                     \
890       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
891      {"sqdecd_r_rs_x"_h,                                                      \
892       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
893      {"sqdecd_z_zs"_h,                                                        \
894       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
895      {"sqdech_r_rs_sx"_h,                                                     \
896       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
897      {"sqdech_r_rs_x"_h,                                                      \
898       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
899      {"sqdech_z_zs"_h,                                                        \
900       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
901      {"sqdecp_r_p_r_sx"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},    \
902      {"sqdecp_r_p_r_x"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},     \
903      {"sqdecp_z_p_z"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},       \
904      {"sqdecw_r_rs_sx"_h,                                                     \
905       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
906      {"sqdecw_r_rs_x"_h,                                                      \
907       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
908      {"sqdecw_z_zs"_h,                                                        \
909       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
910      {"sqincb_r_rs_sx"_h,                                                     \
911       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
912      {"sqincb_r_rs_x"_h,                                                      \
913       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
914      {"sqincd_r_rs_sx"_h,                                                     \
915       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
916      {"sqincd_r_rs_x"_h,                                                      \
917       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
918      {"sqincd_z_zs"_h,                                                        \
919       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
920      {"sqinch_r_rs_sx"_h,                                                     \
921       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
922      {"sqinch_r_rs_x"_h,                                                      \
923       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
924      {"sqinch_z_zs"_h,                                                        \
925       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
926      {"sqincp_r_p_r_sx"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},    \
927      {"sqincp_r_p_r_x"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},     \
928      {"sqincp_z_p_z"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},       \
929      {"sqincw_r_rs_sx"_h,                                                     \
930       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
931      {"sqincw_r_rs_x"_h,                                                      \
932       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
933      {"sqincw_z_zs"_h,                                                        \
934       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
935      {"sqsub_z_zi"_h, &VISITORCLASS::VisitSVEIntAddSubtractImm_Unpredicated}, \
936      {"sqsub_z_zz"_h, &VISITORCLASS::VisitSVEIntArithmeticUnpredicated},      \
937      {"st1b_z_p_ai_d"_h,                                                      \
938       &VISITORCLASS::VisitSVE64BitScatterStore_VectorPlusImm},                \
939      {"st1b_z_p_ai_s"_h,                                                      \
940       &VISITORCLASS::VisitSVE32BitScatterStore_VectorPlusImm},                \
941      {"st1b_z_p_bi"_h, &VISITORCLASS::VisitSVEContiguousStore_ScalarPlusImm}, \
942      {"st1b_z_p_br"_h,                                                        \
943       &VISITORCLASS::VisitSVEContiguousStore_ScalarPlusScalar},               \
944      {"st1b_z_p_bz_d_64_unscaled"_h,                                          \
945       &VISITORCLASS::                                                         \
946           VisitSVE64BitScatterStore_ScalarPlus64BitUnscaledOffsets},          \
947      {"st1b_z_p_bz_d_x32_unscaled"_h,                                         \
948       &VISITORCLASS::                                                         \
949           VisitSVE64BitScatterStore_ScalarPlusUnpacked32BitUnscaledOffsets},  \
950      {"st1b_z_p_bz_s_x32_unscaled"_h,                                         \
951       &VISITORCLASS::                                                         \
952           VisitSVE32BitScatterStore_ScalarPlus32BitUnscaledOffsets},          \
953      {"st1d_z_p_ai_d"_h,                                                      \
954       &VISITORCLASS::VisitSVE64BitScatterStore_VectorPlusImm},                \
955      {"st1d_z_p_bi"_h, &VISITORCLASS::VisitSVEContiguousStore_ScalarPlusImm}, \
956      {"st1d_z_p_br"_h,                                                        \
957       &VISITORCLASS::VisitSVEContiguousStore_ScalarPlusScalar},               \
958      {"st1d_z_p_bz_d_64_scaled"_h,                                            \
959       &VISITORCLASS::VisitSVE64BitScatterStore_ScalarPlus64BitScaledOffsets}, \
960      {"st1d_z_p_bz_d_64_unscaled"_h,                                          \
961       &VISITORCLASS::                                                         \
962           VisitSVE64BitScatterStore_ScalarPlus64BitUnscaledOffsets},          \
963      {"st1d_z_p_bz_d_x32_scaled"_h,                                           \
964       &VISITORCLASS::                                                         \
965           VisitSVE64BitScatterStore_ScalarPlusUnpacked32BitScaledOffsets},    \
966      {"st1d_z_p_bz_d_x32_unscaled"_h,                                         \
967       &VISITORCLASS::                                                         \
968           VisitSVE64BitScatterStore_ScalarPlusUnpacked32BitUnscaledOffsets},  \
969      {"st1h_z_p_ai_d"_h,                                                      \
970       &VISITORCLASS::VisitSVE64BitScatterStore_VectorPlusImm},                \
971      {"st1h_z_p_ai_s"_h,                                                      \
972       &VISITORCLASS::VisitSVE32BitScatterStore_VectorPlusImm},                \
973      {"st1h_z_p_bi"_h, &VISITORCLASS::VisitSVEContiguousStore_ScalarPlusImm}, \
974      {"st1h_z_p_br"_h,                                                        \
975       &VISITORCLASS::VisitSVEContiguousStore_ScalarPlusScalar},               \
976      {"st1h_z_p_bz_d_64_scaled"_h,                                            \
977       &VISITORCLASS::VisitSVE64BitScatterStore_ScalarPlus64BitScaledOffsets}, \
978      {"st1h_z_p_bz_d_64_unscaled"_h,                                          \
979       &VISITORCLASS::                                                         \
980           VisitSVE64BitScatterStore_ScalarPlus64BitUnscaledOffsets},          \
981      {"st1h_z_p_bz_d_x32_scaled"_h,                                           \
982       &VISITORCLASS::                                                         \
983           VisitSVE64BitScatterStore_ScalarPlusUnpacked32BitScaledOffsets},    \
984      {"st1h_z_p_bz_d_x32_unscaled"_h,                                         \
985       &VISITORCLASS::                                                         \
986           VisitSVE64BitScatterStore_ScalarPlusUnpacked32BitUnscaledOffsets},  \
987      {"st1h_z_p_bz_s_x32_scaled"_h,                                           \
988       &VISITORCLASS::VisitSVE32BitScatterStore_ScalarPlus32BitScaledOffsets}, \
989      {"st1h_z_p_bz_s_x32_unscaled"_h,                                         \
990       &VISITORCLASS::                                                         \
991           VisitSVE32BitScatterStore_ScalarPlus32BitUnscaledOffsets},          \
992      {"st1w_z_p_ai_d"_h,                                                      \
993       &VISITORCLASS::VisitSVE64BitScatterStore_VectorPlusImm},                \
994      {"st1w_z_p_ai_s"_h,                                                      \
995       &VISITORCLASS::VisitSVE32BitScatterStore_VectorPlusImm},                \
996      {"st1w_z_p_bi"_h, &VISITORCLASS::VisitSVEContiguousStore_ScalarPlusImm}, \
997      {"st1w_z_p_br"_h,                                                        \
998       &VISITORCLASS::VisitSVEContiguousStore_ScalarPlusScalar},               \
999      {"st1w_z_p_bz_d_64_scaled"_h,                                            \
1000       &VISITORCLASS::VisitSVE64BitScatterStore_ScalarPlus64BitScaledOffsets}, \
1001      {"st1w_z_p_bz_d_64_unscaled"_h,                                          \
1002       &VISITORCLASS::                                                         \
1003           VisitSVE64BitScatterStore_ScalarPlus64BitUnscaledOffsets},          \
1004      {"st1w_z_p_bz_d_x32_scaled"_h,                                           \
1005       &VISITORCLASS::                                                         \
1006           VisitSVE64BitScatterStore_ScalarPlusUnpacked32BitScaledOffsets},    \
1007      {"st1w_z_p_bz_d_x32_unscaled"_h,                                         \
1008       &VISITORCLASS::                                                         \
1009           VisitSVE64BitScatterStore_ScalarPlusUnpacked32BitUnscaledOffsets},  \
1010      {"st1w_z_p_bz_s_x32_scaled"_h,                                           \
1011       &VISITORCLASS::VisitSVE32BitScatterStore_ScalarPlus32BitScaledOffsets}, \
1012      {"st1w_z_p_bz_s_x32_unscaled"_h,                                         \
1013       &VISITORCLASS::                                                         \
1014           VisitSVE32BitScatterStore_ScalarPlus32BitUnscaledOffsets},          \
1015      {"st2b_z_p_bi_contiguous"_h,                                             \
1016       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1017      {"st2b_z_p_br_contiguous"_h,                                             \
1018       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1019      {"st2d_z_p_bi_contiguous"_h,                                             \
1020       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1021      {"st2d_z_p_br_contiguous"_h,                                             \
1022       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1023      {"st2h_z_p_bi_contiguous"_h,                                             \
1024       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1025      {"st2h_z_p_br_contiguous"_h,                                             \
1026       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1027      {"st2w_z_p_bi_contiguous"_h,                                             \
1028       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1029      {"st2w_z_p_br_contiguous"_h,                                             \
1030       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1031      {"st3b_z_p_bi_contiguous"_h,                                             \
1032       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1033      {"st3b_z_p_br_contiguous"_h,                                             \
1034       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1035      {"st3d_z_p_bi_contiguous"_h,                                             \
1036       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1037      {"st3d_z_p_br_contiguous"_h,                                             \
1038       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1039      {"st3h_z_p_bi_contiguous"_h,                                             \
1040       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1041      {"st3h_z_p_br_contiguous"_h,                                             \
1042       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1043      {"st3w_z_p_bi_contiguous"_h,                                             \
1044       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1045      {"st3w_z_p_br_contiguous"_h,                                             \
1046       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1047      {"st4b_z_p_bi_contiguous"_h,                                             \
1048       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1049      {"st4b_z_p_br_contiguous"_h,                                             \
1050       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1051      {"st4d_z_p_bi_contiguous"_h,                                             \
1052       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1053      {"st4d_z_p_br_contiguous"_h,                                             \
1054       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1055      {"st4h_z_p_bi_contiguous"_h,                                             \
1056       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1057      {"st4h_z_p_br_contiguous"_h,                                             \
1058       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1059      {"st4w_z_p_bi_contiguous"_h,                                             \
1060       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusImm},          \
1061      {"st4w_z_p_br_contiguous"_h,                                             \
1062       &VISITORCLASS::VisitSVEStoreMultipleStructures_ScalarPlusScalar},       \
1063      {"stnt1b_z_p_bi_contiguous"_h,                                           \
1064       &VISITORCLASS::VisitSVEContiguousNonTemporalStore_ScalarPlusImm},       \
1065      {"stnt1b_z_p_br_contiguous"_h,                                           \
1066       &VISITORCLASS::VisitSVEContiguousNonTemporalStore_ScalarPlusScalar},    \
1067      {"stnt1d_z_p_bi_contiguous"_h,                                           \
1068       &VISITORCLASS::VisitSVEContiguousNonTemporalStore_ScalarPlusImm},       \
1069      {"stnt1d_z_p_br_contiguous"_h,                                           \
1070       &VISITORCLASS::VisitSVEContiguousNonTemporalStore_ScalarPlusScalar},    \
1071      {"stnt1h_z_p_bi_contiguous"_h,                                           \
1072       &VISITORCLASS::VisitSVEContiguousNonTemporalStore_ScalarPlusImm},       \
1073      {"stnt1h_z_p_br_contiguous"_h,                                           \
1074       &VISITORCLASS::VisitSVEContiguousNonTemporalStore_ScalarPlusScalar},    \
1075      {"stnt1w_z_p_bi_contiguous"_h,                                           \
1076       &VISITORCLASS::VisitSVEContiguousNonTemporalStore_ScalarPlusImm},       \
1077      {"stnt1w_z_p_br_contiguous"_h,                                           \
1078       &VISITORCLASS::VisitSVEContiguousNonTemporalStore_ScalarPlusScalar},    \
1079      {"str_p_bi"_h, &VISITORCLASS::VisitSVEStorePredicateRegister},           \
1080      {"str_z_bi"_h, &VISITORCLASS::VisitSVEStoreVectorRegister},              \
1081      {"subr_z_p_zz"_h,                                                        \
1082       &VISITORCLASS::VisitSVEIntAddSubtractVectors_Predicated},               \
1083      {"subr_z_zi"_h, &VISITORCLASS::VisitSVEIntAddSubtractImm_Unpredicated},  \
1084      {"sub_z_p_zz"_h,                                                         \
1085       &VISITORCLASS::VisitSVEIntAddSubtractVectors_Predicated},               \
1086      {"sub_z_zi"_h, &VISITORCLASS::VisitSVEIntAddSubtractImm_Unpredicated},   \
1087      {"sub_z_zz"_h, &VISITORCLASS::VisitSVEIntArithmeticUnpredicated},        \
1088      {"sunpkhi_z_z"_h, &VISITORCLASS::VisitSVEUnpackVectorElements},          \
1089      {"sunpklo_z_z"_h, &VISITORCLASS::VisitSVEUnpackVectorElements},          \
1090      {"sxtb_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},   \
1091      {"sxth_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},   \
1092      {"sxtw_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},   \
1093      {"tbl_z_zz_1"_h, &VISITORCLASS::VisitSVETableLookup},                    \
1094      {"trn1_p_pp"_h, &VISITORCLASS::VisitSVEPermutePredicateElements},        \
1095      {"trn1_z_zz"_h, &VISITORCLASS::VisitSVEPermuteVectorInterleaving},       \
1096      {"trn2_p_pp"_h, &VISITORCLASS::VisitSVEPermutePredicateElements},        \
1097      {"trn2_z_zz"_h, &VISITORCLASS::VisitSVEPermuteVectorInterleaving},       \
1098      {"uabd_z_p_zz"_h,                                                        \
1099       &VISITORCLASS::VisitSVEIntMinMaxDifference_Predicated},                 \
1100      {"uaddv_r_p_z"_h, &VISITORCLASS::VisitSVEIntReduction},                  \
1101      {"ucvtf_z_p_z_h2fp16"_h, &VISITORCLASS::VisitSVEIntConvertToFP},         \
1102      {"ucvtf_z_p_z_w2d"_h, &VISITORCLASS::VisitSVEIntConvertToFP},            \
1103      {"ucvtf_z_p_z_w2fp16"_h, &VISITORCLASS::VisitSVEIntConvertToFP},         \
1104      {"ucvtf_z_p_z_w2s"_h, &VISITORCLASS::VisitSVEIntConvertToFP},            \
1105      {"ucvtf_z_p_z_x2d"_h, &VISITORCLASS::VisitSVEIntConvertToFP},            \
1106      {"ucvtf_z_p_z_x2fp16"_h, &VISITORCLASS::VisitSVEIntConvertToFP},         \
1107      {"ucvtf_z_p_z_x2s"_h, &VISITORCLASS::VisitSVEIntConvertToFP},            \
1108      {"udf_only_perm_undef"_h, &VISITORCLASS::VisitReserved},                 \
1109      {"udivr_z_p_zz"_h, &VISITORCLASS::VisitSVEIntDivideVectors_Predicated},  \
1110      {"udiv_z_p_zz"_h, &VISITORCLASS::VisitSVEIntDivideVectors_Predicated},   \
1111      {"udot_z_zzz"_h, &VISITORCLASS::VisitSVEIntMulAddUnpredicated},          \
1112      {"udot_z_zzzi_d"_h, &VISITORCLASS::VisitSVEMulIndex},                    \
1113      {"udot_z_zzzi_s"_h, &VISITORCLASS::VisitSVEMulIndex},                    \
1114      {"umaxv_r_p_z"_h, &VISITORCLASS::VisitSVEIntReduction},                  \
1115      {"umax_z_p_zz"_h,                                                        \
1116       &VISITORCLASS::VisitSVEIntMinMaxDifference_Predicated},                 \
1117      {"umax_z_zi"_h, &VISITORCLASS::VisitSVEIntMinMaxImm_Unpredicated},       \
1118      {"uminv_r_p_z"_h, &VISITORCLASS::VisitSVEIntReduction},                  \
1119      {"umin_z_p_zz"_h,                                                        \
1120       &VISITORCLASS::VisitSVEIntMinMaxDifference_Predicated},                 \
1121      {"umin_z_zi"_h, &VISITORCLASS::VisitSVEIntMinMaxImm_Unpredicated},       \
1122      {"umulh_z_p_zz"_h, &VISITORCLASS::VisitSVEIntMulVectors_Predicated},     \
1123      {"uqadd_z_zi"_h, &VISITORCLASS::VisitSVEIntAddSubtractImm_Unpredicated}, \
1124      {"uqadd_z_zz"_h, &VISITORCLASS::VisitSVEIntArithmeticUnpredicated},      \
1125      {"uqdecb_r_rs_uw"_h,                                                     \
1126       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1127      {"uqdecb_r_rs_x"_h,                                                      \
1128       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1129      {"uqdecd_r_rs_uw"_h,                                                     \
1130       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1131      {"uqdecd_r_rs_x"_h,                                                      \
1132       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1133      {"uqdecd_z_zs"_h,                                                        \
1134       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
1135      {"uqdech_r_rs_uw"_h,                                                     \
1136       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1137      {"uqdech_r_rs_x"_h,                                                      \
1138       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1139      {"uqdech_z_zs"_h,                                                        \
1140       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
1141      {"uqdecp_r_p_r_uw"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},    \
1142      {"uqdecp_r_p_r_x"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},     \
1143      {"uqdecp_z_p_z"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},       \
1144      {"uqdecw_r_rs_uw"_h,                                                     \
1145       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1146      {"uqdecw_r_rs_x"_h,                                                      \
1147       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1148      {"uqdecw_z_zs"_h,                                                        \
1149       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
1150      {"uqincb_r_rs_uw"_h,                                                     \
1151       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1152      {"uqincb_r_rs_x"_h,                                                      \
1153       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1154      {"uqincd_r_rs_uw"_h,                                                     \
1155       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1156      {"uqincd_r_rs_x"_h,                                                      \
1157       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1158      {"uqincd_z_zs"_h,                                                        \
1159       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
1160      {"uqinch_r_rs_uw"_h,                                                     \
1161       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1162      {"uqinch_r_rs_x"_h,                                                      \
1163       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1164      {"uqinch_z_zs"_h,                                                        \
1165       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
1166      {"uqincp_r_p_r_uw"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},    \
1167      {"uqincp_r_p_r_x"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},     \
1168      {"uqincp_z_p_z"_h, &VISITORCLASS::VisitSVEIncDecByPredicateCount},       \
1169      {"uqincw_r_rs_uw"_h,                                                     \
1170       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1171      {"uqincw_r_rs_x"_h,                                                      \
1172       &VISITORCLASS::VisitSVESaturatingIncDecRegisterByElementCount},         \
1173      {"uqincw_z_zs"_h,                                                        \
1174       &VISITORCLASS::VisitSVESaturatingIncDecVectorByElementCount},           \
1175      {"uqsub_z_zi"_h, &VISITORCLASS::VisitSVEIntAddSubtractImm_Unpredicated}, \
1176      {"uqsub_z_zz"_h, &VISITORCLASS::VisitSVEIntArithmeticUnpredicated},      \
1177      {"uunpkhi_z_z"_h, &VISITORCLASS::VisitSVEUnpackVectorElements},          \
1178      {"uunpklo_z_z"_h, &VISITORCLASS::VisitSVEUnpackVectorElements},          \
1179      {"uxtb_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},   \
1180      {"uxth_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},   \
1181      {"uxtw_z_p_z"_h, &VISITORCLASS::VisitSVEIntUnaryArithmeticPredicated},   \
1182      {"uzp1_p_pp"_h, &VISITORCLASS::VisitSVEPermutePredicateElements},        \
1183      {"uzp1_z_zz"_h, &VISITORCLASS::VisitSVEPermuteVectorInterleaving},       \
1184      {"uzp2_p_pp"_h, &VISITORCLASS::VisitSVEPermutePredicateElements},        \
1185      {"uzp2_z_zz"_h, &VISITORCLASS::VisitSVEPermuteVectorInterleaving},       \
1186      {"whilele_p_p_rr"_h,                                                     \
1187       &VISITORCLASS::VisitSVEIntCompareScalarCountAndLimit},                  \
1188      {"whilelo_p_p_rr"_h,                                                     \
1189       &VISITORCLASS::VisitSVEIntCompareScalarCountAndLimit},                  \
1190      {"whilels_p_p_rr"_h,                                                     \
1191       &VISITORCLASS::VisitSVEIntCompareScalarCountAndLimit},                  \
1192      {"whilelt_p_p_rr"_h,                                                     \
1193       &VISITORCLASS::VisitSVEIntCompareScalarCountAndLimit},                  \
1194      {"wrffr_f_p"_h, &VISITORCLASS::VisitSVEFFRWriteFromPredicate},           \
1195      {"zip1_p_pp"_h, &VISITORCLASS::VisitSVEPermutePredicateElements},        \
1196      {"zip1_z_zz"_h, &VISITORCLASS::VisitSVEPermuteVectorInterleaving},       \
1197      {"zip2_p_pp"_h, &VISITORCLASS::VisitSVEPermutePredicateElements},        \
1198      {"zip2_z_zz"_h, &VISITORCLASS::VisitSVEPermuteVectorInterleaving},       \
1199      {"adds_32s_addsub_ext"_h, &VISITORCLASS::VisitAddSubExtended},           \
1200      {"adds_64s_addsub_ext"_h, &VISITORCLASS::VisitAddSubExtended},           \
1201      {"add_32_addsub_ext"_h, &VISITORCLASS::VisitAddSubExtended},             \
1202      {"add_64_addsub_ext"_h, &VISITORCLASS::VisitAddSubExtended},             \
1203      {"subs_32s_addsub_ext"_h, &VISITORCLASS::VisitAddSubExtended},           \
1204      {"subs_64s_addsub_ext"_h, &VISITORCLASS::VisitAddSubExtended},           \
1205      {"sub_32_addsub_ext"_h, &VISITORCLASS::VisitAddSubExtended},             \
1206      {"sub_64_addsub_ext"_h, &VISITORCLASS::VisitAddSubExtended},             \
1207      {"adds_32s_addsub_imm"_h, &VISITORCLASS::VisitAddSubImmediate},          \
1208      {"adds_64s_addsub_imm"_h, &VISITORCLASS::VisitAddSubImmediate},          \
1209      {"add_32_addsub_imm"_h, &VISITORCLASS::VisitAddSubImmediate},            \
1210      {"add_64_addsub_imm"_h, &VISITORCLASS::VisitAddSubImmediate},            \
1211      {"subs_32s_addsub_imm"_h, &VISITORCLASS::VisitAddSubImmediate},          \
1212      {"subs_64s_addsub_imm"_h, &VISITORCLASS::VisitAddSubImmediate},          \
1213      {"sub_32_addsub_imm"_h, &VISITORCLASS::VisitAddSubImmediate},            \
1214      {"sub_64_addsub_imm"_h, &VISITORCLASS::VisitAddSubImmediate},            \
1215      {"adds_32_addsub_shift"_h, &VISITORCLASS::VisitAddSubShifted},           \
1216      {"adds_64_addsub_shift"_h, &VISITORCLASS::VisitAddSubShifted},           \
1217      {"add_32_addsub_shift"_h, &VISITORCLASS::VisitAddSubShifted},            \
1218      {"add_64_addsub_shift"_h, &VISITORCLASS::VisitAddSubShifted},            \
1219      {"subs_32_addsub_shift"_h, &VISITORCLASS::VisitAddSubShifted},           \
1220      {"subs_64_addsub_shift"_h, &VISITORCLASS::VisitAddSubShifted},           \
1221      {"sub_32_addsub_shift"_h, &VISITORCLASS::VisitAddSubShifted},            \
1222      {"sub_64_addsub_shift"_h, &VISITORCLASS::VisitAddSubShifted},            \
1223      {"adcs_32_addsub_carry"_h, &VISITORCLASS::VisitAddSubWithCarry},         \
1224      {"adcs_64_addsub_carry"_h, &VISITORCLASS::VisitAddSubWithCarry},         \
1225      {"adc_32_addsub_carry"_h, &VISITORCLASS::VisitAddSubWithCarry},          \
1226      {"adc_64_addsub_carry"_h, &VISITORCLASS::VisitAddSubWithCarry},          \
1227      {"sbcs_32_addsub_carry"_h, &VISITORCLASS::VisitAddSubWithCarry},         \
1228      {"sbcs_64_addsub_carry"_h, &VISITORCLASS::VisitAddSubWithCarry},         \
1229      {"sbc_32_addsub_carry"_h, &VISITORCLASS::VisitAddSubWithCarry},          \
1230      {"sbc_64_addsub_carry"_h, &VISITORCLASS::VisitAddSubWithCarry},          \
1231      {"ldaddab_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1232      {"ldaddah_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1233      {"ldaddalb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1234      {"ldaddalh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1235      {"ldaddal_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1236      {"ldaddal_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1237      {"ldadda_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1238      {"ldadda_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1239      {"ldaddb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1240      {"ldaddh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1241      {"ldaddlb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1242      {"ldaddlh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1243      {"ldaddl_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1244      {"ldaddl_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1245      {"ldadd_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1246      {"ldadd_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1247      {"ldaprb_32l_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1248      {"ldaprh_32l_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1249      {"ldapr_32l_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1250      {"ldapr_64l_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1251      {"ldclrab_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1252      {"ldclrah_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1253      {"ldclralb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1254      {"ldclralh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1255      {"ldclral_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1256      {"ldclral_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1257      {"ldclra_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1258      {"ldclra_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1259      {"ldclrb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1260      {"ldclrh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1261      {"ldclrlb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1262      {"ldclrlh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1263      {"ldclrl_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1264      {"ldclrl_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1265      {"ldclr_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1266      {"ldclr_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1267      {"ldeorab_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1268      {"ldeorah_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1269      {"ldeoralb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1270      {"ldeoralh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1271      {"ldeoral_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1272      {"ldeoral_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1273      {"ldeora_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1274      {"ldeora_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1275      {"ldeorb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1276      {"ldeorh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1277      {"ldeorlb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1278      {"ldeorlh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1279      {"ldeorl_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1280      {"ldeorl_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1281      {"ldeor_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1282      {"ldeor_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1283      {"ldsetab_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1284      {"ldsetah_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1285      {"ldsetalb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1286      {"ldsetalh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1287      {"ldsetal_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1288      {"ldsetal_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1289      {"ldseta_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1290      {"ldseta_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1291      {"ldsetb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1292      {"ldseth_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1293      {"ldsetlb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1294      {"ldsetlh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1295      {"ldsetl_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1296      {"ldsetl_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1297      {"ldset_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1298      {"ldset_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1299      {"ldsmaxab_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1300      {"ldsmaxah_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1301      {"ldsmaxalb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},              \
1302      {"ldsmaxalh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},              \
1303      {"ldsmaxal_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1304      {"ldsmaxal_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1305      {"ldsmaxa_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1306      {"ldsmaxa_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1307      {"ldsmaxb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1308      {"ldsmaxh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1309      {"ldsmaxlb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1310      {"ldsmaxlh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1311      {"ldsmaxl_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1312      {"ldsmaxl_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1313      {"ldsmax_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1314      {"ldsmax_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1315      {"ldsminab_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1316      {"ldsminah_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1317      {"ldsminalb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},              \
1318      {"ldsminalh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},              \
1319      {"ldsminal_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1320      {"ldsminal_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1321      {"ldsmina_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1322      {"ldsmina_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1323      {"ldsminb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1324      {"ldsminh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1325      {"ldsminlb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1326      {"ldsminlh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1327      {"ldsminl_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1328      {"ldsminl_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1329      {"ldsmin_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1330      {"ldsmin_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1331      {"ldumaxab_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1332      {"ldumaxah_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1333      {"ldumaxalb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},              \
1334      {"ldumaxalh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},              \
1335      {"ldumaxal_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1336      {"ldumaxal_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1337      {"ldumaxa_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1338      {"ldumaxa_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1339      {"ldumaxb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1340      {"ldumaxh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1341      {"ldumaxlb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1342      {"ldumaxlh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1343      {"ldumaxl_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1344      {"ldumaxl_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1345      {"ldumax_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1346      {"ldumax_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1347      {"lduminab_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1348      {"lduminah_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1349      {"lduminalb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},              \
1350      {"lduminalh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},              \
1351      {"lduminal_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1352      {"lduminal_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1353      {"ldumina_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1354      {"ldumina_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1355      {"lduminb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1356      {"lduminh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1357      {"lduminlb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1358      {"lduminlh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},               \
1359      {"lduminl_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1360      {"lduminl_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                \
1361      {"ldumin_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1362      {"ldumin_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1363      {"swpab_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1364      {"swpah_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1365      {"swpalb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1366      {"swpalh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                 \
1367      {"swpal_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1368      {"swpal_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1369      {"swpa_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                   \
1370      {"swpa_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                   \
1371      {"swpb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                   \
1372      {"swph_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                   \
1373      {"swplb_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1374      {"swplh_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                  \
1375      {"swpl_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                   \
1376      {"swpl_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                   \
1377      {"swp_32_memop"_h, &VISITORCLASS::VisitAtomicMemory},                    \
1378      {"swp_64_memop"_h, &VISITORCLASS::VisitAtomicMemory},                    \
1379      {"bfm_32m_bitfield"_h, &VISITORCLASS::VisitBitfield},                    \
1380      {"bfm_64m_bitfield"_h, &VISITORCLASS::VisitBitfield},                    \
1381      {"sbfm_32m_bitfield"_h, &VISITORCLASS::VisitBitfield},                   \
1382      {"sbfm_64m_bitfield"_h, &VISITORCLASS::VisitBitfield},                   \
1383      {"ubfm_32m_bitfield"_h, &VISITORCLASS::VisitBitfield},                   \
1384      {"ubfm_64m_bitfield"_h, &VISITORCLASS::VisitBitfield},                   \
1385      {"cbnz_32_compbranch"_h, &VISITORCLASS::VisitCompareBranch},             \
1386      {"cbnz_64_compbranch"_h, &VISITORCLASS::VisitCompareBranch},             \
1387      {"cbz_32_compbranch"_h, &VISITORCLASS::VisitCompareBranch},              \
1388      {"cbz_64_compbranch"_h, &VISITORCLASS::VisitCompareBranch},              \
1389      {"b_only_condbranch"_h, &VISITORCLASS::VisitConditionalBranch},          \
1390      {"ccmn_32_condcmp_imm"_h,                                                \
1391       &VISITORCLASS::VisitConditionalCompareImmediate},                       \
1392      {"ccmn_64_condcmp_imm"_h,                                                \
1393       &VISITORCLASS::VisitConditionalCompareImmediate},                       \
1394      {"ccmp_32_condcmp_imm"_h,                                                \
1395       &VISITORCLASS::VisitConditionalCompareImmediate},                       \
1396      {"ccmp_64_condcmp_imm"_h,                                                \
1397       &VISITORCLASS::VisitConditionalCompareImmediate},                       \
1398      {"ccmn_32_condcmp_reg"_h,                                                \
1399       &VISITORCLASS::VisitConditionalCompareRegister},                        \
1400      {"ccmn_64_condcmp_reg"_h,                                                \
1401       &VISITORCLASS::VisitConditionalCompareRegister},                        \
1402      {"ccmp_32_condcmp_reg"_h,                                                \
1403       &VISITORCLASS::VisitConditionalCompareRegister},                        \
1404      {"ccmp_64_condcmp_reg"_h,                                                \
1405       &VISITORCLASS::VisitConditionalCompareRegister},                        \
1406      {"csel_32_condsel"_h, &VISITORCLASS::VisitConditionalSelect},            \
1407      {"csel_64_condsel"_h, &VISITORCLASS::VisitConditionalSelect},            \
1408      {"csinc_32_condsel"_h, &VISITORCLASS::VisitConditionalSelect},           \
1409      {"csinc_64_condsel"_h, &VISITORCLASS::VisitConditionalSelect},           \
1410      {"csinv_32_condsel"_h, &VISITORCLASS::VisitConditionalSelect},           \
1411      {"csinv_64_condsel"_h, &VISITORCLASS::VisitConditionalSelect},           \
1412      {"csneg_32_condsel"_h, &VISITORCLASS::VisitConditionalSelect},           \
1413      {"csneg_64_condsel"_h, &VISITORCLASS::VisitConditionalSelect},           \
1414      {"sha1h_ss_cryptosha2"_h, &VISITORCLASS::VisitCrypto2RegSHA},            \
1415      {"sha1su1_vv_cryptosha2"_h, &VISITORCLASS::VisitCrypto2RegSHA},          \
1416      {"sha256su0_vv_cryptosha2"_h, &VISITORCLASS::VisitCrypto2RegSHA},        \
1417      {"sha1c_qsv_cryptosha3"_h, &VISITORCLASS::VisitCrypto3RegSHA},           \
1418      {"sha1m_qsv_cryptosha3"_h, &VISITORCLASS::VisitCrypto3RegSHA},           \
1419      {"sha1p_qsv_cryptosha3"_h, &VISITORCLASS::VisitCrypto3RegSHA},           \
1420      {"sha1su0_vvv_cryptosha3"_h, &VISITORCLASS::VisitCrypto3RegSHA},         \
1421      {"sha256h2_qqv_cryptosha3"_h, &VISITORCLASS::VisitCrypto3RegSHA},        \
1422      {"sha256h_qqv_cryptosha3"_h, &VISITORCLASS::VisitCrypto3RegSHA},         \
1423      {"sha256su1_vvv_cryptosha3"_h, &VISITORCLASS::VisitCrypto3RegSHA},       \
1424      {"aesd_b_cryptoaes"_h, &VISITORCLASS::VisitCryptoAES},                   \
1425      {"aese_b_cryptoaes"_h, &VISITORCLASS::VisitCryptoAES},                   \
1426      {"aesimc_b_cryptoaes"_h, &VISITORCLASS::VisitCryptoAES},                 \
1427      {"aesmc_b_cryptoaes"_h, &VISITORCLASS::VisitCryptoAES},                  \
1428      {"autda_64p_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},      \
1429      {"autdb_64p_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},      \
1430      {"autdza_64z_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},     \
1431      {"autdzb_64z_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},     \
1432      {"autia_64p_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},      \
1433      {"autib_64p_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},      \
1434      {"autiza_64z_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},     \
1435      {"autizb_64z_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},     \
1436      {"cls_32_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},         \
1437      {"cls_64_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},         \
1438      {"clz_32_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},         \
1439      {"clz_64_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},         \
1440      {"pacda_64p_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},      \
1441      {"pacdb_64p_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},      \
1442      {"pacdza_64z_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},     \
1443      {"pacdzb_64z_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},     \
1444      {"pacia_64p_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},      \
1445      {"pacib_64p_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},      \
1446      {"paciza_64z_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},     \
1447      {"pacizb_64z_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},     \
1448      {"rbit_32_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},        \
1449      {"rbit_64_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},        \
1450      {"rev16_32_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},       \
1451      {"rev16_64_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},       \
1452      {"rev32_64_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},       \
1453      {"rev_32_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},         \
1454      {"rev_64_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},         \
1455      {"xpacd_64z_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},      \
1456      {"xpaci_64z_dp_1src"_h, &VISITORCLASS::VisitDataProcessing1Source},      \
1457      {"asrv_32_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1458      {"asrv_64_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1459      {"crc32b_32c_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},     \
1460      {"crc32cb_32c_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},    \
1461      {"crc32ch_32c_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},    \
1462      {"crc32cw_32c_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},    \
1463      {"crc32cx_64c_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},    \
1464      {"crc32h_32c_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},     \
1465      {"crc32w_32c_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},     \
1466      {"crc32x_64c_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},     \
1467      {"lslv_32_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1468      {"lslv_64_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1469      {"lsrv_32_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1470      {"lsrv_64_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1471      {"pacga_64p_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},      \
1472      {"rorv_32_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1473      {"rorv_64_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1474      {"sdiv_32_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1475      {"sdiv_64_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1476      {"udiv_32_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1477      {"udiv_64_dp_2src"_h, &VISITORCLASS::VisitDataProcessing2Source},        \
1478      {"madd_32a_dp_3src"_h, &VISITORCLASS::VisitDataProcessing3Source},       \
1479      {"madd_64a_dp_3src"_h, &VISITORCLASS::VisitDataProcessing3Source},       \
1480      {"msub_32a_dp_3src"_h, &VISITORCLASS::VisitDataProcessing3Source},       \
1481      {"msub_64a_dp_3src"_h, &VISITORCLASS::VisitDataProcessing3Source},       \
1482      {"smaddl_64wa_dp_3src"_h, &VISITORCLASS::VisitDataProcessing3Source},    \
1483      {"smsubl_64wa_dp_3src"_h, &VISITORCLASS::VisitDataProcessing3Source},    \
1484      {"smulh_64_dp_3src"_h, &VISITORCLASS::VisitDataProcessing3Source},       \
1485      {"umaddl_64wa_dp_3src"_h, &VISITORCLASS::VisitDataProcessing3Source},    \
1486      {"umsubl_64wa_dp_3src"_h, &VISITORCLASS::VisitDataProcessing3Source},    \
1487      {"umulh_64_dp_3src"_h, &VISITORCLASS::VisitDataProcessing3Source},       \
1488      {"setf16_only_setf"_h, &VISITORCLASS::VisitEvaluateIntoFlags},           \
1489      {"setf8_only_setf"_h, &VISITORCLASS::VisitEvaluateIntoFlags},            \
1490      {"brk_ex_exception"_h, &VISITORCLASS::VisitException},                   \
1491      {"dcps1_dc_exception"_h, &VISITORCLASS::VisitException},                 \
1492      {"dcps2_dc_exception"_h, &VISITORCLASS::VisitException},                 \
1493      {"dcps3_dc_exception"_h, &VISITORCLASS::VisitException},                 \
1494      {"hlt_ex_exception"_h, &VISITORCLASS::VisitException},                   \
1495      {"hvc_ex_exception"_h, &VISITORCLASS::VisitException},                   \
1496      {"smc_ex_exception"_h, &VISITORCLASS::VisitException},                   \
1497      {"svc_ex_exception"_h, &VISITORCLASS::VisitException},                   \
1498      {"extr_32_extract"_h, &VISITORCLASS::VisitExtract},                      \
1499      {"extr_64_extract"_h, &VISITORCLASS::VisitExtract},                      \
1500      {"fcmpe_dz_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                  \
1501      {"fcmpe_d_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                   \
1502      {"fcmpe_hz_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                  \
1503      {"fcmpe_h_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                   \
1504      {"fcmpe_sz_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                  \
1505      {"fcmpe_s_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                   \
1506      {"fcmp_dz_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                   \
1507      {"fcmp_d_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                    \
1508      {"fcmp_hz_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                   \
1509      {"fcmp_h_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                    \
1510      {"fcmp_sz_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                   \
1511      {"fcmp_s_floatcmp"_h, &VISITORCLASS::VisitFPCompare},                    \
1512      {"fccmpe_d_floatccmp"_h, &VISITORCLASS::VisitFPConditionalCompare},      \
1513      {"fccmpe_h_floatccmp"_h, &VISITORCLASS::VisitFPConditionalCompare},      \
1514      {"fccmpe_s_floatccmp"_h, &VISITORCLASS::VisitFPConditionalCompare},      \
1515      {"fccmp_d_floatccmp"_h, &VISITORCLASS::VisitFPConditionalCompare},       \
1516      {"fccmp_h_floatccmp"_h, &VISITORCLASS::VisitFPConditionalCompare},       \
1517      {"fccmp_s_floatccmp"_h, &VISITORCLASS::VisitFPConditionalCompare},       \
1518      {"fcsel_d_floatsel"_h, &VISITORCLASS::VisitFPConditionalSelect},         \
1519      {"fcsel_h_floatsel"_h, &VISITORCLASS::VisitFPConditionalSelect},         \
1520      {"fcsel_s_floatsel"_h, &VISITORCLASS::VisitFPConditionalSelect},         \
1521      {"bfcvt_bs_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1522      {"fabs_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},      \
1523      {"fabs_h_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},      \
1524      {"fabs_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},      \
1525      {"fcvt_dh_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},     \
1526      {"fcvt_ds_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},     \
1527      {"fcvt_hd_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},     \
1528      {"fcvt_hs_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},     \
1529      {"fcvt_sd_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},     \
1530      {"fcvt_sh_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},     \
1531      {"fmov_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},      \
1532      {"fmov_h_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},      \
1533      {"fmov_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},      \
1534      {"fneg_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},      \
1535      {"fneg_h_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},      \
1536      {"fneg_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},      \
1537      {"frint32x_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},  \
1538      {"frint32x_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},  \
1539      {"frint32z_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},  \
1540      {"frint32z_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},  \
1541      {"frint64x_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},  \
1542      {"frint64x_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},  \
1543      {"frint64z_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},  \
1544      {"frint64z_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},  \
1545      {"frinta_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1546      {"frinta_h_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1547      {"frinta_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1548      {"frinti_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1549      {"frinti_h_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1550      {"frinti_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1551      {"frintm_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1552      {"frintm_h_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1553      {"frintm_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1554      {"frintn_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1555      {"frintn_h_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1556      {"frintn_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1557      {"frintp_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1558      {"frintp_h_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1559      {"frintp_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1560      {"frintx_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1561      {"frintx_h_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1562      {"frintx_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1563      {"frintz_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1564      {"frintz_h_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1565      {"frintz_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},    \
1566      {"fsqrt_d_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},     \
1567      {"fsqrt_h_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},     \
1568      {"fsqrt_s_floatdp1"_h, &VISITORCLASS::VisitFPDataProcessing1Source},     \
1569      {"fadd_d_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1570      {"fadd_h_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1571      {"fadd_s_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1572      {"fdiv_d_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1573      {"fdiv_h_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1574      {"fdiv_s_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1575      {"fmaxnm_d_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},    \
1576      {"fmaxnm_h_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},    \
1577      {"fmaxnm_s_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},    \
1578      {"fmax_d_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1579      {"fmax_h_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1580      {"fmax_s_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1581      {"fminnm_d_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},    \
1582      {"fminnm_h_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},    \
1583      {"fminnm_s_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},    \
1584      {"fmin_d_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1585      {"fmin_h_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1586      {"fmin_s_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1587      {"fmul_d_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1588      {"fmul_h_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1589      {"fmul_s_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1590      {"fnmul_d_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},     \
1591      {"fnmul_h_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},     \
1592      {"fnmul_s_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},     \
1593      {"fsub_d_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1594      {"fsub_h_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1595      {"fsub_s_floatdp2"_h, &VISITORCLASS::VisitFPDataProcessing2Source},      \
1596      {"fmadd_d_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},     \
1597      {"fmadd_h_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},     \
1598      {"fmadd_s_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},     \
1599      {"fmsub_d_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},     \
1600      {"fmsub_h_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},     \
1601      {"fmsub_s_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},     \
1602      {"fnmadd_d_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},    \
1603      {"fnmadd_h_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},    \
1604      {"fnmadd_s_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},    \
1605      {"fnmsub_d_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},    \
1606      {"fnmsub_h_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},    \
1607      {"fnmsub_s_floatdp3"_h, &VISITORCLASS::VisitFPDataProcessing3Source},    \
1608      {"fcvtzs_32d_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1609      {"fcvtzs_32h_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1610      {"fcvtzs_32s_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1611      {"fcvtzs_64d_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1612      {"fcvtzs_64h_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1613      {"fcvtzs_64s_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1614      {"fcvtzu_32d_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1615      {"fcvtzu_32h_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1616      {"fcvtzu_32s_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1617      {"fcvtzu_64d_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1618      {"fcvtzu_64h_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1619      {"fcvtzu_64s_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},     \
1620      {"scvtf_d32_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1621      {"scvtf_d64_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1622      {"scvtf_h32_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1623      {"scvtf_h64_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1624      {"scvtf_s32_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1625      {"scvtf_s64_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1626      {"ucvtf_d32_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1627      {"ucvtf_d64_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1628      {"ucvtf_h32_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1629      {"ucvtf_h64_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1630      {"ucvtf_s32_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1631      {"ucvtf_s64_float2fix"_h, &VISITORCLASS::VisitFPFixedPointConvert},      \
1632      {"fmov_d_floatimm"_h, &VISITORCLASS::VisitFPImmediate},                  \
1633      {"fmov_h_floatimm"_h, &VISITORCLASS::VisitFPImmediate},                  \
1634      {"fmov_s_floatimm"_h, &VISITORCLASS::VisitFPImmediate},                  \
1635      {"fcvtas_32d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1636      {"fcvtas_32h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1637      {"fcvtas_32s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1638      {"fcvtas_64d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1639      {"fcvtas_64h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1640      {"fcvtas_64s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1641      {"fcvtau_32d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1642      {"fcvtau_32h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1643      {"fcvtau_32s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1644      {"fcvtau_64d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1645      {"fcvtau_64h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1646      {"fcvtau_64s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1647      {"fcvtms_32d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1648      {"fcvtms_32h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1649      {"fcvtms_32s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1650      {"fcvtms_64d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1651      {"fcvtms_64h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1652      {"fcvtms_64s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1653      {"fcvtmu_32d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1654      {"fcvtmu_32h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1655      {"fcvtmu_32s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1656      {"fcvtmu_64d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1657      {"fcvtmu_64h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1658      {"fcvtmu_64s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1659      {"fcvtns_32d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1660      {"fcvtns_32h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1661      {"fcvtns_32s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1662      {"fcvtns_64d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1663      {"fcvtns_64h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1664      {"fcvtns_64s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1665      {"fcvtnu_32d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1666      {"fcvtnu_32h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1667      {"fcvtnu_32s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1668      {"fcvtnu_64d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1669      {"fcvtnu_64h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1670      {"fcvtnu_64s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1671      {"fcvtps_32d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1672      {"fcvtps_32h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1673      {"fcvtps_32s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1674      {"fcvtps_64d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1675      {"fcvtps_64h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1676      {"fcvtps_64s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1677      {"fcvtpu_32d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1678      {"fcvtpu_32h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1679      {"fcvtpu_32s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1680      {"fcvtpu_64d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1681      {"fcvtpu_64h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1682      {"fcvtpu_64s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1683      {"fcvtzs_32d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1684      {"fcvtzs_32h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1685      {"fcvtzs_32s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1686      {"fcvtzs_64d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1687      {"fcvtzs_64h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1688      {"fcvtzs_64s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1689      {"fcvtzu_32d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1690      {"fcvtzu_32h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1691      {"fcvtzu_32s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1692      {"fcvtzu_64d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1693      {"fcvtzu_64h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1694      {"fcvtzu_64s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},        \
1695      {"fjcvtzs_32d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},       \
1696      {"fmov_32h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},          \
1697      {"fmov_32s_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},          \
1698      {"fmov_64d_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},          \
1699      {"fmov_64h_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},          \
1700      {"fmov_64vx_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1701      {"fmov_d64_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},          \
1702      {"fmov_h32_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},          \
1703      {"fmov_h64_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},          \
1704      {"fmov_s32_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},          \
1705      {"fmov_v64i_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1706      {"scvtf_d32_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1707      {"scvtf_d64_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1708      {"scvtf_h32_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1709      {"scvtf_h64_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1710      {"scvtf_s32_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1711      {"scvtf_s64_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1712      {"ucvtf_d32_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1713      {"ucvtf_d64_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1714      {"ucvtf_h32_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1715      {"ucvtf_h64_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1716      {"ucvtf_s32_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1717      {"ucvtf_s64_float2int"_h, &VISITORCLASS::VisitFPIntegerConvert},         \
1718      {"ldrsw_64_loadlit"_h, &VISITORCLASS::VisitLoadLiteral},                 \
1719      {"ldr_32_loadlit"_h, &VISITORCLASS::VisitLoadLiteral},                   \
1720      {"ldr_64_loadlit"_h, &VISITORCLASS::VisitLoadLiteral},                   \
1721      {"ldr_d_loadlit"_h, &VISITORCLASS::VisitLoadLiteral},                    \
1722      {"ldr_q_loadlit"_h, &VISITORCLASS::VisitLoadLiteral},                    \
1723      {"ldr_s_loadlit"_h, &VISITORCLASS::VisitLoadLiteral},                    \
1724      {"prfm_p_loadlit"_h, &VISITORCLASS::VisitLoadLiteral},                   \
1725      {"casab_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1726      {"casah_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1727      {"casalb_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1728      {"casalh_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1729      {"casal_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1730      {"casal_c64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1731      {"casa_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},         \
1732      {"casa_c64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},         \
1733      {"casb_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},         \
1734      {"cash_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},         \
1735      {"caslb_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1736      {"caslh_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1737      {"casl_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},         \
1738      {"casl_c64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},         \
1739      {"caspal_cp32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},      \
1740      {"caspal_cp64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},      \
1741      {"caspa_cp32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1742      {"caspa_cp64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1743      {"caspl_cp32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1744      {"caspl_cp64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1745      {"casp_cp32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1746      {"casp_cp64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1747      {"cas_c32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},          \
1748      {"cas_c64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},          \
1749      {"ldarb_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1750      {"ldarh_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1751      {"ldar_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1752      {"ldar_lr64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1753      {"ldaxp_lp32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1754      {"ldaxp_lp64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1755      {"ldaxrb_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},      \
1756      {"ldaxrh_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},      \
1757      {"ldaxr_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1758      {"ldaxr_lr64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1759      {"ldlarb_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},      \
1760      {"ldlarh_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},      \
1761      {"ldlar_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1762      {"ldlar_lr64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1763      {"ldxp_lp32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1764      {"ldxp_lp64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1765      {"ldxrb_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1766      {"ldxrh_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1767      {"ldxr_lr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1768      {"ldxr_lr64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1769      {"stllrb_sl32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},      \
1770      {"stllrh_sl32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},      \
1771      {"stllr_sl32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1772      {"stllr_sl64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1773      {"stlrb_sl32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1774      {"stlrh_sl32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1775      {"stlr_sl32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1776      {"stlr_sl64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1777      {"stlxp_sp32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1778      {"stlxp_sp64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1779      {"stlxrb_sr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},      \
1780      {"stlxrh_sr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},      \
1781      {"stlxr_sr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1782      {"stlxr_sr64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1783      {"stxp_sp32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1784      {"stxp_sp64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1785      {"stxrb_sr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1786      {"stxrh_sr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},       \
1787      {"stxr_sr32_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1788      {"stxr_sr64_ldstexcl"_h, &VISITORCLASS::VisitLoadStoreExclusive},        \
1789      {"ldraa_64w_ldst_pac"_h, &VISITORCLASS::VisitLoadStorePAC},              \
1790      {"ldraa_64_ldst_pac"_h, &VISITORCLASS::VisitLoadStorePAC},               \
1791      {"ldrab_64w_ldst_pac"_h, &VISITORCLASS::VisitLoadStorePAC},              \
1792      {"ldrab_64_ldst_pac"_h, &VISITORCLASS::VisitLoadStorePAC},               \
1793      {"ldnp_32_ldstnapair_offs"_h,                                            \
1794       &VISITORCLASS::VisitLoadStorePairNonTemporal},                          \
1795      {"ldnp_64_ldstnapair_offs"_h,                                            \
1796       &VISITORCLASS::VisitLoadStorePairNonTemporal},                          \
1797      {"ldnp_d_ldstnapair_offs"_h,                                             \
1798       &VISITORCLASS::VisitLoadStorePairNonTemporal},                          \
1799      {"ldnp_q_ldstnapair_offs"_h,                                             \
1800       &VISITORCLASS::VisitLoadStorePairNonTemporal},                          \
1801      {"ldnp_s_ldstnapair_offs"_h,                                             \
1802       &VISITORCLASS::VisitLoadStorePairNonTemporal},                          \
1803      {"stnp_32_ldstnapair_offs"_h,                                            \
1804       &VISITORCLASS::VisitLoadStorePairNonTemporal},                          \
1805      {"stnp_64_ldstnapair_offs"_h,                                            \
1806       &VISITORCLASS::VisitLoadStorePairNonTemporal},                          \
1807      {"stnp_d_ldstnapair_offs"_h,                                             \
1808       &VISITORCLASS::VisitLoadStorePairNonTemporal},                          \
1809      {"stnp_q_ldstnapair_offs"_h,                                             \
1810       &VISITORCLASS::VisitLoadStorePairNonTemporal},                          \
1811      {"stnp_s_ldstnapair_offs"_h,                                             \
1812       &VISITORCLASS::VisitLoadStorePairNonTemporal},                          \
1813      {"ldpsw_64_ldstpair_off"_h, &VISITORCLASS::VisitLoadStorePairOffset},    \
1814      {"ldp_32_ldstpair_off"_h, &VISITORCLASS::VisitLoadStorePairOffset},      \
1815      {"ldp_64_ldstpair_off"_h, &VISITORCLASS::VisitLoadStorePairOffset},      \
1816      {"ldp_d_ldstpair_off"_h, &VISITORCLASS::VisitLoadStorePairOffset},       \
1817      {"ldp_q_ldstpair_off"_h, &VISITORCLASS::VisitLoadStorePairOffset},       \
1818      {"ldp_s_ldstpair_off"_h, &VISITORCLASS::VisitLoadStorePairOffset},       \
1819      {"stp_32_ldstpair_off"_h, &VISITORCLASS::VisitLoadStorePairOffset},      \
1820      {"stp_64_ldstpair_off"_h, &VISITORCLASS::VisitLoadStorePairOffset},      \
1821      {"stp_d_ldstpair_off"_h, &VISITORCLASS::VisitLoadStorePairOffset},       \
1822      {"stp_q_ldstpair_off"_h, &VISITORCLASS::VisitLoadStorePairOffset},       \
1823      {"stp_s_ldstpair_off"_h, &VISITORCLASS::VisitLoadStorePairOffset},       \
1824      {"ldpsw_64_ldstpair_post"_h,                                             \
1825       &VISITORCLASS::VisitLoadStorePairPostIndex},                            \
1826      {"ldp_32_ldstpair_post"_h, &VISITORCLASS::VisitLoadStorePairPostIndex},  \
1827      {"ldp_64_ldstpair_post"_h, &VISITORCLASS::VisitLoadStorePairPostIndex},  \
1828      {"ldp_d_ldstpair_post"_h, &VISITORCLASS::VisitLoadStorePairPostIndex},   \
1829      {"ldp_q_ldstpair_post"_h, &VISITORCLASS::VisitLoadStorePairPostIndex},   \
1830      {"ldp_s_ldstpair_post"_h, &VISITORCLASS::VisitLoadStorePairPostIndex},   \
1831      {"stp_32_ldstpair_post"_h, &VISITORCLASS::VisitLoadStorePairPostIndex},  \
1832      {"stp_64_ldstpair_post"_h, &VISITORCLASS::VisitLoadStorePairPostIndex},  \
1833      {"stp_d_ldstpair_post"_h, &VISITORCLASS::VisitLoadStorePairPostIndex},   \
1834      {"stp_q_ldstpair_post"_h, &VISITORCLASS::VisitLoadStorePairPostIndex},   \
1835      {"stp_s_ldstpair_post"_h, &VISITORCLASS::VisitLoadStorePairPostIndex},   \
1836      {"ldpsw_64_ldstpair_pre"_h, &VISITORCLASS::VisitLoadStorePairPreIndex},  \
1837      {"ldp_32_ldstpair_pre"_h, &VISITORCLASS::VisitLoadStorePairPreIndex},    \
1838      {"ldp_64_ldstpair_pre"_h, &VISITORCLASS::VisitLoadStorePairPreIndex},    \
1839      {"ldp_d_ldstpair_pre"_h, &VISITORCLASS::VisitLoadStorePairPreIndex},     \
1840      {"ldp_q_ldstpair_pre"_h, &VISITORCLASS::VisitLoadStorePairPreIndex},     \
1841      {"ldp_s_ldstpair_pre"_h, &VISITORCLASS::VisitLoadStorePairPreIndex},     \
1842      {"stp_32_ldstpair_pre"_h, &VISITORCLASS::VisitLoadStorePairPreIndex},    \
1843      {"stp_64_ldstpair_pre"_h, &VISITORCLASS::VisitLoadStorePairPreIndex},    \
1844      {"stp_d_ldstpair_pre"_h, &VISITORCLASS::VisitLoadStorePairPreIndex},     \
1845      {"stp_q_ldstpair_pre"_h, &VISITORCLASS::VisitLoadStorePairPreIndex},     \
1846      {"stp_s_ldstpair_pre"_h, &VISITORCLASS::VisitLoadStorePairPreIndex},     \
1847      {"ldrb_32_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},      \
1848      {"ldrh_32_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},      \
1849      {"ldrsb_32_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},     \
1850      {"ldrsb_64_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},     \
1851      {"ldrsh_32_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},     \
1852      {"ldrsh_64_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},     \
1853      {"ldrsw_64_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},     \
1854      {"ldr_32_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},       \
1855      {"ldr_64_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},       \
1856      {"ldr_b_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},        \
1857      {"ldr_d_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},        \
1858      {"ldr_h_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},        \
1859      {"ldr_q_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},        \
1860      {"ldr_s_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},        \
1861      {"strb_32_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},      \
1862      {"strh_32_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},      \
1863      {"str_32_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},       \
1864      {"str_64_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},       \
1865      {"str_b_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},        \
1866      {"str_d_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},        \
1867      {"str_h_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},        \
1868      {"str_q_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},        \
1869      {"str_s_ldst_immpost"_h, &VISITORCLASS::VisitLoadStorePostIndex},        \
1870      {"ldrb_32_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},        \
1871      {"ldrh_32_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},        \
1872      {"ldrsb_32_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},       \
1873      {"ldrsb_64_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},       \
1874      {"ldrsh_32_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},       \
1875      {"ldrsh_64_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},       \
1876      {"ldrsw_64_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},       \
1877      {"ldr_32_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},         \
1878      {"ldr_64_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},         \
1879      {"ldr_b_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},          \
1880      {"ldr_d_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},          \
1881      {"ldr_h_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},          \
1882      {"ldr_q_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},          \
1883      {"ldr_s_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},          \
1884      {"strb_32_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},        \
1885      {"strh_32_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},        \
1886      {"str_32_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},         \
1887      {"str_64_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},         \
1888      {"str_b_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},          \
1889      {"str_d_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},          \
1890      {"str_h_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},          \
1891      {"str_q_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},          \
1892      {"str_s_ldst_immpre"_h, &VISITORCLASS::VisitLoadStorePreIndex},          \
1893      {"ldapurb_32_ldapstl_unscaled"_h,                                        \
1894       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1895      {"ldapurh_32_ldapstl_unscaled"_h,                                        \
1896       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1897      {"ldapursb_32_ldapstl_unscaled"_h,                                       \
1898       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1899      {"ldapursb_64_ldapstl_unscaled"_h,                                       \
1900       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1901      {"ldapursh_32_ldapstl_unscaled"_h,                                       \
1902       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1903      {"ldapursh_64_ldapstl_unscaled"_h,                                       \
1904       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1905      {"ldapursw_64_ldapstl_unscaled"_h,                                       \
1906       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1907      {"ldapur_32_ldapstl_unscaled"_h,                                         \
1908       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1909      {"ldapur_64_ldapstl_unscaled"_h,                                         \
1910       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1911      {"stlurb_32_ldapstl_unscaled"_h,                                         \
1912       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1913      {"stlurh_32_ldapstl_unscaled"_h,                                         \
1914       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1915      {"stlur_32_ldapstl_unscaled"_h,                                          \
1916       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1917      {"stlur_64_ldapstl_unscaled"_h,                                          \
1918       &VISITORCLASS::VisitLoadStoreRCpcUnscaledOffset},                       \
1919      {"ldrb_32bl_ldst_regoff"_h,                                              \
1920       &VISITORCLASS::VisitLoadStoreRegisterOffset},                           \
1921      {"ldrb_32b_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset}, \
1922      {"ldrh_32_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},  \
1923      {"ldrsb_32bl_ldst_regoff"_h,                                             \
1924       &VISITORCLASS::VisitLoadStoreRegisterOffset},                           \
1925      {"ldrsb_32b_ldst_regoff"_h,                                              \
1926       &VISITORCLASS::VisitLoadStoreRegisterOffset},                           \
1927      {"ldrsb_64bl_ldst_regoff"_h,                                             \
1928       &VISITORCLASS::VisitLoadStoreRegisterOffset},                           \
1929      {"ldrsb_64b_ldst_regoff"_h,                                              \
1930       &VISITORCLASS::VisitLoadStoreRegisterOffset},                           \
1931      {"ldrsh_32_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset}, \
1932      {"ldrsh_64_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset}, \
1933      {"ldrsw_64_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset}, \
1934      {"ldr_32_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},   \
1935      {"ldr_64_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},   \
1936      {"ldr_bl_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},   \
1937      {"ldr_b_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},    \
1938      {"ldr_d_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},    \
1939      {"ldr_h_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},    \
1940      {"ldr_q_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},    \
1941      {"ldr_s_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},    \
1942      {"prfm_p_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},   \
1943      {"strb_32bl_ldst_regoff"_h,                                              \
1944       &VISITORCLASS::VisitLoadStoreRegisterOffset},                           \
1945      {"strb_32b_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset}, \
1946      {"strh_32_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},  \
1947      {"str_32_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},   \
1948      {"str_64_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},   \
1949      {"str_bl_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},   \
1950      {"str_b_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},    \
1951      {"str_d_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},    \
1952      {"str_h_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},    \
1953      {"str_q_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},    \
1954      {"str_s_ldst_regoff"_h, &VISITORCLASS::VisitLoadStoreRegisterOffset},    \
1955      {"ldurb_32_ldst_unscaled"_h,                                             \
1956       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1957      {"ldurh_32_ldst_unscaled"_h,                                             \
1958       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1959      {"ldursb_32_ldst_unscaled"_h,                                            \
1960       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1961      {"ldursb_64_ldst_unscaled"_h,                                            \
1962       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1963      {"ldursh_32_ldst_unscaled"_h,                                            \
1964       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1965      {"ldursh_64_ldst_unscaled"_h,                                            \
1966       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1967      {"ldursw_64_ldst_unscaled"_h,                                            \
1968       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1969      {"ldur_32_ldst_unscaled"_h,                                              \
1970       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1971      {"ldur_64_ldst_unscaled"_h,                                              \
1972       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1973      {"ldur_b_ldst_unscaled"_h, &VISITORCLASS::VisitLoadStoreUnscaledOffset}, \
1974      {"ldur_d_ldst_unscaled"_h, &VISITORCLASS::VisitLoadStoreUnscaledOffset}, \
1975      {"ldur_h_ldst_unscaled"_h, &VISITORCLASS::VisitLoadStoreUnscaledOffset}, \
1976      {"ldur_q_ldst_unscaled"_h, &VISITORCLASS::VisitLoadStoreUnscaledOffset}, \
1977      {"ldur_s_ldst_unscaled"_h, &VISITORCLASS::VisitLoadStoreUnscaledOffset}, \
1978      {"prfum_p_ldst_unscaled"_h,                                              \
1979       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1980      {"sturb_32_ldst_unscaled"_h,                                             \
1981       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1982      {"sturh_32_ldst_unscaled"_h,                                             \
1983       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1984      {"stur_32_ldst_unscaled"_h,                                              \
1985       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1986      {"stur_64_ldst_unscaled"_h,                                              \
1987       &VISITORCLASS::VisitLoadStoreUnscaledOffset},                           \
1988      {"stur_b_ldst_unscaled"_h, &VISITORCLASS::VisitLoadStoreUnscaledOffset}, \
1989      {"stur_d_ldst_unscaled"_h, &VISITORCLASS::VisitLoadStoreUnscaledOffset}, \
1990      {"stur_h_ldst_unscaled"_h, &VISITORCLASS::VisitLoadStoreUnscaledOffset}, \
1991      {"stur_q_ldst_unscaled"_h, &VISITORCLASS::VisitLoadStoreUnscaledOffset}, \
1992      {"stur_s_ldst_unscaled"_h, &VISITORCLASS::VisitLoadStoreUnscaledOffset}, \
1993      {"ldrb_32_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},     \
1994      {"ldrh_32_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},     \
1995      {"ldrsb_32_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},    \
1996      {"ldrsb_64_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},    \
1997      {"ldrsh_32_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},    \
1998      {"ldrsh_64_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},    \
1999      {"ldrsw_64_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},    \
2000      {"ldr_32_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},      \
2001      {"ldr_64_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},      \
2002      {"ldr_b_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},       \
2003      {"ldr_d_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},       \
2004      {"ldr_h_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},       \
2005      {"ldr_q_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},       \
2006      {"ldr_s_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},       \
2007      {"prfm_p_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},      \
2008      {"strb_32_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},     \
2009      {"strh_32_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},     \
2010      {"str_32_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},      \
2011      {"str_64_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},      \
2012      {"str_b_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},       \
2013      {"str_d_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},       \
2014      {"str_h_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},       \
2015      {"str_q_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},       \
2016      {"str_s_ldst_pos"_h, &VISITORCLASS::VisitLoadStoreUnsignedOffset},       \
2017      {"ands_32s_log_imm"_h, &VISITORCLASS::VisitLogicalImmediate},            \
2018      {"ands_64s_log_imm"_h, &VISITORCLASS::VisitLogicalImmediate},            \
2019      {"and_32_log_imm"_h, &VISITORCLASS::VisitLogicalImmediate},              \
2020      {"and_64_log_imm"_h, &VISITORCLASS::VisitLogicalImmediate},              \
2021      {"eor_32_log_imm"_h, &VISITORCLASS::VisitLogicalImmediate},              \
2022      {"eor_64_log_imm"_h, &VISITORCLASS::VisitLogicalImmediate},              \
2023      {"orr_32_log_imm"_h, &VISITORCLASS::VisitLogicalImmediate},              \
2024      {"orr_64_log_imm"_h, &VISITORCLASS::VisitLogicalImmediate},              \
2025      {"ands_32_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},             \
2026      {"ands_64_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},             \
2027      {"and_32_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2028      {"and_64_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2029      {"bics_32_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},             \
2030      {"bics_64_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},             \
2031      {"bic_32_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2032      {"bic_64_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2033      {"eon_32_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2034      {"eon_64_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2035      {"eor_32_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2036      {"eor_64_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2037      {"orn_32_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2038      {"orn_64_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2039      {"orr_32_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2040      {"orr_64_log_shift"_h, &VISITORCLASS::VisitLogicalShifted},              \
2041      {"movk_32_movewide"_h, &VISITORCLASS::VisitMoveWideImmediate},           \
2042      {"movk_64_movewide"_h, &VISITORCLASS::VisitMoveWideImmediate},           \
2043      {"movn_32_movewide"_h, &VISITORCLASS::VisitMoveWideImmediate},           \
2044      {"movn_64_movewide"_h, &VISITORCLASS::VisitMoveWideImmediate},           \
2045      {"movz_32_movewide"_h, &VISITORCLASS::VisitMoveWideImmediate},           \
2046      {"movz_64_movewide"_h, &VISITORCLASS::VisitMoveWideImmediate},           \
2047      {"fabs_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},        \
2048      {"fcmeq_asimdmiscfp16_fz"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2049      {"fcmge_asimdmiscfp16_fz"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2050      {"fcmgt_asimdmiscfp16_fz"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2051      {"fcmle_asimdmiscfp16_fz"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2052      {"fcmlt_asimdmiscfp16_fz"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2053      {"fcvtas_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2054      {"fcvtau_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2055      {"fcvtms_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2056      {"fcvtmu_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2057      {"fcvtns_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2058      {"fcvtnu_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2059      {"fcvtps_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2060      {"fcvtpu_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2061      {"fcvtzs_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2062      {"fcvtzu_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2063      {"fneg_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},        \
2064      {"frecpe_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2065      {"frinta_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2066      {"frinti_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2067      {"frintm_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2068      {"frintn_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2069      {"frintp_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2070      {"frintx_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2071      {"frintz_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},      \
2072      {"frsqrte_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},     \
2073      {"fsqrt_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},       \
2074      {"scvtf_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},       \
2075      {"ucvtf_asimdmiscfp16_r"_h, &VISITORCLASS::VisitNEON2RegMiscFP16},       \
2076      {"addhn_asimddiff_n"_h, &VISITORCLASS::VisitNEON3Different},             \
2077      {"pmull_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2078      {"raddhn_asimddiff_n"_h, &VISITORCLASS::VisitNEON3Different},            \
2079      {"rsubhn_asimddiff_n"_h, &VISITORCLASS::VisitNEON3Different},            \
2080      {"sabal_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2081      {"sabdl_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2082      {"saddl_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2083      {"saddw_asimddiff_w"_h, &VISITORCLASS::VisitNEON3Different},             \
2084      {"smlal_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2085      {"smlsl_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2086      {"smull_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2087      {"sqdmlal_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},           \
2088      {"sqdmlsl_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},           \
2089      {"sqdmull_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},           \
2090      {"ssubl_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2091      {"ssubw_asimddiff_w"_h, &VISITORCLASS::VisitNEON3Different},             \
2092      {"subhn_asimddiff_n"_h, &VISITORCLASS::VisitNEON3Different},             \
2093      {"uabal_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2094      {"uabdl_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2095      {"uaddl_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2096      {"uaddw_asimddiff_w"_h, &VISITORCLASS::VisitNEON3Different},             \
2097      {"umlal_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2098      {"umlsl_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2099      {"umull_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2100      {"usubl_asimddiff_l"_h, &VISITORCLASS::VisitNEON3Different},             \
2101      {"usubw_asimddiff_w"_h, &VISITORCLASS::VisitNEON3Different},             \
2102      {"addp_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2103      {"add_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2104      {"cmeq_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2105      {"cmge_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2106      {"cmgt_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2107      {"cmhi_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2108      {"cmhs_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2109      {"cmtst_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2110      {"fabd_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2111      {"facge_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2112      {"facgt_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2113      {"faddp_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2114      {"fadd_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2115      {"fcmeq_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2116      {"fcmge_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2117      {"fcmgt_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2118      {"fdiv_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2119      {"fmaxnmp_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},             \
2120      {"fmaxnm_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},              \
2121      {"fmaxp_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2122      {"fmax_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2123      {"fminnmp_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},             \
2124      {"fminnm_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},              \
2125      {"fminp_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2126      {"fmin_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2127      {"fmla_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2128      {"fmls_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2129      {"fmulx_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2130      {"fmul_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2131      {"frecps_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},              \
2132      {"frsqrts_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},             \
2133      {"fsub_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2134      {"sqadd_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2135      {"sqdmulh_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},             \
2136      {"sqrdmulh_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},            \
2137      {"sqrshl_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},              \
2138      {"sqshl_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2139      {"sqsub_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2140      {"srshl_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2141      {"sshl_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2142      {"sub_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2143      {"uqadd_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2144      {"uqrshl_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},              \
2145      {"uqshl_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2146      {"uqsub_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2147      {"urshl_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2148      {"ushl_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2149      {"fcadd_asimdsame2_c"_h, &VISITORCLASS::VisitNEON3SameExtra},            \
2150      {"fcmla_asimdsame2_c"_h, &VISITORCLASS::VisitNEON3SameExtra},            \
2151      {"sdot_asimdsame2_d"_h, &VISITORCLASS::VisitNEON3SameExtra},             \
2152      {"sqrdmlah_asimdsame2_only"_h, &VISITORCLASS::VisitNEON3SameExtra},      \
2153      {"sqrdmlsh_asimdsame2_only"_h, &VISITORCLASS::VisitNEON3SameExtra},      \
2154      {"udot_asimdsame2_d"_h, &VISITORCLASS::VisitNEON3SameExtra},             \
2155      {"fabd_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},        \
2156      {"facge_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},       \
2157      {"facgt_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},       \
2158      {"faddp_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},       \
2159      {"fadd_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},        \
2160      {"fcmeq_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},       \
2161      {"fcmge_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},       \
2162      {"fcmgt_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},       \
2163      {"fdiv_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},        \
2164      {"fmaxnmp_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},     \
2165      {"fmaxnm_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},      \
2166      {"fmaxp_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},       \
2167      {"fmax_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},        \
2168      {"fminnmp_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},     \
2169      {"fminnm_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},      \
2170      {"fminp_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},       \
2171      {"fmin_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},        \
2172      {"fmla_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},        \
2173      {"fmls_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},        \
2174      {"fmulx_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},       \
2175      {"fmul_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},        \
2176      {"frecps_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},      \
2177      {"frsqrts_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},     \
2178      {"fsub_asimdsamefp16_only"_h, &VISITORCLASS::VisitNEON3SameFP16},        \
2179      {"addv_asimdall_only"_h, &VISITORCLASS::VisitNEONAcrossLanes},           \
2180      {"saddlv_asimdall_only"_h, &VISITORCLASS::VisitNEONAcrossLanes},         \
2181      {"smaxv_asimdall_only"_h, &VISITORCLASS::VisitNEONAcrossLanes},          \
2182      {"sminv_asimdall_only"_h, &VISITORCLASS::VisitNEONAcrossLanes},          \
2183      {"uaddlv_asimdall_only"_h, &VISITORCLASS::VisitNEONAcrossLanes},         \
2184      {"umaxv_asimdall_only"_h, &VISITORCLASS::VisitNEONAcrossLanes},          \
2185      {"uminv_asimdall_only"_h, &VISITORCLASS::VisitNEONAcrossLanes},          \
2186      {"mla_asimdelem_r"_h, &VISITORCLASS::VisitNEONByIndexedElement},         \
2187      {"mls_asimdelem_r"_h, &VISITORCLASS::VisitNEONByIndexedElement},         \
2188      {"mul_asimdelem_r"_h, &VISITORCLASS::VisitNEONByIndexedElement},         \
2189      {"sqdmulh_asimdelem_r"_h, &VISITORCLASS::VisitNEONByIndexedElement},     \
2190      {"sqrdmlah_asimdelem_r"_h, &VISITORCLASS::VisitNEONByIndexedElement},    \
2191      {"sqrdmlsh_asimdelem_r"_h, &VISITORCLASS::VisitNEONByIndexedElement},    \
2192      {"sqrdmulh_asimdelem_r"_h, &VISITORCLASS::VisitNEONByIndexedElement},    \
2193      {"dup_asimdins_dr_r"_h, &VISITORCLASS::VisitNEONCopy},                   \
2194      {"dup_asimdins_dv_v"_h, &VISITORCLASS::VisitNEONCopy},                   \
2195      {"ins_asimdins_ir_r"_h, &VISITORCLASS::VisitNEONCopy},                   \
2196      {"ins_asimdins_iv_v"_h, &VISITORCLASS::VisitNEONCopy},                   \
2197      {"smov_asimdins_w_w"_h, &VISITORCLASS::VisitNEONCopy},                   \
2198      {"smov_asimdins_x_x"_h, &VISITORCLASS::VisitNEONCopy},                   \
2199      {"umov_asimdins_w_w"_h, &VISITORCLASS::VisitNEONCopy},                   \
2200      {"umov_asimdins_x_x"_h, &VISITORCLASS::VisitNEONCopy},                   \
2201      {"ext_asimdext_only"_h, &VISITORCLASS::VisitNEONExtract},                \
2202      {"ld1_asisdlse_r1_1v"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},  \
2203      {"ld1_asisdlse_r2_2v"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},  \
2204      {"ld1_asisdlse_r3_3v"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},  \
2205      {"ld1_asisdlse_r4_4v"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},  \
2206      {"ld2_asisdlse_r2"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},     \
2207      {"ld3_asisdlse_r3"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},     \
2208      {"ld4_asisdlse_r4"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},     \
2209      {"st1_asisdlse_r1_1v"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},  \
2210      {"st1_asisdlse_r2_2v"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},  \
2211      {"st1_asisdlse_r3_3v"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},  \
2212      {"st1_asisdlse_r4_4v"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},  \
2213      {"st2_asisdlse_r2"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},     \
2214      {"st3_asisdlse_r3"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},     \
2215      {"st4_asisdlse_r4"_h, &VISITORCLASS::VisitNEONLoadStoreMultiStruct},     \
2216      {"ld1_asisdlsep_i1_i1"_h,                                                \
2217       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2218      {"ld1_asisdlsep_i2_i2"_h,                                                \
2219       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2220      {"ld1_asisdlsep_i3_i3"_h,                                                \
2221       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2222      {"ld1_asisdlsep_i4_i4"_h,                                                \
2223       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2224      {"ld1_asisdlsep_r1_r1"_h,                                                \
2225       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2226      {"ld1_asisdlsep_r2_r2"_h,                                                \
2227       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2228      {"ld1_asisdlsep_r3_r3"_h,                                                \
2229       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2230      {"ld1_asisdlsep_r4_r4"_h,                                                \
2231       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2232      {"ld2_asisdlsep_i2_i"_h,                                                 \
2233       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2234      {"ld2_asisdlsep_r2_r"_h,                                                 \
2235       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2236      {"ld3_asisdlsep_i3_i"_h,                                                 \
2237       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2238      {"ld3_asisdlsep_r3_r"_h,                                                 \
2239       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2240      {"ld4_asisdlsep_i4_i"_h,                                                 \
2241       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2242      {"ld4_asisdlsep_r4_r"_h,                                                 \
2243       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2244      {"st1_asisdlsep_i1_i1"_h,                                                \
2245       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2246      {"st1_asisdlsep_i2_i2"_h,                                                \
2247       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2248      {"st1_asisdlsep_i3_i3"_h,                                                \
2249       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2250      {"st1_asisdlsep_i4_i4"_h,                                                \
2251       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2252      {"st1_asisdlsep_r1_r1"_h,                                                \
2253       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2254      {"st1_asisdlsep_r2_r2"_h,                                                \
2255       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2256      {"st1_asisdlsep_r3_r3"_h,                                                \
2257       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2258      {"st1_asisdlsep_r4_r4"_h,                                                \
2259       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2260      {"st2_asisdlsep_i2_i"_h,                                                 \
2261       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2262      {"st2_asisdlsep_r2_r"_h,                                                 \
2263       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2264      {"st3_asisdlsep_i3_i"_h,                                                 \
2265       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2266      {"st3_asisdlsep_r3_r"_h,                                                 \
2267       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2268      {"st4_asisdlsep_i4_i"_h,                                                 \
2269       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2270      {"st4_asisdlsep_r4_r"_h,                                                 \
2271       &VISITORCLASS::VisitNEONLoadStoreMultiStructPostIndex},                 \
2272      {"ld1r_asisdlso_r1"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct},   \
2273      {"ld1_asisdlso_b1_1b"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2274      {"ld1_asisdlso_d1_1d"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2275      {"ld1_asisdlso_h1_1h"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2276      {"ld1_asisdlso_s1_1s"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2277      {"ld2r_asisdlso_r2"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct},   \
2278      {"ld2_asisdlso_b2_2b"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2279      {"ld2_asisdlso_d2_2d"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2280      {"ld2_asisdlso_h2_2h"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2281      {"ld2_asisdlso_s2_2s"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2282      {"ld3r_asisdlso_r3"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct},   \
2283      {"ld3_asisdlso_b3_3b"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2284      {"ld3_asisdlso_d3_3d"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2285      {"ld3_asisdlso_h3_3h"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2286      {"ld3_asisdlso_s3_3s"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2287      {"ld4r_asisdlso_r4"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct},   \
2288      {"ld4_asisdlso_b4_4b"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2289      {"ld4_asisdlso_d4_4d"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2290      {"ld4_asisdlso_h4_4h"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2291      {"ld4_asisdlso_s4_4s"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2292      {"st1_asisdlso_b1_1b"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2293      {"st1_asisdlso_d1_1d"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2294      {"st1_asisdlso_h1_1h"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2295      {"st1_asisdlso_s1_1s"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2296      {"st2_asisdlso_b2_2b"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2297      {"st2_asisdlso_d2_2d"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2298      {"st2_asisdlso_h2_2h"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2299      {"st2_asisdlso_s2_2s"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2300      {"st3_asisdlso_b3_3b"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2301      {"st3_asisdlso_d3_3d"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2302      {"st3_asisdlso_h3_3h"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2303      {"st3_asisdlso_s3_3s"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2304      {"st4_asisdlso_b4_4b"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2305      {"st4_asisdlso_d4_4d"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2306      {"st4_asisdlso_h4_4h"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2307      {"st4_asisdlso_s4_4s"_h, &VISITORCLASS::VisitNEONLoadStoreSingleStruct}, \
2308      {"ld1r_asisdlsop_r1_i"_h,                                                \
2309       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2310      {"ld1r_asisdlsop_rx1_r"_h,                                               \
2311       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2312      {"ld1_asisdlsop_b1_i1b"_h,                                               \
2313       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2314      {"ld1_asisdlsop_bx1_r1b"_h,                                              \
2315       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2316      {"ld1_asisdlsop_d1_i1d"_h,                                               \
2317       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2318      {"ld1_asisdlsop_dx1_r1d"_h,                                              \
2319       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2320      {"ld1_asisdlsop_h1_i1h"_h,                                               \
2321       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2322      {"ld1_asisdlsop_hx1_r1h"_h,                                              \
2323       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2324      {"ld1_asisdlsop_s1_i1s"_h,                                               \
2325       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2326      {"ld1_asisdlsop_sx1_r1s"_h,                                              \
2327       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2328      {"ld2r_asisdlsop_r2_i"_h,                                                \
2329       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2330      {"ld2r_asisdlsop_rx2_r"_h,                                               \
2331       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2332      {"ld2_asisdlsop_b2_i2b"_h,                                               \
2333       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2334      {"ld2_asisdlsop_bx2_r2b"_h,                                              \
2335       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2336      {"ld2_asisdlsop_d2_i2d"_h,                                               \
2337       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2338      {"ld2_asisdlsop_dx2_r2d"_h,                                              \
2339       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2340      {"ld2_asisdlsop_h2_i2h"_h,                                               \
2341       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2342      {"ld2_asisdlsop_hx2_r2h"_h,                                              \
2343       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2344      {"ld2_asisdlsop_s2_i2s"_h,                                               \
2345       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2346      {"ld2_asisdlsop_sx2_r2s"_h,                                              \
2347       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2348      {"ld3r_asisdlsop_r3_i"_h,                                                \
2349       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2350      {"ld3r_asisdlsop_rx3_r"_h,                                               \
2351       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2352      {"ld3_asisdlsop_b3_i3b"_h,                                               \
2353       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2354      {"ld3_asisdlsop_bx3_r3b"_h,                                              \
2355       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2356      {"ld3_asisdlsop_d3_i3d"_h,                                               \
2357       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2358      {"ld3_asisdlsop_dx3_r3d"_h,                                              \
2359       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2360      {"ld3_asisdlsop_h3_i3h"_h,                                               \
2361       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2362      {"ld3_asisdlsop_hx3_r3h"_h,                                              \
2363       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2364      {"ld3_asisdlsop_s3_i3s"_h,                                               \
2365       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2366      {"ld3_asisdlsop_sx3_r3s"_h,                                              \
2367       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2368      {"ld4r_asisdlsop_r4_i"_h,                                                \
2369       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2370      {"ld4r_asisdlsop_rx4_r"_h,                                               \
2371       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2372      {"ld4_asisdlsop_b4_i4b"_h,                                               \
2373       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2374      {"ld4_asisdlsop_bx4_r4b"_h,                                              \
2375       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2376      {"ld4_asisdlsop_d4_i4d"_h,                                               \
2377       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2378      {"ld4_asisdlsop_dx4_r4d"_h,                                              \
2379       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2380      {"ld4_asisdlsop_h4_i4h"_h,                                               \
2381       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2382      {"ld4_asisdlsop_hx4_r4h"_h,                                              \
2383       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2384      {"ld4_asisdlsop_s4_i4s"_h,                                               \
2385       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2386      {"ld4_asisdlsop_sx4_r4s"_h,                                              \
2387       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2388      {"st1_asisdlsop_b1_i1b"_h,                                               \
2389       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2390      {"st1_asisdlsop_bx1_r1b"_h,                                              \
2391       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2392      {"st1_asisdlsop_d1_i1d"_h,                                               \
2393       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2394      {"st1_asisdlsop_dx1_r1d"_h,                                              \
2395       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2396      {"st1_asisdlsop_h1_i1h"_h,                                               \
2397       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2398      {"st1_asisdlsop_hx1_r1h"_h,                                              \
2399       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2400      {"st1_asisdlsop_s1_i1s"_h,                                               \
2401       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2402      {"st1_asisdlsop_sx1_r1s"_h,                                              \
2403       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2404      {"st2_asisdlsop_b2_i2b"_h,                                               \
2405       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2406      {"st2_asisdlsop_bx2_r2b"_h,                                              \
2407       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2408      {"st2_asisdlsop_d2_i2d"_h,                                               \
2409       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2410      {"st2_asisdlsop_dx2_r2d"_h,                                              \
2411       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2412      {"st2_asisdlsop_h2_i2h"_h,                                               \
2413       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2414      {"st2_asisdlsop_hx2_r2h"_h,                                              \
2415       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2416      {"st2_asisdlsop_s2_i2s"_h,                                               \
2417       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2418      {"st2_asisdlsop_sx2_r2s"_h,                                              \
2419       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2420      {"st3_asisdlsop_b3_i3b"_h,                                               \
2421       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2422      {"st3_asisdlsop_bx3_r3b"_h,                                              \
2423       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2424      {"st3_asisdlsop_d3_i3d"_h,                                               \
2425       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2426      {"st3_asisdlsop_dx3_r3d"_h,                                              \
2427       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2428      {"st3_asisdlsop_h3_i3h"_h,                                               \
2429       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2430      {"st3_asisdlsop_hx3_r3h"_h,                                              \
2431       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2432      {"st3_asisdlsop_s3_i3s"_h,                                               \
2433       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2434      {"st3_asisdlsop_sx3_r3s"_h,                                              \
2435       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2436      {"st4_asisdlsop_b4_i4b"_h,                                               \
2437       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2438      {"st4_asisdlsop_bx4_r4b"_h,                                              \
2439       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2440      {"st4_asisdlsop_d4_i4d"_h,                                               \
2441       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2442      {"st4_asisdlsop_dx4_r4d"_h,                                              \
2443       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2444      {"st4_asisdlsop_h4_i4h"_h,                                               \
2445       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2446      {"st4_asisdlsop_hx4_r4h"_h,                                              \
2447       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2448      {"st4_asisdlsop_s4_i4s"_h,                                               \
2449       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2450      {"st4_asisdlsop_sx4_r4s"_h,                                              \
2451       &VISITORCLASS::VisitNEONLoadStoreSingleStructPostIndex},                \
2452      {"bic_asimdimm_l_hl"_h, &VISITORCLASS::VisitNEONModifiedImmediate},      \
2453      {"bic_asimdimm_l_sl"_h, &VISITORCLASS::VisitNEONModifiedImmediate},      \
2454      {"fmov_asimdimm_d2_d"_h, &VISITORCLASS::VisitNEONModifiedImmediate},     \
2455      {"fmov_asimdimm_h_h"_h, &VISITORCLASS::VisitNEONModifiedImmediate},      \
2456      {"fmov_asimdimm_s_s"_h, &VISITORCLASS::VisitNEONModifiedImmediate},      \
2457      {"movi_asimdimm_d2_d"_h, &VISITORCLASS::VisitNEONModifiedImmediate},     \
2458      {"movi_asimdimm_d_ds"_h, &VISITORCLASS::VisitNEONModifiedImmediate},     \
2459      {"movi_asimdimm_l_hl"_h, &VISITORCLASS::VisitNEONModifiedImmediate},     \
2460      {"movi_asimdimm_l_sl"_h, &VISITORCLASS::VisitNEONModifiedImmediate},     \
2461      {"movi_asimdimm_m_sm"_h, &VISITORCLASS::VisitNEONModifiedImmediate},     \
2462      {"movi_asimdimm_n_b"_h, &VISITORCLASS::VisitNEONModifiedImmediate},      \
2463      {"mvni_asimdimm_l_hl"_h, &VISITORCLASS::VisitNEONModifiedImmediate},     \
2464      {"mvni_asimdimm_l_sl"_h, &VISITORCLASS::VisitNEONModifiedImmediate},     \
2465      {"mvni_asimdimm_m_sm"_h, &VISITORCLASS::VisitNEONModifiedImmediate},     \
2466      {"orr_asimdimm_l_hl"_h, &VISITORCLASS::VisitNEONModifiedImmediate},      \
2467      {"orr_asimdimm_l_sl"_h, &VISITORCLASS::VisitNEONModifiedImmediate},      \
2468      {"trn1_asimdperm_only"_h, &VISITORCLASS::VisitNEONPerm},                 \
2469      {"trn2_asimdperm_only"_h, &VISITORCLASS::VisitNEONPerm},                 \
2470      {"uzp1_asimdperm_only"_h, &VISITORCLASS::VisitNEONPerm},                 \
2471      {"uzp2_asimdperm_only"_h, &VISITORCLASS::VisitNEONPerm},                 \
2472      {"zip1_asimdperm_only"_h, &VISITORCLASS::VisitNEONPerm},                 \
2473      {"zip2_asimdperm_only"_h, &VISITORCLASS::VisitNEONPerm},                 \
2474      {"sqabs_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},         \
2475      {"sqneg_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},         \
2476      {"sqxtn_asisdmisc_n"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},         \
2477      {"sqxtun_asisdmisc_n"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2478      {"suqadd_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2479      {"uqxtn_asisdmisc_n"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},         \
2480      {"usqadd_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2481      {"fcmeq_asisdmiscfp16_fz"_h,                                             \
2482       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2483      {"fcmge_asisdmiscfp16_fz"_h,                                             \
2484       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2485      {"fcmgt_asisdmiscfp16_fz"_h,                                             \
2486       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2487      {"fcmle_asisdmiscfp16_fz"_h,                                             \
2488       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2489      {"fcmlt_asisdmiscfp16_fz"_h,                                             \
2490       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2491      {"fcvtas_asisdmiscfp16_r"_h,                                             \
2492       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2493      {"fcvtau_asisdmiscfp16_r"_h,                                             \
2494       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2495      {"fcvtms_asisdmiscfp16_r"_h,                                             \
2496       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2497      {"fcvtmu_asisdmiscfp16_r"_h,                                             \
2498       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2499      {"fcvtns_asisdmiscfp16_r"_h,                                             \
2500       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2501      {"fcvtnu_asisdmiscfp16_r"_h,                                             \
2502       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2503      {"fcvtps_asisdmiscfp16_r"_h,                                             \
2504       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2505      {"fcvtpu_asisdmiscfp16_r"_h,                                             \
2506       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2507      {"fcvtzs_asisdmiscfp16_r"_h,                                             \
2508       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2509      {"fcvtzu_asisdmiscfp16_r"_h,                                             \
2510       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2511      {"frecpe_asisdmiscfp16_r"_h,                                             \
2512       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2513      {"frecpx_asisdmiscfp16_r"_h,                                             \
2514       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2515      {"frsqrte_asisdmiscfp16_r"_h,                                            \
2516       &VISITORCLASS::VisitNEONScalar2RegMiscFP16},                            \
2517      {"scvtf_asisdmiscfp16_r"_h, &VISITORCLASS::VisitNEONScalar2RegMiscFP16}, \
2518      {"ucvtf_asisdmiscfp16_r"_h, &VISITORCLASS::VisitNEONScalar2RegMiscFP16}, \
2519      {"sqdmlal_asisddiff_only"_h, &VISITORCLASS::VisitNEONScalar3Diff},       \
2520      {"sqdmlsl_asisddiff_only"_h, &VISITORCLASS::VisitNEONScalar3Diff},       \
2521      {"sqdmull_asisddiff_only"_h, &VISITORCLASS::VisitNEONScalar3Diff},       \
2522      {"sqadd_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2523      {"sqdmulh_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},       \
2524      {"sqrdmulh_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},      \
2525      {"sqrshl_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},        \
2526      {"sqshl_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2527      {"sqsub_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2528      {"srshl_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2529      {"sshl_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},          \
2530      {"uqadd_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2531      {"uqrshl_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},        \
2532      {"uqshl_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2533      {"uqsub_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2534      {"urshl_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2535      {"ushl_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},          \
2536      {"fabd_asisdsamefp16_only"_h, &VISITORCLASS::VisitNEONScalar3SameFP16},  \
2537      {"facge_asisdsamefp16_only"_h, &VISITORCLASS::VisitNEONScalar3SameFP16}, \
2538      {"facgt_asisdsamefp16_only"_h, &VISITORCLASS::VisitNEONScalar3SameFP16}, \
2539      {"fcmeq_asisdsamefp16_only"_h, &VISITORCLASS::VisitNEONScalar3SameFP16}, \
2540      {"fcmge_asisdsamefp16_only"_h, &VISITORCLASS::VisitNEONScalar3SameFP16}, \
2541      {"fcmgt_asisdsamefp16_only"_h, &VISITORCLASS::VisitNEONScalar3SameFP16}, \
2542      {"fmulx_asisdsamefp16_only"_h, &VISITORCLASS::VisitNEONScalar3SameFP16}, \
2543      {"frecps_asisdsamefp16_only"_h,                                          \
2544       &VISITORCLASS::VisitNEONScalar3SameFP16},                               \
2545      {"frsqrts_asisdsamefp16_only"_h,                                         \
2546       &VISITORCLASS::VisitNEONScalar3SameFP16},                               \
2547      {"sqdmulh_asisdelem_r"_h,                                                \
2548       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2549      {"sqrdmlah_asisdelem_r"_h,                                               \
2550       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2551      {"sqrdmlsh_asisdelem_r"_h,                                               \
2552       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2553      {"sqrdmulh_asisdelem_r"_h,                                               \
2554       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2555      {"dup_asisdone_only"_h, &VISITORCLASS::VisitNEONScalarCopy},             \
2556      {"addp_asisdpair_only"_h, &VISITORCLASS::VisitNEONScalarPairwise},       \
2557      {"faddp_asisdpair_only_h"_h, &VISITORCLASS::VisitNEONScalarPairwise},    \
2558      {"faddp_asisdpair_only_sd"_h, &VISITORCLASS::VisitNEONScalarPairwise},   \
2559      {"fmaxnmp_asisdpair_only_h"_h, &VISITORCLASS::VisitNEONScalarPairwise},  \
2560      {"fmaxnmp_asisdpair_only_sd"_h, &VISITORCLASS::VisitNEONScalarPairwise}, \
2561      {"fmaxp_asisdpair_only_h"_h, &VISITORCLASS::VisitNEONScalarPairwise},    \
2562      {"fmaxp_asisdpair_only_sd"_h, &VISITORCLASS::VisitNEONScalarPairwise},   \
2563      {"fminnmp_asisdpair_only_h"_h, &VISITORCLASS::VisitNEONScalarPairwise},  \
2564      {"fminnmp_asisdpair_only_sd"_h, &VISITORCLASS::VisitNEONScalarPairwise}, \
2565      {"fminp_asisdpair_only_h"_h, &VISITORCLASS::VisitNEONScalarPairwise},    \
2566      {"fminp_asisdpair_only_sd"_h, &VISITORCLASS::VisitNEONScalarPairwise},   \
2567      {"fcvtzs_asisdshf_c"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},   \
2568      {"fcvtzu_asisdshf_c"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},   \
2569      {"scvtf_asisdshf_c"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},    \
2570      {"sqshlu_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},   \
2571      {"sqshl_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},    \
2572      {"ucvtf_asisdshf_c"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},    \
2573      {"uqshl_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},    \
2574      {"sqshlu_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},         \
2575      {"sqshl_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},          \
2576      {"uqshl_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},          \
2577      {"shl_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},            \
2578      {"sli_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},            \
2579      {"tbl_asimdtbl_l1_1"_h, &VISITORCLASS::VisitNEONTable},                  \
2580      {"tbl_asimdtbl_l2_2"_h, &VISITORCLASS::VisitNEONTable},                  \
2581      {"tbl_asimdtbl_l3_3"_h, &VISITORCLASS::VisitNEONTable},                  \
2582      {"tbl_asimdtbl_l4_4"_h, &VISITORCLASS::VisitNEONTable},                  \
2583      {"tbx_asimdtbl_l1_1"_h, &VISITORCLASS::VisitNEONTable},                  \
2584      {"tbx_asimdtbl_l2_2"_h, &VISITORCLASS::VisitNEONTable},                  \
2585      {"tbx_asimdtbl_l3_3"_h, &VISITORCLASS::VisitNEONTable},                  \
2586      {"tbx_asimdtbl_l4_4"_h, &VISITORCLASS::VisitNEONTable},                  \
2587      {"adrp_only_pcreladdr"_h, &VISITORCLASS::VisitPCRelAddressing},          \
2588      {"adr_only_pcreladdr"_h, &VISITORCLASS::VisitPCRelAddressing},           \
2589      {"rmif_only_rmif"_h, &VISITORCLASS::VisitRotateRightIntoFlags},          \
2590      {"bti_hb_hints"_h, &VISITORCLASS::VisitSystem},                          \
2591      {"clrex_bn_barriers"_h, &VISITORCLASS::VisitSystem},                     \
2592      {"dmb_bo_barriers"_h, &VISITORCLASS::VisitSystem},                       \
2593      {"dsb_bo_barriers"_h, &VISITORCLASS::VisitSystem},                       \
2594      {"hint_hm_hints"_h, &VISITORCLASS::VisitSystem},                         \
2595      {"mrs_rs_systemmove"_h, &VISITORCLASS::VisitSystem},                     \
2596      {"msr_sr_systemmove"_h, &VISITORCLASS::VisitSystem},                     \
2597      {"psb_hc_hints"_h, &VISITORCLASS::VisitSystem},                          \
2598      {"sb_only_barriers"_h, &VISITORCLASS::VisitSystem},                      \
2599      {"sysl_rc_systeminstrs"_h, &VISITORCLASS::VisitSystem},                  \
2600      {"sys_cr_systeminstrs"_h, &VISITORCLASS::VisitSystem},                   \
2601      {"tcommit_only_barriers"_h, &VISITORCLASS::VisitSystem},                 \
2602      {"tsb_hc_hints"_h, &VISITORCLASS::VisitSystem},                          \
2603      {"tbnz_only_testbranch"_h, &VISITORCLASS::VisitTestBranch},              \
2604      {"tbz_only_testbranch"_h, &VISITORCLASS::VisitTestBranch},               \
2605      {"bl_only_branch_imm"_h, &VISITORCLASS::VisitUnconditionalBranch},       \
2606      {"b_only_branch_imm"_h, &VISITORCLASS::VisitUnconditionalBranch},        \
2607      {"blraaz_64_branch_reg"_h,                                               \
2608       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2609      {"blraa_64p_branch_reg"_h,                                               \
2610       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2611      {"blrabz_64_branch_reg"_h,                                               \
2612       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2613      {"blrab_64p_branch_reg"_h,                                               \
2614       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2615      {"blr_64_branch_reg"_h,                                                  \
2616       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2617      {"braaz_64_branch_reg"_h,                                                \
2618       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2619      {"braa_64p_branch_reg"_h,                                                \
2620       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2621      {"brabz_64_branch_reg"_h,                                                \
2622       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2623      {"brab_64p_branch_reg"_h,                                                \
2624       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2625      {"br_64_branch_reg"_h,                                                   \
2626       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2627      {"drps_64e_branch_reg"_h,                                                \
2628       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2629      {"eretaa_64e_branch_reg"_h,                                              \
2630       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2631      {"eretab_64e_branch_reg"_h,                                              \
2632       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2633      {"eret_64e_branch_reg"_h,                                                \
2634       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2635      {"retaa_64e_branch_reg"_h,                                               \
2636       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2637      {"retab_64e_branch_reg"_h,                                               \
2638       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2639      {"ret_64r_branch_reg"_h,                                                 \
2640       &VISITORCLASS::VisitUnconditionalBranchToRegister},                     \
2641      {"bcax_vvv16_crypto4"_h, &VISITORCLASS::VisitUnimplemented},             \
2642      {"bfcvtn_asimdmisc_4s"_h, &VISITORCLASS::VisitUnimplemented},            \
2643      {"bfdot_asimdelem_e"_h, &VISITORCLASS::VisitUnimplemented},              \
2644      {"bfdot_asimdsame2_d"_h, &VISITORCLASS::VisitUnimplemented},             \
2645      {"bfmlal_asimdelem_f"_h, &VISITORCLASS::VisitUnimplemented},             \
2646      {"bfmlal_asimdsame2_f"_h, &VISITORCLASS::VisitUnimplemented},            \
2647      {"bfmmla_asimdsame2_e"_h, &VISITORCLASS::VisitUnimplemented},            \
2648      {"dsb_bon_barriers"_h, &VISITORCLASS::VisitUnimplemented},               \
2649      {"eor3_vvv16_crypto4"_h, &VISITORCLASS::VisitUnimplemented},             \
2650      {"ld64b_64l_memop"_h, &VISITORCLASS::VisitUnimplemented},                \
2651      {"ldgm_64bulk_ldsttags"_h, &VISITORCLASS::VisitUnimplemented},           \
2652      {"ldtrb_32_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},           \
2653      {"ldtrh_32_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},           \
2654      {"ldtrsb_32_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},          \
2655      {"ldtrsb_64_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},          \
2656      {"ldtrsh_32_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},          \
2657      {"ldtrsh_64_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},          \
2658      {"ldtrsw_64_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},          \
2659      {"ldtr_32_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},            \
2660      {"ldtr_64_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},            \
2661      {"rax1_vvv2_cryptosha512_3"_h, &VISITORCLASS::VisitUnimplemented},       \
2662      {"sha512h2_qqv_cryptosha512_3"_h, &VISITORCLASS::VisitUnimplemented},    \
2663      {"sha512h_qqv_cryptosha512_3"_h, &VISITORCLASS::VisitUnimplemented},     \
2664      {"sha512su0_vv2_cryptosha512_2"_h, &VISITORCLASS::VisitUnimplemented},   \
2665      {"sha512su1_vvv2_cryptosha512_3"_h, &VISITORCLASS::VisitUnimplemented},  \
2666      {"sm3partw1_vvv4_cryptosha512_3"_h, &VISITORCLASS::VisitUnimplemented},  \
2667      {"sm3partw2_vvv4_cryptosha512_3"_h, &VISITORCLASS::VisitUnimplemented},  \
2668      {"sm3ss1_vvv4_crypto4"_h, &VISITORCLASS::VisitUnimplemented},            \
2669      {"sm3tt1a_vvv4_crypto3_imm2"_h, &VISITORCLASS::VisitUnimplemented},      \
2670      {"sm3tt1b_vvv4_crypto3_imm2"_h, &VISITORCLASS::VisitUnimplemented},      \
2671      {"sm3tt2a_vvv4_crypto3_imm2"_h, &VISITORCLASS::VisitUnimplemented},      \
2672      {"sm3tt2b_vvv_crypto3_imm2"_h, &VISITORCLASS::VisitUnimplemented},       \
2673      {"sm4ekey_vvv4_cryptosha512_3"_h, &VISITORCLASS::VisitUnimplemented},    \
2674      {"sm4e_vv4_cryptosha512_2"_h, &VISITORCLASS::VisitUnimplemented},        \
2675      {"st64b_64l_memop"_h, &VISITORCLASS::VisitUnimplemented},                \
2676      {"st64bv_64_memop"_h, &VISITORCLASS::VisitUnimplemented},                \
2677      {"st64bv0_64_memop"_h, &VISITORCLASS::VisitUnimplemented},               \
2678      {"stgm_64bulk_ldsttags"_h, &VISITORCLASS::VisitUnimplemented},           \
2679      {"sttrb_32_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},           \
2680      {"sttrh_32_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},           \
2681      {"sttr_32_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},            \
2682      {"sttr_64_ldst_unpriv"_h, &VISITORCLASS::VisitUnimplemented},            \
2683      {"stzgm_64bulk_ldsttags"_h, &VISITORCLASS::VisitUnimplemented},          \
2684      {"tcancel_ex_exception"_h, &VISITORCLASS::VisitUnimplemented},           \
2685      {"tstart_br_systemresult"_h, &VISITORCLASS::VisitUnimplemented},         \
2686      {"ttest_br_systemresult"_h, &VISITORCLASS::VisitUnimplemented},          \
2687      {"wfet_only_systeminstrswithreg"_h, &VISITORCLASS::VisitUnimplemented},  \
2688      {"wfit_only_systeminstrswithreg"_h, &VISITORCLASS::VisitUnimplemented},  \
2689      {"xar_vvv2_crypto3_imm6"_h, &VISITORCLASS::VisitUnimplemented},          \
2690      {"bfcvt_z_p_z_s2bf"_h, &VISITORCLASS::VisitUnimplemented},               \
2691      {"bfcvtnt_z_p_z_s2bf"_h, &VISITORCLASS::VisitUnimplemented},             \
2692      {"bfdot_z_zzz"_h, &VISITORCLASS::VisitUnimplemented},                    \
2693      {"bfdot_z_zzzi"_h, &VISITORCLASS::VisitUnimplemented},                   \
2694      {"bfmlalb_z_zzz"_h, &VISITORCLASS::VisitUnimplemented},                  \
2695      {"bfmlalb_z_zzzi"_h, &VISITORCLASS::VisitUnimplemented},                 \
2696      {"bfmlalt_z_zzz"_h, &VISITORCLASS::VisitUnimplemented},                  \
2697      {"bfmlalt_z_zzzi"_h, &VISITORCLASS::VisitUnimplemented},                 \
2698      {"bfmmla_z_zzz"_h, &VISITORCLASS::VisitUnimplemented}, {                 \
2699    "unallocated"_h, &VISITORCLASS::VisitUnallocated                           \
2700  }
2701
2702#define SIM_AUD_VISITOR_MAP(VISITORCLASS)                                      \
2703  {"autia1716_hi_hints"_h, &VISITORCLASS::VisitSystem},                        \
2704      {"autiasp_hi_hints"_h, &VISITORCLASS::VisitSystem},                      \
2705      {"autiaz_hi_hints"_h, &VISITORCLASS::VisitSystem},                       \
2706      {"autib1716_hi_hints"_h, &VISITORCLASS::VisitSystem},                    \
2707      {"autibsp_hi_hints"_h, &VISITORCLASS::VisitSystem},                      \
2708      {"autibz_hi_hints"_h, &VISITORCLASS::VisitSystem},                       \
2709      {"axflag_m_pstate"_h, &VISITORCLASS::VisitSystem},                       \
2710      {"cfinv_m_pstate"_h, &VISITORCLASS::VisitSystem},                        \
2711      {"csdb_hi_hints"_h, &VISITORCLASS::VisitSystem},                         \
2712      {"dgh_hi_hints"_h, &VISITORCLASS::VisitSystem},                          \
2713      {"esb_hi_hints"_h, &VISITORCLASS::VisitSystem},                          \
2714      {"isb_bi_barriers"_h, &VISITORCLASS::VisitSystem},                       \
2715      {"nop_hi_hints"_h, &VISITORCLASS::VisitSystem},                          \
2716      {"pacia1716_hi_hints"_h, &VISITORCLASS::VisitSystem},                    \
2717      {"paciasp_hi_hints"_h, &VISITORCLASS::VisitSystem},                      \
2718      {"paciaz_hi_hints"_h, &VISITORCLASS::VisitSystem},                       \
2719      {"pacib1716_hi_hints"_h, &VISITORCLASS::VisitSystem},                    \
2720      {"pacibsp_hi_hints"_h, &VISITORCLASS::VisitSystem},                      \
2721      {"pacibz_hi_hints"_h, &VISITORCLASS::VisitSystem},                       \
2722      {"sev_hi_hints"_h, &VISITORCLASS::VisitSystem},                          \
2723      {"sevl_hi_hints"_h, &VISITORCLASS::VisitSystem},                         \
2724      {"ssbb_only_barriers"_h, &VISITORCLASS::VisitSystem},                    \
2725      {"wfe_hi_hints"_h, &VISITORCLASS::VisitSystem},                          \
2726      {"wfi_hi_hints"_h, &VISITORCLASS::VisitSystem},                          \
2727      {"xaflag_m_pstate"_h, &VISITORCLASS::VisitSystem},                       \
2728      {"xpaclri_hi_hints"_h, &VISITORCLASS::VisitSystem},                      \
2729      {"yield_hi_hints"_h, &VISITORCLASS::VisitSystem},                        \
2730      {"abs_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},                 \
2731      {"cls_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},                 \
2732      {"clz_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},                 \
2733      {"cmeq_asimdmisc_z"_h, &VISITORCLASS::VisitNEON2RegMisc},                \
2734      {"cmge_asimdmisc_z"_h, &VISITORCLASS::VisitNEON2RegMisc},                \
2735      {"cmgt_asimdmisc_z"_h, &VISITORCLASS::VisitNEON2RegMisc},                \
2736      {"cmle_asimdmisc_z"_h, &VISITORCLASS::VisitNEON2RegMisc},                \
2737      {"cmlt_asimdmisc_z"_h, &VISITORCLASS::VisitNEON2RegMisc},                \
2738      {"cnt_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},                 \
2739      {"fabs_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},                \
2740      {"fcmeq_asimdmisc_fz"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2741      {"fcmge_asimdmisc_fz"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2742      {"fcmgt_asimdmisc_fz"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2743      {"fcmle_asimdmisc_fz"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2744      {"fcmlt_asimdmisc_fz"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2745      {"fcvtas_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2746      {"fcvtau_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2747      {"fcvtl_asimdmisc_l"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2748      {"fcvtms_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2749      {"fcvtmu_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2750      {"fcvtns_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2751      {"fcvtnu_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2752      {"fcvtn_asimdmisc_n"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2753      {"fcvtps_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2754      {"fcvtpu_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2755      {"fcvtxn_asimdmisc_n"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2756      {"fcvtzs_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2757      {"fcvtzu_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2758      {"fneg_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},                \
2759      {"frecpe_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2760      {"frint32x_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},            \
2761      {"frint32z_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},            \
2762      {"frint64x_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},            \
2763      {"frint64z_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},            \
2764      {"frinta_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2765      {"frinti_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2766      {"frintm_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2767      {"frintn_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2768      {"frintp_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2769      {"frintx_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2770      {"frintz_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2771      {"frsqrte_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},             \
2772      {"fsqrt_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2773      {"neg_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},                 \
2774      {"not_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},                 \
2775      {"rbit_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},                \
2776      {"rev16_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2777      {"rev32_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2778      {"rev64_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2779      {"sadalp_asimdmisc_p"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2780      {"saddlp_asimdmisc_p"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2781      {"scvtf_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2782      {"shll_asimdmisc_s"_h, &VISITORCLASS::VisitNEON2RegMisc},                \
2783      {"sqabs_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2784      {"sqneg_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2785      {"sqxtn_asimdmisc_n"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2786      {"sqxtun_asimdmisc_n"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2787      {"suqadd_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2788      {"uadalp_asimdmisc_p"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2789      {"uaddlp_asimdmisc_p"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2790      {"ucvtf_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2791      {"uqxtn_asimdmisc_n"_h, &VISITORCLASS::VisitNEON2RegMisc},               \
2792      {"urecpe_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2793      {"ursqrte_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},             \
2794      {"usqadd_asimdmisc_r"_h, &VISITORCLASS::VisitNEON2RegMisc},              \
2795      {"xtn_asimdmisc_n"_h, &VISITORCLASS::VisitNEON2RegMisc},                 \
2796      {"mla_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2797      {"mls_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2798      {"mul_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2799      {"saba_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2800      {"sabd_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2801      {"shadd_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2802      {"shsub_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2803      {"smaxp_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2804      {"smax_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2805      {"sminp_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2806      {"smin_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2807      {"srhadd_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},              \
2808      {"uaba_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2809      {"uabd_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2810      {"uhadd_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2811      {"uhsub_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2812      {"umaxp_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2813      {"umax_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2814      {"uminp_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},               \
2815      {"umin_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2816      {"urhadd_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},              \
2817      {"and_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2818      {"bic_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2819      {"bif_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2820      {"bit_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2821      {"bsl_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2822      {"eor_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2823      {"orr_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2824      {"orn_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                 \
2825      {"pmul_asimdsame_only"_h, &VISITORCLASS::VisitNEON3Same},                \
2826      {"fmlal2_asimdsame_f"_h, &VISITORCLASS::VisitNEON3Same},                 \
2827      {"fmlal_asimdsame_f"_h, &VISITORCLASS::VisitNEON3Same},                  \
2828      {"fmlsl2_asimdsame_f"_h, &VISITORCLASS::VisitNEON3Same},                 \
2829      {"fmlsl_asimdsame_f"_h, &VISITORCLASS::VisitNEON3Same},                  \
2830      {"ushll_asimdshf_l"_h, &VISITORCLASS::VisitNEONShiftImmediate},          \
2831      {"sshll_asimdshf_l"_h, &VISITORCLASS::VisitNEONShiftImmediate},          \
2832      {"shrn_asimdshf_n"_h, &VISITORCLASS::VisitNEONShiftImmediate},           \
2833      {"rshrn_asimdshf_n"_h, &VISITORCLASS::VisitNEONShiftImmediate},          \
2834      {"sqshrn_asimdshf_n"_h, &VISITORCLASS::VisitNEONShiftImmediate},         \
2835      {"sqrshrn_asimdshf_n"_h, &VISITORCLASS::VisitNEONShiftImmediate},        \
2836      {"sqshrun_asimdshf_n"_h, &VISITORCLASS::VisitNEONShiftImmediate},        \
2837      {"sqrshrun_asimdshf_n"_h, &VISITORCLASS::VisitNEONShiftImmediate},       \
2838      {"uqshrn_asimdshf_n"_h, &VISITORCLASS::VisitNEONShiftImmediate},         \
2839      {"uqrshrn_asimdshf_n"_h, &VISITORCLASS::VisitNEONShiftImmediate},        \
2840      {"sri_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},            \
2841      {"srshr_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},          \
2842      {"srsra_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},          \
2843      {"sshr_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},           \
2844      {"ssra_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},           \
2845      {"urshr_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},          \
2846      {"ursra_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},          \
2847      {"ushr_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},           \
2848      {"usra_asimdshf_r"_h, &VISITORCLASS::VisitNEONShiftImmediate},           \
2849      {"scvtf_asimdshf_c"_h, &VISITORCLASS::VisitNEONShiftImmediate},          \
2850      {"ucvtf_asimdshf_c"_h, &VISITORCLASS::VisitNEONShiftImmediate},          \
2851      {"fcvtzs_asimdshf_c"_h, &VISITORCLASS::VisitNEONShiftImmediate},         \
2852      {"fcvtzu_asimdshf_c"_h, &VISITORCLASS::VisitNEONShiftImmediate},         \
2853      {"sqdmlal_asisdelem_l"_h,                                                \
2854       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2855      {"sqdmlsl_asisdelem_l"_h,                                                \
2856       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2857      {"sqdmull_asisdelem_l"_h,                                                \
2858       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2859      {"fmla_asisdelem_rh_h"_h,                                                \
2860       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2861      {"fmla_asisdelem_r_sd"_h,                                                \
2862       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2863      {"fmls_asisdelem_rh_h"_h,                                                \
2864       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2865      {"fmls_asisdelem_r_sd"_h,                                                \
2866       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2867      {"fmulx_asisdelem_rh_h"_h,                                               \
2868       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2869      {"fmulx_asisdelem_r_sd"_h,                                               \
2870       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2871      {"fmul_asisdelem_rh_h"_h,                                                \
2872       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2873      {"fmul_asisdelem_r_sd"_h,                                                \
2874       &VISITORCLASS::VisitNEONScalarByIndexedElement},                        \
2875      {"fabd_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},          \
2876      {"facge_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2877      {"facgt_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2878      {"fcmeq_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2879      {"fcmge_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2880      {"fcmgt_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2881      {"fmulx_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2882      {"frecps_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},        \
2883      {"frsqrts_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},       \
2884      {"cmeq_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},          \
2885      {"cmge_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},          \
2886      {"cmgt_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},          \
2887      {"cmhi_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},          \
2888      {"cmhs_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},          \
2889      {"cmtst_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},         \
2890      {"add_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},           \
2891      {"sub_asisdsame_only"_h, &VISITORCLASS::VisitNEONScalar3Same},           \
2892      {"sqrdmlah_asisdsame2_only"_h,                                           \
2893       &VISITORCLASS::VisitNEONScalar3SameExtra},                              \
2894      {"sqrdmlsh_asisdsame2_only"_h,                                           \
2895       &VISITORCLASS::VisitNEONScalar3SameExtra},                              \
2896      {"fmaxnmv_asimdall_only_h"_h, &VISITORCLASS::VisitNEONAcrossLanes},      \
2897      {"fmaxv_asimdall_only_h"_h, &VISITORCLASS::VisitNEONAcrossLanes},        \
2898      {"fminnmv_asimdall_only_h"_h, &VISITORCLASS::VisitNEONAcrossLanes},      \
2899      {"fminv_asimdall_only_h"_h, &VISITORCLASS::VisitNEONAcrossLanes},        \
2900      {"fmaxnmv_asimdall_only_sd"_h, &VISITORCLASS::VisitNEONAcrossLanes},     \
2901      {"fminnmv_asimdall_only_sd"_h, &VISITORCLASS::VisitNEONAcrossLanes},     \
2902      {"fmaxv_asimdall_only_sd"_h, &VISITORCLASS::VisitNEONAcrossLanes},       \
2903      {"fminv_asimdall_only_sd"_h, &VISITORCLASS::VisitNEONAcrossLanes},       \
2904      {"shl_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},      \
2905      {"sli_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},      \
2906      {"sri_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},      \
2907      {"srshr_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},    \
2908      {"srsra_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},    \
2909      {"sshr_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},     \
2910      {"ssra_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},     \
2911      {"urshr_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},    \
2912      {"ursra_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},    \
2913      {"ushr_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},     \
2914      {"usra_asisdshf_r"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},     \
2915      {"sqrshrn_asisdshf_n"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},  \
2916      {"sqrshrun_asisdshf_n"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate}, \
2917      {"sqshrn_asisdshf_n"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},   \
2918      {"sqshrun_asisdshf_n"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},  \
2919      {"uqrshrn_asisdshf_n"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},  \
2920      {"uqshrn_asisdshf_n"_h, &VISITORCLASS::VisitNEONScalarShiftImmediate},   \
2921      {"cmeq_asisdmisc_z"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},          \
2922      {"cmge_asisdmisc_z"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},          \
2923      {"cmgt_asisdmisc_z"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},          \
2924      {"cmle_asisdmisc_z"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},          \
2925      {"cmlt_asisdmisc_z"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},          \
2926      {"abs_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},           \
2927      {"neg_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},           \
2928      {"fcmeq_asisdmisc_fz"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2929      {"fcmge_asisdmisc_fz"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2930      {"fcmgt_asisdmisc_fz"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2931      {"fcmle_asisdmisc_fz"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2932      {"fcmlt_asisdmisc_fz"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2933      {"fcvtas_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2934      {"fcvtau_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2935      {"fcvtms_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2936      {"fcvtmu_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2937      {"fcvtns_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2938      {"fcvtnu_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2939      {"fcvtps_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2940      {"fcvtpu_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2941      {"fcvtxn_asisdmisc_n"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2942      {"fcvtzs_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2943      {"fcvtzu_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2944      {"frecpe_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2945      {"frecpx_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},        \
2946      {"frsqrte_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc},       \
2947      {"scvtf_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc}, {       \
2948    "ucvtf_asisdmisc_r"_h, &VISITORCLASS::VisitNEONScalar2RegMisc              \
2949  }
2950