Lines Matching refs:OpcodeStr
2473 bits<2> op17_16, bits<5> op11_7, bit op4, string OpcodeStr,
2476 (ins DPR:$Vm), IIC_VUNAD, OpcodeStr, Dt,"$Vd, $Vm", "",
2479 bits<2> op17_16, bits<5> op11_7, bit op4, string OpcodeStr,
2482 (ins QPR:$Vm), IIC_VUNAQ, OpcodeStr, Dt,"$Vd, $Vm", "",
2488 InstrItinClass itin, string OpcodeStr, string Dt,
2491 (ins DPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2495 InstrItinClass itin, string OpcodeStr, string Dt,
2498 (ins QPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2503 InstrItinClass itin, string OpcodeStr, string Dt,
2506 itin, OpcodeStr, Dt,
2510 InstrItinClass itin, string OpcodeStr, string Dt,
2513 itin, OpcodeStr, Dt,
2518 bit op7, InstrItinClass itin, string OpcodeStr, string Dt,
2521 itin, OpcodeStr, Dt,
2526 bit op7, InstrItinClass itin, string OpcodeStr, string Dt,
2530 itin, OpcodeStr, Dt,
2538 InstrItinClass itin, string OpcodeStr, string Dt,
2541 (ins QPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2547 InstrItinClass itin, string OpcodeStr, string Dt,
2550 (ins QPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2556 InstrItinClass itin, string OpcodeStr, string Dt,
2559 (ins DPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2565 InstrItinClass itin, string OpcodeStr, string Dt,
2568 (ins DPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2572 class N2VDShuffle<bits<2> op19_18, bits<5> op11_7, string OpcodeStr, string Dt>
2575 OpcodeStr, Dt, "$Vd, $Vm",
2578 InstrItinClass itin, string OpcodeStr, string Dt>
2580 (ins QPR:$src1, QPR:$src2), itin, OpcodeStr, Dt, "$Vd, $Vm",
2585 InstrItinClass itin, string OpcodeStr, string Dt,
2589 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
2597 InstrItinClass itin, string OpcodeStr,
2602 OpcodeStr, "$Vd, $Vn, $Vm", "",
2610 InstrItinClass itin, string OpcodeStr, string Dt,
2614 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2623 string OpcodeStr, string Dt, ValueType Ty, SDNode ShOp>
2626 NVMulSLFrm, IIC_VMULi16D, OpcodeStr, Dt,"$Vd, $Vn, $Vm$lane","",
2636 InstrItinClass itin, string OpcodeStr, string Dt,
2640 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
2647 InstrItinClass itin, string OpcodeStr,
2651 OpcodeStr, "$Vd, $Vn, $Vm", "",
2658 InstrItinClass itin, string OpcodeStr, string Dt,
2662 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2671 class N3VQSL16<bits<2> op21_20, bits<4> op11_8, string OpcodeStr, string Dt,
2675 NVMulSLFrm, IIC_VMULi16Q, OpcodeStr, Dt,"$Vd, $Vn, $Vm$lane", "",
2687 Format f, InstrItinClass itin, string OpcodeStr, string Dt,
2691 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
2699 bit op4, Format f, InstrItinClass itin, string OpcodeStr,
2703 (outs DPR:$Vd), (ins DPR:$Vn, DPR:$Vm), N3RegFrm, itin, OpcodeStr, Dt,
2707 string OpcodeStr, string Dt, ValueType Ty, SDPatternOperator IntOp>
2710 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2719 string OpcodeStr, string Dt, ValueType Ty, SDPatternOperator IntOp>
2722 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2729 Format f, InstrItinClass itin, string OpcodeStr, string Dt,
2733 OpcodeStr, Dt, "$Vd, $Vm, $Vn", "",
2740 Format f, InstrItinClass itin, string OpcodeStr, string Dt,
2744 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
2752 bit op4, Format f, InstrItinClass itin, string OpcodeStr,
2756 (outs QPR:$Vd), (ins QPR:$Vn, QPR:$Vm), f, itin, OpcodeStr, Dt,
2761 bit op4, Format f, InstrItinClass itin, string OpcodeStr,
2766 f, itin, OpcodeStr, Dt,
2773 string OpcodeStr, string Dt,
2777 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2785 string OpcodeStr, string Dt,
2789 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2797 Format f, InstrItinClass itin, string OpcodeStr, string Dt,
2801 OpcodeStr, Dt, "$Vd, $Vm, $Vn", "",
2809 InstrItinClass itin, string OpcodeStr, string Dt,
2813 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2818 string OpcodeStr, string Dt,
2824 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2831 string OpcodeStr, string Dt,
2837 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2845 InstrItinClass itin, string OpcodeStr, string Dt, ValueType Ty,
2849 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2853 string OpcodeStr, string Dt, ValueType ResTy, ValueType OpTy,
2859 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2866 string OpcodeStr, string Dt,
2873 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2882 InstrItinClass itin, string OpcodeStr, string Dt,
2886 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2890 InstrItinClass itin, string OpcodeStr, string Dt,
2894 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2901 InstrItinClass itin, string OpcodeStr, string Dt,
2905 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2909 InstrItinClass itin, string OpcodeStr, string Dt,
2913 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2919 InstrItinClass itin, string OpcodeStr, string Dt,
2923 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2928 InstrItinClass itin, string OpcodeStr, string Dt,
2933 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2940 InstrItinClass itin, string OpcodeStr, string Dt,
2945 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2954 InstrItinClass itin, string OpcodeStr, string Dt,
2959 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2967 InstrItinClass itin, string OpcodeStr, string Dt,
2971 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2975 string OpcodeStr, string Dt,
2981 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2988 InstrItinClass itin, string OpcodeStr, string Dt,
2994 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
3003 string OpcodeStr, string Dt, ValueType TyD, ValueType TyQ,
3007 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3014 InstrItinClass itin, string OpcodeStr, string Dt,
3018 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3024 InstrItinClass itin, string OpcodeStr, string Dt,
3028 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
3033 InstrItinClass itin, string OpcodeStr, string Dt,
3037 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
3044 InstrItinClass itin, string OpcodeStr, string Dt,
3049 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3057 InstrItinClass itin, string OpcodeStr, string Dt,
3062 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3070 InstrItinClass itin, string OpcodeStr, string Dt,
3074 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3081 bit op4, InstrItinClass itin, string OpcodeStr,
3085 (outs QPR:$Vd), (ins DPR:$Vn, DPR:$Vm), N3RegFrm, itin, OpcodeStr, Dt,
3089 string OpcodeStr, string Dt,
3093 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
3099 InstrItinClass itin, string OpcodeStr, string Dt,
3103 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
3111 string OpcodeStr, string Dt, ValueType TyQ, ValueType TyD,
3115 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3126 string OpcodeStr, string Dt,
3129 (ins DPR:$Vm), IIC_VSHLiD, OpcodeStr, Dt, "$Vd, $Vm", "",
3133 string OpcodeStr, string Dt,
3136 (ins QPR:$Vm), IIC_VSHLiD, OpcodeStr, Dt, "$Vd, $Vm", "",
3144 string OpcodeStr, string Dt,
3148 OpcodeStr, Dt, "$Vd, $Vm", "$src1 = $Vd",
3152 string OpcodeStr, string Dt,
3156 OpcodeStr, Dt, "$Vd, $Vm", "$src1 = $Vd",
3164 string OpcodeStr, string Dt, ValueType Ty, SDNode OpNode>
3167 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3171 string OpcodeStr, string Dt, ValueType Ty, SDNode OpNode>
3174 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3180 string OpcodeStr, string Dt,
3185 IIC_VSHLiD, OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3190 InstrItinClass itin, string OpcodeStr, string Dt,
3195 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3203 Operand ImmTy, string OpcodeStr, string Dt,
3207 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "$src1 = $Vd",
3211 Operand ImmTy, string OpcodeStr, string Dt,
3215 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "$src1 = $Vd",
3224 Operand ImmTy, Format f, string OpcodeStr, string Dt,
3228 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "$src1 = $Vd",
3231 Operand ImmTy, Format f, string OpcodeStr, string Dt,
3235 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "$src1 = $Vd",
3242 string OpcodeStr, string Dt, ValueType ResTy, ValueType OpTy,
3246 IIC_VUNAD, OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3249 string OpcodeStr, string Dt, ValueType ResTy, ValueType OpTy,
3253 IIC_VUNAQ, OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3330 InstrItinClass itin, string OpcodeStr, string Dt,
3334 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3342 InstrItinClass itin, string OpcodeStr, string Dt,
3346 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3356 string OpcodeStr, string Dt,
3360 OpcodeStr, !strconcat(Dt, "8"),
3363 OpcodeStr, !strconcat(Dt, "16"),
3366 OpcodeStr, !strconcat(Dt, "32"),
3371 OpcodeStr, !strconcat(Dt, "8"),
3374 OpcodeStr, !strconcat(Dt, "16"),
3377 OpcodeStr, !strconcat(Dt, "32"),
3387 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3390 itinD, OpcodeStr, !strconcat(Dt, "8"), v8i8, v8i8, IntOp>;
3392 itinD, OpcodeStr, !strconcat(Dt, "16"),v4i16,v4i16,IntOp>;
3394 itinD, OpcodeStr, !strconcat(Dt, "32"),v2i32,v2i32,IntOp>;
3398 itinQ, OpcodeStr, !strconcat(Dt, "8"), v16i8,v16i8,IntOp>;
3400 itinQ, OpcodeStr, !strconcat(Dt, "16"),v8i16,v8i16,IntOp>;
3402 itinQ, OpcodeStr, !strconcat(Dt, "32"),v4i32,v4i32,IntOp>;
3410 InstrItinClass itin, string OpcodeStr, string Dt,
3413 itin, OpcodeStr, !strconcat(Dt, "16"),
3416 itin, OpcodeStr, !strconcat(Dt, "32"),
3419 itin, OpcodeStr, !strconcat(Dt, "64"),
3427 InstrItinClass itin, string OpcodeStr, string Dt,
3430 itin, OpcodeStr, !strconcat(Dt, "16"),
3433 itin, OpcodeStr, !strconcat(Dt, "32"),
3436 itin, OpcodeStr, !strconcat(Dt, "64"),
3444 string OpcodeStr, string Dt, SDNode OpNode> {
3446 OpcodeStr, !strconcat(Dt, "8"), v8i16, v8i8, OpNode>;
3448 OpcodeStr, !strconcat(Dt, "16"), v4i32, v4i16, OpNode>;
3450 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32, OpNode>;
3460 string OpcodeStr, string Dt,
3464 OpcodeStr, !strconcat(Dt, "8"),
3467 OpcodeStr, !strconcat(Dt, "16"),
3470 OpcodeStr, !strconcat(Dt, "32"),
3475 OpcodeStr, !strconcat(Dt, "8"),
3478 OpcodeStr, !strconcat(Dt, "16"),
3481 OpcodeStr, !strconcat(Dt, "32"),
3485 multiclass N3VSL_HS<bits<4> op11_8, string OpcodeStr, SDNode ShOp> {
3486 def v4i16 : N3VDSL16<0b01, op11_8, OpcodeStr, "i16", v4i16, ShOp>;
3487 def v2i32 : N3VDSL<0b10, op11_8, IIC_VMULi32D, OpcodeStr, "i32", v2i32, ShOp>;
3488 def v8i16 : N3VQSL16<0b01, op11_8, OpcodeStr, "i16", v8i16, v4i16, ShOp>;
3489 def v4i32 : N3VQSL<0b10, op11_8, IIC_VMULi32Q, OpcodeStr, "i32",
3496 string OpcodeStr, string Dt,
3499 OpcodeStr, Dt, OpNode, Commutable> {
3501 OpcodeStr, !strconcat(Dt, "64"),
3504 OpcodeStr, !strconcat(Dt, "64"),
3515 string OpcodeStr, string Dt,
3519 OpcodeStr, !strconcat(Dt, "16"),
3522 OpcodeStr, !strconcat(Dt, "32"),
3527 OpcodeStr, !strconcat(Dt, "16"),
3530 OpcodeStr, !strconcat(Dt, "32"),
3536 string OpcodeStr, string Dt,
3540 OpcodeStr, !strconcat(Dt, "16"),
3543 OpcodeStr, !strconcat(Dt, "32"),
3548 OpcodeStr, !strconcat(Dt, "16"),
3551 OpcodeStr, !strconcat(Dt, "32"),
3558 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3560 OpcodeStr, !strconcat(Dt, "16"), v4i16, IntOp>;
3562 OpcodeStr, !strconcat(Dt, "32"), v2i32, IntOp>;
3564 OpcodeStr, !strconcat(Dt, "16"), v8i16, v4i16, IntOp>;
3566 OpcodeStr, !strconcat(Dt, "32"), v4i32, v2i32, IntOp>;
3573 string OpcodeStr, string Dt,
3576 OpcodeStr, Dt, IntOp, Commutable> {
3578 OpcodeStr, !strconcat(Dt, "8"),
3581 OpcodeStr, !strconcat(Dt, "8"),
3587 string OpcodeStr, string Dt,
3590 OpcodeStr, Dt, IntOp> {
3592 OpcodeStr, !strconcat(Dt, "8"),
3595 OpcodeStr, !strconcat(Dt, "8"),
3604 string OpcodeStr, string Dt,
3607 OpcodeStr, Dt, IntOp, Commutable> {
3609 OpcodeStr, !strconcat(Dt, "64"),
3612 OpcodeStr, !strconcat(Dt, "64"),
3618 string OpcodeStr, string Dt,
3621 OpcodeStr, Dt, IntOp> {
3623 OpcodeStr, !strconcat(Dt, "64"),
3626 OpcodeStr, !strconcat(Dt, "64"),
3633 string OpcodeStr, string Dt,
3636 OpcodeStr, !strconcat(Dt, "16"),
3639 OpcodeStr, !strconcat(Dt, "32"),
3642 OpcodeStr, !strconcat(Dt, "64"),
3651 string OpcodeStr, string Dt,
3654 OpcodeStr, !strconcat(Dt, "8"),
3657 OpcodeStr, !strconcat(Dt, "16"),
3660 OpcodeStr, !strconcat(Dt, "32"),
3665 InstrItinClass itin, string OpcodeStr, string Dt,
3667 def v4i16 : N3VLSL16<op24, 0b01, op11_8, itin, OpcodeStr,
3669 def v2i32 : N3VLSL<op24, 0b10, op11_8, itin, OpcodeStr,
3675 string OpcodeStr, string Dt,
3678 OpcodeStr, !strconcat(Dt, "8"),
3681 OpcodeStr, !strconcat(Dt, "16"),
3684 OpcodeStr, !strconcat(Dt, "32"),
3693 string OpcodeStr, string Dt,
3696 OpcodeStr, !strconcat(Dt, "16"),
3699 OpcodeStr, !strconcat(Dt, "32"),
3704 InstrItinClass itin, string OpcodeStr, string Dt,
3707 OpcodeStr, !strconcat(Dt, "16"), v4i32, v4i16, IntOp>;
3709 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32, IntOp>;
3715 string OpcodeStr, string Dt,
3717 : N3VLInt_HS<op24, op23, op11_8, op4, itin16, itin32, OpcodeStr, Dt,
3720 OpcodeStr, !strconcat(Dt, "8"),
3726 InstrItinClass itin, string OpcodeStr, string Dt,
3729 OpcodeStr, !strconcat(Dt, "8"),
3732 OpcodeStr, !strconcat(Dt, "16"),
3735 OpcodeStr, !strconcat(Dt, "32"),
3743 string OpcodeStr, string Dt,
3746 OpcodeStr, !strconcat(Dt, "8"),
3749 OpcodeStr, !strconcat(Dt, "16"),
3752 OpcodeStr, !strconcat(Dt, "32"),
3762 string OpcodeStr, string Dt, SDNode OpNode> {
3765 OpcodeStr, !strconcat(Dt, "8"), v8i8, mul, OpNode>;
3767 OpcodeStr, !strconcat(Dt, "16"), v4i16, mul, OpNode>;
3769 OpcodeStr, !strconcat(Dt, "32"), v2i32, mul, OpNode>;
3773 OpcodeStr, !strconcat(Dt, "8"), v16i8, mul, OpNode>;
3775 OpcodeStr, !strconcat(Dt, "16"), v8i16, mul, OpNode>;
3777 OpcodeStr, !strconcat(Dt, "32"), v4i32, mul, OpNode>;
3783 string OpcodeStr, string Dt, SDPatternOperator ShOp> {
3785 OpcodeStr, !strconcat(Dt, "16"), v4i16, mul, ShOp>;
3787 OpcodeStr, !strconcat(Dt, "32"), v2i32, mul, ShOp>;
3789 OpcodeStr, !strconcat(Dt, "16"), v8i16, v4i16,
3792 OpcodeStr, !strconcat(Dt, "32"), v4i32, v2i32,
3800 string OpcodeStr, string Dt, SDPatternOperator IntOp,
3804 OpcodeStr, !strconcat(Dt, "8"), v8i8, IntOp, OpNode>;
3806 OpcodeStr, !strconcat(Dt, "16"), v4i16, IntOp, OpNode>;
3808 OpcodeStr, !strconcat(Dt, "32"), v2i32, IntOp, OpNode>;
3812 OpcodeStr, !strconcat(Dt, "8"), v16i8, IntOp, OpNode>;
3814 OpcodeStr, !strconcat(Dt, "16"), v8i16, IntOp, OpNode>;
3816 OpcodeStr, !strconcat(Dt, "32"), v4i32, IntOp, OpNode>;
3824 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3827 OpcodeStr, !strconcat(Dt, "16"), v4i16, v4i16, IntOp>;
3829 OpcodeStr, !strconcat(Dt, "32"), v2i32, v2i32, IntOp>;
3833 OpcodeStr, !strconcat(Dt, "16"), v8i16, v8i16, IntOp>;
3835 OpcodeStr, !strconcat(Dt, "32"), v4i32, v4i32, IntOp>;
3842 string OpcodeStr, string Dt, SDPatternOperator IntOp>
3844 itinQ16, itinQ32, OpcodeStr, Dt, IntOp>{
3847 OpcodeStr, !strconcat(Dt, "8"), v8i8, v8i8, IntOp>;
3850 OpcodeStr, !strconcat(Dt, "8"), v16i8, v16i8, IntOp>;
3857 string OpcodeStr, string Dt, SDNode MulOp,
3859 def v8i16 : N3VLMulOp<op24, op23, 0b00, op11_8, op4, itin16, OpcodeStr,
3861 def v4i32 : N3VLMulOp<op24, op23, 0b01, op11_8, op4, itin16, OpcodeStr,
3863 def v2i64 : N3VLMulOp<op24, op23, 0b10, op11_8, op4, itin32, OpcodeStr,
3867 multiclass N3VLMulOpSL_HS<bit op24, bits<4> op11_8, string OpcodeStr,
3869 def v4i16 : N3VLMulOpSL16<op24, 0b01, op11_8, IIC_VMACi16D, OpcodeStr,
3871 def v2i32 : N3VLMulOpSL<op24, 0b10, op11_8, IIC_VMACi32D, OpcodeStr,
3881 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3883 OpcodeStr, !strconcat(Dt, "16"), v4i32, v4i16, IntOp>;
3885 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32, IntOp>;
3889 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3891 OpcodeStr, !strconcat(Dt,"16"), v4i32, v4i16, IntOp>;
3893 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32, IntOp>;
3899 string OpcodeStr, string Dt, SDPatternOperator IntOp>
3900 : N3VLInt3_HS<op24, op23, op11_8, op4, itin16, itin32, OpcodeStr, Dt, IntOp> {
3902 OpcodeStr, !strconcat(Dt, "8"), v8i16, v8i8, IntOp>;
3907 InstrItinClass itin, string OpcodeStr, string Dt,
3910 OpcodeStr, !strconcat(Dt, "8"), v8i16, v8i8,
3913 OpcodeStr, !strconcat(Dt, "16"), v4i32, v4i16,
3916 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32,
3925 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3928 OpcodeStr, !strconcat(Dt, "8"), v4i16, v8i8, IntOp>;
3930 OpcodeStr, !strconcat(Dt, "16"), v2i32, v4i16, IntOp>;
3932 OpcodeStr, !strconcat(Dt, "32"), v1i64, v2i32, IntOp>;
3936 OpcodeStr, !strconcat(Dt, "8"), v8i16, v16i8, IntOp>;
3938 OpcodeStr, !strconcat(Dt, "16"), v4i32, v8i16, IntOp>;
3940 OpcodeStr, !strconcat(Dt, "32"), v2i64, v4i32, IntOp>;
3948 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3951 OpcodeStr, !strconcat(Dt, "8"), v4i16, v8i8, IntOp>;
3953 OpcodeStr, !strconcat(Dt, "16"), v2i32, v4i16, IntOp>;
3955 OpcodeStr, !strconcat(Dt, "32"), v1i64, v2i32, IntOp>;
3959 OpcodeStr, !strconcat(Dt, "8"), v8i16, v16i8, IntOp>;
3961 OpcodeStr, !strconcat(Dt, "16"), v4i32, v8i16, IntOp>;
3963 OpcodeStr, !strconcat(Dt, "32"), v2i64, v4i32, IntOp>;
3971 InstrItinClass itin, string OpcodeStr, string Dt,
3975 OpcodeStr, !strconcat(Dt, "8"), v8i8, OpNode> {
3979 OpcodeStr, !strconcat(Dt, "16"), v4i16, OpNode> {
3983 OpcodeStr, !strconcat(Dt, "32"), v2i32, OpNode> {
3987 OpcodeStr, !strconcat(Dt, "64"), v1i64, OpNode>;
3992 OpcodeStr, !strconcat(Dt, "8"), v16i8, OpNode> {
3996 OpcodeStr, !strconcat(Dt, "16"), v8i16, OpNode> {
4000 OpcodeStr, !strconcat(Dt, "32"), v4i32, OpNode> {
4004 OpcodeStr, !strconcat(Dt, "64"), v2i64, OpNode>;
4008 InstrItinClass itin, string OpcodeStr, string Dt,
4012 OpcodeStr, !strconcat(Dt, "8"), v8i8, OpNode> {
4016 OpcodeStr, !strconcat(Dt, "16"), v4i16, OpNode> {
4020 OpcodeStr, !strconcat(Dt, "32"), v2i32, OpNode> {
4024 OpcodeStr, !strconcat(Dt, "64"), v1i64, OpNode>;
4029 OpcodeStr, !strconcat(Dt, "8"), v16i8, OpNode> {
4033 OpcodeStr, !strconcat(Dt, "16"), v8i16, OpNode> {
4037 OpcodeStr, !strconcat(Dt, "32"), v4i32, OpNode> {
4041 OpcodeStr, !strconcat(Dt, "64"), v2i64, OpNode>;
4048 string OpcodeStr, string Dt, SDNode ShOp> {
4051 OpcodeStr, !strconcat(Dt, "8"), v8i8, ShOp> {
4055 OpcodeStr, !strconcat(Dt, "16"), v4i16, ShOp> {
4059 OpcodeStr, !strconcat(Dt, "32"), v2i32, ShOp> {
4063 OpcodeStr, !strconcat(Dt, "64"), v1i64, ShOp>;
4068 OpcodeStr, !strconcat(Dt, "8"), v16i8, ShOp> {
4072 OpcodeStr, !strconcat(Dt, "16"), v8i16, ShOp> {
4076 OpcodeStr, !strconcat(Dt, "32"), v4i32, ShOp> {
4080 OpcodeStr, !strconcat(Dt, "64"), v2i64, ShOp>;
4088 string OpcodeStr> {
4091 N2RegVShLFrm, OpcodeStr, "8", v8i8, NEONvsliImm> {
4095 N2RegVShLFrm, OpcodeStr, "16", v4i16, NEONvsliImm> {
4099 N2RegVShLFrm, OpcodeStr, "32", v2i32, NEONvsliImm> {
4103 N2RegVShLFrm, OpcodeStr, "64", v1i64, NEONvsliImm>;
4108 N2RegVShLFrm, OpcodeStr, "8", v16i8, NEONvsliImm> {
4112 N2RegVShLFrm, OpcodeStr, "16", v8i16, NEONvsliImm> {
4116 N2RegVShLFrm, OpcodeStr, "32", v4i32, NEONvsliImm> {
4120 N2RegVShLFrm, OpcodeStr, "64", v2i64, NEONvsliImm>;
4124 string OpcodeStr> {
4127 N2RegVShRFrm, OpcodeStr, "8", v8i8, NEONvsriImm> {
4131 N2RegVShRFrm, OpcodeStr, "16", v4i16, NEONvsriImm> {
4135 N2RegVShRFrm, OpcodeStr, "32", v2i32, NEONvsriImm> {
4139 N2RegVShRFrm, OpcodeStr, "64", v1i64, NEONvsriImm>;
4144 N2RegVShRFrm, OpcodeStr, "8", v16i8, NEONvsriImm> {
4148 N2RegVShRFrm, OpcodeStr, "16", v8i16, NEONvsriImm> {
4152 N2RegVShRFrm, OpcodeStr, "32", v4i32, NEONvsriImm> {
4156 N2RegVShRFrm, OpcodeStr, "64", v2i64, NEONvsriImm>;
4163 bit op4, string OpcodeStr, string Dt,
4166 OpcodeStr, !strconcat(Dt, "8"), v8i16, v8i8, imm1_7, OpNode> {
4170 OpcodeStr, !strconcat(Dt, "16"), v4i32, v4i16, imm1_15, OpNode> {
4174 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32, imm1_31, OpNode> {
4182 bit op4, InstrItinClass itin, string OpcodeStr, string Dt,
4185 OpcodeStr, !strconcat(Dt, "16"),
4190 OpcodeStr, !strconcat(Dt, "32"),
4195 OpcodeStr, !strconcat(Dt, "64"),
4955 string OpcodeStr, SDPatternOperator Op> {
4959 OpcodeStr, "f16", []>;
4962 OpcodeStr, "f16", []>;
4967 OpcodeStr, "f32", []>;
4970 OpcodeStr, "f32", []>;
4975 string OpcodeStr, SDPatternOperator Op> {
4980 OpcodeStr, "f16", []>;
4984 OpcodeStr, "f16", []>;
4990 OpcodeStr, "f32", []>;
4994 OpcodeStr, "f32", []>;
5000 multiclass N3VCP8ComplexTiedLane<bit op4, string OpcodeStr,
5007 OpcodeStr, "f16", []>;
5012 OpcodeStr, "f16", []>;
5019 OpcodeStr, "f32", []>;
5024 OpcodeStr, "f32", []>;
5918 bit op6, bit op4, string OpcodeStr, string Dt, ValueType ResTy,
5920 : N2VLSh<op24, op23, op11_8, op7, op6, op4, OpcodeStr, Dt,
6071 class VNEGD<bits<2> size, string OpcodeStr, string Dt, ValueType Ty>
6073 IIC_VSHLiD, OpcodeStr, Dt, "$Vd, $Vm", "",
6075 class VNEGQ<bits<2> size, string OpcodeStr, string Dt, ValueType Ty>
6077 IIC_VSHLiQ, OpcodeStr, Dt, "$Vd, $Vm", "",
6581 class VDUPLND<bits<4> op19_16, string OpcodeStr, string Dt,
6584 IIC_VMOVD, OpcodeStr, Dt, "$Vd, $Vm$lane",
6587 class VDUPLNQ<bits<4> op19_16, string OpcodeStr, string Dt,
6590 IIC_VMOVQ, OpcodeStr, Dt, "$Vd, $Vm$lane",
6876 class VREV64D<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
6879 OpcodeStr, Dt, "$Vd, $Vm", "",
6881 class VREV64Q<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
6884 OpcodeStr, Dt, "$Vd, $Vm", "",
6909 class VREV32D<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
6912 OpcodeStr, Dt, "$Vd, $Vm", "",
6914 class VREV32Q<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
6917 OpcodeStr, Dt, "$Vd, $Vm", "",
6935 class VREV16D<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
6938 OpcodeStr, Dt, "$Vd, $Vm", "",
6940 class VREV16Q<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
6943 OpcodeStr, Dt, "$Vd, $Vm", "",
6975 class VEXTd<string OpcodeStr, string Dt, ValueType Ty, Operand immTy>
6978 IIC_VEXTD, OpcodeStr, Dt, "$Vd, $Vn, $Vm, $index", "",
6986 class VEXTq<string OpcodeStr, string Dt, ValueType Ty, Operand immTy>
6989 IIC_VEXTQ, OpcodeStr, Dt, "$Vd, $Vn, $Vm, $index", "",