Lines Matching refs:op4
2434 bits<2> op17_16, bits<5> op11_7, bit op4, string OpcodeStr,
2436 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, 0, op4, (outs DPR:$Vd),
2440 bits<2> op17_16, bits<5> op11_7, bit op4, string OpcodeStr,
2442 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, 1, op4, (outs QPR:$Vd),
2448 bits<2> op17_16, bits<5> op11_7, bit op4,
2451 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, 0, op4, (outs DPR:$Vd),
2455 bits<2> op17_16, bits<5> op11_7, bit op4,
2458 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, 1, op4, (outs QPR:$Vd),
2498 bits<2> op17_16, bits<5> op11_7, bit op6, bit op4,
2501 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, op6, op4, (outs DPR:$Vd),
2507 bits<2> op17_16, bits<5> op11_7, bit op6, bit op4,
2510 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, op6, op4, (outs DPR:$Vd),
2516 bits<2> op17_16, bits<5> op11_7, bit op6, bit op4,
2519 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, op6, op4, (outs QPR:$Vd),
2525 bits<2> op17_16, bits<5> op11_7, bit op6, bit op4,
2528 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, op6, op4, (outs QPR:$Vd),
2545 class N3VD<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2548 : N3V<op24, op23, op21_20, op11_8, 0, op4,
2557 class N3VDX<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2561 : N3VX<op24, op23, op21_20, op11_8, 0, op4,
2596 class N3VQ<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2599 : N3V<op24, op23, op21_20, op11_8, 1, op4,
2607 class N3VQX<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2610 : N3VX<op24, op23, op21_20, op11_8, 1, op4,
2647 class N3VDInt<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2650 : N3V<op24, op23, op21_20, op11_8, 0, op4,
2660 bit op4, Format f, InstrItinClass itin, string OpcodeStr,
2663 : N3Vnp<op27_23, op21_20, op11_8, op6, op4,
2689 class N3VDIntSh<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2692 : N3V<op24, op23, op21_20, op11_8, 0, op4,
2700 class N3VQInt<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2703 : N3V<op24, op23, op21_20, op11_8, 1, op4,
2713 bit op4, Format f, InstrItinClass itin, string OpcodeStr,
2716 : N3Vnp<op27_23, op21_20, op11_8, op6, op4,
2722 bit op4, Format f, InstrItinClass itin, string OpcodeStr,
2725 : N3Vnp<op27_23, op21_20, op11_8, op6, op4,
2757 class N3VQIntSh<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2760 : N3V<op24, op23, op21_20, op11_8, 1, op4,
2769 class N3VDMulOp<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2772 : N3V<op24, op23, op21_20, op11_8, 0, op4,
2805 class N3VQMulOp<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2808 : N3V<op24, op23, op21_20, op11_8, 1, op4,
2842 class N3VDIntOp<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2845 : N3V<op24, op23, op21_20, op11_8, 0, op4,
2850 class N3VQIntOp<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2853 : N3V<op24, op23, op21_20, op11_8, 1, op4,
2861 class N3VDInt3<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2864 : N3V<op24, op23, op21_20, op11_8, 0, op4,
2869 class N3VQInt3<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2872 : N3V<op24, op23, op21_20, op11_8, 1, op4,
2879 class N3VLMulOp<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2882 : N3V<op24, op23, op21_20, op11_8, 0, op4,
2914 class N3VLIntExtOp<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2918 : N3V<op24, op23, op21_20, op11_8, 0, op4,
2927 class N3VLInt3<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2930 : N3V<op24, op23, op21_20, op11_8, 0, op4,
2963 class N3VNInt<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2966 : N3V<op24, op23, op21_20, op11_8, 0, op4,
2974 class N3VL<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
2977 : N3V<op24, op23, op21_20, op11_8, 0, op4,
3004 class N3VLExt<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
3008 : N3V<op24, op23, op21_20, op11_8, 0, op4,
3017 class N3VLIntExt<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
3021 : N3V<op24, op23, op21_20, op11_8, 0, op4,
3030 class N3VLInt<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
3033 : N3V<op24, op23, op21_20, op11_8, 0, op4,
3042 bit op4, InstrItinClass itin, string OpcodeStr,
3045 : N3Vnp<op27_23, op21_20, op11_8, op6, op4,
3071 class N3VW<bit op24, bit op23, bits<2> op21_20, bits<4> op11_8, bit op4,
3074 : N3V<op24, op23, op21_20, op11_8, 0, op4,
3086 bits<2> op17_16, bits<5> op11_7, bit op4,
3089 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, 0, op4, (outs DPR:$Vd),
3093 bits<2> op17_16, bits<5> op11_7, bit op4,
3096 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, 1, op4, (outs QPR:$Vd),
3104 bits<2> op17_16, bits<5> op11_7, bit op4,
3107 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, 0, op4,
3112 bits<2> op17_16, bits<5> op11_7, bit op4,
3115 : N2V<op24_23, op21_20, op19_18, op17_16, op11_7, 1, op4,
3123 class N2VDSh<bit op24, bit op23, bits<4> op11_8, bit op7, bit op4,
3126 : N2VImm<op24, op23, op11_8, op7, 0, op4,
3130 class N2VQSh<bit op24, bit op23, bits<4> op11_8, bit op7, bit op4,
3133 : N2VImm<op24, op23, op11_8, op7, 1, op4,
3140 class N2VLSh<bit op24, bit op23, bits<4> op11_8, bit op7, bit op6, bit op4,
3144 : N2VImm<op24, op23, op11_8, op7, op6, op4,
3150 class N2VNSh<bit op24, bit op23, bits<4> op11_8, bit op7, bit op6, bit op4,
3154 : N2VImm<op24, op23, op11_8, op7, op6, op4,
3163 class N2VDShAdd<bit op24, bit op23, bits<4> op11_8, bit op7, bit op4,
3166 : N2VImm<op24, op23, op11_8, op7, 0, op4, (outs DPR:$Vd),
3171 class N2VQShAdd<bit op24, bit op23, bits<4> op11_8, bit op7, bit op4,
3174 : N2VImm<op24, op23, op11_8, op7, 1, op4, (outs QPR:$Vd),
3184 class N2VDShIns<bit op24, bit op23, bits<4> op11_8, bit op7, bit op4,
3187 : N2VImm<op24, op23, op11_8, op7, 0, op4, (outs DPR:$Vd),
3191 class N2VQShIns<bit op24, bit op23, bits<4> op11_8, bit op7, bit op4,
3194 : N2VImm<op24, op23, op11_8, op7, 1, op4, (outs QPR:$Vd),
3202 class N2VCvtD<bit op24, bit op23, bits<4> op11_8, bit op7, bit op4,
3205 : N2VImm<op24, op23, op11_8, op7, 0, op4,
3209 class N2VCvtQ<bit op24, bit op23, bits<4> op11_8, bit op7, bit op4,
3212 : N2VImm<op24, op23, op11_8, op7, 1, op4,
3232 bits<5> op11_7, bit op4, string opc, string Dt,
3235 def v8i8 : N2V<op24_23, op21_20, 0b00, op17_16, op11_7, 0, op4,
3239 def v4i16 : N2V<op24_23, op21_20, 0b01, op17_16, op11_7, 0, op4,
3243 def v2i32 : N2V<op24_23, op21_20, 0b10, op17_16, op11_7, 0, op4,
3247 def v2f32 : N2V<op24_23, op21_20, 0b10, op17_16, op11_7, 0, op4,
3253 def v4f16 : N2V<op24_23, op21_20, 0b01, op17_16, op11_7, 0, op4,
3262 def v16i8 : N2V<op24_23, op21_20, 0b00, op17_16, op11_7, 1, op4,
3266 def v8i16 : N2V<op24_23, op21_20, 0b01, op17_16, op11_7, 1, op4,
3270 def v4i32 : N2V<op24_23, op21_20, 0b10, op17_16, op11_7, 1, op4,
3274 def v4f32 : N2V<op24_23, op21_20, 0b10, op17_16, op11_7, 1, op4,
3280 def v8f16 : N2V<op24_23, op21_20, 0b01, op17_16, op11_7, 1, op4,
3293 bits<5> op11_7, bit op4,
3297 def v8i8 : N2VDInt<op24_23, op21_20, 0b00, op17_16, op11_7, op4,
3299 def v4i16 : N2VDInt<op24_23, op21_20, 0b01, op17_16, op11_7, op4,
3301 def v2i32 : N2VDInt<op24_23, op21_20, 0b10, op17_16, op11_7, op4,
3305 def v16i8 : N2VQInt<op24_23, op21_20, 0b00, op17_16, op11_7, op4,
3307 def v8i16 : N2VQInt<op24_23, op21_20, 0b01, op17_16, op11_7, op4,
3309 def v4i32 : N2VQInt<op24_23, op21_20, 0b10, op17_16, op11_7, op4,
3317 bits<5> op11_7, bit op6, bit op4,
3320 def v8i8 : N2VN<op24_23, op21_20, 0b00, op17_16, op11_7, op6, op4,
3323 def v4i16 : N2VN<op24_23, op21_20, 0b01, op17_16, op11_7, op6, op4,
3326 def v2i32 : N2VN<op24_23, op21_20, 0b10, op17_16, op11_7, op6, op4,
3334 bits<5> op11_7, bit op6, bit op4,
3337 def v8i8 : N2VNInt<op24_23, op21_20, 0b00, op17_16, op11_7, op6, op4,
3340 def v4i16 : N2VNInt<op24_23, op21_20, 0b01, op17_16, op11_7, op6, op4,
3343 def v2i32 : N2VNInt<op24_23, op21_20, 0b10, op17_16, op11_7, op6, op4,
3351 multiclass N2VL_QHS<bits<2> op24_23, bits<5> op11_7, bit op6, bit op4,
3353 def v8i16 : N2VL<op24_23, 0b00, 0b10, 0b00, op11_7, op6, op4, IIC_VQUNAiD,
3355 def v4i32 : N2VL<op24_23, 0b01, 0b00, 0b00, op11_7, op6, op4, IIC_VQUNAiD,
3357 def v2i64 : N2VL<op24_23, 0b10, 0b00, 0b00, op11_7, op6, op4, IIC_VQUNAiD,
3365 multiclass N3V_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3371 def v8i8 : N3VD<op24, op23, 0b00, op11_8, op4, itinD16,
3374 def v4i16 : N3VD<op24, op23, 0b01, op11_8, op4, itinD16,
3377 def v2i32 : N3VD<op24, op23, 0b10, op11_8, op4, itinD32,
3382 def v16i8 : N3VQ<op24, op23, 0b00, op11_8, op4, itinQ16,
3385 def v8i16 : N3VQ<op24, op23, 0b01, op11_8, op4, itinQ16,
3388 def v4i32 : N3VQ<op24, op23, 0b10, op11_8, op4, itinQ32,
3402 multiclass N3V_QHSD<bit op24, bit op23, bits<4> op11_8, bit op4,
3406 : N3V_QHS<op24, op23, op11_8, op4, itinD, itinD, itinQ, itinQ,
3408 def v1i64 : N3VD<op24, op23, 0b11, op11_8, op4, itinD,
3411 def v2i64 : N3VQ<op24, op23, 0b11, op11_8, op4, itinQ,
3420 multiclass N3VInt_HS<bit op24, bit op23, bits<4> op11_8, bit op4, Format f,
3426 def v4i16 : N3VDInt<op24, op23, 0b01, op11_8, op4, f, itinD16,
3429 def v2i32 : N3VDInt<op24, op23, 0b10, op11_8, op4, f, itinD32,
3434 def v8i16 : N3VQInt<op24, op23, 0b01, op11_8, op4, f, itinQ16,
3437 def v4i32 : N3VQInt<op24, op23, 0b10, op11_8, op4, f, itinQ32,
3441 multiclass N3VInt_HSSh<bit op24, bit op23, bits<4> op11_8, bit op4, Format f,
3447 def v4i16 : N3VDIntSh<op24, op23, 0b01, op11_8, op4, f, itinD16,
3450 def v2i32 : N3VDIntSh<op24, op23, 0b10, op11_8, op4, f, itinD32,
3455 def v8i16 : N3VQIntSh<op24, op23, 0b01, op11_8, op4, f, itinQ16,
3458 def v4i32 : N3VQIntSh<op24, op23, 0b10, op11_8, op4, f, itinQ32,
3478 multiclass N3VInt_QHS<bit op24, bit op23, bits<4> op11_8, bit op4, Format f,
3483 : N3VInt_HS<op24, op23, op11_8, op4, f, itinD16, itinD32, itinQ16, itinQ32,
3485 def v8i8 : N3VDInt<op24, op23, 0b00, op11_8, op4, f, itinD16,
3488 def v16i8 : N3VQInt<op24, op23, 0b00, op11_8, op4, f, itinQ16,
3492 multiclass N3VInt_QHSSh<bit op24, bit op23, bits<4> op11_8, bit op4, Format f,
3497 : N3VInt_HSSh<op24, op23, op11_8, op4, f, itinD16, itinD32, itinQ16, itinQ32,
3499 def v8i8 : N3VDIntSh<op24, op23, 0b00, op11_8, op4, f, itinD16,
3502 def v16i8 : N3VQIntSh<op24, op23, 0b00, op11_8, op4, f, itinQ16,
3509 multiclass N3VInt_QHSD<bit op24, bit op23, bits<4> op11_8, bit op4, Format f,
3514 : N3VInt_QHS<op24, op23, op11_8, op4, f, itinD16, itinD32, itinQ16, itinQ32,
3516 def v1i64 : N3VDInt<op24, op23, 0b11, op11_8, op4, f, itinD32,
3519 def v2i64 : N3VQInt<op24, op23, 0b11, op11_8, op4, f, itinQ32,
3523 multiclass N3VInt_QHSDSh<bit op24, bit op23, bits<4> op11_8, bit op4, Format f,
3528 : N3VInt_QHSSh<op24, op23, op11_8, op4, f, itinD16, itinD32, itinQ16, itinQ32,
3530 def v1i64 : N3VDIntSh<op24, op23, 0b11, op11_8, op4, f, itinD32,
3533 def v2i64 : N3VQIntSh<op24, op23, 0b11, op11_8, op4, f, itinQ32,
3540 multiclass N3VNInt_HSD<bit op24, bit op23, bits<4> op11_8, bit op4,
3543 def v8i8 : N3VNInt<op24, op23, 0b00, op11_8, op4,
3546 def v4i16 : N3VNInt<op24, op23, 0b01, op11_8, op4,
3549 def v2i32 : N3VNInt<op24, op23, 0b10, op11_8, op4,
3557 multiclass N3VL_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3561 def v8i16 : N3VL<op24, op23, 0b00, op11_8, op4, itin16,
3564 def v4i32 : N3VL<op24, op23, 0b01, op11_8, op4, itin16,
3567 def v2i64 : N3VL<op24, op23, 0b10, op11_8, op4, itin32,
3581 multiclass N3VLExt_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3585 def v8i16 : N3VLExt<op24, op23, 0b00, op11_8, op4, itin16,
3588 def v4i32 : N3VLExt<op24, op23, 0b01, op11_8, op4, itin16,
3591 def v2i64 : N3VLExt<op24, op23, 0b10, op11_8, op4, itin32,
3599 multiclass N3VLInt_HS<bit op24, bit op23, bits<4> op11_8, bit op4,
3603 def v4i32 : N3VLInt<op24, op23, 0b01, op11_8, op4, itin16,
3606 def v2i64 : N3VLInt<op24, op23, 0b10, op11_8, op4, itin32,
3621 multiclass N3VLInt_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3625 : N3VLInt_HS<op24, op23, op11_8, op4, itin16, itin32, OpcodeStr, Dt,
3627 def v8i16 : N3VLInt<op24, op23, 0b00, op11_8, op4, itin16,
3633 multiclass N3VLIntExt_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3636 def v8i16 : N3VLIntExt<op24, op23, 0b00, op11_8, op4, itin,
3639 def v4i32 : N3VLIntExt<op24, op23, 0b01, op11_8, op4, itin,
3642 def v2i64 : N3VLIntExt<op24, op23, 0b10, op11_8, op4, itin,
3650 multiclass N3VW_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3653 def v8i16 : N3VW<op24, op23, 0b00, op11_8, op4,
3656 def v4i32 : N3VW<op24, op23, 0b01, op11_8, op4,
3659 def v2i64 : N3VW<op24, op23, 0b10, op11_8, op4,
3667 multiclass N3VMulOp_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3672 def v8i8 : N3VDMulOp<op24, op23, 0b00, op11_8, op4, itinD16,
3674 def v4i16 : N3VDMulOp<op24, op23, 0b01, op11_8, op4, itinD16,
3676 def v2i32 : N3VDMulOp<op24, op23, 0b10, op11_8, op4, itinD32,
3680 def v16i8 : N3VQMulOp<op24, op23, 0b00, op11_8, op4, itinQ16,
3682 def v8i16 : N3VQMulOp<op24, op23, 0b01, op11_8, op4, itinQ16,
3684 def v4i32 : N3VQMulOp<op24, op23, 0b10, op11_8, op4, itinQ32,
3706 multiclass N3VIntOp_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3711 def v8i8 : N3VDIntOp<op24, op23, 0b00, op11_8, op4, itinD,
3713 def v4i16 : N3VDIntOp<op24, op23, 0b01, op11_8, op4, itinD,
3715 def v2i32 : N3VDIntOp<op24, op23, 0b10, op11_8, op4, itinD,
3719 def v16i8 : N3VQIntOp<op24, op23, 0b00, op11_8, op4, itinQ,
3721 def v8i16 : N3VQIntOp<op24, op23, 0b01, op11_8, op4, itinQ,
3723 def v4i32 : N3VQIntOp<op24, op23, 0b10, op11_8, op4, itinQ,
3729 multiclass N3VInt3_HS<bit op24, bit op23, bits<4> op11_8, bit op4,
3734 def v4i16 : N3VDInt3<op24, op23, 0b01, op11_8, op4, itinD16,
3736 def v2i32 : N3VDInt3<op24, op23, 0b10, op11_8, op4, itinD32,
3740 def v8i16 : N3VQInt3<op24, op23, 0b01, op11_8, op4, itinQ16,
3742 def v4i32 : N3VQInt3<op24, op23, 0b10, op11_8, op4, itinQ32,
3747 multiclass N3VInt3_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3751 :N3VInt3_HS <op24, op23, op11_8, op4, itinD16, itinD32,
3754 def v8i8 : N3VDInt3<op24, op23, 0b00, op11_8, op4, itinD16,
3757 def v16i8 : N3VQInt3<op24, op23, 0b00, op11_8, op4, itinQ16,
3763 multiclass N3VLMulOp_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3767 def v8i16 : N3VLMulOp<op24, op23, 0b00, op11_8, op4, itin16, OpcodeStr,
3769 def v4i32 : N3VLMulOp<op24, op23, 0b01, op11_8, op4, itin16, OpcodeStr,
3771 def v2i64 : N3VLMulOp<op24, op23, 0b10, op11_8, op4, itin32, OpcodeStr,
3787 multiclass N3VLInt3_HS<bit op24, bit op23, bits<4> op11_8, bit op4,
3790 def v4i32 : N3VLInt3<op24, op23, 0b01, op11_8, op4, itin16,
3792 def v2i64 : N3VLInt3<op24, op23, 0b10, op11_8, op4, itin32,
3805 multiclass N3VLInt3_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3808 : N3VLInt3_HS<op24, op23, op11_8, op4, itin16, itin32, OpcodeStr, Dt, IntOp> {
3809 def v8i16 : N3VLInt3<op24, op23, 0b00, op11_8, op4, itin16,
3814 multiclass N3VLIntExtOp_QHS<bit op24, bit op23, bits<4> op11_8, bit op4,
3817 def v8i16 : N3VLIntExtOp<op24, op23, 0b00, op11_8, op4, itin,
3820 def v4i32 : N3VLIntExtOp<op24, op23, 0b01, op11_8, op4, itin,
3823 def v2i64 : N3VLIntExtOp<op24, op23, 0b10, op11_8, op4, itin,
3832 bits<5> op11_7, bit op4,
3835 def v8i8 : N2VDPLInt<op24_23, op21_20, 0b00, op17_16, op11_7, op4,
3837 def v4i16 : N2VDPLInt<op24_23, op21_20, 0b01, op17_16, op11_7, op4,
3839 def v2i32 : N2VDPLInt<op24_23, op21_20, 0b10, op17_16, op11_7, op4,
3843 def v16i8 : N2VQPLInt<op24_23, op21_20, 0b00, op17_16, op11_7, op4,
3845 def v8i16 : N2VQPLInt<op24_23, op21_20, 0b01, op17_16, op11_7, op4,
3847 def v4i32 : N2VQPLInt<op24_23, op21_20, 0b10, op17_16, op11_7, op4,
3855 bits<5> op11_7, bit op4,
3858 def v8i8 : N2VDPLInt2<op24_23, op21_20, 0b00, op17_16, op11_7, op4,
3860 def v4i16 : N2VDPLInt2<op24_23, op21_20, 0b01, op17_16, op11_7, op4,
3862 def v2i32 : N2VDPLInt2<op24_23, op21_20, 0b10, op17_16, op11_7, op4,
3866 def v16i8 : N2VQPLInt2<op24_23, op21_20, 0b00, op17_16, op11_7, op4,
3868 def v8i16 : N2VQPLInt2<op24_23, op21_20, 0b01, op17_16, op11_7, op4,
3870 def v4i32 : N2VQPLInt2<op24_23, op21_20, 0b10, op17_16, op11_7, op4,
3878 multiclass N2VShL_QHSD<bit op24, bit op23, bits<4> op11_8, bit op4,
3882 def v8i8 : N2VDSh<op24, op23, op11_8, 0, op4, N2RegVShLFrm, itin, i32imm,
3886 def v4i16 : N2VDSh<op24, op23, op11_8, 0, op4, N2RegVShLFrm, itin, i32imm,
3890 def v2i32 : N2VDSh<op24, op23, op11_8, 0, op4, N2RegVShLFrm, itin, i32imm,
3894 def v1i64 : N2VDSh<op24, op23, op11_8, 1, op4, N2RegVShLFrm, itin, i32imm,
3899 def v16i8 : N2VQSh<op24, op23, op11_8, 0, op4, N2RegVShLFrm, itin, i32imm,
3903 def v8i16 : N2VQSh<op24, op23, op11_8, 0, op4, N2RegVShLFrm, itin, i32imm,
3907 def v4i32 : N2VQSh<op24, op23, op11_8, 0, op4, N2RegVShLFrm, itin, i32imm,
3911 def v2i64 : N2VQSh<op24, op23, op11_8, 1, op4, N2RegVShLFrm, itin, i32imm,
3915 multiclass N2VShR_QHSD<bit op24, bit op23, bits<4> op11_8, bit op4,
3919 def v8i8 : N2VDSh<op24, op23, op11_8, 0, op4, N2RegVShRFrm, itin, shr_imm8,
3923 def v4i16 : N2VDSh<op24, op23, op11_8, 0, op4, N2RegVShRFrm, itin, shr_imm16,
3927 def v2i32 : N2VDSh<op24, op23, op11_8, 0, op4, N2RegVShRFrm, itin, shr_imm32,
3931 def v1i64 : N2VDSh<op24, op23, op11_8, 1, op4, N2RegVShRFrm, itin, shr_imm64,
3936 def v16i8 : N2VQSh<op24, op23, op11_8, 0, op4, N2RegVShRFrm, itin, shr_imm8,
3940 def v8i16 : N2VQSh<op24, op23, op11_8, 0, op4, N2RegVShRFrm, itin, shr_imm16,
3944 def v4i32 : N2VQSh<op24, op23, op11_8, 0, op4, N2RegVShRFrm, itin, shr_imm32,
3948 def v2i64 : N2VQSh<op24, op23, op11_8, 1, op4, N2RegVShRFrm, itin, shr_imm64,
3955 multiclass N2VShAdd_QHSD<bit op24, bit op23, bits<4> op11_8, bit op4,
3958 def v8i8 : N2VDShAdd<op24, op23, op11_8, 0, op4, shr_imm8,
3962 def v4i16 : N2VDShAdd<op24, op23, op11_8, 0, op4, shr_imm16,
3966 def v2i32 : N2VDShAdd<op24, op23, op11_8, 0, op4, shr_imm32,
3970 def v1i64 : N2VDShAdd<op24, op23, op11_8, 1, op4, shr_imm64,
3975 def v16i8 : N2VQShAdd<op24, op23, op11_8, 0, op4, shr_imm8,
3979 def v8i16 : N2VQShAdd<op24, op23, op11_8, 0, op4, shr_imm16,
3983 def v4i32 : N2VQShAdd<op24, op23, op11_8, 0, op4, shr_imm32,
3987 def v2i64 : N2VQShAdd<op24, op23, op11_8, 1, op4, shr_imm64,
3995 multiclass N2VShInsL_QHSD<bit op24, bit op23, bits<4> op11_8, bit op4,
3998 def v8i8 : N2VDShIns<op24, op23, op11_8, 0, op4, i32imm,
4002 def v4i16 : N2VDShIns<op24, op23, op11_8, 0, op4, i32imm,
4006 def v2i32 : N2VDShIns<op24, op23, op11_8, 0, op4, i32imm,
4010 def v1i64 : N2VDShIns<op24, op23, op11_8, 1, op4, i32imm,
4015 def v16i8 : N2VQShIns<op24, op23, op11_8, 0, op4, i32imm,
4019 def v8i16 : N2VQShIns<op24, op23, op11_8, 0, op4, i32imm,
4023 def v4i32 : N2VQShIns<op24, op23, op11_8, 0, op4, i32imm,
4027 def v2i64 : N2VQShIns<op24, op23, op11_8, 1, op4, i32imm,
4031 multiclass N2VShInsR_QHSD<bit op24, bit op23, bits<4> op11_8, bit op4,
4034 def v8i8 : N2VDShIns<op24, op23, op11_8, 0, op4, shr_imm8,
4038 def v4i16 : N2VDShIns<op24, op23, op11_8, 0, op4, shr_imm16,
4042 def v2i32 : N2VDShIns<op24, op23, op11_8, 0, op4, shr_imm32,
4046 def v1i64 : N2VDShIns<op24, op23, op11_8, 1, op4, shr_imm64,
4051 def v16i8 : N2VQShIns<op24, op23, op11_8, 0, op4, shr_imm8,
4055 def v8i16 : N2VQShIns<op24, op23, op11_8, 0, op4, shr_imm16,
4059 def v4i32 : N2VQShIns<op24, op23, op11_8, 0, op4, shr_imm32,
4063 def v2i64 : N2VQShIns<op24, op23, op11_8, 1, op4, shr_imm64,
4071 bit op4, string OpcodeStr, string Dt,
4073 def v8i16 : N2VLSh<op24, op23, op11_8, op7, op6, op4,
4077 def v4i32 : N2VLSh<op24, op23, op11_8, op7, op6, op4,
4081 def v2i64 : N2VLSh<op24, op23, op11_8, op7, op6, op4,
4090 bit op4, InstrItinClass itin, string OpcodeStr, string Dt,
4092 def v8i8 : N2VNSh<op24, op23, op11_8, op7, op6, op4, itin,
4097 def v4i16 : N2VNSh<op24, op23, op11_8, op7, op6, op4, itin,
4102 def v2i32 : N2VNSh<op24, op23, op11_8, op7, op6, op4, itin,
5438 bit op6, bit op4, string OpcodeStr, string Dt, ValueType ResTy,
5440 : N2VLSh<op24, op23, op11_8, op7, op6, op4, OpcodeStr, Dt,