Lines Matching refs:OpcodeStr
2522 bits<2> op17_16, bits<5> op11_7, bit op4, string OpcodeStr,
2525 (ins DPR:$Vm), IIC_VUNAD, OpcodeStr, Dt,"$Vd, $Vm", "",
2528 bits<2> op17_16, bits<5> op11_7, bit op4, string OpcodeStr,
2531 (ins QPR:$Vm), IIC_VUNAQ, OpcodeStr, Dt,"$Vd, $Vm", "",
2537 InstrItinClass itin, string OpcodeStr, string Dt,
2540 (ins DPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2544 InstrItinClass itin, string OpcodeStr, string Dt,
2547 (ins QPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2552 InstrItinClass itin, string OpcodeStr, string Dt,
2555 itin, OpcodeStr, Dt,
2559 InstrItinClass itin, string OpcodeStr, string Dt,
2562 itin, OpcodeStr, Dt,
2567 bit op7, InstrItinClass itin, string OpcodeStr, string Dt,
2570 itin, OpcodeStr, Dt,
2575 bit op7, InstrItinClass itin, string OpcodeStr, string Dt,
2579 itin, OpcodeStr, Dt,
2587 InstrItinClass itin, string OpcodeStr, string Dt,
2590 (ins QPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2596 InstrItinClass itin, string OpcodeStr, string Dt,
2599 (ins QPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2605 InstrItinClass itin, string OpcodeStr, string Dt,
2608 (ins DPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2614 InstrItinClass itin, string OpcodeStr, string Dt,
2617 (ins DPR:$Vm), itin, OpcodeStr, Dt, "$Vd, $Vm", "",
2621 class N2VDShuffle<bits<2> op19_18, bits<5> op11_7, string OpcodeStr, string Dt>
2624 OpcodeStr, Dt, "$Vd, $Vm",
2627 InstrItinClass itin, string OpcodeStr, string Dt>
2629 (ins QPR:$src1, QPR:$src2), itin, OpcodeStr, Dt, "$Vd, $Vm",
2634 InstrItinClass itin, string OpcodeStr, string Dt,
2638 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
2646 InstrItinClass itin, string OpcodeStr,
2651 OpcodeStr, "$Vd, $Vn, $Vm", "",
2659 InstrItinClass itin, string OpcodeStr, string Dt,
2663 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2672 string OpcodeStr, string Dt, ValueType Ty, SDNode ShOp>
2675 NVMulSLFrm, IIC_VMULi16D, OpcodeStr, Dt,"$Vd, $Vn, $Vm$lane","",
2685 InstrItinClass itin, string OpcodeStr, string Dt,
2689 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
2696 InstrItinClass itin, string OpcodeStr,
2700 OpcodeStr, "$Vd, $Vn, $Vm", "",
2707 InstrItinClass itin, string OpcodeStr, string Dt,
2711 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2720 class N3VQSL16<bits<2> op21_20, bits<4> op11_8, string OpcodeStr, string Dt,
2724 NVMulSLFrm, IIC_VMULi16Q, OpcodeStr, Dt,"$Vd, $Vn, $Vm$lane", "",
2736 Format f, InstrItinClass itin, string OpcodeStr, string Dt,
2740 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
2748 bit op4, Format f, InstrItinClass itin, string OpcodeStr,
2752 (outs DPR:$Vd), (ins DPR:$Vn, DPR:$Vm), f, itin, OpcodeStr, Dt,
2759 string OpcodeStr, string Dt, ValueType Ty, SDPatternOperator IntOp>
2762 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2771 string OpcodeStr, string Dt, ValueType Ty, SDPatternOperator IntOp>
2774 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2781 Format f, InstrItinClass itin, string OpcodeStr, string Dt,
2785 OpcodeStr, Dt, "$Vd, $Vm, $Vn", "",
2792 Format f, InstrItinClass itin, string OpcodeStr, string Dt,
2796 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
2804 bit op4, Format f, InstrItinClass itin, string OpcodeStr,
2808 (outs QPR:$Vd), (ins QPR:$Vn, QPR:$Vm), f, itin, OpcodeStr, Dt,
2815 bit op4, Format f, InstrItinClass itin, string OpcodeStr,
2820 f, itin, OpcodeStr, Dt,
2828 string OpcodeStr, string Dt,
2832 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2840 string OpcodeStr, string Dt,
2844 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
2852 Format f, InstrItinClass itin, string OpcodeStr, string Dt,
2856 OpcodeStr, Dt, "$Vd, $Vm, $Vn", "",
2864 InstrItinClass itin, string OpcodeStr, string Dt,
2868 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2873 string OpcodeStr, string Dt,
2879 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2886 string OpcodeStr, string Dt,
2892 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2900 InstrItinClass itin, string OpcodeStr, string Dt, ValueType Ty,
2904 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2908 string OpcodeStr, string Dt, ValueType ResTy, ValueType OpTy,
2914 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2921 string OpcodeStr, string Dt,
2928 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2937 InstrItinClass itin, string OpcodeStr, string Dt,
2941 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2945 InstrItinClass itin, string OpcodeStr, string Dt,
2949 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2956 InstrItinClass itin, string OpcodeStr, string Dt,
2960 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2964 InstrItinClass itin, string OpcodeStr, string Dt,
2968 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2974 InstrItinClass itin, string OpcodeStr, string Dt,
2978 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
2983 InstrItinClass itin, string OpcodeStr, string Dt,
2988 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
2995 InstrItinClass itin, string OpcodeStr, string Dt,
3000 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
3009 InstrItinClass itin, string OpcodeStr, string Dt,
3014 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
3022 InstrItinClass itin, string OpcodeStr, string Dt,
3026 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "$src1 = $Vd",
3030 string OpcodeStr, string Dt,
3036 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
3043 InstrItinClass itin, string OpcodeStr, string Dt,
3049 OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "$src1 = $Vd",
3058 string OpcodeStr, string Dt, ValueType TyD, ValueType TyQ,
3062 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3069 InstrItinClass itin, string OpcodeStr, string Dt,
3073 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3079 InstrItinClass itin, string OpcodeStr, string Dt,
3083 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
3088 InstrItinClass itin, string OpcodeStr, string Dt,
3092 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
3099 InstrItinClass itin, string OpcodeStr, string Dt,
3104 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3112 InstrItinClass itin, string OpcodeStr, string Dt,
3117 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3125 InstrItinClass itin, string OpcodeStr, string Dt,
3129 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3136 bit op4, InstrItinClass itin, string OpcodeStr,
3140 (outs QPR:$Vd), (ins DPR:$Vn, DPR:$Vm), N3RegFrm, itin, OpcodeStr, Dt,
3147 string OpcodeStr, string Dt,
3151 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
3157 InstrItinClass itin, string OpcodeStr, string Dt,
3161 NVMulSLFrm, itin, OpcodeStr, Dt, "$Vd, $Vn, $Vm$lane", "",
3169 string OpcodeStr, string Dt, ValueType TyQ, ValueType TyD,
3173 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3184 string OpcodeStr, string Dt,
3187 (ins DPR:$Vm), IIC_VSHLiD, OpcodeStr, Dt, "$Vd, $Vm", "",
3191 string OpcodeStr, string Dt,
3194 (ins QPR:$Vm), IIC_VSHLiD, OpcodeStr, Dt, "$Vd, $Vm", "",
3202 string OpcodeStr, string Dt,
3206 OpcodeStr, Dt, "$Vd, $Vm", "$src1 = $Vd",
3210 string OpcodeStr, string Dt,
3214 OpcodeStr, Dt, "$Vd, $Vm", "$src1 = $Vd",
3222 string OpcodeStr, string Dt, ValueType Ty, SDNode OpNode>
3225 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3229 string OpcodeStr, string Dt, ValueType Ty, SDNode OpNode>
3232 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3238 string OpcodeStr, string Dt,
3243 IIC_VSHLiD, OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3248 InstrItinClass itin, string OpcodeStr, string Dt,
3253 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3261 Operand ImmTy, string OpcodeStr, string Dt,
3265 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "$src1 = $Vd",
3269 Operand ImmTy, string OpcodeStr, string Dt,
3273 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "$src1 = $Vd",
3282 Operand ImmTy, Format f, string OpcodeStr, string Dt,
3286 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "$src1 = $Vd",
3289 Operand ImmTy, Format f, string OpcodeStr, string Dt,
3293 OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "$src1 = $Vd",
3300 string OpcodeStr, string Dt, ValueType ResTy, ValueType OpTy,
3304 IIC_VUNAD, OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3307 string OpcodeStr, string Dt, ValueType ResTy, ValueType OpTy,
3311 IIC_VUNAQ, OpcodeStr, Dt, "$Vd, $Vm, $SIMM", "",
3388 InstrItinClass itin, string OpcodeStr, string Dt,
3392 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3400 InstrItinClass itin, string OpcodeStr, string Dt,
3404 OpcodeStr, Dt, "$Vd, $Vn, $Vm", "",
3414 string OpcodeStr, string Dt,
3418 OpcodeStr, !strconcat(Dt, "8"),
3421 OpcodeStr, !strconcat(Dt, "16"),
3424 OpcodeStr, !strconcat(Dt, "32"),
3429 OpcodeStr, !strconcat(Dt, "8"),
3432 OpcodeStr, !strconcat(Dt, "16"),
3435 OpcodeStr, !strconcat(Dt, "32"),
3445 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3448 itinD, OpcodeStr, !strconcat(Dt, "8"), v8i8, v8i8, IntOp>;
3450 itinD, OpcodeStr, !strconcat(Dt, "16"),v4i16,v4i16,IntOp>;
3452 itinD, OpcodeStr, !strconcat(Dt, "32"),v2i32,v2i32,IntOp>;
3456 itinQ, OpcodeStr, !strconcat(Dt, "8"), v16i8,v16i8,IntOp>;
3458 itinQ, OpcodeStr, !strconcat(Dt, "16"),v8i16,v8i16,IntOp>;
3460 itinQ, OpcodeStr, !strconcat(Dt, "32"),v4i32,v4i32,IntOp>;
3468 InstrItinClass itin, string OpcodeStr, string Dt,
3471 itin, OpcodeStr, !strconcat(Dt, "16"),
3474 itin, OpcodeStr, !strconcat(Dt, "32"),
3477 itin, OpcodeStr, !strconcat(Dt, "64"),
3485 InstrItinClass itin, string OpcodeStr, string Dt,
3488 itin, OpcodeStr, !strconcat(Dt, "16"),
3491 itin, OpcodeStr, !strconcat(Dt, "32"),
3494 itin, OpcodeStr, !strconcat(Dt, "64"),
3502 string OpcodeStr, string Dt, SDNode OpNode> {
3504 OpcodeStr, !strconcat(Dt, "8"), v8i16, v8i8, OpNode>;
3506 OpcodeStr, !strconcat(Dt, "16"), v4i32, v4i16, OpNode>;
3508 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32, OpNode>;
3518 string OpcodeStr, string Dt,
3522 OpcodeStr, !strconcat(Dt, "8"),
3525 OpcodeStr, !strconcat(Dt, "16"),
3528 OpcodeStr, !strconcat(Dt, "32"),
3533 OpcodeStr, !strconcat(Dt, "8"),
3536 OpcodeStr, !strconcat(Dt, "16"),
3539 OpcodeStr, !strconcat(Dt, "32"),
3543 multiclass N3VSL_HS<bits<4> op11_8, string OpcodeStr, SDNode ShOp> {
3544 def v4i16 : N3VDSL16<0b01, op11_8, OpcodeStr, "i16", v4i16, ShOp>;
3545 def v2i32 : N3VDSL<0b10, op11_8, IIC_VMULi32D, OpcodeStr, "i32", v2i32, ShOp>;
3546 def v8i16 : N3VQSL16<0b01, op11_8, OpcodeStr, "i16", v8i16, v4i16, ShOp>;
3547 def v4i32 : N3VQSL<0b10, op11_8, IIC_VMULi32Q, OpcodeStr, "i32",
3554 string OpcodeStr, string Dt,
3557 OpcodeStr, Dt, OpNode, Commutable> {
3559 OpcodeStr, !strconcat(Dt, "64"),
3562 OpcodeStr, !strconcat(Dt, "64"),
3573 string OpcodeStr, string Dt,
3577 OpcodeStr, !strconcat(Dt, "16"),
3580 OpcodeStr, !strconcat(Dt, "32"),
3585 OpcodeStr, !strconcat(Dt, "16"),
3588 OpcodeStr, !strconcat(Dt, "32"),
3594 string OpcodeStr, string Dt,
3598 OpcodeStr, !strconcat(Dt, "16"),
3601 OpcodeStr, !strconcat(Dt, "32"),
3606 OpcodeStr, !strconcat(Dt, "16"),
3609 OpcodeStr, !strconcat(Dt, "32"),
3616 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3618 OpcodeStr, !strconcat(Dt, "16"), v4i16, IntOp>;
3620 OpcodeStr, !strconcat(Dt, "32"), v2i32, IntOp>;
3622 OpcodeStr, !strconcat(Dt, "16"), v8i16, v4i16, IntOp>;
3624 OpcodeStr, !strconcat(Dt, "32"), v4i32, v2i32, IntOp>;
3631 string OpcodeStr, string Dt,
3634 OpcodeStr, Dt, IntOp, Commutable> {
3636 OpcodeStr, !strconcat(Dt, "8"),
3639 OpcodeStr, !strconcat(Dt, "8"),
3645 string OpcodeStr, string Dt,
3648 OpcodeStr, Dt, IntOp> {
3650 OpcodeStr, !strconcat(Dt, "8"),
3653 OpcodeStr, !strconcat(Dt, "8"),
3662 string OpcodeStr, string Dt,
3665 OpcodeStr, Dt, IntOp, Commutable> {
3667 OpcodeStr, !strconcat(Dt, "64"),
3670 OpcodeStr, !strconcat(Dt, "64"),
3676 string OpcodeStr, string Dt,
3679 OpcodeStr, Dt, IntOp> {
3681 OpcodeStr, !strconcat(Dt, "64"),
3684 OpcodeStr, !strconcat(Dt, "64"),
3691 string OpcodeStr, string Dt,
3694 OpcodeStr, !strconcat(Dt, "16"),
3697 OpcodeStr, !strconcat(Dt, "32"),
3700 OpcodeStr, !strconcat(Dt, "64"),
3709 string OpcodeStr, string Dt,
3712 OpcodeStr, !strconcat(Dt, "8"),
3715 OpcodeStr, !strconcat(Dt, "16"),
3718 OpcodeStr, !strconcat(Dt, "32"),
3723 InstrItinClass itin, string OpcodeStr, string Dt,
3725 def v4i16 : N3VLSL16<op24, 0b01, op11_8, itin, OpcodeStr,
3727 def v2i32 : N3VLSL<op24, 0b10, op11_8, itin, OpcodeStr,
3733 string OpcodeStr, string Dt,
3736 OpcodeStr, !strconcat(Dt, "8"),
3739 OpcodeStr, !strconcat(Dt, "16"),
3742 OpcodeStr, !strconcat(Dt, "32"),
3751 string OpcodeStr, string Dt,
3754 OpcodeStr, !strconcat(Dt, "16"),
3757 OpcodeStr, !strconcat(Dt, "32"),
3762 InstrItinClass itin, string OpcodeStr, string Dt,
3765 OpcodeStr, !strconcat(Dt, "16"), v4i32, v4i16, IntOp>;
3767 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32, IntOp>;
3773 string OpcodeStr, string Dt,
3775 : N3VLInt_HS<op24, op23, op11_8, op4, itin16, itin32, OpcodeStr, Dt,
3778 OpcodeStr, !strconcat(Dt, "8"),
3784 InstrItinClass itin, string OpcodeStr, string Dt,
3787 OpcodeStr, !strconcat(Dt, "8"),
3790 OpcodeStr, !strconcat(Dt, "16"),
3793 OpcodeStr, !strconcat(Dt, "32"),
3801 string OpcodeStr, string Dt,
3804 OpcodeStr, !strconcat(Dt, "8"),
3807 OpcodeStr, !strconcat(Dt, "16"),
3810 OpcodeStr, !strconcat(Dt, "32"),
3820 string OpcodeStr, string Dt, SDNode OpNode> {
3823 OpcodeStr, !strconcat(Dt, "8"), v8i8, mul, OpNode>;
3825 OpcodeStr, !strconcat(Dt, "16"), v4i16, mul, OpNode>;
3827 OpcodeStr, !strconcat(Dt, "32"), v2i32, mul, OpNode>;
3831 OpcodeStr, !strconcat(Dt, "8"), v16i8, mul, OpNode>;
3833 OpcodeStr, !strconcat(Dt, "16"), v8i16, mul, OpNode>;
3835 OpcodeStr, !strconcat(Dt, "32"), v4i32, mul, OpNode>;
3841 string OpcodeStr, string Dt, SDPatternOperator ShOp> {
3843 OpcodeStr, !strconcat(Dt, "16"), v4i16, mul, ShOp>;
3845 OpcodeStr, !strconcat(Dt, "32"), v2i32, mul, ShOp>;
3847 OpcodeStr, !strconcat(Dt, "16"), v8i16, v4i16,
3850 OpcodeStr, !strconcat(Dt, "32"), v4i32, v2i32,
3858 string OpcodeStr, string Dt, SDPatternOperator IntOp,
3862 OpcodeStr, !strconcat(Dt, "8"), v8i8, IntOp, OpNode>;
3864 OpcodeStr, !strconcat(Dt, "16"), v4i16, IntOp, OpNode>;
3866 OpcodeStr, !strconcat(Dt, "32"), v2i32, IntOp, OpNode>;
3870 OpcodeStr, !strconcat(Dt, "8"), v16i8, IntOp, OpNode>;
3872 OpcodeStr, !strconcat(Dt, "16"), v8i16, IntOp, OpNode>;
3874 OpcodeStr, !strconcat(Dt, "32"), v4i32, IntOp, OpNode>;
3882 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3885 OpcodeStr, !strconcat(Dt, "16"), v4i16, v4i16, IntOp>;
3887 OpcodeStr, !strconcat(Dt, "32"), v2i32, v2i32, IntOp>;
3891 OpcodeStr, !strconcat(Dt, "16"), v8i16, v8i16, IntOp>;
3893 OpcodeStr, !strconcat(Dt, "32"), v4i32, v4i32, IntOp>;
3900 string OpcodeStr, string Dt, SDPatternOperator IntOp>
3902 itinQ16, itinQ32, OpcodeStr, Dt, IntOp>{
3905 OpcodeStr, !strconcat(Dt, "8"), v8i8, v8i8, IntOp>;
3908 OpcodeStr, !strconcat(Dt, "8"), v16i8, v16i8, IntOp>;
3915 string OpcodeStr, string Dt, SDNode MulOp,
3917 def v8i16 : N3VLMulOp<op24, op23, 0b00, op11_8, op4, itin16, OpcodeStr,
3919 def v4i32 : N3VLMulOp<op24, op23, 0b01, op11_8, op4, itin16, OpcodeStr,
3921 def v2i64 : N3VLMulOp<op24, op23, 0b10, op11_8, op4, itin32, OpcodeStr,
3925 multiclass N3VLMulOpSL_HS<bit op24, bits<4> op11_8, string OpcodeStr,
3927 def v4i16 : N3VLMulOpSL16<op24, 0b01, op11_8, IIC_VMACi16D, OpcodeStr,
3929 def v2i32 : N3VLMulOpSL<op24, 0b10, op11_8, IIC_VMACi32D, OpcodeStr,
3939 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3941 OpcodeStr, !strconcat(Dt, "16"), v4i32, v4i16, IntOp>;
3943 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32, IntOp>;
3947 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3949 OpcodeStr, !strconcat(Dt,"16"), v4i32, v4i16, IntOp>;
3951 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32, IntOp>;
3957 string OpcodeStr, string Dt, SDPatternOperator IntOp>
3958 : N3VLInt3_HS<op24, op23, op11_8, op4, itin16, itin32, OpcodeStr, Dt, IntOp> {
3960 OpcodeStr, !strconcat(Dt, "8"), v8i16, v8i8, IntOp>;
3965 InstrItinClass itin, string OpcodeStr, string Dt,
3968 OpcodeStr, !strconcat(Dt, "8"), v8i16, v8i8,
3971 OpcodeStr, !strconcat(Dt, "16"), v4i32, v4i16,
3974 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32,
3983 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
3986 OpcodeStr, !strconcat(Dt, "8"), v4i16, v8i8, IntOp>;
3988 OpcodeStr, !strconcat(Dt, "16"), v2i32, v4i16, IntOp>;
3990 OpcodeStr, !strconcat(Dt, "32"), v1i64, v2i32, IntOp>;
3994 OpcodeStr, !strconcat(Dt, "8"), v8i16, v16i8, IntOp>;
3996 OpcodeStr, !strconcat(Dt, "16"), v4i32, v8i16, IntOp>;
3998 OpcodeStr, !strconcat(Dt, "32"), v2i64, v4i32, IntOp>;
4006 string OpcodeStr, string Dt, SDPatternOperator IntOp> {
4009 OpcodeStr, !strconcat(Dt, "8"), v4i16, v8i8, IntOp>;
4011 OpcodeStr, !strconcat(Dt, "16"), v2i32, v4i16, IntOp>;
4013 OpcodeStr, !strconcat(Dt, "32"), v1i64, v2i32, IntOp>;
4017 OpcodeStr, !strconcat(Dt, "8"), v8i16, v16i8, IntOp>;
4019 OpcodeStr, !strconcat(Dt, "16"), v4i32, v8i16, IntOp>;
4021 OpcodeStr, !strconcat(Dt, "32"), v2i64, v4i32, IntOp>;
4029 InstrItinClass itin, string OpcodeStr, string Dt,
4033 OpcodeStr, !strconcat(Dt, "8"), v8i8, OpNode> {
4037 OpcodeStr, !strconcat(Dt, "16"), v4i16, OpNode> {
4041 OpcodeStr, !strconcat(Dt, "32"), v2i32, OpNode> {
4045 OpcodeStr, !strconcat(Dt, "64"), v1i64, OpNode>;
4050 OpcodeStr, !strconcat(Dt, "8"), v16i8, OpNode> {
4054 OpcodeStr, !strconcat(Dt, "16"), v8i16, OpNode> {
4058 OpcodeStr, !strconcat(Dt, "32"), v4i32, OpNode> {
4062 OpcodeStr, !strconcat(Dt, "64"), v2i64, OpNode>;
4066 InstrItinClass itin, string OpcodeStr, string Dt,
4070 OpcodeStr, !strconcat(Dt, "8"), v8i8, OpNode> {
4074 OpcodeStr, !strconcat(Dt, "16"), v4i16, OpNode> {
4078 OpcodeStr, !strconcat(Dt, "32"), v2i32, OpNode> {
4082 OpcodeStr, !strconcat(Dt, "64"), v1i64, OpNode>;
4087 OpcodeStr, !strconcat(Dt, "8"), v16i8, OpNode> {
4091 OpcodeStr, !strconcat(Dt, "16"), v8i16, OpNode> {
4095 OpcodeStr, !strconcat(Dt, "32"), v4i32, OpNode> {
4099 OpcodeStr, !strconcat(Dt, "64"), v2i64, OpNode>;
4106 string OpcodeStr, string Dt, SDNode ShOp> {
4109 OpcodeStr, !strconcat(Dt, "8"), v8i8, ShOp> {
4113 OpcodeStr, !strconcat(Dt, "16"), v4i16, ShOp> {
4117 OpcodeStr, !strconcat(Dt, "32"), v2i32, ShOp> {
4121 OpcodeStr, !strconcat(Dt, "64"), v1i64, ShOp>;
4126 OpcodeStr, !strconcat(Dt, "8"), v16i8, ShOp> {
4130 OpcodeStr, !strconcat(Dt, "16"), v8i16, ShOp> {
4134 OpcodeStr, !strconcat(Dt, "32"), v4i32, ShOp> {
4138 OpcodeStr, !strconcat(Dt, "64"), v2i64, ShOp>;
4146 string OpcodeStr> {
4149 N2RegVShLFrm, OpcodeStr, "8", v8i8, NEONvsliImm> {
4153 N2RegVShLFrm, OpcodeStr, "16", v4i16, NEONvsliImm> {
4157 N2RegVShLFrm, OpcodeStr, "32", v2i32, NEONvsliImm> {
4161 N2RegVShLFrm, OpcodeStr, "64", v1i64, NEONvsliImm>;
4166 N2RegVShLFrm, OpcodeStr, "8", v16i8, NEONvsliImm> {
4170 N2RegVShLFrm, OpcodeStr, "16", v8i16, NEONvsliImm> {
4174 N2RegVShLFrm, OpcodeStr, "32", v4i32, NEONvsliImm> {
4178 N2RegVShLFrm, OpcodeStr, "64", v2i64, NEONvsliImm>;
4182 string OpcodeStr> {
4185 N2RegVShRFrm, OpcodeStr, "8", v8i8, NEONvsriImm> {
4189 N2RegVShRFrm, OpcodeStr, "16", v4i16, NEONvsriImm> {
4193 N2RegVShRFrm, OpcodeStr, "32", v2i32, NEONvsriImm> {
4197 N2RegVShRFrm, OpcodeStr, "64", v1i64, NEONvsriImm>;
4202 N2RegVShRFrm, OpcodeStr, "8", v16i8, NEONvsriImm> {
4206 N2RegVShRFrm, OpcodeStr, "16", v8i16, NEONvsriImm> {
4210 N2RegVShRFrm, OpcodeStr, "32", v4i32, NEONvsriImm> {
4214 N2RegVShRFrm, OpcodeStr, "64", v2i64, NEONvsriImm>;
4221 bit op4, string OpcodeStr, string Dt,
4224 OpcodeStr, !strconcat(Dt, "8"), v8i16, v8i8, imm1_7, OpNode> {
4228 OpcodeStr, !strconcat(Dt, "16"), v4i32, v4i16, imm1_15, OpNode> {
4232 OpcodeStr, !strconcat(Dt, "32"), v2i64, v2i32, imm1_31, OpNode> {
4240 bit op4, InstrItinClass itin, string OpcodeStr, string Dt,
4243 OpcodeStr, !strconcat(Dt, "16"),
4248 OpcodeStr, !strconcat(Dt, "32"),
4253 OpcodeStr, !strconcat(Dt, "64"),
4981 string OpcodeStr> {
4985 OpcodeStr, "f16", []>;
4988 OpcodeStr, "f16", []>;
4993 OpcodeStr, "f32", []>;
4996 OpcodeStr, "f32", []>;
5001 string OpcodeStr> {
5006 OpcodeStr, "f16", []>;
5010 OpcodeStr, "f16", []>;
5016 OpcodeStr, "f32", []>;
5020 OpcodeStr, "f32", []>;
5026 multiclass N3VCP8ComplexTiedLane<bit op4, string OpcodeStr> {
5032 OpcodeStr, "f16", []>;
5037 OpcodeStr, "f16", []>;
5044 OpcodeStr, "f32", []>;
5049 OpcodeStr, "f32", []>;
5983 bit op6, bit op4, string OpcodeStr, string Dt, ValueType ResTy,
5985 : N2VLSh<op24, op23, op11_8, op7, op6, op4, OpcodeStr, Dt,
6136 class VNEGD<bits<2> size, string OpcodeStr, string Dt, ValueType Ty>
6138 IIC_VSHLiD, OpcodeStr, Dt, "$Vd, $Vm", "",
6140 class VNEGQ<bits<2> size, string OpcodeStr, string Dt, ValueType Ty>
6142 IIC_VSHLiQ, OpcodeStr, Dt, "$Vd, $Vm", "",
6666 class VDUPLND<bits<4> op19_16, string OpcodeStr, string Dt,
6669 IIC_VMOVD, OpcodeStr, Dt, "$Vd, $Vm$lane",
6672 class VDUPLNQ<bits<4> op19_16, string OpcodeStr, string Dt,
6675 IIC_VMOVQ, OpcodeStr, Dt, "$Vd, $Vm$lane",
6964 class VREV64D<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
6967 OpcodeStr, Dt, "$Vd, $Vm", "",
6969 class VREV64Q<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
6972 OpcodeStr, Dt, "$Vd, $Vm", "",
7001 class VREV32D<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
7004 OpcodeStr, Dt, "$Vd, $Vm", "",
7006 class VREV32Q<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
7009 OpcodeStr, Dt, "$Vd, $Vm", "",
7031 class VREV16D<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
7034 OpcodeStr, Dt, "$Vd, $Vm", "",
7036 class VREV16Q<bits<2> op19_18, string OpcodeStr, string Dt, ValueType Ty>
7039 OpcodeStr, Dt, "$Vd, $Vm", "",
7067 class VEXTd<string OpcodeStr, string Dt, ValueType Ty, Operand immTy>
7070 IIC_VEXTD, OpcodeStr, Dt, "$Vd, $Vn, $Vm, $index", "",
7078 class VEXTq<string OpcodeStr, string Dt, ValueType Ty, Operand immTy>
7081 IIC_VEXTQ, OpcodeStr, Dt, "$Vd, $Vn, $Vm, $index", "",