/* This file is autogenerated by scripts/decodetree.py. */ typedef struct { int esz; int imm1; int imm2; int rd; } arg_disas_sve25; typedef struct { int esz; int imm; int rd; int rm; } arg_disas_sve26; typedef struct { int imm; int rd; } arg_disas_sve27; typedef struct { int rd; int rn; } arg_disas_sve28; typedef struct { int dbm; int rd; } arg_disas_sve29; typedef struct { int esz; int h; int rd; int rn; int u; } arg_disas_sve30; typedef struct { int pg; int rn; } arg_disas_sve31; typedef struct { #ifdef _MSC_VER int dummy; #endif } arg_disas_sve32; typedef struct { int rd; } arg_disas_sve33; typedef struct { int pg; int rd; int s; } arg_disas_sve34; typedef struct { int rn; } arg_disas_sve35; typedef struct { int ne; int rm; int rn; int sf; } arg_disas_sve36; typedef struct { int eq; int esz; int rd; int rm; int rn; int sf; int u; } arg_disas_sve37; typedef struct { int esz; int imm; int rd; } arg_disas_sve38; typedef struct { int ra; int rd; int rm; int rn; int sz; int u; } arg_disas_sve39; typedef struct { int index; int ra; int rd; int rm; int rn; int sz; int u; } arg_disas_sve40; typedef struct { int esz; int pg; int rd; int rm; int rn; int rot; } arg_disas_sve41; typedef struct { int esz; int pg; int ra; int rd; int rm; int rn; int rot; } arg_disas_sve42; typedef struct { int esz; int index; int ra; int rd; int rm; int rn; int rot; } arg_disas_sve43; typedef struct { int esz; int index; int ra; int rd; int rm; int rn; int sub; } arg_disas_sve44; typedef struct { int esz; int index; int rd; int rm; int rn; } arg_disas_sve45; typedef struct { int esz; int imm; int rd; int rm; int rn; } arg_disas_sve46; typedef struct { int rm; } arg_disas_sve47; typedef struct { int d; int esz; int imm; int pat; int rd; int rn; int u; } arg_incdec2_cnt; typedef struct { int d; int esz; int pg; int rd; int rn; int u; } arg_incdec2_pred; typedef struct { int d; int esz; int imm; int pat; int rd; int u; } arg_incdec_cnt; typedef struct { int d; int esz; int pg; int rd; int u; } arg_incdec_pred; typedef struct { int esz; int pat; int rd; int s; } arg_ptrue; typedef struct { int esz; int pg; int rd; int rn; } arg_rpr_esz; typedef struct { int pg; int rd; int rn; int s; } arg_rpr_s; typedef struct { int esz; int imm; int pg; int rd; int rn; } arg_rpri_esz; typedef struct { int esz; int ff; int imm; int msz; int pg; int rd; int rn; int u; } arg_rpri_gather_load; typedef struct { int dtype; int imm; int nreg; int pg; int rd; int rn; } arg_rpri_load; typedef struct { int esz; int imm; int msz; int pg; int rd; int rn; } arg_rpri_scatter_store; typedef struct { int esz; int imm; int msz; int nreg; int pg; int rd; int rn; } arg_rpri_store; typedef struct { int esz; int pg; int rd; int rm; int rn; } arg_rprr_esz; typedef struct { int esz; int ff; int msz; int pg; int rd; int rm; int rn; int scale; int u; int xs; } arg_rprr_gather_load; typedef struct { int dtype; int nreg; int pg; int rd; int rm; int rn; } arg_rprr_load; typedef struct { int pg; int rd; int rm; int rn; int s; } arg_rprr_s; typedef struct { int esz; int msz; int pg; int rd; int rm; int rn; int scale; int xs; } arg_rprr_scatter_store; typedef struct { int esz; int msz; int nreg; int pg; int rd; int rm; int rn; } arg_rprr_store; typedef struct { int esz; int pg; int ra; int rd; int rm; int rn; } arg_rprrr_esz; typedef struct { int dbm; int rd; int rn; } arg_rr_dbm; typedef struct { int esz; int rd; int rn; } arg_rr_esz; typedef struct { int imm; int rd; int rn; } arg_rri; typedef struct { int esz; int imm; int rd; int rn; } arg_rri_esz; typedef struct { int esz; int rd; int rm; int rn; } arg_rrr_esz; typedef struct { int imm; int rd; int rm; int rn; } arg_rrri; typedef arg_rprr_esz arg_ORR_zpzz; static bool trans_ORR_zpzz(DisasContext *ctx, arg_ORR_zpzz *a); typedef arg_rprr_esz arg_EOR_zpzz; static bool trans_EOR_zpzz(DisasContext *ctx, arg_EOR_zpzz *a); typedef arg_rprr_esz arg_AND_zpzz; static bool trans_AND_zpzz(DisasContext *ctx, arg_AND_zpzz *a); typedef arg_rprr_esz arg_BIC_zpzz; static bool trans_BIC_zpzz(DisasContext *ctx, arg_BIC_zpzz *a); typedef arg_rprr_esz arg_ADD_zpzz; static bool trans_ADD_zpzz(DisasContext *ctx, arg_ADD_zpzz *a); typedef arg_rprr_esz arg_SUB_zpzz; static bool trans_SUB_zpzz(DisasContext *ctx, arg_SUB_zpzz *a); typedef arg_rprr_esz arg_SMAX_zpzz; static bool trans_SMAX_zpzz(DisasContext *ctx, arg_SMAX_zpzz *a); typedef arg_rprr_esz arg_UMAX_zpzz; static bool trans_UMAX_zpzz(DisasContext *ctx, arg_UMAX_zpzz *a); typedef arg_rprr_esz arg_SMIN_zpzz; static bool trans_SMIN_zpzz(DisasContext *ctx, arg_SMIN_zpzz *a); typedef arg_rprr_esz arg_UMIN_zpzz; static bool trans_UMIN_zpzz(DisasContext *ctx, arg_UMIN_zpzz *a); typedef arg_rprr_esz arg_SABD_zpzz; static bool trans_SABD_zpzz(DisasContext *ctx, arg_SABD_zpzz *a); typedef arg_rprr_esz arg_UABD_zpzz; static bool trans_UABD_zpzz(DisasContext *ctx, arg_UABD_zpzz *a); typedef arg_rprr_esz arg_MUL_zpzz; static bool trans_MUL_zpzz(DisasContext *ctx, arg_MUL_zpzz *a); typedef arg_rprr_esz arg_SMULH_zpzz; static bool trans_SMULH_zpzz(DisasContext *ctx, arg_SMULH_zpzz *a); typedef arg_rprr_esz arg_UMULH_zpzz; static bool trans_UMULH_zpzz(DisasContext *ctx, arg_UMULH_zpzz *a); typedef arg_rprr_esz arg_SDIV_zpzz; static bool trans_SDIV_zpzz(DisasContext *ctx, arg_SDIV_zpzz *a); typedef arg_rprr_esz arg_UDIV_zpzz; static bool trans_UDIV_zpzz(DisasContext *ctx, arg_UDIV_zpzz *a); typedef arg_rpr_esz arg_ORV; static bool trans_ORV(DisasContext *ctx, arg_ORV *a); typedef arg_rpr_esz arg_EORV; static bool trans_EORV(DisasContext *ctx, arg_EORV *a); typedef arg_rpr_esz arg_ANDV; static bool trans_ANDV(DisasContext *ctx, arg_ANDV *a); typedef arg_rpr_esz arg_MOVPRFX_z; static bool trans_MOVPRFX_z(DisasContext *ctx, arg_MOVPRFX_z *a); typedef arg_rpr_esz arg_MOVPRFX_m; static bool trans_MOVPRFX_m(DisasContext *ctx, arg_MOVPRFX_m *a); typedef arg_rpr_esz arg_UADDV; static bool trans_UADDV(DisasContext *ctx, arg_UADDV *a); typedef arg_rpr_esz arg_SADDV; static bool trans_SADDV(DisasContext *ctx, arg_SADDV *a); typedef arg_rpr_esz arg_SMAXV; static bool trans_SMAXV(DisasContext *ctx, arg_SMAXV *a); typedef arg_rpr_esz arg_UMAXV; static bool trans_UMAXV(DisasContext *ctx, arg_UMAXV *a); typedef arg_rpr_esz arg_SMINV; static bool trans_SMINV(DisasContext *ctx, arg_SMINV *a); typedef arg_rpr_esz arg_UMINV; static bool trans_UMINV(DisasContext *ctx, arg_UMINV *a); typedef arg_rpri_esz arg_ASR_zpzi; static bool trans_ASR_zpzi(DisasContext *ctx, arg_ASR_zpzi *a); typedef arg_rpri_esz arg_LSR_zpzi; static bool trans_LSR_zpzi(DisasContext *ctx, arg_LSR_zpzi *a); typedef arg_rpri_esz arg_LSL_zpzi; static bool trans_LSL_zpzi(DisasContext *ctx, arg_LSL_zpzi *a); typedef arg_rpri_esz arg_ASRD; static bool trans_ASRD(DisasContext *ctx, arg_ASRD *a); typedef arg_rprr_esz arg_ASR_zpzz; static bool trans_ASR_zpzz(DisasContext *ctx, arg_ASR_zpzz *a); typedef arg_rprr_esz arg_LSR_zpzz; static bool trans_LSR_zpzz(DisasContext *ctx, arg_LSR_zpzz *a); typedef arg_rprr_esz arg_LSL_zpzz; static bool trans_LSL_zpzz(DisasContext *ctx, arg_LSL_zpzz *a); typedef arg_rprr_esz arg_ASR_zpzw; static bool trans_ASR_zpzw(DisasContext *ctx, arg_ASR_zpzw *a); typedef arg_rprr_esz arg_LSR_zpzw; static bool trans_LSR_zpzw(DisasContext *ctx, arg_LSR_zpzw *a); typedef arg_rprr_esz arg_LSL_zpzw; static bool trans_LSL_zpzw(DisasContext *ctx, arg_LSL_zpzw *a); typedef arg_rpr_esz arg_CLS; static bool trans_CLS(DisasContext *ctx, arg_CLS *a); typedef arg_rpr_esz arg_CLZ; static bool trans_CLZ(DisasContext *ctx, arg_CLZ *a); typedef arg_rpr_esz arg_CNT_zpz; static bool trans_CNT_zpz(DisasContext *ctx, arg_CNT_zpz *a); typedef arg_rpr_esz arg_CNOT; static bool trans_CNOT(DisasContext *ctx, arg_CNOT *a); typedef arg_rpr_esz arg_NOT_zpz; static bool trans_NOT_zpz(DisasContext *ctx, arg_NOT_zpz *a); typedef arg_rpr_esz arg_FABS; static bool trans_FABS(DisasContext *ctx, arg_FABS *a); typedef arg_rpr_esz arg_FNEG; static bool trans_FNEG(DisasContext *ctx, arg_FNEG *a); typedef arg_rpr_esz arg_ABS; static bool trans_ABS(DisasContext *ctx, arg_ABS *a); typedef arg_rpr_esz arg_NEG; static bool trans_NEG(DisasContext *ctx, arg_NEG *a); typedef arg_rpr_esz arg_SXTB; static bool trans_SXTB(DisasContext *ctx, arg_SXTB *a); typedef arg_rpr_esz arg_UXTB; static bool trans_UXTB(DisasContext *ctx, arg_UXTB *a); typedef arg_rpr_esz arg_SXTH; static bool trans_SXTH(DisasContext *ctx, arg_SXTH *a); typedef arg_rpr_esz arg_UXTH; static bool trans_UXTH(DisasContext *ctx, arg_UXTH *a); typedef arg_rpr_esz arg_SXTW; static bool trans_SXTW(DisasContext *ctx, arg_SXTW *a); typedef arg_rpr_esz arg_UXTW; static bool trans_UXTW(DisasContext *ctx, arg_UXTW *a); typedef arg_rprr_esz arg_FCMGE_ppzz; static bool trans_FCMGE_ppzz(DisasContext *ctx, arg_FCMGE_ppzz *a); typedef arg_rprr_esz arg_FCMGT_ppzz; static bool trans_FCMGT_ppzz(DisasContext *ctx, arg_FCMGT_ppzz *a); typedef arg_rprr_esz arg_FCMEQ_ppzz; static bool trans_FCMEQ_ppzz(DisasContext *ctx, arg_FCMEQ_ppzz *a); typedef arg_rprr_esz arg_FCMNE_ppzz; static bool trans_FCMNE_ppzz(DisasContext *ctx, arg_FCMNE_ppzz *a); typedef arg_rprr_esz arg_FCMUO_ppzz; static bool trans_FCMUO_ppzz(DisasContext *ctx, arg_FCMUO_ppzz *a); typedef arg_rprr_esz arg_FACGE_ppzz; static bool trans_FACGE_ppzz(DisasContext *ctx, arg_FACGE_ppzz *a); typedef arg_rprr_esz arg_FACGT_ppzz; static bool trans_FACGT_ppzz(DisasContext *ctx, arg_FACGT_ppzz *a); typedef arg_rprrr_esz arg_MLA; static bool trans_MLA(DisasContext *ctx, arg_MLA *a); typedef arg_rprrr_esz arg_MLS; static bool trans_MLS(DisasContext *ctx, arg_MLS *a); typedef arg_rrr_esz arg_ADD_zzz; static bool trans_ADD_zzz(DisasContext *ctx, arg_ADD_zzz *a); typedef arg_rrr_esz arg_SUB_zzz; static bool trans_SUB_zzz(DisasContext *ctx, arg_SUB_zzz *a); typedef arg_rrr_esz arg_SQADD_zzz; static bool trans_SQADD_zzz(DisasContext *ctx, arg_SQADD_zzz *a); typedef arg_rrr_esz arg_UQADD_zzz; static bool trans_UQADD_zzz(DisasContext *ctx, arg_UQADD_zzz *a); typedef arg_rrr_esz arg_SQSUB_zzz; static bool trans_SQSUB_zzz(DisasContext *ctx, arg_SQSUB_zzz *a); typedef arg_rrr_esz arg_UQSUB_zzz; static bool trans_UQSUB_zzz(DisasContext *ctx, arg_UQSUB_zzz *a); typedef arg_rrr_esz arg_AND_zzz; static bool trans_AND_zzz(DisasContext *ctx, arg_AND_zzz *a); typedef arg_rrr_esz arg_ORR_zzz; static bool trans_ORR_zzz(DisasContext *ctx, arg_ORR_zzz *a); typedef arg_rrr_esz arg_EOR_zzz; static bool trans_EOR_zzz(DisasContext *ctx, arg_EOR_zzz *a); typedef arg_rrr_esz arg_BIC_zzz; static bool trans_BIC_zzz(DisasContext *ctx, arg_BIC_zzz *a); typedef arg_disas_sve25 arg_INDEX_ii; static bool trans_INDEX_ii(DisasContext *ctx, arg_INDEX_ii *a); typedef arg_disas_sve26 arg_INDEX_ir; static bool trans_INDEX_ir(DisasContext *ctx, arg_INDEX_ir *a); typedef arg_rri_esz arg_INDEX_ri; static bool trans_INDEX_ri(DisasContext *ctx, arg_INDEX_ri *a); typedef arg_rrr_esz arg_INDEX_rr; static bool trans_INDEX_rr(DisasContext *ctx, arg_INDEX_rr *a); typedef arg_rri arg_ADDVL; static bool trans_ADDVL(DisasContext *ctx, arg_ADDVL *a); typedef arg_rri arg_ADDPL; static bool trans_ADDPL(DisasContext *ctx, arg_ADDPL *a); typedef arg_disas_sve27 arg_RDVL; static bool trans_RDVL(DisasContext *ctx, arg_RDVL *a); typedef arg_rri_esz arg_ASR_zzi; static bool trans_ASR_zzi(DisasContext *ctx, arg_ASR_zzi *a); typedef arg_rri_esz arg_LSR_zzi; static bool trans_LSR_zzi(DisasContext *ctx, arg_LSR_zzi *a); typedef arg_rri_esz arg_LSL_zzi; static bool trans_LSL_zzi(DisasContext *ctx, arg_LSL_zzi *a); typedef arg_rrr_esz arg_ASR_zzw; static bool trans_ASR_zzw(DisasContext *ctx, arg_ASR_zzw *a); typedef arg_rrr_esz arg_LSR_zzw; static bool trans_LSR_zzw(DisasContext *ctx, arg_LSR_zzw *a); typedef arg_rrr_esz arg_LSL_zzw; static bool trans_LSL_zzw(DisasContext *ctx, arg_LSL_zzw *a); typedef arg_rrri arg_ADR_s32; static bool trans_ADR_s32(DisasContext *ctx, arg_ADR_s32 *a); typedef arg_rrri arg_ADR_u32; static bool trans_ADR_u32(DisasContext *ctx, arg_ADR_u32 *a); typedef arg_rrri arg_ADR_p32; static bool trans_ADR_p32(DisasContext *ctx, arg_ADR_p32 *a); typedef arg_rrri arg_ADR_p64; static bool trans_ADR_p64(DisasContext *ctx, arg_ADR_p64 *a); typedef arg_disas_sve28 arg_MOVPRFX; static bool trans_MOVPRFX(DisasContext *ctx, arg_MOVPRFX *a); typedef arg_rr_esz arg_FEXPA; static bool trans_FEXPA(DisasContext *ctx, arg_FEXPA *a); typedef arg_rrr_esz arg_FTSSEL; static bool trans_FTSSEL(DisasContext *ctx, arg_FTSSEL *a); typedef arg_incdec_cnt arg_CNT_r; static bool trans_CNT_r(DisasContext *ctx, arg_CNT_r *a); typedef arg_incdec_cnt arg_INCDEC_r; static bool trans_INCDEC_r(DisasContext *ctx, arg_INCDEC_r *a); typedef arg_incdec_cnt arg_SINCDEC_r_32; static bool trans_SINCDEC_r_32(DisasContext *ctx, arg_SINCDEC_r_32 *a); typedef arg_incdec_cnt arg_SINCDEC_r_64; static bool trans_SINCDEC_r_64(DisasContext *ctx, arg_SINCDEC_r_64 *a); typedef arg_incdec2_cnt arg_INCDEC_v; static bool trans_INCDEC_v(DisasContext *ctx, arg_INCDEC_v *a); typedef arg_incdec2_cnt arg_SINCDEC_v; static bool trans_SINCDEC_v(DisasContext *ctx, arg_SINCDEC_v *a); typedef arg_rr_dbm arg_ORR_zzi; static bool trans_ORR_zzi(DisasContext *ctx, arg_ORR_zzi *a); typedef arg_rr_dbm arg_EOR_zzi; static bool trans_EOR_zzi(DisasContext *ctx, arg_EOR_zzi *a); typedef arg_rr_dbm arg_AND_zzi; static bool trans_AND_zzi(DisasContext *ctx, arg_AND_zzi *a); typedef arg_disas_sve29 arg_DUPM; static bool trans_DUPM(DisasContext *ctx, arg_DUPM *a); typedef arg_rpri_esz arg_FCPY; static bool trans_FCPY(DisasContext *ctx, arg_FCPY *a); typedef arg_rpri_esz arg_CPY_m_i; static bool trans_CPY_m_i(DisasContext *ctx, arg_CPY_m_i *a); typedef arg_rpri_esz arg_CPY_z_i; static bool trans_CPY_z_i(DisasContext *ctx, arg_CPY_z_i *a); typedef arg_rrri arg_EXT; static bool trans_EXT(DisasContext *ctx, arg_EXT *a); typedef arg_rr_esz arg_DUP_s; static bool trans_DUP_s(DisasContext *ctx, arg_DUP_s *a); typedef arg_rri arg_DUP_x; static bool trans_DUP_x(DisasContext *ctx, arg_DUP_x *a); typedef arg_rrr_esz arg_INSR_f; static bool trans_INSR_f(DisasContext *ctx, arg_INSR_f *a); typedef arg_rrr_esz arg_INSR_r; static bool trans_INSR_r(DisasContext *ctx, arg_INSR_r *a); typedef arg_rr_esz arg_REV_v; static bool trans_REV_v(DisasContext *ctx, arg_REV_v *a); typedef arg_rrr_esz arg_TBL; static bool trans_TBL(DisasContext *ctx, arg_TBL *a); typedef arg_disas_sve30 arg_UNPK; static bool trans_UNPK(DisasContext *ctx, arg_UNPK *a); typedef arg_rrr_esz arg_ZIP1_p; static bool trans_ZIP1_p(DisasContext *ctx, arg_ZIP1_p *a); typedef arg_rrr_esz arg_ZIP2_p; static bool trans_ZIP2_p(DisasContext *ctx, arg_ZIP2_p *a); typedef arg_rrr_esz arg_UZP1_p; static bool trans_UZP1_p(DisasContext *ctx, arg_UZP1_p *a); typedef arg_rrr_esz arg_UZP2_p; static bool trans_UZP2_p(DisasContext *ctx, arg_UZP2_p *a); typedef arg_rrr_esz arg_TRN1_p; static bool trans_TRN1_p(DisasContext *ctx, arg_TRN1_p *a); typedef arg_rrr_esz arg_TRN2_p; static bool trans_TRN2_p(DisasContext *ctx, arg_TRN2_p *a); typedef arg_rr_esz arg_REV_p; static bool trans_REV_p(DisasContext *ctx, arg_REV_p *a); typedef arg_rr_esz arg_PUNPKLO; static bool trans_PUNPKLO(DisasContext *ctx, arg_PUNPKLO *a); typedef arg_rr_esz arg_PUNPKHI; static bool trans_PUNPKHI(DisasContext *ctx, arg_PUNPKHI *a); typedef arg_rrr_esz arg_ZIP1_z; static bool trans_ZIP1_z(DisasContext *ctx, arg_ZIP1_z *a); typedef arg_rrr_esz arg_ZIP2_z; static bool trans_ZIP2_z(DisasContext *ctx, arg_ZIP2_z *a); typedef arg_rrr_esz arg_UZP1_z; static bool trans_UZP1_z(DisasContext *ctx, arg_UZP1_z *a); typedef arg_rrr_esz arg_UZP2_z; static bool trans_UZP2_z(DisasContext *ctx, arg_UZP2_z *a); typedef arg_rrr_esz arg_TRN1_z; static bool trans_TRN1_z(DisasContext *ctx, arg_TRN1_z *a); typedef arg_rrr_esz arg_TRN2_z; static bool trans_TRN2_z(DisasContext *ctx, arg_TRN2_z *a); typedef arg_rpr_esz arg_COMPACT; static bool trans_COMPACT(DisasContext *ctx, arg_COMPACT *a); typedef arg_rprr_esz arg_CLASTA_z; static bool trans_CLASTA_z(DisasContext *ctx, arg_CLASTA_z *a); typedef arg_rprr_esz arg_CLASTB_z; static bool trans_CLASTB_z(DisasContext *ctx, arg_CLASTB_z *a); typedef arg_rpr_esz arg_CLASTA_v; static bool trans_CLASTA_v(DisasContext *ctx, arg_CLASTA_v *a); typedef arg_rpr_esz arg_CLASTB_v; static bool trans_CLASTB_v(DisasContext *ctx, arg_CLASTB_v *a); typedef arg_rpr_esz arg_CLASTA_r; static bool trans_CLASTA_r(DisasContext *ctx, arg_CLASTA_r *a); typedef arg_rpr_esz arg_CLASTB_r; static bool trans_CLASTB_r(DisasContext *ctx, arg_CLASTB_r *a); typedef arg_rpr_esz arg_LASTA_v; static bool trans_LASTA_v(DisasContext *ctx, arg_LASTA_v *a); typedef arg_rpr_esz arg_LASTB_v; static bool trans_LASTB_v(DisasContext *ctx, arg_LASTB_v *a); typedef arg_rpr_esz arg_LASTA_r; static bool trans_LASTA_r(DisasContext *ctx, arg_LASTA_r *a); typedef arg_rpr_esz arg_LASTB_r; static bool trans_LASTB_r(DisasContext *ctx, arg_LASTB_r *a); typedef arg_rpr_esz arg_CPY_m_v; static bool trans_CPY_m_v(DisasContext *ctx, arg_CPY_m_v *a); typedef arg_rpr_esz arg_CPY_m_r; static bool trans_CPY_m_r(DisasContext *ctx, arg_CPY_m_r *a); typedef arg_rpr_esz arg_REVB; static bool trans_REVB(DisasContext *ctx, arg_REVB *a); typedef arg_rpr_esz arg_REVH; static bool trans_REVH(DisasContext *ctx, arg_REVH *a); typedef arg_rpr_esz arg_REVW; static bool trans_REVW(DisasContext *ctx, arg_REVW *a); typedef arg_rpr_esz arg_RBIT; static bool trans_RBIT(DisasContext *ctx, arg_RBIT *a); typedef arg_rprr_esz arg_SPLICE; static bool trans_SPLICE(DisasContext *ctx, arg_SPLICE *a); typedef arg_rprr_esz arg_SEL_zpzz; static bool trans_SEL_zpzz(DisasContext *ctx, arg_SEL_zpzz *a); typedef arg_rprr_esz arg_CMPHS_ppzz; static bool trans_CMPHS_ppzz(DisasContext *ctx, arg_CMPHS_ppzz *a); typedef arg_rprr_esz arg_CMPHI_ppzz; static bool trans_CMPHI_ppzz(DisasContext *ctx, arg_CMPHI_ppzz *a); typedef arg_rprr_esz arg_CMPGE_ppzz; static bool trans_CMPGE_ppzz(DisasContext *ctx, arg_CMPGE_ppzz *a); typedef arg_rprr_esz arg_CMPGT_ppzz; static bool trans_CMPGT_ppzz(DisasContext *ctx, arg_CMPGT_ppzz *a); typedef arg_rprr_esz arg_CMPEQ_ppzz; static bool trans_CMPEQ_ppzz(DisasContext *ctx, arg_CMPEQ_ppzz *a); typedef arg_rprr_esz arg_CMPNE_ppzz; static bool trans_CMPNE_ppzz(DisasContext *ctx, arg_CMPNE_ppzz *a); typedef arg_rprr_esz arg_CMPEQ_ppzw; static bool trans_CMPEQ_ppzw(DisasContext *ctx, arg_CMPEQ_ppzw *a); typedef arg_rprr_esz arg_CMPNE_ppzw; static bool trans_CMPNE_ppzw(DisasContext *ctx, arg_CMPNE_ppzw *a); typedef arg_rprr_esz arg_CMPGE_ppzw; static bool trans_CMPGE_ppzw(DisasContext *ctx, arg_CMPGE_ppzw *a); typedef arg_rprr_esz arg_CMPGT_ppzw; static bool trans_CMPGT_ppzw(DisasContext *ctx, arg_CMPGT_ppzw *a); typedef arg_rprr_esz arg_CMPLT_ppzw; static bool trans_CMPLT_ppzw(DisasContext *ctx, arg_CMPLT_ppzw *a); typedef arg_rprr_esz arg_CMPLE_ppzw; static bool trans_CMPLE_ppzw(DisasContext *ctx, arg_CMPLE_ppzw *a); typedef arg_rprr_esz arg_CMPHS_ppzw; static bool trans_CMPHS_ppzw(DisasContext *ctx, arg_CMPHS_ppzw *a); typedef arg_rprr_esz arg_CMPHI_ppzw; static bool trans_CMPHI_ppzw(DisasContext *ctx, arg_CMPHI_ppzw *a); typedef arg_rprr_esz arg_CMPLO_ppzw; static bool trans_CMPLO_ppzw(DisasContext *ctx, arg_CMPLO_ppzw *a); typedef arg_rprr_esz arg_CMPLS_ppzw; static bool trans_CMPLS_ppzw(DisasContext *ctx, arg_CMPLS_ppzw *a); typedef arg_rpri_esz arg_CMPHS_ppzi; static bool trans_CMPHS_ppzi(DisasContext *ctx, arg_CMPHS_ppzi *a); typedef arg_rpri_esz arg_CMPHI_ppzi; static bool trans_CMPHI_ppzi(DisasContext *ctx, arg_CMPHI_ppzi *a); typedef arg_rpri_esz arg_CMPLO_ppzi; static bool trans_CMPLO_ppzi(DisasContext *ctx, arg_CMPLO_ppzi *a); typedef arg_rpri_esz arg_CMPLS_ppzi; static bool trans_CMPLS_ppzi(DisasContext *ctx, arg_CMPLS_ppzi *a); typedef arg_rpri_esz arg_CMPGE_ppzi; static bool trans_CMPGE_ppzi(DisasContext *ctx, arg_CMPGE_ppzi *a); typedef arg_rpri_esz arg_CMPGT_ppzi; static bool trans_CMPGT_ppzi(DisasContext *ctx, arg_CMPGT_ppzi *a); typedef arg_rpri_esz arg_CMPLT_ppzi; static bool trans_CMPLT_ppzi(DisasContext *ctx, arg_CMPLT_ppzi *a); typedef arg_rpri_esz arg_CMPLE_ppzi; static bool trans_CMPLE_ppzi(DisasContext *ctx, arg_CMPLE_ppzi *a); typedef arg_rpri_esz arg_CMPEQ_ppzi; static bool trans_CMPEQ_ppzi(DisasContext *ctx, arg_CMPEQ_ppzi *a); typedef arg_rpri_esz arg_CMPNE_ppzi; static bool trans_CMPNE_ppzi(DisasContext *ctx, arg_CMPNE_ppzi *a); typedef arg_rprr_s arg_AND_pppp; static bool trans_AND_pppp(DisasContext *ctx, arg_AND_pppp *a); typedef arg_rprr_s arg_BIC_pppp; static bool trans_BIC_pppp(DisasContext *ctx, arg_BIC_pppp *a); typedef arg_rprr_s arg_EOR_pppp; static bool trans_EOR_pppp(DisasContext *ctx, arg_EOR_pppp *a); typedef arg_rprr_s arg_SEL_pppp; static bool trans_SEL_pppp(DisasContext *ctx, arg_SEL_pppp *a); typedef arg_rprr_s arg_ORR_pppp; static bool trans_ORR_pppp(DisasContext *ctx, arg_ORR_pppp *a); typedef arg_rprr_s arg_ORN_pppp; static bool trans_ORN_pppp(DisasContext *ctx, arg_ORN_pppp *a); typedef arg_rprr_s arg_NOR_pppp; static bool trans_NOR_pppp(DisasContext *ctx, arg_NOR_pppp *a); typedef arg_rprr_s arg_NAND_pppp; static bool trans_NAND_pppp(DisasContext *ctx, arg_NAND_pppp *a); typedef arg_disas_sve31 arg_PTEST; static bool trans_PTEST(DisasContext *ctx, arg_PTEST *a); typedef arg_ptrue arg_PTRUE; static bool trans_PTRUE(DisasContext *ctx, arg_PTRUE *a); typedef arg_disas_sve32 arg_SETFFR; static bool trans_SETFFR(DisasContext *ctx, arg_SETFFR *a); typedef arg_disas_sve33 arg_PFALSE; static bool trans_PFALSE(DisasContext *ctx, arg_PFALSE *a); typedef arg_disas_sve34 arg_RDFFR_p; static bool trans_RDFFR_p(DisasContext *ctx, arg_RDFFR_p *a); typedef arg_disas_sve33 arg_RDFFR; static bool trans_RDFFR(DisasContext *ctx, arg_RDFFR *a); typedef arg_disas_sve35 arg_WRFFR; static bool trans_WRFFR(DisasContext *ctx, arg_WRFFR *a); typedef arg_rr_esz arg_PFIRST; static bool trans_PFIRST(DisasContext *ctx, arg_PFIRST *a); typedef arg_rr_esz arg_PNEXT; static bool trans_PNEXT(DisasContext *ctx, arg_PNEXT *a); typedef arg_rprr_s arg_BRKPA; static bool trans_BRKPA(DisasContext *ctx, arg_BRKPA *a); typedef arg_rprr_s arg_BRKPB; static bool trans_BRKPB(DisasContext *ctx, arg_BRKPB *a); typedef arg_rpr_s arg_BRKA_z; static bool trans_BRKA_z(DisasContext *ctx, arg_BRKA_z *a); typedef arg_rpr_s arg_BRKB_z; static bool trans_BRKB_z(DisasContext *ctx, arg_BRKB_z *a); typedef arg_rpr_s arg_BRKA_m; static bool trans_BRKA_m(DisasContext *ctx, arg_BRKA_m *a); typedef arg_rpr_s arg_BRKB_m; static bool trans_BRKB_m(DisasContext *ctx, arg_BRKB_m *a); typedef arg_rpr_s arg_BRKN; static bool trans_BRKN(DisasContext *ctx, arg_BRKN *a); typedef arg_rpr_esz arg_CNTP; static bool trans_CNTP(DisasContext *ctx, arg_CNTP *a); typedef arg_incdec_pred arg_INCDECP_r; static bool trans_INCDECP_r(DisasContext *ctx, arg_INCDECP_r *a); typedef arg_incdec2_pred arg_INCDECP_z; static bool trans_INCDECP_z(DisasContext *ctx, arg_INCDECP_z *a); typedef arg_incdec_pred arg_SINCDECP_r_32; static bool trans_SINCDECP_r_32(DisasContext *ctx, arg_SINCDECP_r_32 *a); typedef arg_incdec_pred arg_SINCDECP_r_64; static bool trans_SINCDECP_r_64(DisasContext *ctx, arg_SINCDECP_r_64 *a); typedef arg_incdec2_pred arg_SINCDECP_z; static bool trans_SINCDECP_z(DisasContext *ctx, arg_SINCDECP_z *a); typedef arg_disas_sve36 arg_CTERM; static bool trans_CTERM(DisasContext *ctx, arg_CTERM *a); typedef arg_disas_sve37 arg_WHILE; static bool trans_WHILE(DisasContext *ctx, arg_WHILE *a); typedef arg_disas_sve38 arg_FDUP; static bool trans_FDUP(DisasContext *ctx, arg_FDUP *a); typedef arg_disas_sve38 arg_DUP_i; static bool trans_DUP_i(DisasContext *ctx, arg_DUP_i *a); typedef arg_rri_esz arg_ADD_zzi; static bool trans_ADD_zzi(DisasContext *ctx, arg_ADD_zzi *a); typedef arg_rri_esz arg_SUB_zzi; static bool trans_SUB_zzi(DisasContext *ctx, arg_SUB_zzi *a); typedef arg_rri_esz arg_SUBR_zzi; static bool trans_SUBR_zzi(DisasContext *ctx, arg_SUBR_zzi *a); typedef arg_rri_esz arg_SQADD_zzi; static bool trans_SQADD_zzi(DisasContext *ctx, arg_SQADD_zzi *a); typedef arg_rri_esz arg_UQADD_zzi; static bool trans_UQADD_zzi(DisasContext *ctx, arg_UQADD_zzi *a); typedef arg_rri_esz arg_SQSUB_zzi; static bool trans_SQSUB_zzi(DisasContext *ctx, arg_SQSUB_zzi *a); typedef arg_rri_esz arg_UQSUB_zzi; static bool trans_UQSUB_zzi(DisasContext *ctx, arg_UQSUB_zzi *a); typedef arg_rri_esz arg_SMAX_zzi; static bool trans_SMAX_zzi(DisasContext *ctx, arg_SMAX_zzi *a); typedef arg_rri_esz arg_UMAX_zzi; static bool trans_UMAX_zzi(DisasContext *ctx, arg_UMAX_zzi *a); typedef arg_rri_esz arg_SMIN_zzi; static bool trans_SMIN_zzi(DisasContext *ctx, arg_SMIN_zzi *a); typedef arg_rri_esz arg_UMIN_zzi; static bool trans_UMIN_zzi(DisasContext *ctx, arg_UMIN_zzi *a); typedef arg_rri_esz arg_MUL_zzi; static bool trans_MUL_zzi(DisasContext *ctx, arg_MUL_zzi *a); typedef arg_disas_sve39 arg_DOT_zzz; static bool trans_DOT_zzz(DisasContext *ctx, arg_DOT_zzz *a); typedef arg_disas_sve40 arg_DOT_zzx; static bool trans_DOT_zzx(DisasContext *ctx, arg_DOT_zzx *a); typedef arg_disas_sve41 arg_FCADD; static bool trans_FCADD(DisasContext *ctx, arg_FCADD *a); typedef arg_disas_sve42 arg_FCMLA_zpzzz; static bool trans_FCMLA_zpzzz(DisasContext *ctx, arg_FCMLA_zpzzz *a); typedef arg_disas_sve43 arg_FCMLA_zzxz; static bool trans_FCMLA_zzxz(DisasContext *ctx, arg_FCMLA_zzxz *a); typedef arg_disas_sve44 arg_FMLA_zzxz; static bool trans_FMLA_zzxz(DisasContext *ctx, arg_FMLA_zzxz *a); typedef arg_disas_sve45 arg_FMUL_zzx; static bool trans_FMUL_zzx(DisasContext *ctx, arg_FMUL_zzx *a); typedef arg_rpr_esz arg_FADDV; static bool trans_FADDV(DisasContext *ctx, arg_FADDV *a); typedef arg_rpr_esz arg_FMAXNMV; static bool trans_FMAXNMV(DisasContext *ctx, arg_FMAXNMV *a); typedef arg_rpr_esz arg_FMINNMV; static bool trans_FMINNMV(DisasContext *ctx, arg_FMINNMV *a); typedef arg_rpr_esz arg_FMAXV; static bool trans_FMAXV(DisasContext *ctx, arg_FMAXV *a); typedef arg_rpr_esz arg_FMINV; static bool trans_FMINV(DisasContext *ctx, arg_FMINV *a); typedef arg_rr_esz arg_FRECPE; static bool trans_FRECPE(DisasContext *ctx, arg_FRECPE *a); typedef arg_rr_esz arg_FRSQRTE; static bool trans_FRSQRTE(DisasContext *ctx, arg_FRSQRTE *a); typedef arg_rpr_esz arg_FCMGE_ppz0; static bool trans_FCMGE_ppz0(DisasContext *ctx, arg_FCMGE_ppz0 *a); typedef arg_rpr_esz arg_FCMGT_ppz0; static bool trans_FCMGT_ppz0(DisasContext *ctx, arg_FCMGT_ppz0 *a); typedef arg_rpr_esz arg_FCMLT_ppz0; static bool trans_FCMLT_ppz0(DisasContext *ctx, arg_FCMLT_ppz0 *a); typedef arg_rpr_esz arg_FCMLE_ppz0; static bool trans_FCMLE_ppz0(DisasContext *ctx, arg_FCMLE_ppz0 *a); typedef arg_rpr_esz arg_FCMEQ_ppz0; static bool trans_FCMEQ_ppz0(DisasContext *ctx, arg_FCMEQ_ppz0 *a); typedef arg_rpr_esz arg_FCMNE_ppz0; static bool trans_FCMNE_ppz0(DisasContext *ctx, arg_FCMNE_ppz0 *a); typedef arg_rprr_esz arg_FADDA; static bool trans_FADDA(DisasContext *ctx, arg_FADDA *a); typedef arg_rrr_esz arg_FADD_zzz; static bool trans_FADD_zzz(DisasContext *ctx, arg_FADD_zzz *a); typedef arg_rrr_esz arg_FSUB_zzz; static bool trans_FSUB_zzz(DisasContext *ctx, arg_FSUB_zzz *a); typedef arg_rrr_esz arg_FMUL_zzz; static bool trans_FMUL_zzz(DisasContext *ctx, arg_FMUL_zzz *a); typedef arg_rrr_esz arg_FTSMUL; static bool trans_FTSMUL(DisasContext *ctx, arg_FTSMUL *a); typedef arg_rrr_esz arg_FRECPS; static bool trans_FRECPS(DisasContext *ctx, arg_FRECPS *a); typedef arg_rrr_esz arg_FRSQRTS; static bool trans_FRSQRTS(DisasContext *ctx, arg_FRSQRTS *a); typedef arg_rprr_esz arg_FADD_zpzz; static bool trans_FADD_zpzz(DisasContext *ctx, arg_FADD_zpzz *a); typedef arg_rprr_esz arg_FSUB_zpzz; static bool trans_FSUB_zpzz(DisasContext *ctx, arg_FSUB_zpzz *a); typedef arg_rprr_esz arg_FMUL_zpzz; static bool trans_FMUL_zpzz(DisasContext *ctx, arg_FMUL_zpzz *a); typedef arg_rprr_esz arg_FMAXNM_zpzz; static bool trans_FMAXNM_zpzz(DisasContext *ctx, arg_FMAXNM_zpzz *a); typedef arg_rprr_esz arg_FMINNM_zpzz; static bool trans_FMINNM_zpzz(DisasContext *ctx, arg_FMINNM_zpzz *a); typedef arg_rprr_esz arg_FMAX_zpzz; static bool trans_FMAX_zpzz(DisasContext *ctx, arg_FMAX_zpzz *a); typedef arg_rprr_esz arg_FMIN_zpzz; static bool trans_FMIN_zpzz(DisasContext *ctx, arg_FMIN_zpzz *a); typedef arg_rprr_esz arg_FABD; static bool trans_FABD(DisasContext *ctx, arg_FABD *a); typedef arg_rprr_esz arg_FSCALE; static bool trans_FSCALE(DisasContext *ctx, arg_FSCALE *a); typedef arg_rprr_esz arg_FMULX; static bool trans_FMULX(DisasContext *ctx, arg_FMULX *a); typedef arg_rprr_esz arg_FDIV; static bool trans_FDIV(DisasContext *ctx, arg_FDIV *a); typedef arg_rpri_esz arg_FADD_zpzi; static bool trans_FADD_zpzi(DisasContext *ctx, arg_FADD_zpzi *a); typedef arg_rpri_esz arg_FSUB_zpzi; static bool trans_FSUB_zpzi(DisasContext *ctx, arg_FSUB_zpzi *a); typedef arg_rpri_esz arg_FMUL_zpzi; static bool trans_FMUL_zpzi(DisasContext *ctx, arg_FMUL_zpzi *a); typedef arg_rpri_esz arg_FSUBR_zpzi; static bool trans_FSUBR_zpzi(DisasContext *ctx, arg_FSUBR_zpzi *a); typedef arg_rpri_esz arg_FMAXNM_zpzi; static bool trans_FMAXNM_zpzi(DisasContext *ctx, arg_FMAXNM_zpzi *a); typedef arg_rpri_esz arg_FMINNM_zpzi; static bool trans_FMINNM_zpzi(DisasContext *ctx, arg_FMINNM_zpzi *a); typedef arg_rpri_esz arg_FMAX_zpzi; static bool trans_FMAX_zpzi(DisasContext *ctx, arg_FMAX_zpzi *a); typedef arg_rpri_esz arg_FMIN_zpzi; static bool trans_FMIN_zpzi(DisasContext *ctx, arg_FMIN_zpzi *a); typedef arg_disas_sve46 arg_FTMAD; static bool trans_FTMAD(DisasContext *ctx, arg_FTMAD *a); typedef arg_rprrr_esz arg_FMLA_zpzzz; static bool trans_FMLA_zpzzz(DisasContext *ctx, arg_FMLA_zpzzz *a); typedef arg_rprrr_esz arg_FMLS_zpzzz; static bool trans_FMLS_zpzzz(DisasContext *ctx, arg_FMLS_zpzzz *a); typedef arg_rprrr_esz arg_FNMLA_zpzzz; static bool trans_FNMLA_zpzzz(DisasContext *ctx, arg_FNMLA_zpzzz *a); typedef arg_rprrr_esz arg_FNMLS_zpzzz; static bool trans_FNMLS_zpzzz(DisasContext *ctx, arg_FNMLS_zpzzz *a); typedef arg_rpr_esz arg_FCVT_sh; static bool trans_FCVT_sh(DisasContext *ctx, arg_FCVT_sh *a); typedef arg_rpr_esz arg_FCVT_hs; static bool trans_FCVT_hs(DisasContext *ctx, arg_FCVT_hs *a); typedef arg_rpr_esz arg_FCVT_dh; static bool trans_FCVT_dh(DisasContext *ctx, arg_FCVT_dh *a); typedef arg_rpr_esz arg_FCVT_hd; static bool trans_FCVT_hd(DisasContext *ctx, arg_FCVT_hd *a); typedef arg_rpr_esz arg_FCVT_ds; static bool trans_FCVT_ds(DisasContext *ctx, arg_FCVT_ds *a); typedef arg_rpr_esz arg_FCVT_sd; static bool trans_FCVT_sd(DisasContext *ctx, arg_FCVT_sd *a); typedef arg_rpr_esz arg_FCVTZS_hh; static bool trans_FCVTZS_hh(DisasContext *ctx, arg_FCVTZS_hh *a); typedef arg_rpr_esz arg_FCVTZU_hh; static bool trans_FCVTZU_hh(DisasContext *ctx, arg_FCVTZU_hh *a); typedef arg_rpr_esz arg_FCVTZS_hs; static bool trans_FCVTZS_hs(DisasContext *ctx, arg_FCVTZS_hs *a); typedef arg_rpr_esz arg_FCVTZU_hs; static bool trans_FCVTZU_hs(DisasContext *ctx, arg_FCVTZU_hs *a); typedef arg_rpr_esz arg_FCVTZS_hd; static bool trans_FCVTZS_hd(DisasContext *ctx, arg_FCVTZS_hd *a); typedef arg_rpr_esz arg_FCVTZU_hd; static bool trans_FCVTZU_hd(DisasContext *ctx, arg_FCVTZU_hd *a); typedef arg_rpr_esz arg_FCVTZS_ss; static bool trans_FCVTZS_ss(DisasContext *ctx, arg_FCVTZS_ss *a); typedef arg_rpr_esz arg_FCVTZU_ss; static bool trans_FCVTZU_ss(DisasContext *ctx, arg_FCVTZU_ss *a); typedef arg_rpr_esz arg_FCVTZS_ds; static bool trans_FCVTZS_ds(DisasContext *ctx, arg_FCVTZS_ds *a); typedef arg_rpr_esz arg_FCVTZU_ds; static bool trans_FCVTZU_ds(DisasContext *ctx, arg_FCVTZU_ds *a); typedef arg_rpr_esz arg_FCVTZS_sd; static bool trans_FCVTZS_sd(DisasContext *ctx, arg_FCVTZS_sd *a); typedef arg_rpr_esz arg_FCVTZU_sd; static bool trans_FCVTZU_sd(DisasContext *ctx, arg_FCVTZU_sd *a); typedef arg_rpr_esz arg_FCVTZS_dd; static bool trans_FCVTZS_dd(DisasContext *ctx, arg_FCVTZS_dd *a); typedef arg_rpr_esz arg_FCVTZU_dd; static bool trans_FCVTZU_dd(DisasContext *ctx, arg_FCVTZU_dd *a); typedef arg_rpr_esz arg_FRINTN; static bool trans_FRINTN(DisasContext *ctx, arg_FRINTN *a); typedef arg_rpr_esz arg_FRINTP; static bool trans_FRINTP(DisasContext *ctx, arg_FRINTP *a); typedef arg_rpr_esz arg_FRINTM; static bool trans_FRINTM(DisasContext *ctx, arg_FRINTM *a); typedef arg_rpr_esz arg_FRINTZ; static bool trans_FRINTZ(DisasContext *ctx, arg_FRINTZ *a); typedef arg_rpr_esz arg_FRINTA; static bool trans_FRINTA(DisasContext *ctx, arg_FRINTA *a); typedef arg_rpr_esz arg_FRINTX; static bool trans_FRINTX(DisasContext *ctx, arg_FRINTX *a); typedef arg_rpr_esz arg_FRINTI; static bool trans_FRINTI(DisasContext *ctx, arg_FRINTI *a); typedef arg_rpr_esz arg_FRECPX; static bool trans_FRECPX(DisasContext *ctx, arg_FRECPX *a); typedef arg_rpr_esz arg_FSQRT; static bool trans_FSQRT(DisasContext *ctx, arg_FSQRT *a); typedef arg_rpr_esz arg_SCVTF_hh; static bool trans_SCVTF_hh(DisasContext *ctx, arg_SCVTF_hh *a); typedef arg_rpr_esz arg_SCVTF_sh; static bool trans_SCVTF_sh(DisasContext *ctx, arg_SCVTF_sh *a); typedef arg_rpr_esz arg_SCVTF_dh; static bool trans_SCVTF_dh(DisasContext *ctx, arg_SCVTF_dh *a); typedef arg_rpr_esz arg_SCVTF_ss; static bool trans_SCVTF_ss(DisasContext *ctx, arg_SCVTF_ss *a); typedef arg_rpr_esz arg_SCVTF_sd; static bool trans_SCVTF_sd(DisasContext *ctx, arg_SCVTF_sd *a); typedef arg_rpr_esz arg_SCVTF_ds; static bool trans_SCVTF_ds(DisasContext *ctx, arg_SCVTF_ds *a); typedef arg_rpr_esz arg_SCVTF_dd; static bool trans_SCVTF_dd(DisasContext *ctx, arg_SCVTF_dd *a); typedef arg_rpr_esz arg_UCVTF_hh; static bool trans_UCVTF_hh(DisasContext *ctx, arg_UCVTF_hh *a); typedef arg_rpr_esz arg_UCVTF_sh; static bool trans_UCVTF_sh(DisasContext *ctx, arg_UCVTF_sh *a); typedef arg_rpr_esz arg_UCVTF_dh; static bool trans_UCVTF_dh(DisasContext *ctx, arg_UCVTF_dh *a); typedef arg_rpr_esz arg_UCVTF_ss; static bool trans_UCVTF_ss(DisasContext *ctx, arg_UCVTF_ss *a); typedef arg_rpr_esz arg_UCVTF_sd; static bool trans_UCVTF_sd(DisasContext *ctx, arg_UCVTF_sd *a); typedef arg_rpr_esz arg_UCVTF_ds; static bool trans_UCVTF_ds(DisasContext *ctx, arg_UCVTF_ds *a); typedef arg_rpr_esz arg_UCVTF_dd; static bool trans_UCVTF_dd(DisasContext *ctx, arg_UCVTF_dd *a); typedef arg_rri arg_LDR_pri; static bool trans_LDR_pri(DisasContext *ctx, arg_LDR_pri *a); typedef arg_rri arg_LDR_zri; static bool trans_LDR_zri(DisasContext *ctx, arg_LDR_zri *a); typedef arg_rpri_load arg_LD1R_zpri; static bool trans_LD1R_zpri(DisasContext *ctx, arg_LD1R_zpri *a); typedef arg_rprr_gather_load arg_LD1_zprz; static bool trans_LD1_zprz(DisasContext *ctx, arg_LD1_zprz *a); typedef arg_rpri_gather_load arg_LD1_zpiz; static bool trans_LD1_zpiz(DisasContext *ctx, arg_LD1_zpiz *a); typedef arg_rprr_load arg_LD_zprr; static bool trans_LD_zprr(DisasContext *ctx, arg_LD_zprr *a); typedef arg_rprr_load arg_LDFF1_zprr; static bool trans_LDFF1_zprr(DisasContext *ctx, arg_LDFF1_zprr *a); typedef arg_rpri_load arg_LD_zpri; static bool trans_LD_zpri(DisasContext *ctx, arg_LD_zpri *a); typedef arg_rpri_load arg_LDNF1_zpri; static bool trans_LDNF1_zpri(DisasContext *ctx, arg_LDNF1_zpri *a); typedef arg_rprr_load arg_LD1RQ_zprr; static bool trans_LD1RQ_zprr(DisasContext *ctx, arg_LD1RQ_zprr *a); typedef arg_rpri_load arg_LD1RQ_zpri; static bool trans_LD1RQ_zpri(DisasContext *ctx, arg_LD1RQ_zpri *a); typedef arg_disas_sve32 arg_PRF; static bool trans_PRF(DisasContext *ctx, arg_PRF *a); typedef arg_disas_sve47 arg_PRF_rr; static bool trans_PRF_rr(DisasContext *ctx, arg_PRF_rr *a); typedef arg_rri arg_STR_pri; static bool trans_STR_pri(DisasContext *ctx, arg_STR_pri *a); typedef arg_rri arg_STR_zri; static bool trans_STR_zri(DisasContext *ctx, arg_STR_zri *a); typedef arg_rpri_store arg_ST_zpri; static bool trans_ST_zpri(DisasContext *ctx, arg_ST_zpri *a); typedef arg_rprr_store arg_ST_zprr; static bool trans_ST_zprr(DisasContext *ctx, arg_ST_zprr *a); typedef arg_rprr_scatter_store arg_ST1_zprz; static bool trans_ST1_zprz(DisasContext *ctx, arg_ST1_zprz *a); typedef arg_rpri_scatter_store arg_ST1_zpiz; static bool trans_ST1_zpiz(DisasContext *ctx, arg_ST1_zpiz *a); static void disas_sve_extract_disas_sve_Fmt_55(DisasContext *ctx, arg_disas_sve25 *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->imm2 = sextract32(insn, 16, 5); a->imm1 = sextract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_56(DisasContext *ctx, arg_disas_sve26 *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rm = extract32(insn, 16, 5); a->imm = sextract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_57(DisasContext *ctx, arg_rri_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->imm = sextract32(insn, 16, 5); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_58(DisasContext *ctx, arg_disas_sve27 *a, uint32_t insn) { a->imm = sextract32(insn, 5, 6); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_59(DisasContext *ctx, arg_disas_sve28 *a, uint32_t insn) { a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_60(DisasContext *ctx, arg_disas_sve29 *a, uint32_t insn) { a->dbm = extract32(insn, 5, 13); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_61(DisasContext *ctx, arg_rrri *a, uint32_t insn) { a->rm = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); a->imm = deposit32(extract32(insn, 10, 3), 3, 29, extract32(insn, 16, 5)); } static void disas_sve_extract_disas_sve_Fmt_62(DisasContext *ctx, arg_rri *a, uint32_t insn) { a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->imm = deposit32(extract32(insn, 16, 5), 5, 27, extract32(insn, 22, 2)); } static void disas_sve_extract_disas_sve_Fmt_63(DisasContext *ctx, arg_disas_sve30 *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->u = extract32(insn, 17, 1); a->h = extract32(insn, 16, 1); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_64(DisasContext *ctx, arg_disas_sve31 *a, uint32_t insn) { a->pg = extract32(insn, 10, 4); a->rn = extract32(insn, 5, 4); } static void disas_sve_extract_disas_sve_Fmt_65(DisasContext *ctx, arg_ptrue *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->s = extract32(insn, 16, 1); a->pat = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_disas_sve_Fmt_66(DisasContext *ctx, arg_disas_sve32 *a, uint32_t insn) { } static void disas_sve_extract_disas_sve_Fmt_67(DisasContext *ctx, arg_disas_sve33 *a, uint32_t insn) { a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_disas_sve_Fmt_68(DisasContext *ctx, arg_disas_sve34 *a, uint32_t insn) { a->s = extract32(insn, 22, 1); a->pg = extract32(insn, 5, 4); a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_disas_sve_Fmt_69(DisasContext *ctx, arg_disas_sve35 *a, uint32_t insn) { a->rn = extract32(insn, 5, 4); } static void disas_sve_extract_disas_sve_Fmt_70(DisasContext *ctx, arg_disas_sve36 *a, uint32_t insn) { a->sf = extract32(insn, 22, 1); a->rm = extract32(insn, 16, 5); a->rn = extract32(insn, 5, 5); a->ne = extract32(insn, 4, 1); } static void disas_sve_extract_disas_sve_Fmt_71(DisasContext *ctx, arg_disas_sve37 *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rm = extract32(insn, 16, 5); a->sf = extract32(insn, 12, 1); a->u = extract32(insn, 11, 1); a->rn = extract32(insn, 5, 5); a->eq = extract32(insn, 4, 1); a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_disas_sve_Fmt_72(DisasContext *ctx, arg_disas_sve38 *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->imm = extract32(insn, 5, 8); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_73(DisasContext *ctx, arg_disas_sve38 *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rd = extract32(insn, 0, 5); a->imm = expand_imm_sh8s(ctx, extract32(insn, 5, 9)); } static void disas_sve_extract_disas_sve_Fmt_74(DisasContext *ctx, arg_disas_sve39 *a, uint32_t insn) { a->sz = extract32(insn, 22, 1); a->rm = extract32(insn, 16, 5); a->u = extract32(insn, 10, 1); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->ra = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_75(DisasContext *ctx, arg_disas_sve40 *a, uint32_t insn) { a->index = extract32(insn, 19, 2); a->rm = extract32(insn, 16, 3); a->u = extract32(insn, 10, 1); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->sz = 0; a->ra = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_76(DisasContext *ctx, arg_disas_sve40 *a, uint32_t insn) { a->index = extract32(insn, 20, 1); a->rm = extract32(insn, 16, 4); a->u = extract32(insn, 10, 1); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->sz = 1; a->ra = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_77(DisasContext *ctx, arg_disas_sve41 *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rot = extract32(insn, 16, 1); a->pg = extract32(insn, 10, 3); a->rm = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_78(DisasContext *ctx, arg_disas_sve42 *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rm = extract32(insn, 16, 5); a->rot = extract32(insn, 13, 2); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->ra = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_79(DisasContext *ctx, arg_disas_sve43 *a, uint32_t insn) { a->index = extract32(insn, 19, 2); a->rm = extract32(insn, 16, 3); a->rot = extract32(insn, 10, 2); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->ra = extract32(insn, 0, 5); a->esz = 1; } static void disas_sve_extract_disas_sve_Fmt_80(DisasContext *ctx, arg_disas_sve43 *a, uint32_t insn) { a->index = extract32(insn, 20, 1); a->rm = extract32(insn, 16, 4); a->rot = extract32(insn, 10, 2); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->ra = extract32(insn, 0, 5); a->esz = 2; } static void disas_sve_extract_disas_sve_Fmt_81(DisasContext *ctx, arg_disas_sve44 *a, uint32_t insn) { a->rm = extract32(insn, 16, 3); a->sub = extract32(insn, 10, 1); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->ra = extract32(insn, 0, 5); a->index = deposit32(extract32(insn, 19, 2), 2, 30, extract32(insn, 22, 1)); a->esz = 1; } static void disas_sve_extract_disas_sve_Fmt_82(DisasContext *ctx, arg_disas_sve44 *a, uint32_t insn) { a->index = extract32(insn, 19, 2); a->rm = extract32(insn, 16, 3); a->sub = extract32(insn, 10, 1); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->ra = extract32(insn, 0, 5); a->esz = 2; } static void disas_sve_extract_disas_sve_Fmt_83(DisasContext *ctx, arg_disas_sve44 *a, uint32_t insn) { a->index = extract32(insn, 20, 1); a->rm = extract32(insn, 16, 4); a->sub = extract32(insn, 10, 1); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->ra = extract32(insn, 0, 5); a->esz = 3; } static void disas_sve_extract_disas_sve_Fmt_84(DisasContext *ctx, arg_disas_sve45 *a, uint32_t insn) { a->rm = extract32(insn, 16, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->index = deposit32(extract32(insn, 19, 2), 2, 30, extract32(insn, 22, 1)); a->esz = 1; } static void disas_sve_extract_disas_sve_Fmt_85(DisasContext *ctx, arg_disas_sve45 *a, uint32_t insn) { a->index = extract32(insn, 19, 2); a->rm = extract32(insn, 16, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->esz = 2; } static void disas_sve_extract_disas_sve_Fmt_86(DisasContext *ctx, arg_disas_sve45 *a, uint32_t insn) { a->index = extract32(insn, 20, 1); a->rm = extract32(insn, 16, 4); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->esz = 3; } static void disas_sve_extract_disas_sve_Fmt_87(DisasContext *ctx, arg_disas_sve46 *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->imm = extract32(insn, 16, 3); a->rm = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_disas_sve_Fmt_88(DisasContext *ctx, arg_rpri_load *a, uint32_t insn) { a->imm = extract32(insn, 16, 6); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->dtype = deposit32(extract32(insn, 13, 2), 2, 30, extract32(insn, 23, 2)); a->nreg = 0; } static void disas_sve_extract_disas_sve_Fmt_89(DisasContext *ctx, arg_disas_sve47 *a, uint32_t insn) { a->rm = extract32(insn, 16, 5); } static void disas_sve_extract_incdec2_cnt(DisasContext *ctx, arg_incdec2_cnt *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->pat = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->imm = plus1(ctx, extract32(insn, 16, 4)); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_incdec2_pred(DisasContext *ctx, arg_incdec2_pred *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->pg = extract32(insn, 5, 4); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_incdec_cnt(DisasContext *ctx, arg_incdec_cnt *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->pat = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->imm = plus1(ctx, extract32(insn, 16, 4)); } static void disas_sve_extract_incdec_pred(DisasContext *ctx, arg_incdec_pred *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->pg = extract32(insn, 5, 4); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_pd_pg_pn_pm_s(DisasContext *ctx, arg_rprr_s *a, uint32_t insn) { a->s = extract32(insn, 22, 1); a->rm = extract32(insn, 16, 4); a->pg = extract32(insn, 10, 4); a->rn = extract32(insn, 5, 4); a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_pd_pg_pn_s(DisasContext *ctx, arg_rpr_s *a, uint32_t insn) { a->s = extract32(insn, 22, 1); a->pg = extract32(insn, 10, 4); a->rn = extract32(insn, 5, 4); a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_pd_pg_pn_s0(DisasContext *ctx, arg_rpr_s *a, uint32_t insn) { a->pg = extract32(insn, 10, 4); a->rn = extract32(insn, 5, 4); a->rd = extract32(insn, 0, 4); a->s = 0; } static void disas_sve_extract_pd_pg_rn(DisasContext *ctx, arg_rpr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_pd_pg_rn_i5(DisasContext *ctx, arg_rpri_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->imm = sextract32(insn, 16, 5); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_pd_pg_rn_i7(DisasContext *ctx, arg_rpri_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->imm = extract32(insn, 14, 7); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_pd_pg_rn_rm(DisasContext *ctx, arg_rprr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rm = extract32(insn, 16, 5); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_pd_pn(DisasContext *ctx, arg_rr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rn = extract32(insn, 5, 4); a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_pd_pn_e0(DisasContext *ctx, arg_rr_esz *a, uint32_t insn) { a->rn = extract32(insn, 5, 4); a->rd = extract32(insn, 0, 4); a->esz = 0; } static void disas_sve_extract_pd_pn_pm(DisasContext *ctx, arg_rrr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rm = extract32(insn, 16, 4); a->rn = extract32(insn, 5, 4); a->rd = extract32(insn, 0, 4); } static void disas_sve_extract_pd_rn_i9(DisasContext *ctx, arg_rri *a, uint32_t insn) { a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 4); a->imm = deposit32(extract32(insn, 10, 3), 3, 29, sextract32(insn, 16, 6)); } static void disas_sve_extract_rd_pg4_pn(DisasContext *ctx, arg_rpr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->pg = extract32(insn, 10, 4); a->rn = extract32(insn, 5, 4); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rd_pg4_rn_rm(DisasContext *ctx, arg_rprr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rm = extract32(insn, 16, 5); a->pg = extract32(insn, 10, 4); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rd_pg_rn(DisasContext *ctx, arg_rpr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rd_pg_rn_e0(DisasContext *ctx, arg_rpr_esz *a, uint32_t insn) { a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->esz = 0; } static void disas_sve_extract_rd_rn(DisasContext *ctx, arg_rr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rd_rn_i6(DisasContext *ctx, arg_rri *a, uint32_t insn) { a->rn = extract32(insn, 16, 5); a->imm = sextract32(insn, 5, 6); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rd_rn_i9(DisasContext *ctx, arg_rri *a, uint32_t insn) { a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->imm = deposit32(extract32(insn, 10, 3), 3, 29, sextract32(insn, 16, 6)); } static void disas_sve_extract_rd_rn_msz_rm(DisasContext *ctx, arg_rrri *a, uint32_t insn) { a->rm = extract32(insn, 16, 5); a->imm = extract32(insn, 10, 2); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rd_rn_rm(DisasContext *ctx, arg_rrr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rm = extract32(insn, 16, 5); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rd_rn_rm_e0(DisasContext *ctx, arg_rrr_esz *a, uint32_t insn) { a->rm = extract32(insn, 16, 5); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->esz = 0; } static void disas_sve_extract_rd_rn_tszimm(DisasContext *ctx, arg_rri_esz *a, uint32_t insn) { a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->esz = tszimm_esz(ctx, deposit32(extract32(insn, 16, 5), 5, 27, extract32(insn, 22, 2))); } static void disas_sve_extract_rda_pg_rn_rm(DisasContext *ctx, arg_rprrr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rm = extract32(insn, 16, 5); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->ra = extract32(insn, 0, 5); } static void disas_sve_extract_rdm_pg_rn(DisasContext *ctx, arg_rprr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->rm = extract32(insn, 0, 5); } static void disas_sve_extract_rdn_dbm(DisasContext *ctx, arg_rr_dbm *a, uint32_t insn) { a->dbm = extract32(insn, 5, 13); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_rdn_i1(DisasContext *ctx, arg_rpri_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->pg = extract32(insn, 10, 3); a->imm = extract32(insn, 5, 1); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_rdn_i8s(DisasContext *ctx, arg_rri_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->imm = sextract32(insn, 5, 8); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_rdn_i8u(DisasContext *ctx, arg_rri_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->imm = extract32(insn, 5, 8); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_rdn_pg4(DisasContext *ctx, arg_rpri_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->pg = extract32(insn, 16, 4); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_rdn_pg_ra_rm(DisasContext *ctx, arg_rprrr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rm = extract32(insn, 16, 5); a->pg = extract32(insn, 10, 3); a->ra = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_rdn_pg_rm(DisasContext *ctx, arg_rprr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->pg = extract32(insn, 10, 3); a->rm = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_rdn_pg_rm_ra(DisasContext *ctx, arg_rprrr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->ra = extract32(insn, 16, 5); a->pg = extract32(insn, 10, 3); a->rm = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_rdn_pg_tszimm(DisasContext *ctx, arg_rpri_esz *a, uint32_t insn) { a->pg = extract32(insn, 10, 3); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); a->esz = tszimm_esz(ctx, deposit32(extract32(insn, 5, 5), 5, 27, extract32(insn, 22, 2))); } static void disas_sve_extract_rdn_rm(DisasContext *ctx, arg_rrr_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rm = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); } static void disas_sve_extract_rdn_sh_i8u(DisasContext *ctx, arg_rri_esz *a, uint32_t insn) { a->esz = extract32(insn, 22, 2); a->rd = extract32(insn, 0, 5); a->rn = extract32(insn, 0, 5); a->imm = expand_imm_sh8u(ctx, extract32(insn, 5, 9)); } static void disas_sve_extract_rpri_g_load(DisasContext *ctx, arg_rpri_gather_load *a, uint32_t insn) { a->msz = extract32(insn, 23, 2); a->imm = extract32(insn, 16, 5); a->u = extract32(insn, 14, 1); a->ff = extract32(insn, 13, 1); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rpri_load_dt(DisasContext *ctx, arg_rpri_load *a, uint32_t insn) { a->dtype = extract32(insn, 21, 4); a->imm = sextract32(insn, 16, 4); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rpri_load_msz(DisasContext *ctx, arg_rpri_load *a, uint32_t insn) { a->imm = sextract32(insn, 16, 4); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->dtype = msz_dtype(ctx, extract32(insn, 23, 2)); } static void disas_sve_extract_rpri_scatter_store(DisasContext *ctx, arg_rpri_scatter_store *a, uint32_t insn) { a->msz = extract32(insn, 23, 2); a->imm = extract32(insn, 16, 5); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rpri_store_msz(DisasContext *ctx, arg_rpri_store *a, uint32_t insn) { a->msz = extract32(insn, 23, 2); a->imm = sextract32(insn, 16, 4); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rprr_g_load_sc(DisasContext *ctx, arg_rprr_gather_load *a, uint32_t insn) { a->scale = extract32(insn, 21, 1); a->rm = extract32(insn, 16, 5); a->ff = extract32(insn, 13, 1); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->xs = 2; } static void disas_sve_extract_rprr_g_load_u(DisasContext *ctx, arg_rprr_gather_load *a, uint32_t insn) { a->rm = extract32(insn, 16, 5); a->u = extract32(insn, 14, 1); a->ff = extract32(insn, 13, 1); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->xs = 2; } static void disas_sve_extract_rprr_g_load_u_sc(DisasContext *ctx, arg_rprr_gather_load *a, uint32_t insn) { a->scale = extract32(insn, 21, 1); a->rm = extract32(insn, 16, 5); a->u = extract32(insn, 14, 1); a->ff = extract32(insn, 13, 1); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->xs = 2; } static void disas_sve_extract_rprr_g_load_xs_sc(DisasContext *ctx, arg_rprr_gather_load *a, uint32_t insn) { a->xs = extract32(insn, 22, 1); a->scale = extract32(insn, 21, 1); a->rm = extract32(insn, 16, 5); a->ff = extract32(insn, 13, 1); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rprr_g_load_xs_u(DisasContext *ctx, arg_rprr_gather_load *a, uint32_t insn) { a->xs = extract32(insn, 22, 1); a->rm = extract32(insn, 16, 5); a->u = extract32(insn, 14, 1); a->ff = extract32(insn, 13, 1); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rprr_g_load_xs_u_sc(DisasContext *ctx, arg_rprr_gather_load *a, uint32_t insn) { a->xs = extract32(insn, 22, 1); a->scale = extract32(insn, 21, 1); a->rm = extract32(insn, 16, 5); a->u = extract32(insn, 14, 1); a->ff = extract32(insn, 13, 1); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rprr_load_dt(DisasContext *ctx, arg_rprr_load *a, uint32_t insn) { a->dtype = extract32(insn, 21, 4); a->rm = extract32(insn, 16, 5); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rprr_load_msz(DisasContext *ctx, arg_rprr_load *a, uint32_t insn) { a->rm = extract32(insn, 16, 5); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->dtype = msz_dtype(ctx, extract32(insn, 23, 2)); } static void disas_sve_extract_rprr_scatter_store(DisasContext *ctx, arg_rprr_scatter_store *a, uint32_t insn) { a->msz = extract32(insn, 23, 2); a->rm = extract32(insn, 16, 5); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rprr_store(DisasContext *ctx, arg_rprr_store *a, uint32_t insn) { a->rm = extract32(insn, 16, 5); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); } static void disas_sve_extract_rprr_store_esz_n0(DisasContext *ctx, arg_rprr_store *a, uint32_t insn) { a->esz = extract32(insn, 21, 2); a->rm = extract32(insn, 16, 5); a->pg = extract32(insn, 10, 3); a->rn = extract32(insn, 5, 5); a->rd = extract32(insn, 0, 5); a->nreg = 0; } bool disas_sve(DisasContext *ctx, uint32_t insn) { union { arg_disas_sve25 f_disas_sve25; arg_disas_sve26 f_disas_sve26; arg_disas_sve27 f_disas_sve27; arg_disas_sve28 f_disas_sve28; arg_disas_sve29 f_disas_sve29; arg_disas_sve30 f_disas_sve30; arg_disas_sve31 f_disas_sve31; arg_disas_sve32 f_disas_sve32; arg_disas_sve33 f_disas_sve33; arg_disas_sve34 f_disas_sve34; arg_disas_sve35 f_disas_sve35; arg_disas_sve36 f_disas_sve36; arg_disas_sve37 f_disas_sve37; arg_disas_sve38 f_disas_sve38; arg_disas_sve39 f_disas_sve39; arg_disas_sve40 f_disas_sve40; arg_disas_sve41 f_disas_sve41; arg_disas_sve42 f_disas_sve42; arg_disas_sve43 f_disas_sve43; arg_disas_sve44 f_disas_sve44; arg_disas_sve45 f_disas_sve45; arg_disas_sve46 f_disas_sve46; arg_disas_sve47 f_disas_sve47; arg_incdec2_cnt f_incdec2_cnt; arg_incdec2_pred f_incdec2_pred; arg_incdec_cnt f_incdec_cnt; arg_incdec_pred f_incdec_pred; arg_ptrue f_ptrue; arg_rpr_esz f_rpr_esz; arg_rpr_s f_rpr_s; arg_rpri_esz f_rpri_esz; arg_rpri_gather_load f_rpri_gather_load; arg_rpri_load f_rpri_load; arg_rpri_scatter_store f_rpri_scatter_store; arg_rpri_store f_rpri_store; arg_rprr_esz f_rprr_esz; arg_rprr_gather_load f_rprr_gather_load; arg_rprr_load f_rprr_load; arg_rprr_s f_rprr_s; arg_rprr_scatter_store f_rprr_scatter_store; arg_rprr_store f_rprr_store; arg_rprrr_esz f_rprrr_esz; arg_rr_dbm f_rr_dbm; arg_rr_esz f_rr_esz; arg_rri f_rri; arg_rri_esz f_rri_esz; arg_rrr_esz f_rrr_esz; arg_rrri f_rrri; } u; switch ((insn >> 25) & 0x7f) { case 0x2: /* 0000010. ........ ........ ........ */ switch (insn & 0x01200000) { case 0x00000000: /* 00000100 ..0..... ........ ........ */ switch ((insn >> 13) & 0x7) { case 0x0: /* 00000100 ..0..... 000..... ........ */ switch ((insn >> 16) & 0x1f) { case 0x0: /* 00000100 ..000000 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:245 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_ADD_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x1: /* 00000100 ..000001 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:246 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_SUB_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x3: /* 00000100 ..000011 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:247 */ disas_sve_extract_rdm_pg_rn(ctx, &u.f_rprr_esz, insn); if (trans_SUB_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x8: /* 00000100 ..001000 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:250 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_SMAX_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x9: /* 00000100 ..001001 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:251 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_UMAX_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0xa: /* 00000100 ..001010 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:252 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_SMIN_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0xb: /* 00000100 ..001011 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:253 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_UMIN_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0xc: /* 00000100 ..001100 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:254 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_SABD_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0xd: /* 00000100 ..001101 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:255 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_UABD_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x10: /* 00000100 ..010000 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:258 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_MUL_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x12: /* 00000100 ..010010 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:259 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_SMULH_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x13: /* 00000100 ..010011 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:260 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_UMULH_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x14: /* 00000100 ..010100 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:262 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_SDIV_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x15: /* 00000100 ..010101 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:263 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_UDIV_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x16: /* 00000100 ..010110 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:264 */ disas_sve_extract_rdm_pg_rn(ctx, &u.f_rprr_esz, insn); if (trans_SDIV_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x17: /* 00000100 ..010111 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:265 */ disas_sve_extract_rdm_pg_rn(ctx, &u.f_rprr_esz, insn); if (trans_UDIV_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x18: /* 00000100 ..011000 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:239 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_ORR_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x19: /* 00000100 ..011001 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:240 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_EOR_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x1a: /* 00000100 ..011010 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:241 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_AND_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x1b: /* 00000100 ..011011 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:242 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_BIC_zpzz(ctx, &u.f_rprr_esz)) return true; return false; } return false; case 0x1: /* 00000100 ..0..... 001..... ........ */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); switch ((insn >> 16) & 0x1f) { case 0x0: /* 00000100 ..000000 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:281 */ if (trans_SADDV(ctx, &u.f_rpr_esz)) return true; return false; case 0x1: /* 00000100 ..000001 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:280 */ if (trans_UADDV(ctx, &u.f_rpr_esz)) return true; return false; case 0x8: /* 00000100 ..001000 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:284 */ if (trans_SMAXV(ctx, &u.f_rpr_esz)) return true; return false; case 0x9: /* 00000100 ..001001 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:285 */ if (trans_UMAXV(ctx, &u.f_rpr_esz)) return true; return false; case 0xa: /* 00000100 ..001010 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:286 */ if (trans_SMINV(ctx, &u.f_rpr_esz)) return true; return false; case 0xb: /* 00000100 ..001011 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:287 */ if (trans_UMINV(ctx, &u.f_rpr_esz)) return true; return false; case 0x10: /* 00000100 ..010000 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:275 */ if (trans_MOVPRFX_z(ctx, &u.f_rpr_esz)) return true; return false; case 0x11: /* 00000100 ..010001 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:276 */ if (trans_MOVPRFX_m(ctx, &u.f_rpr_esz)) return true; return false; case 0x18: /* 00000100 ..011000 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:270 */ if (trans_ORV(ctx, &u.f_rpr_esz)) return true; return false; case 0x19: /* 00000100 ..011001 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:271 */ if (trans_EORV(ctx, &u.f_rpr_esz)) return true; return false; case 0x1a: /* 00000100 ..011010 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:272 */ if (trans_ANDV(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x2: /* 00000100 ..0..... 010..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:352 */ disas_sve_extract_rda_pg_rn_rm(ctx, &u.f_rprrr_esz, insn); if (trans_MLA(ctx, &u.f_rprrr_esz)) return true; return false; case 0x3: /* 00000100 ..0..... 011..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:353 */ disas_sve_extract_rda_pg_rn_rm(ctx, &u.f_rprrr_esz, insn); if (trans_MLS(ctx, &u.f_rprrr_esz)) return true; return false; case 0x4: /* 00000100 ..0..... 100..... ........ */ switch ((insn >> 16) & 0x1f) { case 0x0: /* 00000100 ..000000 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:292 */ disas_sve_extract_rdn_pg_tszimm(ctx, &u.f_rpri_esz, insn); u.f_rpri_esz.imm = tszimm_shr(ctx, deposit32(extract32(insn, 5, 5), 5, 27, extract32(insn, 22, 2))); if (trans_ASR_zpzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x1: /* 00000100 ..000001 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:294 */ disas_sve_extract_rdn_pg_tszimm(ctx, &u.f_rpri_esz, insn); u.f_rpri_esz.imm = tszimm_shr(ctx, deposit32(extract32(insn, 5, 5), 5, 27, extract32(insn, 22, 2))); if (trans_LSR_zpzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x3: /* 00000100 ..000011 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:296 */ disas_sve_extract_rdn_pg_tszimm(ctx, &u.f_rpri_esz, insn); u.f_rpri_esz.imm = tszimm_shl(ctx, deposit32(extract32(insn, 5, 5), 5, 27, extract32(insn, 22, 2))); if (trans_LSL_zpzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x4: /* 00000100 ..000100 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:298 */ disas_sve_extract_rdn_pg_tszimm(ctx, &u.f_rpri_esz, insn); u.f_rpri_esz.imm = tszimm_shr(ctx, deposit32(extract32(insn, 5, 5), 5, 27, extract32(insn, 22, 2))); if (trans_ASRD(ctx, &u.f_rpri_esz)) return true; return false; case 0x10: /* 00000100 ..010000 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:302 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_ASR_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x11: /* 00000100 ..010001 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:303 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_LSR_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x13: /* 00000100 ..010011 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:304 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_LSL_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x14: /* 00000100 ..010100 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:305 */ disas_sve_extract_rdm_pg_rn(ctx, &u.f_rprr_esz, insn); if (trans_ASR_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x15: /* 00000100 ..010101 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:306 */ disas_sve_extract_rdm_pg_rn(ctx, &u.f_rprr_esz, insn); if (trans_LSR_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x17: /* 00000100 ..010111 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:307 */ disas_sve_extract_rdm_pg_rn(ctx, &u.f_rprr_esz, insn); if (trans_LSL_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x18: /* 00000100 ..011000 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:311 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_ASR_zpzw(ctx, &u.f_rprr_esz)) return true; return false; case 0x19: /* 00000100 ..011001 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:312 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_LSR_zpzw(ctx, &u.f_rprr_esz)) return true; return false; case 0x1b: /* 00000100 ..011011 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:313 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_LSL_zpzw(ctx, &u.f_rprr_esz)) return true; return false; } return false; case 0x5: /* 00000100 ..0..... 101..... ........ */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); switch ((insn >> 16) & 0x1f) { case 0x10: /* 00000100 ..010000 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:331 */ if (trans_SXTB(ctx, &u.f_rpr_esz)) return true; return false; case 0x11: /* 00000100 ..010001 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:332 */ if (trans_UXTB(ctx, &u.f_rpr_esz)) return true; return false; case 0x12: /* 00000100 ..010010 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:333 */ if (trans_SXTH(ctx, &u.f_rpr_esz)) return true; return false; case 0x13: /* 00000100 ..010011 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:334 */ if (trans_UXTH(ctx, &u.f_rpr_esz)) return true; return false; case 0x14: /* 00000100 ..010100 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:335 */ if (trans_SXTW(ctx, &u.f_rpr_esz)) return true; return false; case 0x15: /* 00000100 ..010101 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:336 */ if (trans_UXTW(ctx, &u.f_rpr_esz)) return true; return false; case 0x16: /* 00000100 ..010110 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:329 */ if (trans_ABS(ctx, &u.f_rpr_esz)) return true; return false; case 0x17: /* 00000100 ..010111 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:330 */ if (trans_NEG(ctx, &u.f_rpr_esz)) return true; return false; case 0x18: /* 00000100 ..011000 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:319 */ if (trans_CLS(ctx, &u.f_rpr_esz)) return true; return false; case 0x19: /* 00000100 ..011001 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:320 */ if (trans_CLZ(ctx, &u.f_rpr_esz)) return true; return false; case 0x1a: /* 00000100 ..011010 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:321 */ if (trans_CNT_zpz(ctx, &u.f_rpr_esz)) return true; return false; case 0x1b: /* 00000100 ..011011 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:322 */ if (trans_CNOT(ctx, &u.f_rpr_esz)) return true; return false; case 0x1c: /* 00000100 ..011100 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:324 */ if (trans_FABS(ctx, &u.f_rpr_esz)) return true; return false; case 0x1d: /* 00000100 ..011101 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:325 */ if (trans_FNEG(ctx, &u.f_rpr_esz)) return true; return false; case 0x1e: /* 00000100 ..011110 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:323 */ if (trans_NOT_zpz(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x6: /* 00000100 ..0..... 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:356 */ disas_sve_extract_rdn_pg_ra_rm(ctx, &u.f_rprrr_esz, insn); if (trans_MLA(ctx, &u.f_rprrr_esz)) return true; return false; case 0x7: /* 00000100 ..0..... 111..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:357 */ disas_sve_extract_rdn_pg_ra_rm(ctx, &u.f_rprrr_esz, insn); if (trans_MLS(ctx, &u.f_rprrr_esz)) return true; return false; } return false; case 0x00200000: /* 00000100 ..1..... ........ ........ */ switch ((insn >> 12) & 0xf) { case 0x0: /* 00000100 ..1..... 0000.... ........ */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); switch ((insn >> 10) & 0x3) { case 0x0: /* 00000100 ..1..... 000000.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:362 */ if (trans_ADD_zzz(ctx, &u.f_rrr_esz)) return true; return false; case 0x1: /* 00000100 ..1..... 000001.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:363 */ if (trans_SUB_zzz(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x1: /* 00000100 ..1..... 0001.... ........ */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); switch ((insn >> 10) & 0x3) { case 0x0: /* 00000100 ..1..... 000100.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:364 */ if (trans_SQADD_zzz(ctx, &u.f_rrr_esz)) return true; return false; case 0x1: /* 00000100 ..1..... 000101.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:365 */ if (trans_UQADD_zzz(ctx, &u.f_rrr_esz)) return true; return false; case 0x2: /* 00000100 ..1..... 000110.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:366 */ if (trans_SQSUB_zzz(ctx, &u.f_rrr_esz)) return true; return false; case 0x3: /* 00000100 ..1..... 000111.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:367 */ if (trans_UQSUB_zzz(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x3: /* 00000100 ..1..... 0011.... ........ */ disas_sve_extract_rd_rn_rm_e0(ctx, &u.f_rrr_esz, insn); switch (insn & 0x00c00c00) { case 0x00000000: /* 00000100 001..... 001100.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:372 */ if (trans_AND_zzz(ctx, &u.f_rrr_esz)) return true; return false; case 0x00400000: /* 00000100 011..... 001100.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:373 */ if (trans_ORR_zzz(ctx, &u.f_rrr_esz)) return true; return false; case 0x00800000: /* 00000100 101..... 001100.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:374 */ if (trans_EOR_zzz(ctx, &u.f_rrr_esz)) return true; return false; case 0x00c00000: /* 00000100 111..... 001100.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:375 */ if (trans_BIC_zzz(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x4: /* 00000100 ..1..... 0100.... ........ */ switch ((insn >> 10) & 0x3) { case 0x0: /* 00000100 ..1..... 010000.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:380 */ disas_sve_extract_disas_sve_Fmt_55(ctx, &u.f_disas_sve25, insn); if (trans_INDEX_ii(ctx, &u.f_disas_sve25)) return true; return false; case 0x1: /* 00000100 ..1..... 010001.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:386 */ disas_sve_extract_disas_sve_Fmt_57(ctx, &u.f_rri_esz, insn); if (trans_INDEX_ri(ctx, &u.f_rri_esz)) return true; return false; case 0x2: /* 00000100 ..1..... 010010.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:383 */ disas_sve_extract_disas_sve_Fmt_56(ctx, &u.f_disas_sve26, insn); if (trans_INDEX_ir(ctx, &u.f_disas_sve26)) return true; return false; case 0x3: /* 00000100 ..1..... 010011.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:389 */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); if (trans_INDEX_rr(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x5: /* 00000100 ..1..... 0101.... ........ */ switch (insn & 0x00c00800) { case 0x00000000: /* 00000100 001..... 01010... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:394 */ disas_sve_extract_rd_rn_i6(ctx, &u.f_rri, insn); if (trans_ADDVL(ctx, &u.f_rri)) return true; return false; case 0x00400000: /* 00000100 011..... 01010... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:395 */ disas_sve_extract_rd_rn_i6(ctx, &u.f_rri, insn); if (trans_ADDPL(ctx, &u.f_rri)) return true; return false; case 0x00800000: /* 00000100 101..... 01010... ........ */ disas_sve_extract_disas_sve_Fmt_58(ctx, &u.f_disas_sve27, insn); switch ((insn >> 16) & 0x1f) { case 0x1f: /* 00000100 10111111 01010... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:398 */ if (trans_RDVL(ctx, &u.f_disas_sve27)) return true; return false; } return false; } return false; case 0x8: /* 00000100 ..1..... 1000.... ........ */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); switch ((insn >> 10) & 0x3) { case 0x0: /* 00000100 ..1..... 100000.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:412 */ if (trans_ASR_zzw(ctx, &u.f_rrr_esz)) return true; return false; case 0x1: /* 00000100 ..1..... 100001.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:413 */ if (trans_LSR_zzw(ctx, &u.f_rrr_esz)) return true; return false; case 0x3: /* 00000100 ..1..... 100011.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:414 */ if (trans_LSL_zzw(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x9: /* 00000100 ..1..... 1001.... ........ */ disas_sve_extract_rd_rn_tszimm(ctx, &u.f_rri_esz, insn); switch ((insn >> 10) & 0x3) { case 0x0: /* 00000100 ..1..... 100100.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:403 */ u.f_rri_esz.imm = tszimm_shr(ctx, deposit32(extract32(insn, 16, 5), 5, 27, extract32(insn, 22, 2))); if (trans_ASR_zzi(ctx, &u.f_rri_esz)) return true; return false; case 0x1: /* 00000100 ..1..... 100101.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:405 */ u.f_rri_esz.imm = tszimm_shr(ctx, deposit32(extract32(insn, 16, 5), 5, 27, extract32(insn, 22, 2))); if (trans_LSR_zzi(ctx, &u.f_rri_esz)) return true; return false; case 0x3: /* 00000100 ..1..... 100111.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:407 */ u.f_rri_esz.imm = tszimm_shl(ctx, deposit32(extract32(insn, 16, 5), 5, 27, extract32(insn, 22, 2))); if (trans_LSL_zzi(ctx, &u.f_rri_esz)) return true; return false; } return false; case 0xa: /* 00000100 ..1..... 1010.... ........ */ disas_sve_extract_rd_rn_msz_rm(ctx, &u.f_rrri, insn); switch ((insn >> 22) & 0x3) { case 0x0: /* 00000100 001..... 1010.... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:419 */ if (trans_ADR_s32(ctx, &u.f_rrri)) return true; return false; case 0x1: /* 00000100 011..... 1010.... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:420 */ if (trans_ADR_u32(ctx, &u.f_rrri)) return true; return false; case 0x2: /* 00000100 101..... 1010.... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:421 */ if (trans_ADR_p32(ctx, &u.f_rrri)) return true; return false; case 0x3: /* 00000100 111..... 1010.... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:422 */ if (trans_ADR_p64(ctx, &u.f_rrri)) return true; return false; } return false; case 0xb: /* 00000100 ..1..... 1011.... ........ */ switch ((insn >> 10) & 0x3) { case 0x0: /* 00000100 ..1..... 101100.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:435 */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); if (trans_FTSSEL(ctx, &u.f_rrr_esz)) return true; return false; case 0x2: /* 00000100 ..1..... 101110.. ........ */ disas_sve_extract_rd_rn(ctx, &u.f_rr_esz, insn); switch ((insn >> 16) & 0x1f) { case 0x0: /* 00000100 ..100000 101110.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:431 */ if (trans_FEXPA(ctx, &u.f_rr_esz)) return true; return false; } return false; case 0x3: /* 00000100 ..1..... 101111.. ........ */ disas_sve_extract_disas_sve_Fmt_59(ctx, &u.f_disas_sve28, insn); switch (insn & 0x00df0000) { case 0x00000000: /* 00000100 00100000 101111.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:427 */ if (trans_MOVPRFX(ctx, &u.f_disas_sve28)) return true; return false; } return false; } return false; case 0xc: /* 00000100 ..1..... 1100.... ........ */ disas_sve_extract_incdec2_cnt(ctx, &u.f_incdec2_cnt, insn); switch ((insn >> 20) & 0x1) { case 0x0: /* 00000100 ..10.... 1100.... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:455 */ u.f_incdec2_cnt.d = extract32(insn, 11, 1); u.f_incdec2_cnt.u = extract32(insn, 10, 1); if (trans_SINCDEC_v(ctx, &u.f_incdec2_cnt)) return true; return false; case 0x1: /* 00000100 ..11.... 1100.... ........ */ switch ((insn >> 11) & 0x1) { case 0x0: /* 00000100 ..11.... 11000... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:451 */ u.f_incdec2_cnt.d = extract32(insn, 10, 1); u.f_incdec2_cnt.u = 1; if (trans_INCDEC_v(ctx, &u.f_incdec2_cnt)) return true; return false; } return false; } return false; case 0xe: /* 00000100 ..1..... 1110.... ........ */ disas_sve_extract_incdec_cnt(ctx, &u.f_incdec_cnt, insn); switch (insn & 0x00100800) { case 0x00000000: /* 00000100 ..10.... 11100... ........ */ switch ((insn >> 10) & 0x1) { case 0x0: /* 00000100 ..10.... 111000.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:440 */ u.f_incdec_cnt.d = 0; u.f_incdec_cnt.u = 1; if (trans_CNT_r(ctx, &u.f_incdec_cnt)) return true; return false; } return false; case 0x00100000: /* 00000100 ..11.... 11100... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:443 */ u.f_incdec_cnt.d = extract32(insn, 10, 1); u.f_incdec_cnt.u = 1; if (trans_INCDEC_r(ctx, &u.f_incdec_cnt)) return true; return false; } return false; case 0xf: /* 00000100 ..1..... 1111.... ........ */ disas_sve_extract_incdec_cnt(ctx, &u.f_incdec_cnt, insn); switch ((insn >> 20) & 0x1) { case 0x0: /* 00000100 ..10.... 1111.... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:446 */ u.f_incdec_cnt.d = extract32(insn, 11, 1); u.f_incdec_cnt.u = extract32(insn, 10, 1); if (trans_SINCDEC_r_32(ctx, &u.f_incdec_cnt)) return true; return false; case 0x1: /* 00000100 ..11.... 1111.... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:447 */ u.f_incdec_cnt.d = extract32(insn, 11, 1); u.f_incdec_cnt.u = extract32(insn, 10, 1); if (trans_SINCDEC_r_64(ctx, &u.f_incdec_cnt)) return true; return false; } return false; } return false; case 0x01000000: /* 00000101 ..0..... ........ ........ */ switch ((insn >> 20) & 0x1) { case 0x0: /* 00000101 ..00.... ........ ........ */ switch (insn & 0x00cc0000) { case 0x00000000: /* 00000101 000000.. ........ ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:460 */ disas_sve_extract_rdn_dbm(ctx, &u.f_rr_dbm, insn); if (trans_ORR_zzi(ctx, &u.f_rr_dbm)) return true; return false; case 0x00400000: /* 00000101 010000.. ........ ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:461 */ disas_sve_extract_rdn_dbm(ctx, &u.f_rr_dbm, insn); if (trans_EOR_zzi(ctx, &u.f_rr_dbm)) return true; return false; case 0x00800000: /* 00000101 100000.. ........ ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:462 */ disas_sve_extract_rdn_dbm(ctx, &u.f_rr_dbm, insn); if (trans_AND_zzi(ctx, &u.f_rr_dbm)) return true; return false; case 0x00c00000: /* 00000101 110000.. ........ ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:465 */ disas_sve_extract_disas_sve_Fmt_60(ctx, &u.f_disas_sve29, insn); if (trans_DUPM(ctx, &u.f_disas_sve29)) return true; return false; } return false; case 0x1: /* 00000101 ..01.... ........ ........ */ disas_sve_extract_rdn_pg4(ctx, &u.f_rpri_esz, insn); switch ((insn >> 14) & 0x3) { case 0x0: /* 00000101 ..01.... 00...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:474 */ u.f_rpri_esz.imm = expand_imm_sh8s(ctx, extract32(insn, 5, 9)); if (trans_CPY_z_i(ctx, &u.f_rpri_esz)) return true; return false; case 0x1: /* 00000101 ..01.... 01...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:473 */ u.f_rpri_esz.imm = expand_imm_sh8s(ctx, extract32(insn, 5, 9)); if (trans_CPY_m_i(ctx, &u.f_rpri_esz)) return true; return false; case 0x3: /* 00000101 ..01.... 11...... ........ */ switch ((insn >> 13) & 0x1) { case 0x0: /* 00000101 ..01.... 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:470 */ u.f_rpri_esz.imm = extract32(insn, 5, 8); if (trans_FCPY(ctx, &u.f_rpri_esz)) return true; return false; } return false; } return false; } return false; case 0x01200000: /* 00000101 ..1..... ........ ........ */ switch ((insn >> 14) & 0x3) { case 0x0: /* 00000101 ..1..... 00...... ........ */ switch ((insn >> 13) & 0x1) { case 0x0: /* 00000101 ..1..... 000..... ........ */ disas_sve_extract_disas_sve_Fmt_61(ctx, &u.f_rrri, insn); switch ((insn >> 22) & 0x3) { case 0x0: /* 00000101 001..... 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:479 */ if (trans_EXT(ctx, &u.f_rrri)) return true; return false; } return false; case 0x1: /* 00000101 ..1..... 001..... ........ */ switch ((insn >> 10) & 0x7) { case 0x0: /* 00000101 ..1..... 001000.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:488 */ disas_sve_extract_disas_sve_Fmt_62(ctx, &u.f_rri, insn); if (trans_DUP_x(ctx, &u.f_rri)) return true; return false; case 0x4: /* 00000101 ..1..... 001100.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:501 */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); if (trans_TBL(ctx, &u.f_rrr_esz)) return true; return false; case 0x6: /* 00000101 ..1..... 001110.. ........ */ switch ((insn >> 18) & 0x7) { case 0x0: /* 00000101 ..1000.. 001110.. ........ */ disas_sve_extract_rd_rn(ctx, &u.f_rr_esz, insn); switch ((insn >> 16) & 0x3) { case 0x0: /* 00000101 ..100000 001110.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:485 */ if (trans_DUP_s(ctx, &u.f_rr_esz)) return true; return false; } return false; case 0x1: /* 00000101 ..1001.. 001110.. ........ */ disas_sve_extract_rdn_rm(ctx, &u.f_rrr_esz, insn); switch ((insn >> 16) & 0x3) { case 0x0: /* 00000101 ..100100 001110.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:495 */ if (trans_INSR_r(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x4: /* 00000101 ..1100.. 001110.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:504 */ disas_sve_extract_disas_sve_Fmt_63(ctx, &u.f_disas_sve30, insn); if (trans_UNPK(ctx, &u.f_disas_sve30)) return true; return false; case 0x5: /* 00000101 ..1101.. 001110.. ........ */ disas_sve_extract_rdn_rm(ctx, &u.f_rrr_esz, insn); switch ((insn >> 16) & 0x3) { case 0x0: /* 00000101 ..110100 001110.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:492 */ if (trans_INSR_f(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x6: /* 00000101 ..1110.. 001110.. ........ */ disas_sve_extract_rd_rn(ctx, &u.f_rr_esz, insn); switch ((insn >> 16) & 0x3) { case 0x0: /* 00000101 ..111000 001110.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:498 */ if (trans_REV_v(ctx, &u.f_rr_esz)) return true; return false; } return false; } return false; } return false; } return false; case 0x1: /* 00000101 ..1..... 01...... ........ */ switch ((insn >> 10) & 0xf) { case 0x0: /* 00000101 ..1..... 010000.. ........ */ switch (insn & 0x00100210) { case 0x00000000: /* 00000101 ..10.... 0100000. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:509 */ disas_sve_extract_pd_pn_pm(ctx, &u.f_rrr_esz, insn); if (trans_ZIP1_p(ctx, &u.f_rrr_esz)) return true; return false; case 0x00100000: /* 00000101 ..11.... 0100000. ...0.... */ switch ((insn >> 16) & 0xf) { case 0x0: /* 00000101 ..110000 0100000. ...0.... */ disas_sve_extract_pd_pn_e0(ctx, &u.f_rr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x0: /* 00000101 00110000 0100000. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:520 */ if (trans_PUNPKLO(ctx, &u.f_rr_esz)) return true; return false; } return false; case 0x1: /* 00000101 ..110001 0100000. ...0.... */ disas_sve_extract_pd_pn_e0(ctx, &u.f_rr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x0: /* 00000101 00110001 0100000. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:521 */ if (trans_PUNPKHI(ctx, &u.f_rr_esz)) return true; return false; } return false; case 0x4: /* 00000101 ..110100 0100000. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:517 */ disas_sve_extract_pd_pn(ctx, &u.f_rr_esz, insn); if (trans_REV_p(ctx, &u.f_rr_esz)) return true; return false; } return false; } return false; case 0x1: /* 00000101 ..1..... 010001.. ........ */ disas_sve_extract_pd_pn_pm(ctx, &u.f_rrr_esz, insn); switch (insn & 0x00100210) { case 0x00000000: /* 00000101 ..10.... 0100010. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:510 */ if (trans_ZIP2_p(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x2: /* 00000101 ..1..... 010010.. ........ */ disas_sve_extract_pd_pn_pm(ctx, &u.f_rrr_esz, insn); switch (insn & 0x00100210) { case 0x00000000: /* 00000101 ..10.... 0100100. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:511 */ if (trans_UZP1_p(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x3: /* 00000101 ..1..... 010011.. ........ */ disas_sve_extract_pd_pn_pm(ctx, &u.f_rrr_esz, insn); switch (insn & 0x00100210) { case 0x00000000: /* 00000101 ..10.... 0100110. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:512 */ if (trans_UZP2_p(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x4: /* 00000101 ..1..... 010100.. ........ */ disas_sve_extract_pd_pn_pm(ctx, &u.f_rrr_esz, insn); switch (insn & 0x00100210) { case 0x00000000: /* 00000101 ..10.... 0101000. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:513 */ if (trans_TRN1_p(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x5: /* 00000101 ..1..... 010101.. ........ */ disas_sve_extract_pd_pn_pm(ctx, &u.f_rrr_esz, insn); switch (insn & 0x00100210) { case 0x00000000: /* 00000101 ..10.... 0101010. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:514 */ if (trans_TRN2_p(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x8: /* 00000101 ..1..... 011000.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:526 */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); if (trans_ZIP1_z(ctx, &u.f_rrr_esz)) return true; return false; case 0x9: /* 00000101 ..1..... 011001.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:527 */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); if (trans_ZIP2_z(ctx, &u.f_rrr_esz)) return true; return false; case 0xa: /* 00000101 ..1..... 011010.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:528 */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); if (trans_UZP1_z(ctx, &u.f_rrr_esz)) return true; return false; case 0xb: /* 00000101 ..1..... 011011.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:529 */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); if (trans_UZP2_z(ctx, &u.f_rrr_esz)) return true; return false; case 0xc: /* 00000101 ..1..... 011100.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:530 */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); if (trans_TRN1_z(ctx, &u.f_rrr_esz)) return true; return false; case 0xd: /* 00000101 ..1..... 011101.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:531 */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); if (trans_TRN2_z(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x2: /* 00000101 ..1..... 10...... ........ */ switch (insn & 0x001f2000) { case 0x00000000: /* 00000101 ..100000 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:560 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_CPY_m_v(ctx, &u.f_rpr_esz)) return true; return false; case 0x00002000: /* 00000101 ..100000 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:556 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_LASTA_r(ctx, &u.f_rpr_esz)) return true; return false; case 0x00010000: /* 00000101 ..100001 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:537 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_COMPACT(ctx, &u.f_rpr_esz)) return true; return false; case 0x00012000: /* 00000101 ..100001 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:557 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_LASTB_r(ctx, &u.f_rpr_esz)) return true; return false; case 0x00020000: /* 00000101 ..100010 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:552 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_LASTA_v(ctx, &u.f_rpr_esz)) return true; return false; case 0x00030000: /* 00000101 ..100011 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:553 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_LASTB_v(ctx, &u.f_rpr_esz)) return true; return false; case 0x00040000: /* 00000101 ..100100 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:567 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_REVB(ctx, &u.f_rpr_esz)) return true; return false; case 0x00050000: /* 00000101 ..100101 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:568 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_REVH(ctx, &u.f_rpr_esz)) return true; return false; case 0x00060000: /* 00000101 ..100110 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:569 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_REVW(ctx, &u.f_rpr_esz)) return true; return false; case 0x00070000: /* 00000101 ..100111 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:570 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_RBIT(ctx, &u.f_rpr_esz)) return true; return false; case 0x00080000: /* 00000101 ..101000 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:540 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_CLASTA_z(ctx, &u.f_rprr_esz)) return true; return false; case 0x00082000: /* 00000101 ..101000 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:563 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_CPY_m_r(ctx, &u.f_rpr_esz)) return true; return false; case 0x00090000: /* 00000101 ..101001 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:541 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_CLASTB_z(ctx, &u.f_rprr_esz)) return true; return false; case 0x000a0000: /* 00000101 ..101010 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:544 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_CLASTA_v(ctx, &u.f_rpr_esz)) return true; return false; case 0x000b0000: /* 00000101 ..101011 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:545 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_CLASTB_v(ctx, &u.f_rpr_esz)) return true; return false; case 0x000c0000: /* 00000101 ..101100 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:573 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_SPLICE(ctx, &u.f_rprr_esz)) return true; return false; case 0x00102000: /* 00000101 ..110000 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:548 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_CLASTA_r(ctx, &u.f_rpr_esz)) return true; return false; case 0x00112000: /* 00000101 ..110001 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:549 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_CLASTB_r(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x3: /* 00000101 ..1..... 11...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:578 */ disas_sve_extract_rd_pg4_rn_rm(ctx, &u.f_rprr_esz, insn); if (trans_SEL_zpzz(ctx, &u.f_rprr_esz)) return true; return false; } return false; } return false; case 0x12: /* 0010010. ........ ........ ........ */ switch (insn & 0x01200000) { case 0x00000000: /* 00100100 ..0..... ........ ........ */ disas_sve_extract_pd_pg_rn_rm(ctx, &u.f_rprr_esz, insn); switch (insn & 0x0000e010) { case 0x00000000: /* 00100100 ..0..... 000..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:583 */ if (trans_CMPHS_ppzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x00000010: /* 00100100 ..0..... 000..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:584 */ if (trans_CMPHI_ppzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x00002000: /* 00100100 ..0..... 001..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:592 */ if (trans_CMPEQ_ppzw(ctx, &u.f_rprr_esz)) return true; return false; case 0x00002010: /* 00100100 ..0..... 001..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:593 */ if (trans_CMPNE_ppzw(ctx, &u.f_rprr_esz)) return true; return false; case 0x00004000: /* 00100100 ..0..... 010..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:594 */ if (trans_CMPGE_ppzw(ctx, &u.f_rprr_esz)) return true; return false; case 0x00004010: /* 00100100 ..0..... 010..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:595 */ if (trans_CMPGT_ppzw(ctx, &u.f_rprr_esz)) return true; return false; case 0x00006000: /* 00100100 ..0..... 011..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:596 */ if (trans_CMPLT_ppzw(ctx, &u.f_rprr_esz)) return true; return false; case 0x00006010: /* 00100100 ..0..... 011..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:597 */ if (trans_CMPLE_ppzw(ctx, &u.f_rprr_esz)) return true; return false; case 0x00008000: /* 00100100 ..0..... 100..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:585 */ if (trans_CMPGE_ppzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x00008010: /* 00100100 ..0..... 100..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:586 */ if (trans_CMPGT_ppzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x0000a000: /* 00100100 ..0..... 101..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:587 */ if (trans_CMPEQ_ppzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x0000a010: /* 00100100 ..0..... 101..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:588 */ if (trans_CMPNE_ppzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x0000c000: /* 00100100 ..0..... 110..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:598 */ if (trans_CMPHS_ppzw(ctx, &u.f_rprr_esz)) return true; return false; case 0x0000c010: /* 00100100 ..0..... 110..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:599 */ if (trans_CMPHI_ppzw(ctx, &u.f_rprr_esz)) return true; return false; case 0x0000e000: /* 00100100 ..0..... 111..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:600 */ if (trans_CMPLO_ppzw(ctx, &u.f_rprr_esz)) return true; return false; case 0x0000e010: /* 00100100 ..0..... 111..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:601 */ if (trans_CMPLS_ppzw(ctx, &u.f_rprr_esz)) return true; return false; } return false; case 0x00200000: /* 00100100 ..1..... ........ ........ */ disas_sve_extract_pd_pg_rn_i7(ctx, &u.f_rpri_esz, insn); switch (insn & 0x00002010) { case 0x00000000: /* 00100100 ..1..... ..0..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:606 */ if (trans_CMPHS_ppzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x00000010: /* 00100100 ..1..... ..0..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:607 */ if (trans_CMPHI_ppzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x00002000: /* 00100100 ..1..... ..1..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:608 */ if (trans_CMPLO_ppzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x00002010: /* 00100100 ..1..... ..1..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:609 */ if (trans_CMPLS_ppzi(ctx, &u.f_rpri_esz)) return true; return false; } return false; case 0x01000000: /* 00100101 ..0..... ........ ........ */ switch (insn & 0x0000c010) { case 0x00000000: /* 00100101 ..0..... 00...... ...0.... */ disas_sve_extract_pd_pg_rn_i5(ctx, &u.f_rpri_esz, insn); switch ((insn >> 13) & 0x1) { case 0x0: /* 00100101 ..0..... 000..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:614 */ if (trans_CMPGE_ppzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x1: /* 00100101 ..0..... 001..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:616 */ if (trans_CMPLT_ppzi(ctx, &u.f_rpri_esz)) return true; return false; } return false; case 0x00000010: /* 00100101 ..0..... 00...... ...1.... */ disas_sve_extract_pd_pg_rn_i5(ctx, &u.f_rpri_esz, insn); switch ((insn >> 13) & 0x1) { case 0x0: /* 00100101 ..0..... 000..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:615 */ if (trans_CMPGT_ppzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x1: /* 00100101 ..0..... 001..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:617 */ if (trans_CMPLE_ppzi(ctx, &u.f_rpri_esz)) return true; return false; } return false; case 0x00004000: /* 00100101 ..0..... 01...... ...0.... */ switch (insn & 0x00900200) { case 0x00000000: /* 00100101 0.00.... 01....0. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:624 */ disas_sve_extract_pd_pg_pn_pm_s(ctx, &u.f_rprr_s, insn); if (trans_AND_pppp(ctx, &u.f_rprr_s)) return true; return false; case 0x00000200: /* 00100101 0.00.... 01....1. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:626 */ disas_sve_extract_pd_pg_pn_pm_s(ctx, &u.f_rprr_s, insn); if (trans_EOR_pppp(ctx, &u.f_rprr_s)) return true; return false; case 0x00100000: /* 00100101 0.01.... 01....0. ...0.... */ disas_sve_extract_pd_pg_pn_s(ctx, &u.f_rpr_s, insn); switch ((insn >> 16) & 0xf) { case 0x0: /* 00100101 0.010000 01....0. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:669 */ if (trans_BRKA_z(ctx, &u.f_rpr_s)) return true; return false; case 0x8: /* 00100101 0.011000 01....0. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:675 */ if (trans_BRKN(ctx, &u.f_rpr_s)) return true; return false; } return false; case 0x00800000: /* 00100101 1.00.... 01....0. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:628 */ disas_sve_extract_pd_pg_pn_pm_s(ctx, &u.f_rprr_s, insn); if (trans_ORR_pppp(ctx, &u.f_rprr_s)) return true; return false; case 0x00800200: /* 00100101 1.00.... 01....1. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:630 */ disas_sve_extract_pd_pg_pn_pm_s(ctx, &u.f_rprr_s, insn); if (trans_NOR_pppp(ctx, &u.f_rprr_s)) return true; return false; case 0x00900000: /* 00100101 1.01.... 01....0. ...0.... */ disas_sve_extract_pd_pg_pn_s(ctx, &u.f_rpr_s, insn); switch ((insn >> 16) & 0xf) { case 0x0: /* 00100101 1.010000 01....0. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:670 */ if (trans_BRKB_z(ctx, &u.f_rpr_s)) return true; return false; } return false; } return false; case 0x00004010: /* 00100101 ..0..... 01...... ...1.... */ switch (insn & 0x00900200) { case 0x00000000: /* 00100101 0.00.... 01....0. ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:625 */ disas_sve_extract_pd_pg_pn_pm_s(ctx, &u.f_rprr_s, insn); if (trans_BIC_pppp(ctx, &u.f_rprr_s)) return true; return false; case 0x00000200: /* 00100101 0.00.... 01....1. ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:627 */ disas_sve_extract_pd_pg_pn_pm_s(ctx, &u.f_rprr_s, insn); if (trans_SEL_pppp(ctx, &u.f_rprr_s)) return true; return false; case 0x00100000: /* 00100101 0.01.... 01....0. ...1.... */ disas_sve_extract_pd_pg_pn_s0(ctx, &u.f_rpr_s, insn); switch (insn & 0x004f0000) { case 0x00000000: /* 00100101 00010000 01....0. ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:671 */ if (trans_BRKA_m(ctx, &u.f_rpr_s)) return true; return false; } return false; case 0x00800000: /* 00100101 1.00.... 01....0. ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:629 */ disas_sve_extract_pd_pg_pn_pm_s(ctx, &u.f_rprr_s, insn); if (trans_ORN_pppp(ctx, &u.f_rprr_s)) return true; return false; case 0x00800200: /* 00100101 1.00.... 01....1. ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:631 */ disas_sve_extract_pd_pg_pn_pm_s(ctx, &u.f_rprr_s, insn); if (trans_NAND_pppp(ctx, &u.f_rprr_s)) return true; return false; case 0x00900000: /* 00100101 1.01.... 01....0. ...1.... */ disas_sve_extract_pd_pg_pn_s0(ctx, &u.f_rpr_s, insn); switch (insn & 0x004f0000) { case 0x00000000: /* 00100101 10010000 01....0. ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:672 */ if (trans_BRKB_m(ctx, &u.f_rpr_s)) return true; return false; } return false; } return false; case 0x00008000: /* 00100101 ..0..... 10...... ...0.... */ disas_sve_extract_pd_pg_rn_i5(ctx, &u.f_rpri_esz, insn); switch ((insn >> 13) & 0x1) { case 0x0: /* 00100101 ..0..... 100..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:618 */ if (trans_CMPEQ_ppzi(ctx, &u.f_rpri_esz)) return true; return false; } return false; case 0x00008010: /* 00100101 ..0..... 10...... ...1.... */ disas_sve_extract_pd_pg_rn_i5(ctx, &u.f_rpri_esz, insn); switch ((insn >> 13) & 0x1) { case 0x0: /* 00100101 ..0..... 100..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:619 */ if (trans_CMPNE_ppzi(ctx, &u.f_rpri_esz)) return true; return false; } return false; case 0x0000c000: /* 00100101 ..0..... 11...... ...0.... */ switch ((insn >> 20) & 0x1) { case 0x0: /* 00100101 ..00.... 11...... ...0.... */ disas_sve_extract_pd_pg_pn_pm_s(ctx, &u.f_rprr_s, insn); switch (insn & 0x00800200) { case 0x00000000: /* 00100101 0.00.... 11....0. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:665 */ if (trans_BRKPA(ctx, &u.f_rprr_s)) return true; return false; } return false; case 0x1: /* 00100101 ..01.... 11...... ...0.... */ switch ((insn >> 17) & 0x7) { case 0x0: /* 00100101 ..01000. 11...... ...0.... */ disas_sve_extract_disas_sve_Fmt_64(ctx, &u.f_disas_sve31, insn); switch (insn & 0x00c1020f) { case 0x00400000: /* 00100101 01010000 11....0. ...00000 */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:636 */ if (trans_PTEST(ctx, &u.f_disas_sve31)) return true; return false; } return false; case 0x4: /* 00100101 ..01100. 11...... ...0.... */ switch ((insn >> 10) & 0xf) { case 0x0: /* 00100101 ..01100. 110000.. ...0.... */ disas_sve_extract_pd_pn_e0(ctx, &u.f_rr_esz, insn); switch (insn & 0x00c10200) { case 0x00400000: /* 00100101 01011000 1100000. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:657 */ if (trans_PFIRST(ctx, &u.f_rr_esz)) return true; return false; } return false; case 0x1: /* 00100101 ..01100. 110001.. ...0.... */ disas_sve_extract_pd_pn(ctx, &u.f_rr_esz, insn); switch (insn & 0x00010200) { case 0x00010000: /* 00100101 ..011001 1100010. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:660 */ if (trans_PNEXT(ctx, &u.f_rr_esz)) return true; return false; } return false; case 0x8: /* 00100101 ..01100. 111000.. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:639 */ disas_sve_extract_disas_sve_Fmt_65(ctx, &u.f_ptrue, insn); if (trans_PTRUE(ctx, &u.f_ptrue)) return true; return false; case 0x9: /* 00100101 ..01100. 111001.. ...0.... */ disas_sve_extract_disas_sve_Fmt_67(ctx, &u.f_disas_sve33, insn); switch (insn & 0x00c103e0) { case 0x00000000: /* 00100101 00011000 11100100 0000.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:645 */ if (trans_PFALSE(ctx, &u.f_disas_sve33)) return true; return false; } return false; case 0xc: /* 00100101 ..01100. 111100.. ...0.... */ switch (insn & 0x00810200) { case 0x00000000: /* 00100101 0.011000 1111000. ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:648 */ disas_sve_extract_disas_sve_Fmt_68(ctx, &u.f_disas_sve34, insn); if (trans_RDFFR_p(ctx, &u.f_disas_sve34)) return true; return false; case 0x00010000: /* 00100101 0.011001 1111000. ...0.... */ disas_sve_extract_disas_sve_Fmt_67(ctx, &u.f_disas_sve33, insn); switch (insn & 0x004001e0) { case 0x00000000: /* 00100101 00011001 11110000 0000.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:651 */ if (trans_RDFFR(ctx, &u.f_disas_sve33)) return true; return false; } return false; } return false; } return false; } return false; } return false; case 0x0000c010: /* 00100101 ..0..... 11...... ...1.... */ disas_sve_extract_pd_pg_pn_pm_s(ctx, &u.f_rprr_s, insn); switch (insn & 0x00900200) { case 0x00000000: /* 00100101 0.00.... 11....0. ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:666 */ if (trans_BRKPB(ctx, &u.f_rprr_s)) return true; return false; } return false; } return false; case 0x01200000: /* 00100101 ..1..... ........ ........ */ switch ((insn >> 14) & 0x3) { case 0x0: /* 00100101 ..1..... 00...... ........ */ switch (insn & 0x00002400) { case 0x00000400: /* 00100101 ..1..... 000..1.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:701 */ disas_sve_extract_disas_sve_Fmt_71(ctx, &u.f_disas_sve37, insn); if (trans_WHILE(ctx, &u.f_disas_sve37)) return true; return false; case 0x00002000: /* 00100101 ..1..... 001..0.. ........ */ disas_sve_extract_disas_sve_Fmt_70(ctx, &u.f_disas_sve36, insn); switch (insn & 0x0080180f) { case 0x00800000: /* 00100101 1.1..... 001000.. ....0000 */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:698 */ if (trans_CTERM(ctx, &u.f_disas_sve36)) return true; return false; } return false; } return false; case 0x2: /* 00100101 ..1..... 10...... ........ */ switch (insn & 0x001c0200) { case 0x00000000: /* 00100101 ..1000.. 10....0. ........ */ disas_sve_extract_rd_pg4_pn(ctx, &u.f_rpr_esz, insn); switch ((insn >> 16) & 0x3) { case 0x0: /* 00100101 ..100000 10....0. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:680 */ if (trans_CNTP(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x00080000: /* 00100101 ..1010.. 10....0. ........ */ switch ((insn >> 10) & 0xf) { case 0x0: /* 00100101 ..1010.. 1000000. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:693 */ disas_sve_extract_incdec2_pred(ctx, &u.f_incdec2_pred, insn); u.f_incdec2_pred.d = extract32(insn, 17, 1); u.f_incdec2_pred.u = extract32(insn, 16, 1); if (trans_SINCDECP_z(ctx, &u.f_incdec2_pred)) return true; return false; case 0x2: /* 00100101 ..1010.. 1000100. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:689 */ disas_sve_extract_incdec_pred(ctx, &u.f_incdec_pred, insn); u.f_incdec_pred.d = extract32(insn, 17, 1); u.f_incdec_pred.u = extract32(insn, 16, 1); if (trans_SINCDECP_r_32(ctx, &u.f_incdec_pred)) return true; return false; case 0x3: /* 00100101 ..1010.. 1000110. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:690 */ disas_sve_extract_incdec_pred(ctx, &u.f_incdec_pred, insn); u.f_incdec_pred.d = extract32(insn, 17, 1); u.f_incdec_pred.u = extract32(insn, 16, 1); if (trans_SINCDECP_r_64(ctx, &u.f_incdec_pred)) return true; return false; case 0x4: /* 00100101 ..1010.. 1001000. ........ */ disas_sve_extract_disas_sve_Fmt_69(ctx, &u.f_disas_sve35, insn); switch (insn & 0x00c3001f) { case 0x00000000: /* 00100101 00101000 1001000. ...00000 */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:654 */ if (trans_WRFFR(ctx, &u.f_disas_sve35)) return true; return false; } return false; } return false; case 0x000c0000: /* 00100101 ..1011.. 10....0. ........ */ switch (insn & 0x00023c00) { case 0x00000000: /* 00100101 ..10110. 1000000. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:686 */ disas_sve_extract_incdec2_pred(ctx, &u.f_incdec2_pred, insn); u.f_incdec2_pred.d = extract32(insn, 16, 1); u.f_incdec2_pred.u = 1; if (trans_INCDECP_z(ctx, &u.f_incdec2_pred)) return true; return false; case 0x00000800: /* 00100101 ..10110. 1000100. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:683 */ disas_sve_extract_incdec_pred(ctx, &u.f_incdec_pred, insn); u.f_incdec_pred.d = extract32(insn, 16, 1); u.f_incdec_pred.u = 1; if (trans_INCDECP_r(ctx, &u.f_incdec_pred)) return true; return false; case 0x00001000: /* 00100101 ..10110. 1001000. ........ */ disas_sve_extract_disas_sve_Fmt_66(ctx, &u.f_disas_sve32, insn); switch (insn & 0x00c101ff) { case 0x00000000: /* 00100101 00101100 10010000 00000000 */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:642 */ if (trans_SETFFR(ctx, &u.f_disas_sve32)) return true; return false; } return false; } return false; } return false; case 0x3: /* 00100101 ..1..... 11...... ........ */ switch ((insn >> 16) & 0x1f) { case 0x0: /* 00100101 ..100000 11...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:712 */ disas_sve_extract_rdn_sh_i8u(ctx, &u.f_rri_esz, insn); if (trans_ADD_zzi(ctx, &u.f_rri_esz)) return true; return false; case 0x1: /* 00100101 ..100001 11...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:713 */ disas_sve_extract_rdn_sh_i8u(ctx, &u.f_rri_esz, insn); if (trans_SUB_zzi(ctx, &u.f_rri_esz)) return true; return false; case 0x3: /* 00100101 ..100011 11...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:714 */ disas_sve_extract_rdn_sh_i8u(ctx, &u.f_rri_esz, insn); if (trans_SUBR_zzi(ctx, &u.f_rri_esz)) return true; return false; case 0x4: /* 00100101 ..100100 11...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:715 */ disas_sve_extract_rdn_sh_i8u(ctx, &u.f_rri_esz, insn); if (trans_SQADD_zzi(ctx, &u.f_rri_esz)) return true; return false; case 0x5: /* 00100101 ..100101 11...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:716 */ disas_sve_extract_rdn_sh_i8u(ctx, &u.f_rri_esz, insn); if (trans_UQADD_zzi(ctx, &u.f_rri_esz)) return true; return false; case 0x6: /* 00100101 ..100110 11...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:717 */ disas_sve_extract_rdn_sh_i8u(ctx, &u.f_rri_esz, insn); if (trans_SQSUB_zzi(ctx, &u.f_rri_esz)) return true; return false; case 0x7: /* 00100101 ..100111 11...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:718 */ disas_sve_extract_rdn_sh_i8u(ctx, &u.f_rri_esz, insn); if (trans_UQSUB_zzi(ctx, &u.f_rri_esz)) return true; return false; case 0x8: /* 00100101 ..101000 11...... ........ */ disas_sve_extract_rdn_i8s(ctx, &u.f_rri_esz, insn); switch ((insn >> 13) & 0x1) { case 0x0: /* 00100101 ..101000 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:721 */ if (trans_SMAX_zzi(ctx, &u.f_rri_esz)) return true; return false; } return false; case 0x9: /* 00100101 ..101001 11...... ........ */ disas_sve_extract_rdn_i8u(ctx, &u.f_rri_esz, insn); switch ((insn >> 13) & 0x1) { case 0x0: /* 00100101 ..101001 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:722 */ if (trans_UMAX_zzi(ctx, &u.f_rri_esz)) return true; return false; } return false; case 0xa: /* 00100101 ..101010 11...... ........ */ disas_sve_extract_rdn_i8s(ctx, &u.f_rri_esz, insn); switch ((insn >> 13) & 0x1) { case 0x0: /* 00100101 ..101010 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:723 */ if (trans_SMIN_zzi(ctx, &u.f_rri_esz)) return true; return false; } return false; case 0xb: /* 00100101 ..101011 11...... ........ */ disas_sve_extract_rdn_i8u(ctx, &u.f_rri_esz, insn); switch ((insn >> 13) & 0x1) { case 0x0: /* 00100101 ..101011 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:724 */ if (trans_UMIN_zzi(ctx, &u.f_rri_esz)) return true; return false; } return false; case 0x10: /* 00100101 ..110000 11...... ........ */ disas_sve_extract_rdn_i8s(ctx, &u.f_rri_esz, insn); switch ((insn >> 13) & 0x1) { case 0x0: /* 00100101 ..110000 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:727 */ if (trans_MUL_zzi(ctx, &u.f_rri_esz)) return true; return false; } return false; case 0x18: /* 00100101 ..111000 11...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:709 */ disas_sve_extract_disas_sve_Fmt_73(ctx, &u.f_disas_sve38, insn); if (trans_DUP_i(ctx, &u.f_disas_sve38)) return true; return false; case 0x19: /* 00100101 ..111001 11...... ........ */ disas_sve_extract_disas_sve_Fmt_72(ctx, &u.f_disas_sve38, insn); switch ((insn >> 13) & 0x1) { case 0x0: /* 00100101 ..111001 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:706 */ if (trans_FDUP(ctx, &u.f_disas_sve38)) return true; return false; } return false; } return false; } return false; } return false; case 0x22: /* 0100010. ........ ........ ........ */ switch (insn & 0x01a0f800) { case 0x00800000: /* 01000100 1.0..... 00000... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:730 */ disas_sve_extract_disas_sve_Fmt_74(ctx, &u.f_disas_sve39, insn); if (trans_DOT_zzz(ctx, &u.f_disas_sve39)) return true; return false; case 0x00a00000: /* 01000100 1.1..... 00000... ........ */ switch ((insn >> 22) & 0x1) { case 0x0: /* 01000100 101..... 00000... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:733 */ disas_sve_extract_disas_sve_Fmt_75(ctx, &u.f_disas_sve40, insn); if (trans_DOT_zzx(ctx, &u.f_disas_sve40)) return true; return false; case 0x1: /* 01000100 111..... 00000... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:735 */ disas_sve_extract_disas_sve_Fmt_76(ctx, &u.f_disas_sve40, insn); if (trans_DOT_zzx(ctx, &u.f_disas_sve40)) return true; return false; } return false; } return false; case 0x32: /* 0110010. ........ ........ ........ */ switch (insn & 0x01208000) { case 0x00000000: /* 01100100 ..0..... 0....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:743 */ disas_sve_extract_disas_sve_Fmt_78(ctx, &u.f_disas_sve42, insn); if (trans_FCMLA_zpzzz(ctx, &u.f_disas_sve42)) return true; return false; case 0x00008000: /* 01100100 ..0..... 1....... ........ */ disas_sve_extract_disas_sve_Fmt_77(ctx, &u.f_disas_sve41, insn); switch (insn & 0x001e6000) { case 0x00000000: /* 01100100 ..00000. 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:739 */ if (trans_FCADD(ctx, &u.f_disas_sve41)) return true; return false; } return false; case 0x00200000: /* 01100100 ..1..... 0....... ........ */ switch (insn & 0x00807000) { case 0x00000000: /* 01100100 0.1..... 0000.... ........ */ disas_sve_extract_disas_sve_Fmt_81(ctx, &u.f_disas_sve44, insn); switch ((insn >> 11) & 0x1) { case 0x0: /* 01100100 0.1..... 00000... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:755 */ if (trans_FMLA_zzxz(ctx, &u.f_disas_sve44)) return true; return false; } return false; case 0x00002000: /* 01100100 0.1..... 0010.... ........ */ disas_sve_extract_disas_sve_Fmt_84(ctx, &u.f_disas_sve45, insn); switch ((insn >> 10) & 0x3) { case 0x0: /* 01100100 0.1..... 001000.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:765 */ if (trans_FMUL_zzx(ctx, &u.f_disas_sve45)) return true; return false; } return false; case 0x00800000: /* 01100100 1.1..... 0000.... ........ */ switch (insn & 0x00400800) { case 0x00000000: /* 01100100 101..... 00000... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:757 */ disas_sve_extract_disas_sve_Fmt_82(ctx, &u.f_disas_sve44, insn); if (trans_FMLA_zzxz(ctx, &u.f_disas_sve44)) return true; return false; case 0x00400000: /* 01100100 111..... 00000... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:759 */ disas_sve_extract_disas_sve_Fmt_83(ctx, &u.f_disas_sve44, insn); if (trans_FMLA_zzxz(ctx, &u.f_disas_sve44)) return true; return false; } return false; case 0x00801000: /* 01100100 1.1..... 0001.... ........ */ switch ((insn >> 22) & 0x1) { case 0x0: /* 01100100 101..... 0001.... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:747 */ disas_sve_extract_disas_sve_Fmt_79(ctx, &u.f_disas_sve43, insn); if (trans_FCMLA_zzxz(ctx, &u.f_disas_sve43)) return true; return false; case 0x1: /* 01100100 111..... 0001.... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:749 */ disas_sve_extract_disas_sve_Fmt_80(ctx, &u.f_disas_sve43, insn); if (trans_FCMLA_zzxz(ctx, &u.f_disas_sve43)) return true; return false; } return false; case 0x00802000: /* 01100100 1.1..... 0010.... ........ */ switch (insn & 0x00400c00) { case 0x00000000: /* 01100100 101..... 001000.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:767 */ disas_sve_extract_disas_sve_Fmt_85(ctx, &u.f_disas_sve45, insn); if (trans_FMUL_zzx(ctx, &u.f_disas_sve45)) return true; return false; case 0x00400000: /* 01100100 111..... 001000.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:768 */ disas_sve_extract_disas_sve_Fmt_86(ctx, &u.f_disas_sve45, insn); if (trans_FMUL_zzx(ctx, &u.f_disas_sve45)) return true; return false; } return false; } return false; case 0x01000000: /* 01100101 ..0..... 0....... ........ */ switch ((insn >> 13) & 0x3) { case 0x0: /* 01100101 ..0..... 000..... ........ */ disas_sve_extract_rd_rn_rm(ctx, &u.f_rrr_esz, insn); switch ((insn >> 10) & 0x7) { case 0x0: /* 01100101 ..0..... 000000.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:800 */ if (trans_FADD_zzz(ctx, &u.f_rrr_esz)) return true; return false; case 0x1: /* 01100101 ..0..... 000001.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:801 */ if (trans_FSUB_zzz(ctx, &u.f_rrr_esz)) return true; return false; case 0x2: /* 01100101 ..0..... 000010.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:802 */ if (trans_FMUL_zzz(ctx, &u.f_rrr_esz)) return true; return false; case 0x3: /* 01100101 ..0..... 000011.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:803 */ if (trans_FTSMUL(ctx, &u.f_rrr_esz)) return true; return false; case 0x6: /* 01100101 ..0..... 000110.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:804 */ if (trans_FRECPS(ctx, &u.f_rrr_esz)) return true; return false; case 0x7: /* 01100101 ..0..... 000111.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:805 */ if (trans_FRSQRTS(ctx, &u.f_rrr_esz)) return true; return false; } return false; case 0x1: /* 01100101 ..0..... 001..... ........ */ switch ((insn >> 16) & 0x1f) { case 0x0: /* 01100101 ..000000 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:772 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FADDV(ctx, &u.f_rpr_esz)) return true; return false; case 0x4: /* 01100101 ..000100 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:773 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FMAXNMV(ctx, &u.f_rpr_esz)) return true; return false; case 0x5: /* 01100101 ..000101 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:774 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FMINNMV(ctx, &u.f_rpr_esz)) return true; return false; case 0x6: /* 01100101 ..000110 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:775 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FMAXV(ctx, &u.f_rpr_esz)) return true; return false; case 0x7: /* 01100101 ..000111 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:776 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FMINV(ctx, &u.f_rpr_esz)) return true; return false; case 0xe: /* 01100101 ..001110 001..... ........ */ disas_sve_extract_rd_rn(ctx, &u.f_rr_esz, insn); switch ((insn >> 10) & 0x7) { case 0x4: /* 01100101 ..001110 001100.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:780 */ if (trans_FRECPE(ctx, &u.f_rr_esz)) return true; return false; } return false; case 0xf: /* 01100101 ..001111 001..... ........ */ disas_sve_extract_rd_rn(ctx, &u.f_rr_esz, insn); switch ((insn >> 10) & 0x7) { case 0x4: /* 01100101 ..001111 001100.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:781 */ if (trans_FRSQRTE(ctx, &u.f_rr_esz)) return true; return false; } return false; case 0x10: /* 01100101 ..010000 001..... ........ */ disas_sve_extract_pd_pg_rn(ctx, &u.f_rpr_esz, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 01100101 ..010000 001..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:785 */ if (trans_FCMGE_ppz0(ctx, &u.f_rpr_esz)) return true; return false; case 0x1: /* 01100101 ..010000 001..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:786 */ if (trans_FCMGT_ppz0(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x11: /* 01100101 ..010001 001..... ........ */ disas_sve_extract_pd_pg_rn(ctx, &u.f_rpr_esz, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 01100101 ..010001 001..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:787 */ if (trans_FCMLT_ppz0(ctx, &u.f_rpr_esz)) return true; return false; case 0x1: /* 01100101 ..010001 001..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:788 */ if (trans_FCMLE_ppz0(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x12: /* 01100101 ..010010 001..... ........ */ disas_sve_extract_pd_pg_rn(ctx, &u.f_rpr_esz, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 01100101 ..010010 001..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:789 */ if (trans_FCMEQ_ppz0(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x13: /* 01100101 ..010011 001..... ........ */ disas_sve_extract_pd_pg_rn(ctx, &u.f_rpr_esz, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 01100101 ..010011 001..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:790 */ if (trans_FCMNE_ppz0(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x18: /* 01100101 ..011000 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:795 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FADDA(ctx, &u.f_rprr_esz)) return true; return false; } return false; case 0x2: /* 01100101 ..0..... 010..... ........ */ disas_sve_extract_pd_pg_rn_rm(ctx, &u.f_rprr_esz, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 01100101 ..0..... 010..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:341 */ if (trans_FCMGE_ppzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x1: /* 01100101 ..0..... 010..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:342 */ if (trans_FCMGT_ppzz(ctx, &u.f_rprr_esz)) return true; return false; } return false; case 0x3: /* 01100101 ..0..... 011..... ........ */ disas_sve_extract_pd_pg_rn_rm(ctx, &u.f_rprr_esz, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 01100101 ..0..... 011..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:343 */ if (trans_FCMEQ_ppzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x1: /* 01100101 ..0..... 011..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:344 */ if (trans_FCMNE_ppzz(ctx, &u.f_rprr_esz)) return true; return false; } return false; } return false; case 0x01008000: /* 01100101 ..0..... 1....... ........ */ switch ((insn >> 13) & 0x3) { case 0x0: /* 01100101 ..0..... 100..... ........ */ switch ((insn >> 19) & 0x3) { case 0x0: /* 01100101 ..000... 100..... ........ */ switch ((insn >> 16) & 0x7) { case 0x0: /* 01100101 ..000000 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:810 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FADD_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x1: /* 01100101 ..000001 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:811 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FSUB_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x2: /* 01100101 ..000010 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:812 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FMUL_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x3: /* 01100101 ..000011 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:813 */ disas_sve_extract_rdm_pg_rn(ctx, &u.f_rprr_esz, insn); if (trans_FSUB_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x4: /* 01100101 ..000100 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:814 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FMAXNM_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x5: /* 01100101 ..000101 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:815 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FMINNM_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x6: /* 01100101 ..000110 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:816 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FMAX_zpzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x7: /* 01100101 ..000111 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:817 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FMIN_zpzz(ctx, &u.f_rprr_esz)) return true; return false; } return false; case 0x1: /* 01100101 ..001... 100..... ........ */ switch ((insn >> 16) & 0x7) { case 0x0: /* 01100101 ..001000 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:818 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FABD(ctx, &u.f_rprr_esz)) return true; return false; case 0x1: /* 01100101 ..001001 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:819 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FSCALE(ctx, &u.f_rprr_esz)) return true; return false; case 0x2: /* 01100101 ..001010 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:820 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FMULX(ctx, &u.f_rprr_esz)) return true; return false; case 0x4: /* 01100101 ..001100 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:821 */ disas_sve_extract_rdm_pg_rn(ctx, &u.f_rprr_esz, insn); if (trans_FDIV(ctx, &u.f_rprr_esz)) return true; return false; case 0x5: /* 01100101 ..001101 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:822 */ disas_sve_extract_rdn_pg_rm(ctx, &u.f_rprr_esz, insn); if (trans_FDIV(ctx, &u.f_rprr_esz)) return true; return false; } return false; case 0x2: /* 01100101 ..010... 100..... ........ */ disas_sve_extract_disas_sve_Fmt_87(ctx, &u.f_disas_sve46, insn); switch ((insn >> 10) & 0x7) { case 0x0: /* 01100101 ..010... 100000.. ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:835 */ if (trans_FTMAD(ctx, &u.f_disas_sve46)) return true; return false; } return false; case 0x3: /* 01100101 ..011... 100..... ........ */ disas_sve_extract_rdn_i1(ctx, &u.f_rpri_esz, insn); switch (insn & 0x000703c0) { case 0x00000000: /* 01100101 ..011000 100...00 00...... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:825 */ if (trans_FADD_zpzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x00010000: /* 01100101 ..011001 100...00 00...... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:826 */ if (trans_FSUB_zpzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x00020000: /* 01100101 ..011010 100...00 00...... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:827 */ if (trans_FMUL_zpzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x00030000: /* 01100101 ..011011 100...00 00...... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:828 */ if (trans_FSUBR_zpzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x00040000: /* 01100101 ..011100 100...00 00...... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:829 */ if (trans_FMAXNM_zpzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x00050000: /* 01100101 ..011101 100...00 00...... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:830 */ if (trans_FMINNM_zpzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x00060000: /* 01100101 ..011110 100...00 00...... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:831 */ if (trans_FMAX_zpzi(ctx, &u.f_rpri_esz)) return true; return false; case 0x00070000: /* 01100101 ..011111 100...00 00...... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:832 */ if (trans_FMIN_zpzi(ctx, &u.f_rpri_esz)) return true; return false; } return false; } return false; case 0x1: /* 01100101 ..0..... 101..... ........ */ switch ((insn >> 16) & 0x1f) { case 0x0: /* 01100101 ..000000 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:880 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FRINTN(ctx, &u.f_rpr_esz)) return true; return false; case 0x1: /* 01100101 ..000001 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:881 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FRINTP(ctx, &u.f_rpr_esz)) return true; return false; case 0x2: /* 01100101 ..000010 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:882 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FRINTM(ctx, &u.f_rpr_esz)) return true; return false; case 0x3: /* 01100101 ..000011 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:883 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FRINTZ(ctx, &u.f_rpr_esz)) return true; return false; case 0x4: /* 01100101 ..000100 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:884 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FRINTA(ctx, &u.f_rpr_esz)) return true; return false; case 0x6: /* 01100101 ..000110 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:885 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FRINTX(ctx, &u.f_rpr_esz)) return true; return false; case 0x7: /* 01100101 ..000111 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:886 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FRINTI(ctx, &u.f_rpr_esz)) return true; return false; case 0x8: /* 01100101 ..001000 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x2: /* 01100101 10001000 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:856 */ if (trans_FCVT_sh(ctx, &u.f_rpr_esz)) return true; return false; case 0x3: /* 01100101 11001000 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:858 */ if (trans_FCVT_dh(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x9: /* 01100101 ..001001 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x2: /* 01100101 10001001 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:857 */ if (trans_FCVT_hs(ctx, &u.f_rpr_esz)) return true; return false; case 0x3: /* 01100101 11001001 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:859 */ if (trans_FCVT_hd(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0xa: /* 01100101 ..001010 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x3: /* 01100101 11001010 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:860 */ if (trans_FCVT_ds(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0xb: /* 01100101 ..001011 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x3: /* 01100101 11001011 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:861 */ if (trans_FCVT_sd(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0xc: /* 01100101 ..001100 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:889 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FRECPX(ctx, &u.f_rpr_esz)) return true; return false; case 0xd: /* 01100101 ..001101 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:890 */ disas_sve_extract_rd_pg_rn(ctx, &u.f_rpr_esz, insn); if (trans_FSQRT(ctx, &u.f_rpr_esz)) return true; return false; case 0x10: /* 01100101 ..010000 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x3: /* 01100101 11010000 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:897 */ if (trans_SCVTF_sd(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x11: /* 01100101 ..010001 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x3: /* 01100101 11010001 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:905 */ if (trans_UCVTF_sd(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x12: /* 01100101 ..010010 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01010010 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:893 */ if (trans_SCVTF_hh(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x13: /* 01100101 ..010011 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01010011 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:901 */ if (trans_UCVTF_hh(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x14: /* 01100101 ..010100 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01010100 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:894 */ if (trans_SCVTF_sh(ctx, &u.f_rpr_esz)) return true; return false; case 0x2: /* 01100101 10010100 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:896 */ if (trans_SCVTF_ss(ctx, &u.f_rpr_esz)) return true; return false; case 0x3: /* 01100101 11010100 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:898 */ if (trans_SCVTF_ds(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x15: /* 01100101 ..010101 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01010101 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:902 */ if (trans_UCVTF_sh(ctx, &u.f_rpr_esz)) return true; return false; case 0x2: /* 01100101 10010101 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:904 */ if (trans_UCVTF_ss(ctx, &u.f_rpr_esz)) return true; return false; case 0x3: /* 01100101 11010101 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:906 */ if (trans_UCVTF_ds(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x16: /* 01100101 ..010110 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01010110 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:895 */ if (trans_SCVTF_dh(ctx, &u.f_rpr_esz)) return true; return false; case 0x3: /* 01100101 11010110 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:899 */ if (trans_SCVTF_dd(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x17: /* 01100101 ..010111 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01010111 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:903 */ if (trans_UCVTF_dh(ctx, &u.f_rpr_esz)) return true; return false; case 0x3: /* 01100101 11010111 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:907 */ if (trans_UCVTF_dd(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x18: /* 01100101 ..011000 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x3: /* 01100101 11011000 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:872 */ if (trans_FCVTZS_ds(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x19: /* 01100101 ..011001 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x3: /* 01100101 11011001 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:873 */ if (trans_FCVTZU_ds(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x1a: /* 01100101 ..011010 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01011010 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:864 */ if (trans_FCVTZS_hh(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x1b: /* 01100101 ..011011 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01011011 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:865 */ if (trans_FCVTZU_hh(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x1c: /* 01100101 ..011100 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01011100 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:866 */ if (trans_FCVTZS_hs(ctx, &u.f_rpr_esz)) return true; return false; case 0x2: /* 01100101 10011100 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:870 */ if (trans_FCVTZS_ss(ctx, &u.f_rpr_esz)) return true; return false; case 0x3: /* 01100101 11011100 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:874 */ if (trans_FCVTZS_sd(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x1d: /* 01100101 ..011101 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01011101 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:867 */ if (trans_FCVTZU_hs(ctx, &u.f_rpr_esz)) return true; return false; case 0x2: /* 01100101 10011101 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:871 */ if (trans_FCVTZU_ss(ctx, &u.f_rpr_esz)) return true; return false; case 0x3: /* 01100101 11011101 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:875 */ if (trans_FCVTZU_sd(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x1e: /* 01100101 ..011110 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01011110 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:868 */ if (trans_FCVTZS_hd(ctx, &u.f_rpr_esz)) return true; return false; case 0x3: /* 01100101 11011110 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:876 */ if (trans_FCVTZS_dd(ctx, &u.f_rpr_esz)) return true; return false; } return false; case 0x1f: /* 01100101 ..011111 101..... ........ */ disas_sve_extract_rd_pg_rn_e0(ctx, &u.f_rpr_esz, insn); switch ((insn >> 22) & 0x3) { case 0x1: /* 01100101 01011111 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:869 */ if (trans_FCVTZU_hd(ctx, &u.f_rpr_esz)) return true; return false; case 0x3: /* 01100101 11011111 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:877 */ if (trans_FCVTZU_dd(ctx, &u.f_rpr_esz)) return true; return false; } return false; } return false; case 0x2: /* 01100101 ..0..... 110..... ........ */ disas_sve_extract_pd_pg_rn_rm(ctx, &u.f_rprr_esz, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 01100101 ..0..... 110..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:345 */ if (trans_FCMUO_ppzz(ctx, &u.f_rprr_esz)) return true; return false; case 0x1: /* 01100101 ..0..... 110..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:346 */ if (trans_FACGE_ppzz(ctx, &u.f_rprr_esz)) return true; return false; } return false; case 0x3: /* 01100101 ..0..... 111..... ........ */ disas_sve_extract_pd_pg_rn_rm(ctx, &u.f_rprr_esz, insn); switch ((insn >> 4) & 0x1) { case 0x1: /* 01100101 ..0..... 111..... ...1.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:347 */ if (trans_FACGT_ppzz(ctx, &u.f_rprr_esz)) return true; return false; } return false; } return false; case 0x01200000: /* 01100101 ..1..... 0....... ........ */ disas_sve_extract_rda_pg_rn_rm(ctx, &u.f_rprrr_esz, insn); switch ((insn >> 13) & 0x3) { case 0x0: /* 01100101 ..1..... 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:840 */ if (trans_FMLA_zpzzz(ctx, &u.f_rprrr_esz)) return true; return false; case 0x1: /* 01100101 ..1..... 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:841 */ if (trans_FMLS_zpzzz(ctx, &u.f_rprrr_esz)) return true; return false; case 0x2: /* 01100101 ..1..... 010..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:842 */ if (trans_FNMLA_zpzzz(ctx, &u.f_rprrr_esz)) return true; return false; case 0x3: /* 01100101 ..1..... 011..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:843 */ if (trans_FNMLS_zpzzz(ctx, &u.f_rprrr_esz)) return true; return false; } return false; case 0x01208000: /* 01100101 ..1..... 1....... ........ */ disas_sve_extract_rdn_pg_rm_ra(ctx, &u.f_rprrr_esz, insn); switch ((insn >> 13) & 0x3) { case 0x0: /* 01100101 ..1..... 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:848 */ if (trans_FMLA_zpzzz(ctx, &u.f_rprrr_esz)) return true; return false; case 0x1: /* 01100101 ..1..... 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:849 */ if (trans_FMLS_zpzzz(ctx, &u.f_rprrr_esz)) return true; return false; case 0x2: /* 01100101 ..1..... 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:850 */ if (trans_FNMLA_zpzzz(ctx, &u.f_rprrr_esz)) return true; return false; case 0x3: /* 01100101 ..1..... 111..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:851 */ if (trans_FNMLS_zpzzz(ctx, &u.f_rprrr_esz)) return true; return false; } return false; } return false; case 0x42: /* 1000010. ........ ........ ........ */ switch ((insn >> 15) & 0x1) { case 0x0: /* 1000010. ........ 0....... ........ */ switch ((insn >> 23) & 0x3) { case 0x0: /* 10000100 0....... 0....... ........ */ switch ((insn >> 21) & 0x1) { case 0x0: /* 10000100 0.0..... 0....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:923 */ disas_sve_extract_rprr_g_load_xs_u(ctx, &u.f_rprr_gather_load, insn); u.f_rprr_gather_load.esz = 2; u.f_rprr_gather_load.msz = 0; u.f_rprr_gather_load.scale = 0; if (trans_LD1_zprz(ctx, &u.f_rprr_gather_load)) return true; return false; case 0x1: /* 10000100 0.1..... 0....... ........ */ disas_sve_extract_disas_sve_Fmt_66(ctx, &u.f_disas_sve32, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 10000100 0.1..... 0....... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:970 */ if (trans_PRF(ctx, &u.f_disas_sve32)) return true; return false; } return false; } return false; case 0x1: /* 10000100 1....... 0....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:925 */ disas_sve_extract_rprr_g_load_xs_u_sc(ctx, &u.f_rprr_gather_load, insn); u.f_rprr_gather_load.esz = 2; u.f_rprr_gather_load.msz = 1; if (trans_LD1_zprz(ctx, &u.f_rprr_gather_load)) return true; return false; case 0x2: /* 10000101 0....... 0....... ........ */ disas_sve_extract_rprr_g_load_xs_sc(ctx, &u.f_rprr_gather_load, insn); switch ((insn >> 14) & 0x1) { case 0x1: /* 10000101 0....... 01...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:927 */ u.f_rprr_gather_load.esz = 2; u.f_rprr_gather_load.msz = 2; u.f_rprr_gather_load.u = 1; if (trans_LD1_zprz(ctx, &u.f_rprr_gather_load)) return true; return false; } return false; case 0x3: /* 10000101 1....... 0....... ........ */ switch ((insn >> 22) & 0x1) { case 0x0: /* 10000101 10...... 0....... ........ */ switch ((insn >> 13) & 0x3) { case 0x0: /* 10000101 10...... 000..... ........ */ disas_sve_extract_pd_rn_i9(ctx, &u.f_rri, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 10000101 10...... 000..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:912 */ if (trans_LDR_pri(ctx, &u.f_rri)) return true; return false; } return false; case 0x2: /* 10000101 10...... 010..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:915 */ disas_sve_extract_rd_rn_i9(ctx, &u.f_rri, insn); if (trans_LDR_zri(ctx, &u.f_rri)) return true; return false; } return false; case 0x1: /* 10000101 11...... 0....... ........ */ disas_sve_extract_disas_sve_Fmt_66(ctx, &u.f_disas_sve32, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 10000101 11...... 0....... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:976 */ if (trans_PRF(ctx, &u.f_disas_sve32)) return true; return false; } return false; } return false; } return false; case 0x1: /* 1000010. ........ 1....... ........ */ switch ((insn >> 22) & 0x1) { case 0x0: /* 1000010. .0...... 1....... ........ */ switch ((insn >> 21) & 0x1) { case 0x0: /* 1000010. .00..... 1....... ........ */ switch (insn & 0x00006010) { case 0x00004000: /* 1000010. .00..... 110..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:979 */ disas_sve_extract_disas_sve_Fmt_89(ctx, &u.f_disas_sve47, insn); if (trans_PRF_rr(ctx, &u.f_disas_sve47)) return true; return false; case 0x00006000: /* 1000010. .00..... 111..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:973 */ disas_sve_extract_disas_sve_Fmt_66(ctx, &u.f_disas_sve32, insn); if (trans_PRF(ctx, &u.f_disas_sve32)) return true; return false; } return false; case 0x1: /* 1000010. .01..... 1....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:931 */ disas_sve_extract_rpri_g_load(ctx, &u.f_rpri_gather_load, insn); u.f_rpri_gather_load.esz = 2; if (trans_LD1_zpiz(ctx, &u.f_rpri_gather_load)) return true; return false; } return false; case 0x1: /* 1000010. .1...... 1....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:918 */ disas_sve_extract_disas_sve_Fmt_88(ctx, &u.f_rpri_load, insn); if (trans_LD1R_zpri(ctx, &u.f_rpri_load)) return true; return false; } return false; } return false; case 0x52: /* 1010010. ........ ........ ........ */ switch ((insn >> 13) & 0x7) { case 0x0: /* 1010010. ........ 000..... ........ */ disas_sve_extract_rprr_load_msz(ctx, &u.f_rprr_load, insn); switch ((insn >> 21) & 0x3) { case 0x0: /* 1010010. .00..... 000..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:961 */ u.f_rprr_load.nreg = 0; if (trans_LD1RQ_zprr(ctx, &u.f_rprr_load)) return true; return false; } return false; case 0x1: /* 1010010. ........ 001..... ........ */ disas_sve_extract_rpri_load_msz(ctx, &u.f_rpri_load, insn); switch ((insn >> 20) & 0x7) { case 0x0: /* 1010010. .000.... 001..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:966 */ u.f_rpri_load.nreg = 0; if (trans_LD1RQ_zpri(ctx, &u.f_rpri_load)) return true; return false; } return false; case 0x2: /* 1010010. ........ 010..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:937 */ disas_sve_extract_rprr_load_dt(ctx, &u.f_rprr_load, insn); u.f_rprr_load.nreg = 0; if (trans_LD_zprr(ctx, &u.f_rprr_load)) return true; return false; case 0x3: /* 1010010. ........ 011..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:940 */ disas_sve_extract_rprr_load_dt(ctx, &u.f_rprr_load, insn); u.f_rprr_load.nreg = 0; if (trans_LDFF1_zprr(ctx, &u.f_rprr_load)) return true; return false; case 0x5: /* 1010010. ........ 101..... ........ */ disas_sve_extract_rpri_load_dt(ctx, &u.f_rpri_load, insn); switch ((insn >> 20) & 0x1) { case 0x0: /* 1010010. ...0.... 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:943 */ u.f_rpri_load.nreg = 0; if (trans_LD_zpri(ctx, &u.f_rpri_load)) return true; return false; case 0x1: /* 1010010. ...1.... 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:946 */ u.f_rpri_load.nreg = 0; if (trans_LDNF1_zpri(ctx, &u.f_rpri_load)) return true; return false; } return false; case 0x6: /* 1010010. ........ 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:952 */ disas_sve_extract_rprr_load_msz(ctx, &u.f_rprr_load, insn); u.f_rprr_load.nreg = extract32(insn, 21, 2); if (trans_LD_zprr(ctx, &u.f_rprr_load)) return true; return false; case 0x7: /* 1010010. ........ 111..... ........ */ disas_sve_extract_rpri_load_msz(ctx, &u.f_rpri_load, insn); switch ((insn >> 20) & 0x1) { case 0x0: /* 1010010. ...0.... 111..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:958 */ u.f_rpri_load.nreg = extract32(insn, 21, 2); if (trans_LD_zpri(ctx, &u.f_rpri_load)) return true; return false; } return false; } return false; case 0x62: /* 1100010. ........ ........ ........ */ switch ((insn >> 15) & 0x1) { case 0x0: /* 1100010. ........ 0....... ........ */ switch ((insn >> 23) & 0x3) { case 0x0: /* 11000100 0....... 0....... ........ */ switch ((insn >> 21) & 0x1) { case 0x0: /* 11000100 0.0..... 0....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:985 */ disas_sve_extract_rprr_g_load_xs_u(ctx, &u.f_rprr_gather_load, insn); u.f_rprr_gather_load.esz = 3; u.f_rprr_gather_load.msz = 0; u.f_rprr_gather_load.scale = 0; if (trans_LD1_zprz(ctx, &u.f_rprr_gather_load)) return true; return false; case 0x1: /* 11000100 0.1..... 0....... ........ */ disas_sve_extract_disas_sve_Fmt_66(ctx, &u.f_disas_sve32, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 11000100 0.1..... 0....... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1013 */ if (trans_PRF(ctx, &u.f_disas_sve32)) return true; return false; } return false; } return false; case 0x1: /* 11000100 1....... 0....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:987 */ disas_sve_extract_rprr_g_load_xs_u_sc(ctx, &u.f_rprr_gather_load, insn); u.f_rprr_gather_load.esz = 3; u.f_rprr_gather_load.msz = 1; if (trans_LD1_zprz(ctx, &u.f_rprr_gather_load)) return true; return false; case 0x2: /* 11000101 0....... 0....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:989 */ disas_sve_extract_rprr_g_load_xs_u_sc(ctx, &u.f_rprr_gather_load, insn); u.f_rprr_gather_load.esz = 3; u.f_rprr_gather_load.msz = 2; if (trans_LD1_zprz(ctx, &u.f_rprr_gather_load)) return true; return false; case 0x3: /* 11000101 1....... 0....... ........ */ disas_sve_extract_rprr_g_load_xs_sc(ctx, &u.f_rprr_gather_load, insn); switch ((insn >> 14) & 0x1) { case 0x1: /* 11000101 1....... 01...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:991 */ u.f_rprr_gather_load.esz = 3; u.f_rprr_gather_load.msz = 3; u.f_rprr_gather_load.u = 1; if (trans_LD1_zprz(ctx, &u.f_rprr_gather_load)) return true; return false; } return false; } return false; case 0x1: /* 1100010. ........ 1....... ........ */ switch ((insn >> 22) & 0x1) { case 0x0: /* 1100010. .0...... 1....... ........ */ switch ((insn >> 21) & 0x1) { case 0x0: /* 1100010. .00..... 1....... ........ */ disas_sve_extract_disas_sve_Fmt_66(ctx, &u.f_disas_sve32, insn); switch (insn & 0x00006010) { case 0x00006000: /* 1100010. .00..... 111..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1016 */ if (trans_PRF(ctx, &u.f_disas_sve32)) return true; return false; } return false; case 0x1: /* 1100010. .01..... 1....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1006 */ disas_sve_extract_rpri_g_load(ctx, &u.f_rpri_gather_load, insn); u.f_rpri_gather_load.esz = 3; if (trans_LD1_zpiz(ctx, &u.f_rpri_gather_load)) return true; return false; } return false; case 0x1: /* 1100010. .1...... 1....... ........ */ switch ((insn >> 23) & 0x3) { case 0x0: /* 11000100 01...... 1....... ........ */ switch ((insn >> 21) & 0x1) { case 0x0: /* 11000100 010..... 1....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:996 */ disas_sve_extract_rprr_g_load_u(ctx, &u.f_rprr_gather_load, insn); u.f_rprr_gather_load.esz = 3; u.f_rprr_gather_load.msz = 0; u.f_rprr_gather_load.scale = 0; if (trans_LD1_zprz(ctx, &u.f_rprr_gather_load)) return true; return false; case 0x1: /* 11000100 011..... 1....... ........ */ disas_sve_extract_disas_sve_Fmt_66(ctx, &u.f_disas_sve32, insn); switch ((insn >> 4) & 0x1) { case 0x0: /* 11000100 011..... 1....... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1010 */ if (trans_PRF(ctx, &u.f_disas_sve32)) return true; return false; } return false; } return false; case 0x1: /* 11000100 11...... 1....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:998 */ disas_sve_extract_rprr_g_load_u_sc(ctx, &u.f_rprr_gather_load, insn); u.f_rprr_gather_load.esz = 3; u.f_rprr_gather_load.msz = 1; if (trans_LD1_zprz(ctx, &u.f_rprr_gather_load)) return true; return false; case 0x2: /* 11000101 01...... 1....... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1000 */ disas_sve_extract_rprr_g_load_u_sc(ctx, &u.f_rprr_gather_load, insn); u.f_rprr_gather_load.esz = 3; u.f_rprr_gather_load.msz = 2; if (trans_LD1_zprz(ctx, &u.f_rprr_gather_load)) return true; return false; case 0x3: /* 11000101 11...... 1....... ........ */ disas_sve_extract_rprr_g_load_sc(ctx, &u.f_rprr_gather_load, insn); switch ((insn >> 14) & 0x1) { case 0x1: /* 11000101 11...... 11...... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1002 */ u.f_rprr_gather_load.esz = 3; u.f_rprr_gather_load.msz = 3; u.f_rprr_gather_load.u = 1; if (trans_LD1_zprz(ctx, &u.f_rprr_gather_load)) return true; return false; } return false; } return false; } return false; } return false; case 0x72: /* 1110010. ........ ........ ........ */ switch ((insn >> 13) & 0x7) { case 0x0: /* 1110010. ........ 000..... ........ */ disas_sve_extract_pd_rn_i9(ctx, &u.f_rri, insn); switch (insn & 0x01c00010) { case 0x01800000: /* 11100101 10...... 000..... ...0.... */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1021 */ if (trans_STR_pri(ctx, &u.f_rri)) return true; return false; } return false; case 0x2: /* 1110010. ........ 010..... ........ */ switch ((insn >> 23) & 0x3) { case 0x0: /* 11100100 0....... 010..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1034 */ disas_sve_extract_rprr_store_esz_n0(ctx, &u.f_rprr_store, insn); u.f_rprr_store.msz = 0; if (trans_ST_zprr(ctx, &u.f_rprr_store)) return true; return false; case 0x1: /* 11100100 1....... 010..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1036 */ disas_sve_extract_rprr_store_esz_n0(ctx, &u.f_rprr_store, insn); u.f_rprr_store.msz = 1; if (trans_ST_zprr(ctx, &u.f_rprr_store)) return true; return false; case 0x2: /* 11100101 0....... 010..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1038 */ disas_sve_extract_rprr_store_esz_n0(ctx, &u.f_rprr_store, insn); u.f_rprr_store.msz = 2; if (trans_ST_zprr(ctx, &u.f_rprr_store)) return true; return false; case 0x3: /* 11100101 1....... 010..... ........ */ switch ((insn >> 22) & 0x1) { case 0x0: /* 11100101 10...... 010..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1024 */ disas_sve_extract_rd_rn_i9(ctx, &u.f_rri, insn); if (trans_STR_zri(ctx, &u.f_rri)) return true; return false; case 0x1: /* 11100101 11...... 010..... ........ */ disas_sve_extract_rprr_store(ctx, &u.f_rprr_store, insn); switch ((insn >> 21) & 0x1) { case 0x1: /* 11100101 111..... 010..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1040 */ u.f_rprr_store.msz = 3; u.f_rprr_store.esz = 3; u.f_rprr_store.nreg = 0; if (trans_ST_zprr(ctx, &u.f_rprr_store)) return true; return false; } return false; } return false; } return false; case 0x3: /* 1110010. ........ 011..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1050 */ disas_sve_extract_rprr_store(ctx, &u.f_rprr_store, insn); u.f_rprr_store.msz = extract32(insn, 23, 2); u.f_rprr_store.nreg = extract32(insn, 21, 2); u.f_rprr_store.esz = extract32(insn, 23, 2); if (trans_ST_zprr(ctx, &u.f_rprr_store)) return true; return false; case 0x4: /* 1110010. ........ 100..... ........ */ disas_sve_extract_rprr_scatter_store(ctx, &u.f_rprr_scatter_store, insn); switch ((insn >> 21) & 0x3) { case 0x0: /* 1110010. .00..... 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1092 */ u.f_rprr_scatter_store.xs = 0; u.f_rprr_scatter_store.esz = 3; u.f_rprr_scatter_store.scale = 0; if (trans_ST1_zprz(ctx, &u.f_rprr_scatter_store)) return true; return false; case 0x1: /* 1110010. .01..... 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1086 */ u.f_rprr_scatter_store.xs = 0; u.f_rprr_scatter_store.esz = 3; u.f_rprr_scatter_store.scale = 1; if (trans_ST1_zprz(ctx, &u.f_rprr_scatter_store)) return true; return false; case 0x2: /* 1110010. .10..... 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1062 */ u.f_rprr_scatter_store.xs = 0; u.f_rprr_scatter_store.esz = 2; u.f_rprr_scatter_store.scale = 0; if (trans_ST1_zprz(ctx, &u.f_rprr_scatter_store)) return true; return false; case 0x3: /* 1110010. .11..... 100..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1055 */ u.f_rprr_scatter_store.xs = 0; u.f_rprr_scatter_store.esz = 2; u.f_rprr_scatter_store.scale = 1; if (trans_ST1_zprz(ctx, &u.f_rprr_scatter_store)) return true; return false; } return false; case 0x5: /* 1110010. ........ 101..... ........ */ switch ((insn >> 21) & 0x3) { case 0x0: /* 1110010. .00..... 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1073 */ disas_sve_extract_rprr_scatter_store(ctx, &u.f_rprr_scatter_store, insn); u.f_rprr_scatter_store.xs = 2; u.f_rprr_scatter_store.esz = 3; u.f_rprr_scatter_store.scale = 0; if (trans_ST1_zprz(ctx, &u.f_rprr_scatter_store)) return true; return false; case 0x1: /* 1110010. .01..... 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1069 */ disas_sve_extract_rprr_scatter_store(ctx, &u.f_rprr_scatter_store, insn); u.f_rprr_scatter_store.xs = 2; u.f_rprr_scatter_store.esz = 3; u.f_rprr_scatter_store.scale = 1; if (trans_ST1_zprz(ctx, &u.f_rprr_scatter_store)) return true; return false; case 0x2: /* 1110010. .10..... 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1077 */ disas_sve_extract_rpri_scatter_store(ctx, &u.f_rpri_scatter_store, insn); u.f_rpri_scatter_store.esz = 3; if (trans_ST1_zpiz(ctx, &u.f_rpri_scatter_store)) return true; return false; case 0x3: /* 1110010. .11..... 101..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1081 */ disas_sve_extract_rpri_scatter_store(ctx, &u.f_rpri_scatter_store, insn); u.f_rpri_scatter_store.esz = 2; if (trans_ST1_zpiz(ctx, &u.f_rpri_scatter_store)) return true; return false; } return false; case 0x6: /* 1110010. ........ 110..... ........ */ disas_sve_extract_rprr_scatter_store(ctx, &u.f_rprr_scatter_store, insn); switch ((insn >> 21) & 0x3) { case 0x0: /* 1110010. .00..... 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1094 */ u.f_rprr_scatter_store.xs = 1; u.f_rprr_scatter_store.esz = 3; u.f_rprr_scatter_store.scale = 0; if (trans_ST1_zprz(ctx, &u.f_rprr_scatter_store)) return true; return false; case 0x1: /* 1110010. .01..... 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1088 */ u.f_rprr_scatter_store.xs = 1; u.f_rprr_scatter_store.esz = 3; u.f_rprr_scatter_store.scale = 1; if (trans_ST1_zprz(ctx, &u.f_rprr_scatter_store)) return true; return false; case 0x2: /* 1110010. .10..... 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1064 */ u.f_rprr_scatter_store.xs = 1; u.f_rprr_scatter_store.esz = 2; u.f_rprr_scatter_store.scale = 0; if (trans_ST1_zprz(ctx, &u.f_rprr_scatter_store)) return true; return false; case 0x3: /* 1110010. .11..... 110..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1057 */ u.f_rprr_scatter_store.xs = 1; u.f_rprr_scatter_store.esz = 2; u.f_rprr_scatter_store.scale = 1; if (trans_ST1_zprz(ctx, &u.f_rprr_scatter_store)) return true; return false; } return false; case 0x7: /* 1110010. ........ 111..... ........ */ disas_sve_extract_rpri_store_msz(ctx, &u.f_rpri_store, insn); switch ((insn >> 20) & 0x1) { case 0x0: /* 1110010. ...0.... 111..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1028 */ u.f_rpri_store.esz = extract32(insn, 21, 2); u.f_rpri_store.nreg = 0; if (trans_ST_zpri(ctx, &u.f_rpri_store)) return true; return false; case 0x1: /* 1110010. ...1.... 111..... ........ */ /* /mnt/c/Users/me/Documents/projects/unicorn2/tmp/tmp/qemu-5.0.0/target/arm/sve.decode:1045 */ u.f_rpri_store.nreg = extract32(insn, 21, 2); u.f_rpri_store.esz = extract32(insn, 23, 2); if (trans_ST_zpri(ctx, &u.f_rpri_store)) return true; return false; } return false; } return false; } return false; }