From: Dmitry Selyutin Date: Sun, 28 May 2023 22:04:56 +0000 (+0300) Subject: opcodes: introduce SVP64 headers X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=fbebc36a99e066df0af776a1f874a24426eb8653;p=binutils-gdb.git opcodes: introduce SVP64 headers --- diff --git a/include/opcode/ppc-svp64-gen.h b/include/opcode/ppc-svp64-gen.h new file mode 100644 index 00000000000..ee42d007ae6 --- /dev/null +++ b/include/opcode/ppc-svp64-gen.h @@ -0,0 +1,15015 @@ +/* include/opcode/ppc-svp64-gen.h -- Header file for PowerPC opcode table (SVP64 extensions) + Copyright (C) 2022 Free Software Foundation, Inc. + Written by Dmitry Selyutin (ghostmansd). + Sponsored by NLnet and NGI POINTER under EU Grants 871528 and 957073. + + This file is part of the GNU opcodes library. + + This library is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3, or (at your option) + any later version. + + It is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public + License for more details. + + You should have received a copy of the GNU General Public License + along with this file; see the file COPYING. If not, write to the + Free Software Foundation, 51 Franklin Street - Fifth Floor, Boston, + MA 02110-1301, USA. */ + +#ifndef PPC_SVP64_GEN_H +#define PPC_SVP64_GEN_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +enum svp64_in1_sel { + SVP64_IN1_SEL_NONE, + SVP64_IN1_SEL_RA, + SVP64_IN1_SEL_RA_OR_ZERO, + SVP64_IN1_SEL_SPR, + SVP64_IN1_SEL_RS, + SVP64_IN1_SEL_FRA, + SVP64_IN1_SEL_FRS, + SVP64_IN1_SEL_FRT, + SVP64_IN1_SEL_CIA, + SVP64_IN1_SEL_RT, +}; + +enum svp64_in2_sel { + SVP64_IN2_SEL_NONE, + SVP64_IN2_SEL_RB, + SVP64_IN2_SEL_CONST_UI, + SVP64_IN2_SEL_CONST_SI, + SVP64_IN2_SEL_CONST_UI_HI, + SVP64_IN2_SEL_CONST_SI_HI, + SVP64_IN2_SEL_CONST_LI, + SVP64_IN2_SEL_CONST_BD, + SVP64_IN2_SEL_CONST_DS, + SVP64_IN2_SEL_CONST_M1, + SVP64_IN2_SEL_CONST_SH, + SVP64_IN2_SEL_CONST_SH32, + SVP64_IN2_SEL_SPR, + SVP64_IN2_SEL_RS, + SVP64_IN2_SEL_FRB, + SVP64_IN2_SEL_CONST_SVD, + SVP64_IN2_SEL_CONST_SVDS, + SVP64_IN2_SEL_CONST_DXHI4, + SVP64_IN2_SEL_CONST_DQ, +}; + +enum svp64_in3_sel { + SVP64_IN3_SEL_NONE, + SVP64_IN3_SEL_RS, + SVP64_IN3_SEL_RB, + SVP64_IN3_SEL_FRS, + SVP64_IN3_SEL_FRC, + SVP64_IN3_SEL_RC, + SVP64_IN3_SEL_RT, + SVP64_IN3_SEL_FRA, +}; + +enum svp64_out_sel { + SVP64_OUT_SEL_NONE, + SVP64_OUT_SEL_RT, + SVP64_OUT_SEL_RA, + SVP64_OUT_SEL_SPR, + SVP64_OUT_SEL_RT_OR_ZERO, + SVP64_OUT_SEL_FRT, + SVP64_OUT_SEL_FRS, + SVP64_OUT_SEL_RS, + SVP64_OUT_SEL_FRA, +}; + +enum svp64_cr_in_sel { + SVP64_CR_IN_SEL_NONE, + SVP64_CR_IN_SEL_CR0, + SVP64_CR_IN_SEL_BI, + SVP64_CR_IN_SEL_BFA, + SVP64_CR_IN_SEL_BA_BB, + SVP64_CR_IN_SEL_BC, + SVP64_CR_IN_SEL_WHOLE_REG, + SVP64_CR_IN_SEL_CR1, + SVP64_CR_IN_SEL_BA, +}; + +enum svp64_cr_in2_sel { + SVP64_CR_IN2_SEL_NONE, + SVP64_CR_IN2_SEL_BB, +}; + +enum svp64_cr_out_sel { + SVP64_CR_OUT_SEL_NONE, + SVP64_CR_OUT_SEL_CR0, + SVP64_CR_OUT_SEL_BF, + SVP64_CR_OUT_SEL_BT, + SVP64_CR_OUT_SEL_WHOLE_REG, + SVP64_CR_OUT_SEL_CR1, +}; + +enum svp64_ptype { + SVP64_PTYPE_NONE, + SVP64_PTYPE_P1, + SVP64_PTYPE_P2, + SVP64_PTYPE_P2M, +}; + +enum svp64_etype { + SVP64_ETYPE_EXTRA2, + SVP64_ETYPE_EXTRA3, + SVP64_ETYPE_EXTRA32, +}; + +enum svp64_extra { + SVP64_EXTRA_NONE, + SVP64_EXTRA_IDX0, + SVP64_EXTRA_IDX1, + SVP64_EXTRA_IDX2, + SVP64_EXTRA_IDX3, +}; + +enum svp64_mode { + SVP64_MODE_NONE, + SVP64_MODE_NORMAL, + SVP64_MODE_LDST_IDX, + SVP64_MODE_LDST_IMM, + SVP64_MODE_BRANCH, + SVP64_MODE_CROP, +}; + +/* SVP64_MODE constants */ +#define SVP64_MODE_MOD2_MSB 0x00000004U +#define SVP64_MODE_MOD2_LSB 0x00000003U +#define SVP64_MODE_MOD3 0x00000001U +#define SVP64_MODE_SEA 0x00000002U +#define SVP64_MODE_DZ 0x00000001U +#define SVP64_MODE_SZ 0x00000000U +#define SVP64_MODE_ZZ 0x00000001U +#define SVP64_MODE_BC_SNZ 0x00000001U +#define SVP64_MODE_BC_VLI 0x00000002U +#define SVP64_MODE_BC_VLSET 0x00000003U +#define SVP64_MODE_BC_CTRTEST 0x00000004U +#define SVP64_MODE_REDUCE 0x00000002U +#define SVP64_MODE_CRM 0x00000000U +#define SVP64_MODE_RG 0x00000000U +#define SVP64_MODE_CROP_RG 0x00000001U +#define SVP64_MODE_N 0x00000002U +#define SVP64_MODE_INV 0x00000002U +#define SVP64_MODE_CR_MSB 0x00000001U +#define SVP64_MODE_CR_LSB 0x00000000U +#define SVP64_MODE_VLI 0x00000004U +#define SVP64_MODE_RC1 0x00000000U +#define SVP64_MODE_ELS_NORMAL 0x00000000U +#define SVP64_MODE_ELS_FFIRST_PRED 0x00000001U +#define SVP64_MODE_LDI_PI 0x00000002U +#define SVP64_MODE_LDI_FF 0x00000000U +#define SVP64_MODE_LDST_ELS 0x00000004U +#define SVP64_MODE_LDST_VLI 0x00000004U +#define SVP64_MODE_BO_MSB 0x00000002U +#define SVP64_MODE_BO_LSB 0x00000000U + +struct svp64_insn { + uint64_t value; +}; + +static inline uint64_t +svp64_insn_get(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(23)) | + (((value >> UINT64_C(24)) & UINT64_C(1)) << UINT64_C(24)) | + (((value >> UINT64_C(25)) & UINT64_C(1)) << UINT64_C(25)) | + (((value >> UINT64_C(26)) & UINT64_C(1)) << UINT64_C(26)) | + (((value >> UINT64_C(27)) & UINT64_C(1)) << UINT64_C(27)) | + (((value >> UINT64_C(28)) & UINT64_C(1)) << UINT64_C(28)) | + (((value >> UINT64_C(29)) & UINT64_C(1)) << UINT64_C(29)) | + (((value >> UINT64_C(30)) & UINT64_C(1)) << UINT64_C(30)) | + (((value >> UINT64_C(31)) & UINT64_C(1)) << UINT64_C(31)) | + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(54)) & UINT64_C(1)) << UINT64_C(54)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(56)) & UINT64_C(1)) << UINT64_C(56)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(57)) | + (((value >> UINT64_C(58)) & UINT64_C(1)) << UINT64_C(58)) | + (((value >> UINT64_C(59)) & UINT64_C(1)) << UINT64_C(59)) | + (((value >> UINT64_C(60)) & UINT64_C(1)) << UINT64_C(60)) | + (((value >> UINT64_C(61)) & UINT64_C(1)) << UINT64_C(61)) | + (((value >> UINT64_C(62)) & UINT64_C(1)) << UINT64_C(62)) | + (((value >> UINT64_C(63)) & UINT64_C(1)) << UINT64_C(63)) + ); +} + +static inline void +svp64_insn_set(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0x0000000000000000); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(23)) | + (((value >> UINT64_C(24)) & UINT64_C(1)) << UINT64_C(24)) | + (((value >> UINT64_C(25)) & UINT64_C(1)) << UINT64_C(25)) | + (((value >> UINT64_C(26)) & UINT64_C(1)) << UINT64_C(26)) | + (((value >> UINT64_C(27)) & UINT64_C(1)) << UINT64_C(27)) | + (((value >> UINT64_C(28)) & UINT64_C(1)) << UINT64_C(28)) | + (((value >> UINT64_C(29)) & UINT64_C(1)) << UINT64_C(29)) | + (((value >> UINT64_C(30)) & UINT64_C(1)) << UINT64_C(30)) | + (((value >> UINT64_C(31)) & UINT64_C(1)) << UINT64_C(31)) | + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(54)) & UINT64_C(1)) << UINT64_C(54)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(56)) & UINT64_C(1)) << UINT64_C(56)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(57)) | + (((value >> UINT64_C(58)) & UINT64_C(1)) << UINT64_C(58)) | + (((value >> UINT64_C(59)) & UINT64_C(1)) << UINT64_C(59)) | + (((value >> UINT64_C(60)) & UINT64_C(1)) << UINT64_C(60)) | + (((value >> UINT64_C(61)) & UINT64_C(1)) << UINT64_C(61)) | + (((value >> UINT64_C(62)) & UINT64_C(1)) << UINT64_C(62)) | + (((value >> UINT64_C(63)) & UINT64_C(1)) << UINT64_C(63)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(54)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(23)) | + (((value >> UINT64_C(56)) & UINT64_C(1)) << UINT64_C(24)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(25)) | + (((value >> UINT64_C(58)) & UINT64_C(1)) << UINT64_C(26)) | + (((value >> UINT64_C(59)) & UINT64_C(1)) << UINT64_C(27)) | + (((value >> UINT64_C(60)) & UINT64_C(1)) << UINT64_C(28)) | + (((value >> UINT64_C(61)) & UINT64_C(1)) << UINT64_C(29)) | + (((value >> UINT64_C(62)) & UINT64_C(1)) << UINT64_C(30)) | + (((value >> UINT64_C(63)) & UINT64_C(1)) << UINT64_C(31)) + ); +} + +static inline void +svp64_insn_set_prefix(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0x00000000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(54)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(24)) & UINT64_C(1)) << UINT64_C(56)) | + (((value >> UINT64_C(25)) & UINT64_C(1)) << UINT64_C(57)) | + (((value >> UINT64_C(26)) & UINT64_C(1)) << UINT64_C(58)) | + (((value >> UINT64_C(27)) & UINT64_C(1)) << UINT64_C(59)) | + (((value >> UINT64_C(28)) & UINT64_C(1)) << UINT64_C(60)) | + (((value >> UINT64_C(29)) & UINT64_C(1)) << UINT64_C(61)) | + (((value >> UINT64_C(30)) & UINT64_C(1)) << UINT64_C(62)) | + (((value >> UINT64_C(31)) & UINT64_C(1)) << UINT64_C(63)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_PO(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(58)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(59)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(60)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(61)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(62)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(63)) & UINT64_C(1)) << UINT64_C(5)) + ); +} + +static inline void +svp64_insn_set_prefix_PO(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0x03ffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(58)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(59)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(60)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(61)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(62)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(63)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_id(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(54)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(56)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_id(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfebfffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(54)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(56)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_dz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_dz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_simple_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_simple_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_mr_RG(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_mr_RG(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_VLi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_VLi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_inv(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_inv(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc1_CR(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc1_CR(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffcffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_VLi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_VLi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_inv(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_inv(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_ffrc0_RC1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_ffrc0_RC1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_N(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_N(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_dz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_dz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_normal_sat_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_normal_sat_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_pi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_pi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_lf(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_lf(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_zz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_zz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_els(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_els(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_dz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_dz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_simple_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_simple_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_VLi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_VLi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_inv(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_inv(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc1_CR(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc1_CR(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffcffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_VLi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_VLi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_inv(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_inv(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_imm_ffrc0_RC1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_imm_ffrc0_RC1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_pi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_pi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_els(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_els(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_SEA(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_SEA(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_zz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_zz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_dz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_dz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_simple_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_simple_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_VLi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_VLi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_inv(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_inv(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc1_CR(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc1_CR(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffcffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_VLi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_VLi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_inv(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_inv(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_ldst_idx_ffrc0_RC1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_ldst_idx_ffrc0_RC1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_SNZ(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_SNZ(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffeffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_SNZ(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_SNZ(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffeffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_RG(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_RG(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_dz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_dz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_simple_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_simple_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_SNZ(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_SNZ(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffeffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_RG(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_RG(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_dz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_dz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_mr_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_mr_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_SNZ(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_SNZ(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffeffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_VLi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_VLi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_inv(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_inv(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_CR(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_CR(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffcffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff3_zz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff3_zz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffdffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_SNZ(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_SNZ(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffeffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_VLi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_VLi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_inv(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_inv(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_dz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_dz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_crop_ff5_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_crop_ff5_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ALL(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ALL(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff7ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_SNZ(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_SNZ(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffbffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_SL(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_SL(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffbfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_SLu(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_SLu(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_LRu(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_LRu(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_CTR(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_CTR(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_VLS(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_VLS(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffff7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_ALL(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_ALL(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff7ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_SNZ(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_SNZ(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffbffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_SL(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_SL(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffbfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_SLu(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_SLu(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_LRu(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_LRu(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_CTR(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_CTR(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_simple_VLS(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_simple_VLS(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffff7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_ALL(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_ALL(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff7ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_SNZ(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_SNZ(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffbffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_SL(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_SL(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffbfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_SLu(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_SLu(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_LRu(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_LRu(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_CTR(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_CTR(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_VLS(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_VLS(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffff7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_VSb(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_VSb(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffeffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_vls_VLi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_vls_VLi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_ALL(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_ALL(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff7ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_SNZ(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_SNZ(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffbffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_SL(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_SL(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffbfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_SLu(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_SLu(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_LRu(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_LRu(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_CTR(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_CTR(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_VLS(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_VLS(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffff7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctr_CTi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctr_CTi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffdffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(23)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfd400000ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(45)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(47)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(49)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(51)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(55)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_mmode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(57)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_mmode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfdffffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(57)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_mask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(52)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(53)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(55)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_mask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xff4fffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(52)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(53)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(55)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_elwidth(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_elwidth(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff3ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_ewsrc(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_ewsrc(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_subvl(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(46)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(47)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_subvl(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffff3fffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(46)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(47)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_mode(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(4)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_mode(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe0ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(33)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(34)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_mode_sel(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_mode_sel(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffe7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_smask_extra322(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_smask_extra322(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffcffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(48)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_smask(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_smask(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_extra(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_extra(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_extra2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_extra2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_extra2_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_extra2_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffcfffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_extra2_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_extra2_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff3ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(43)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_extra2_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_extra2_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffcffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_extra2_idx3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(1)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_extra2_idx3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff3fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_extra3(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(8)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_extra3(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc01fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(42)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_extra3_idx0(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(43)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(44)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(45)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_extra3_idx0(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffc7ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(43)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(44)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(45)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_extra3_idx1(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(40)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(41)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(42)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_extra3_idx1(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffff8ffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(40)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(41)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(42)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_extra3_idx2(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(39)) & UINT64_C(1)) << UINT64_C(2)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_extra3_idx2(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffff1fffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(38)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(39)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_ALL(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(51)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_ALL(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfff7ffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(51)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_SNZ(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(50)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_SNZ(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffbffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(50)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_SL(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(38)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_SL(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffbfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(38)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_SLu(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(37)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_SLu(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffdfffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(37)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_LRu(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(33)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_LRu(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffdffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(33)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_sz(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(32)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_sz(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffeffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(32)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_CTR(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(36)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_CTR(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffefffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(36)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_VLS(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(35)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_VLS(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffff7ffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(35)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_VSb(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(48)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_VSb(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffeffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(48)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_VLi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(34)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_VLi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffffffbffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(34)) + ); +} + +static inline uint64_t +svp64_insn_get_prefix_rm_branch_ctrvls_CTi(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(49)) & UINT64_C(1)) << UINT64_C(0)) + ); +} + +static inline void +svp64_insn_set_prefix_rm_branch_ctrvls_CTi(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xfffdffffffffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(49)) + ); +} + +static inline uint64_t +svp64_insn_get_suffix(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(23)) | + (((value >> UINT64_C(24)) & UINT64_C(1)) << UINT64_C(24)) | + (((value >> UINT64_C(25)) & UINT64_C(1)) << UINT64_C(25)) | + (((value >> UINT64_C(26)) & UINT64_C(1)) << UINT64_C(26)) | + (((value >> UINT64_C(27)) & UINT64_C(1)) << UINT64_C(27)) | + (((value >> UINT64_C(28)) & UINT64_C(1)) << UINT64_C(28)) | + (((value >> UINT64_C(29)) & UINT64_C(1)) << UINT64_C(29)) | + (((value >> UINT64_C(30)) & UINT64_C(1)) << UINT64_C(30)) | + (((value >> UINT64_C(31)) & UINT64_C(1)) << UINT64_C(31)) + ); +} + +static inline void +svp64_insn_set_suffix(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffff00000000); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(5)) | + (((value >> UINT64_C(6)) & UINT64_C(1)) << UINT64_C(6)) | + (((value >> UINT64_C(7)) & UINT64_C(1)) << UINT64_C(7)) | + (((value >> UINT64_C(8)) & UINT64_C(1)) << UINT64_C(8)) | + (((value >> UINT64_C(9)) & UINT64_C(1)) << UINT64_C(9)) | + (((value >> UINT64_C(10)) & UINT64_C(1)) << UINT64_C(10)) | + (((value >> UINT64_C(11)) & UINT64_C(1)) << UINT64_C(11)) | + (((value >> UINT64_C(12)) & UINT64_C(1)) << UINT64_C(12)) | + (((value >> UINT64_C(13)) & UINT64_C(1)) << UINT64_C(13)) | + (((value >> UINT64_C(14)) & UINT64_C(1)) << UINT64_C(14)) | + (((value >> UINT64_C(15)) & UINT64_C(1)) << UINT64_C(15)) | + (((value >> UINT64_C(16)) & UINT64_C(1)) << UINT64_C(16)) | + (((value >> UINT64_C(17)) & UINT64_C(1)) << UINT64_C(17)) | + (((value >> UINT64_C(18)) & UINT64_C(1)) << UINT64_C(18)) | + (((value >> UINT64_C(19)) & UINT64_C(1)) << UINT64_C(19)) | + (((value >> UINT64_C(20)) & UINT64_C(1)) << UINT64_C(20)) | + (((value >> UINT64_C(21)) & UINT64_C(1)) << UINT64_C(21)) | + (((value >> UINT64_C(22)) & UINT64_C(1)) << UINT64_C(22)) | + (((value >> UINT64_C(23)) & UINT64_C(1)) << UINT64_C(23)) | + (((value >> UINT64_C(24)) & UINT64_C(1)) << UINT64_C(24)) | + (((value >> UINT64_C(25)) & UINT64_C(1)) << UINT64_C(25)) | + (((value >> UINT64_C(26)) & UINT64_C(1)) << UINT64_C(26)) | + (((value >> UINT64_C(27)) & UINT64_C(1)) << UINT64_C(27)) | + (((value >> UINT64_C(28)) & UINT64_C(1)) << UINT64_C(28)) | + (((value >> UINT64_C(29)) & UINT64_C(1)) << UINT64_C(29)) | + (((value >> UINT64_C(30)) & UINT64_C(1)) << UINT64_C(30)) | + (((value >> UINT64_C(31)) & UINT64_C(1)) << UINT64_C(31)) + ); +} + +static inline uint64_t +svp64_insn_get_suffix_PO(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(26)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(27)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(28)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(29)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(30)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(31)) & UINT64_C(1)) << UINT64_C(5)) + ); +} + +static inline void +svp64_insn_set_suffix_PO(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffff03ffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(26)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(27)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(28)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(29)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(30)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(31)) + ); +} + +static inline uint64_t +svp64_insn_get_PO(const struct svp64_insn *insn) +{ + uint64_t value = insn->value; + return ( + (((value >> UINT64_C(26)) & UINT64_C(1)) << UINT64_C(0)) | + (((value >> UINT64_C(27)) & UINT64_C(1)) << UINT64_C(1)) | + (((value >> UINT64_C(28)) & UINT64_C(1)) << UINT64_C(2)) | + (((value >> UINT64_C(29)) & UINT64_C(1)) << UINT64_C(3)) | + (((value >> UINT64_C(30)) & UINT64_C(1)) << UINT64_C(4)) | + (((value >> UINT64_C(31)) & UINT64_C(1)) << UINT64_C(5)) + ); +} + +static inline void +svp64_insn_set_PO(struct svp64_insn *insn, uint64_t value) +{ + insn->value &= UINT64_C(0xffffffff03ffffff); + insn->value |= ( + (((value >> UINT64_C(0)) & UINT64_C(1)) << UINT64_C(26)) | + (((value >> UINT64_C(1)) & UINT64_C(1)) << UINT64_C(27)) | + (((value >> UINT64_C(2)) & UINT64_C(1)) << UINT64_C(28)) | + (((value >> UINT64_C(3)) & UINT64_C(1)) << UINT64_C(29)) | + (((value >> UINT64_C(4)) & UINT64_C(1)) << UINT64_C(30)) | + (((value >> UINT64_C(5)) & UINT64_C(1)) << UINT64_C(31)) + ); +} + + +struct svp64_desc { + uint64_t mode : 3; + uint64_t in1 : 4; + uint64_t in2 : 5; + uint64_t in3 : 4; + uint64_t out : 4; + uint64_t out2 : 4; + uint64_t cr_in : 4; + uint64_t cr_in2 : 2; + uint64_t cr_out : 3; + uint64_t ptype : 3; + uint64_t etype : 2; + uint64_t extra_idx_in1 : 3; + uint64_t extra_idx_in2 : 3; + uint64_t extra_idx_in3 : 3; + uint64_t extra_idx_out : 3; + uint64_t extra_idx_out2 : 3; + uint64_t extra_idx_cr_in : 3; + uint64_t extra_idx_cr_in2 : 3; + uint64_t extra_idx_cr_out : 3; + uint64_t Rc : 1; + uint64_t : 1; +}; + +struct svp64_opcode { + uint32_t value; + uint32_t mask; +}; + +struct svp64_record { + const char *name; + struct svp64_desc desc; + const struct svp64_opcode *opcodes; + size_t nr_opcodes; +}; + +extern const struct svp64_opcode svp64_opcodes[]; +extern const size_t svp64_nr_opcodes; + +extern const struct svp64_record svp64_records[]; +extern const size_t svp64_nr_records; + +extern const struct powerpc_pd_reg svp64_regs[]; +extern const size_t svp64_num_regs; + +#ifdef __cplusplus +} +#endif + +#endif /* PPC_SVP64_GEN_H */ diff --git a/include/opcode/ppc-svp64.h b/include/opcode/ppc-svp64.h new file mode 100644 index 00000000000..70cfa88b9fa --- /dev/null +++ b/include/opcode/ppc-svp64.h @@ -0,0 +1,36 @@ +/* ppc-svp64.h -- Header file for PowerPC opcode table (SVP64 extensions) + Copyright (C) 2022 Free Software Foundation, Inc. + Written by Dmitry Selyutin (ghostmansd). + Sponsored by NLnet and NGI POINTER under EU Grants 871528 and 957073. + + This file is part of the GNU opcodes library. + + This library is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3, or (at your option) + any later version. + + It is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public + License for more details. + + You should have received a copy of the GNU General Public License + along with this file; see the file COPYING. If not, write to the + Free Software Foundation, 51 Franklin Street - Fifth Floor, Boston, + MA 02110-1301, USA. */ + +#ifndef PPC_SVP64_H +#define PPC_SVP64_H + +#include "ppc-svp64-gen.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* PPC_SVP64_H */ diff --git a/include/opcode/ppc.h b/include/opcode/ppc.h index 12c65cba88e..e9e1c6316d8 100644 --- a/include/opcode/ppc.h +++ b/include/opcode/ppc.h @@ -529,4 +529,6 @@ struct powerpc_pd_reg } #endif +#include "ppc-svp64.h" + #endif /* PPC_H */