@@ -2751,6 +2751,38 @@ const struct riscv_opcode riscv_opcodes[] =
27512751{"pv.packhi.b", "Xpulpv3", "d,s,t", MATCH_V_OP_PACKHI|MATCH_V_OP_B_VV, MASK_V_OP, match_opcode, 0},
27522752{"pv.packlo.b", "Xpulpv3", "d,s,t", MATCH_V_OP_PACKLO|MATCH_V_OP_B_VV, MASK_V_OP, match_opcode, 0}, */
27532753
2754+ /* Xpulpnn extensions v2 */
2755+ /***********************************************************************************************************************/
2756+ /************************************** Xpulpnn ***************************************************/
2757+
2758+ {"pv.mlsdotup.h.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_DOTUSP |MATCH_V_OP_ML_H_VV , MASK_V_OP , match_opcode , 0 },
2759+ {"pv.mlsdotup.h.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_DOTUSP_1 |MATCH_V_OP_ML_H_VV , MASK_V_OP , match_opcode , 0 },
2760+ {"pv.mlsdotup.b.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_DOTUSP |MATCH_V_OP_ML_B_VV , MASK_V_OP , match_opcode , 0 },
2761+ {"pv.mlsdotup.b.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_DOTUSP_1 |MATCH_V_OP_ML_B_VV , MASK_V_OP , match_opcode , 0 },
2762+ {"pv.mlsdotup.n.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_DOTUSP |MATCH_V_OP_ML_N_VV , MASK_V_OP , match_opcode , 0 },
2763+ {"pv.mlsdotup.n.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_DOTUSP_1 |MATCH_V_OP_ML_N_VV , MASK_V_OP , match_opcode , 0 },
2764+ {"pv.mlsdotup.c.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_DOTUSP |MATCH_V_OP_ML_C_VV , MASK_V_OP , match_opcode , 0 },
2765+ {"pv.mlsdotup.c.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_DOTUSP_1 |MATCH_V_OP_ML_C_VV , MASK_V_OP , match_opcode , 0 },
2766+
2767+ {"pv.mlsdotusp.h.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTSP |MATCH_V_OP_ML_H_VV , MASK_V_OP , match_opcode , 0 },
2768+ {"pv.mlsdotusp.h.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTSP_1 |MATCH_V_OP_ML_H_VV , MASK_V_OP , match_opcode , 0 },
2769+ {"pv.mlsdotusp.b.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTSP |MATCH_V_OP_ML_B_VV , MASK_V_OP , match_opcode , 0 },
2770+ {"pv.mlsdotusp.b.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTSP_1 |MATCH_V_OP_ML_B_VV , MASK_V_OP , match_opcode , 0 },
2771+ {"pv.mlsdotusp.n.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTSP |MATCH_V_OP_ML_N_VV , MASK_V_OP , match_opcode , 0 },
2772+ {"pv.mlsdotusp.n.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTSP_1 |MATCH_V_OP_ML_N_VV , MASK_V_OP , match_opcode , 0 },
2773+ {"pv.mlsdotusp.c.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTSP |MATCH_V_OP_ML_C_VV , MASK_V_OP , match_opcode , 0 },
2774+ {"pv.mlsdotusp.c.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTSP_1 |MATCH_V_OP_ML_C_VV , MASK_V_OP , match_opcode , 0 },
2775+
2776+ {"pv.mlsdotsp.h.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTUSP |MATCH_V_OP_ML_H_VV , MASK_V_OP , match_opcode , 0 },
2777+ {"pv.mlsdotsp.h.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTUSP_1 |MATCH_V_OP_ML_H_VV , MASK_V_OP , match_opcode , 0 },
2778+ {"pv.mlsdotsp.b.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTUSP |MATCH_V_OP_ML_B_VV , MASK_V_OP , match_opcode , 0 },
2779+ {"pv.mlsdotsp.b.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTUSP_1 |MATCH_V_OP_ML_B_VV , MASK_V_OP , match_opcode , 0 },
2780+ {"pv.mlsdotsp.n.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTUSP |MATCH_V_OP_ML_N_VV , MASK_V_OP , match_opcode , 0 },
2781+ {"pv.mlsdotsp.n.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTUSP_1 |MATCH_V_OP_ML_N_VV , MASK_V_OP , match_opcode , 0 },
2782+ {"pv.mlsdotsp.c.0" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTUSP |MATCH_V_OP_ML_C_VV , MASK_V_OP , match_opcode , 0 },
2783+ {"pv.mlsdotsp.c.1" , "Xpulpnn" , "d,s,t" , MATCH_V_OP_SDOTUSP_1 |MATCH_V_OP_ML_C_VV , MASK_V_OP , match_opcode , 0 },
2784+
2785+
27542786/***********************************************************************************************************************/
27552787/************************************** Gap9 ***************************************************/
27562788/***********************************************************************************************************************/
0 commit comments