Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * this file is auto-generated, do not edit
- * http://libre-soc.org/openpower/sv_binutils.py
- * part of Libre-SOC, sponsored by NLnet
- */
- #ifndef PPC_OPC_SVP64_H
- #define PPC_OPC_SVP64_H
- #include <stdint.h>
- struct svp64_opcode {
- uint32_t value;
- uint32_t mask;
- };
- enum svp64_in1sel {
- SVP64_IN1SEL_NONE,
- SVP64_IN1SEL_RA,
- SVP64_IN1SEL_RA_OR_ZERO,
- SVP64_IN1SEL_SPR,
- SVP64_IN1SEL_RS,
- SVP64_IN1SEL_FRA,
- SVP64_IN1SEL_FRS,
- };
- enum svp64_in2sel {
- SVP64_IN2SEL_NONE,
- SVP64_IN2SEL_RB,
- SVP64_IN2SEL_CONST_UI,
- SVP64_IN2SEL_CONST_SI,
- SVP64_IN2SEL_CONST_UI_HI,
- SVP64_IN2SEL_CONST_SI_HI,
- SVP64_IN2SEL_CONST_LI,
- SVP64_IN2SEL_CONST_BD,
- SVP64_IN2SEL_CONST_DS,
- SVP64_IN2SEL_CONST_M1,
- SVP64_IN2SEL_CONST_SH,
- SVP64_IN2SEL_CONST_SH32,
- SVP64_IN2SEL_SPR,
- SVP64_IN2SEL_RS,
- SVP64_IN2SEL_FRB,
- SVP64_IN2SEL_CONST_SVD,
- SVP64_IN2SEL_CONST_SVDS,
- SVP64_IN2SEL_CONST_XBI,
- };
- enum svp64_in3sel {
- SVP64_IN3SEL_NONE,
- SVP64_IN3SEL_RS,
- SVP64_IN3SEL_RB,
- SVP64_IN3SEL_FRS,
- SVP64_IN3SEL_FRC,
- SVP64_IN3SEL_RC,
- SVP64_IN3SEL_RT,
- };
- enum svp64_outsel {
- SVP64_OUTSEL_NONE,
- SVP64_OUTSEL_RT,
- SVP64_OUTSEL_RA,
- SVP64_OUTSEL_SPR,
- SVP64_OUTSEL_RT_OR_ZERO,
- SVP64_OUTSEL_FRT,
- SVP64_OUTSEL_FRS,
- };
- enum svp64_crinsel {
- SVP64_CRINSEL_NONE,
- SVP64_CRINSEL_CR0,
- SVP64_CRINSEL_BI,
- SVP64_CRINSEL_BFA,
- SVP64_CRINSEL_BA_BB,
- SVP64_CRINSEL_BC,
- SVP64_CRINSEL_WHOLE_REG,
- SVP64_CRINSEL_CR1,
- };
- enum svp64_croutsel {
- SVP64_CROUTSEL_NONE,
- SVP64_CROUTSEL_CR0,
- SVP64_CROUTSEL_BF,
- SVP64_CROUTSEL_BT,
- SVP64_CROUTSEL_WHOLE_REG,
- SVP64_CROUTSEL_CR1,
- };
- enum svp64_svptype {
- SVP64_SVPTYPE_NONE,
- SVP64_SVPTYPE_P1,
- SVP64_SVPTYPE_P2,
- };
- enum svp64_svetype {
- SVP64_SVETYPE_NONE,
- SVP64_SVETYPE_EXTRA2,
- SVP64_SVETYPE_EXTRA3,
- };
- enum svp64_svextra {
- SVP64_SVEXTRA_NONE,
- SVP64_SVEXTRA_IDX0,
- SVP64_SVEXTRA_IDX1,
- SVP64_SVEXTRA_IDX2,
- SVP64_SVEXTRA_IDX3,
- SVP64_SVEXTRA_IDX_1_2,
- };
- struct svp64_entry {
- const char *name;
- struct svp64_opcode opcode;
- uint64_t in1 : 3;
- uint64_t in2 : 5;
- uint64_t in3 : 3;
- uint64_t out : 3;
- uint64_t out2 : 3;
- uint64_t cr_in : 4;
- uint64_t cr_out : 3;
- uint64_t sv_ptype : 2;
- uint64_t sv_etype : 2;
- uint64_t sv_in1 : 3;
- uint64_t sv_in2 : 3;
- uint64_t sv_in3 : 3;
- uint64_t sv_out : 3;
- uint64_t sv_out2 : 3;
- uint64_t sv_cr_in : 3;
- uint64_t sv_cr_out : 3;
- uint64_t : 15;
- };
- extern const struct svp64_entry svp64_entries[];
- extern const unsigned int svp64_num_entries;
- #endif /* PPC_OPC_SVP64_H */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement