Lines Matching refs:Dt
599 class VLD1D<bits<4> op7_4, string Dt, Operand AddrMode>
602 "vld1", Dt, "$Vd, $Rn", "", []>, Sched<[WriteVLD1]> {
607 class VLD1Q<bits<4> op7_4, string Dt, Operand AddrMode>
610 "vld1", Dt, "$Vd, $Rn", "", []>, Sched<[WriteVLD2]> {
627 multiclass VLD1DWB<bits<4> op7_4, string Dt, Operand AddrMode> {
630 "vld1", Dt, "$Vd, $Rn!",
638 "vld1", Dt, "$Vd, $Rn, $Rm",
644 multiclass VLD1QWB<bits<4> op7_4, string Dt, Operand AddrMode> {
647 "vld1", Dt, "$Vd, $Rn!",
655 "vld1", Dt, "$Vd, $Rn, $Rm",
672 class VLD1D3<bits<4> op7_4, string Dt, Operand AddrMode>
674 (ins AddrMode:$Rn), IIC_VLD1x3, "vld1", Dt,
680 multiclass VLD1D3WB<bits<4> op7_4, string Dt, Operand AddrMode> {
683 "vld1", Dt, "$Vd, $Rn!",
691 "vld1", Dt, "$Vd, $Rn, $Rm",
735 class VLD1D4<bits<4> op7_4, string Dt, Operand AddrMode>
737 (ins AddrMode:$Rn), IIC_VLD1x4, "vld1", Dt,
743 multiclass VLD1D4WB<bits<4> op7_4, string Dt, Operand AddrMode> {
746 "vld1", Dt, "$Vd, $Rn!",
754 "vld1", Dt, "$Vd, $Rn, $Rm",
798 class VLD2<bits<4> op11_8, bits<4> op7_4, string Dt, RegisterOperand VdTy,
802 "vld2", Dt, "$Vd, $Rn", "", []> {
827 multiclass VLD2WB<bits<4> op11_8, bits<4> op7_4, string Dt,
831 "vld2", Dt, "$Vd, $Rn!",
839 "vld2", Dt, "$Vd, $Rn, $Rm",
882 class VLD3D<bits<4> op11_8, bits<4> op7_4, string Dt>
885 "vld3", Dt, "\\{$Vd, $dst2, $dst3\\}, $Rn", "", []>, Sched<[WriteVLD3]> {
900 class VLD3DWB<bits<4> op11_8, bits<4> op7_4, string Dt>
904 "vld3", Dt, "\\{$Vd, $dst2, $dst3\\}, $Rn$Rm",
940 class VLD4D<bits<4> op11_8, bits<4> op7_4, string Dt>
944 "vld4", Dt, "\\{$Vd, $dst2, $dst3, $dst4\\}, $Rn", "", []>,
960 class VLD4DWB<bits<4> op11_8, bits<4> op7_4, string Dt>
964 "vld4", Dt, "\\{$Vd, $dst2, $dst3, $dst4\\}, $Rn$Rm",
1029 class VLD1LN<bits<4> op11_8, bits<4> op7_4, string Dt, ValueType Ty,
1033 IIC_VLD1ln, "vld1", Dt, "\\{$Vd[$lane]\\}, $Rn",
1041 class VLD1LN32<bits<4> op11_8, bits<4> op7_4, string Dt, ValueType Ty,
1045 IIC_VLD1ln, "vld1", Dt, "\\{$Vd[$lane]\\}, $Rn",
1116 class VLD1LNWB<bits<4> op11_8, bits<4> op7_4, string Dt>
1119 DPR:$src, nohash_imm:$lane), IIC_VLD1lnu, "vld1", Dt,
1143 class VLD2LN<bits<4> op11_8, bits<4> op7_4, string Dt>
1146 IIC_VLD2ln, "vld2", Dt, "\\{$Vd[$lane], $dst2[$lane]\\}, $Rn",
1179 class VLD2LNWB<bits<4> op11_8, bits<4> op7_4, string Dt>
1182 DPR:$src1, DPR:$src2, nohash_imm:$lane), IIC_VLD2lnu, "vld2", Dt,
1214 class VLD3LN<bits<4> op11_8, bits<4> op7_4, string Dt>
1217 nohash_imm:$lane), IIC_VLD3ln, "vld3", Dt,
1250 class VLD3LNWB<bits<4> op11_8, bits<4> op7_4, string Dt>
1255 IIC_VLD3lnu, "vld3", Dt,
1287 class VLD4LN<bits<4> op11_8, bits<4> op7_4, string Dt>
1291 nohash_imm:$lane), IIC_VLD4ln, "vld4", Dt,
1328 class VLD4LNWB<bits<4> op11_8, bits<4> op7_4, string Dt>
1333 IIC_VLD4lnu, "vld4", Dt,
1370 class VLD1DUP<bits<4> op7_4, string Dt, ValueType Ty, PatFrag LoadOp,
1374 IIC_VLD1dup, "vld1", Dt, "$Vd, $Rn", "",
1394 class VLD1QDUP<bits<4> op7_4, string Dt, ValueType Ty, PatFrag LoadOp,
1398 "vld1", Dt, "$Vd, $Rn", "",
1420 multiclass VLD1DUPWB<bits<4> op7_4, string Dt, Operand AddrMode> {
1424 "vld1", Dt, "$Vd, $Rn!",
1433 "vld1", Dt, "$Vd, $Rn, $Rm",
1439 multiclass VLD1QDUPWB<bits<4> op7_4, string Dt, Operand AddrMode> {
1443 "vld1", Dt, "$Vd, $Rn!",
1452 "vld1", Dt, "$Vd, $Rn, $Rm",
1468 class VLD2DUP<bits<4> op7_4, string Dt, RegisterOperand VdTy, Operand AddrMode>
1471 "vld2", Dt, "$Vd, $Rn", "", []> {
1516 multiclass VLD2DUPWB<bits<4> op7_4, string Dt, RegisterOperand VdTy,
1521 "vld2", Dt, "$Vd, $Rn!",
1530 "vld2", Dt, "$Vd, $Rn, $Rm",
1559 class VLD3DUP<bits<4> op7_4, string Dt>
1562 "vld3", Dt, "\\{$Vd[], $dst2[], $dst3[]\\}, $Rn", "", []>,
1590 class VLD3DUPWB<bits<4> op7_4, string Dt, Operand AddrMode>
1593 "vld3", Dt, "\\{$Vd[], $dst2[], $dst3[]\\}, $Rn$Rm",
1616 class VLD4DUP<bits<4> op7_4, string Dt>
1620 "vld4", Dt, "\\{$Vd[], $dst2[], $dst3[], $dst4[]\\}, $Rn", "", []> {
1647 class VLD4DUPWB<bits<4> op7_4, string Dt>
1651 "vld4", Dt, "\\{$Vd[], $dst2[], $dst3[], $dst4[]\\}, $Rn$Rm",
1716 class VST1D<bits<4> op7_4, string Dt, Operand AddrMode>
1718 IIC_VST1, "vst1", Dt, "$Vd, $Rn", "", []>, Sched<[WriteVST1]> {
1723 class VST1Q<bits<4> op7_4, string Dt, Operand AddrMode>
1725 IIC_VST1x2, "vst1", Dt, "$Vd, $Rn", "", []>, Sched<[WriteVST2]> {
1742 multiclass VST1DWB<bits<4> op7_4, string Dt, Operand AddrMode> {
1745 "vst1", Dt, "$Vd, $Rn!",
1754 "vst1", Dt, "$Vd, $Rn, $Rm",
1760 multiclass VST1QWB<bits<4> op7_4, string Dt, Operand AddrMode> {
1763 "vst1", Dt, "$Vd, $Rn!",
1772 "vst1", Dt, "$Vd, $Rn, $Rm",
1790 class VST1D3<bits<4> op7_4, string Dt, Operand AddrMode>
1793 IIC_VST1x3, "vst1", Dt, "$Vd, $Rn", "", []>, Sched<[WriteVST3]> {
1798 multiclass VST1D3WB<bits<4> op7_4, string Dt, Operand AddrMode> {
1801 "vst1", Dt, "$Vd, $Rn!",
1810 "vst1", Dt, "$Vd, $Rn, $Rm",
1856 class VST1D4<bits<4> op7_4, string Dt, Operand AddrMode>
1859 IIC_VST1x4, "vst1", Dt, "$Vd, $Rn", "",
1865 multiclass VST1D4WB<bits<4> op7_4, string Dt, Operand AddrMode> {
1868 "vst1", Dt, "$Vd, $Rn!",
1877 "vst1", Dt, "$Vd, $Rn, $Rm",
1923 class VST2<bits<4> op11_8, bits<4> op7_4, string Dt, RegisterOperand VdTy,
1926 itin, "vst2", Dt, "$Vd, $Rn", "", []> {
1951 multiclass VST2DWB<bits<4> op11_8, bits<4> op7_4, string Dt,
1955 "vst2", Dt, "$Vd, $Rn!",
1963 "vst2", Dt, "$Vd, $Rn, $Rm",
1969 multiclass VST2QWB<bits<4> op7_4, string Dt, Operand AddrMode> {
1972 "vst2", Dt, "$Vd, $Rn!",
1981 "vst2", Dt, "$Vd, $Rn, $Rm",
2021 class VST3D<bits<4> op11_8, bits<4> op7_4, string Dt>
2024 "vst3", Dt, "\\{$Vd, $src2, $src3\\}, $Rn", "", []>, Sched<[WriteVST3]> {
2039 class VST3DWB<bits<4> op11_8, bits<4> op7_4, string Dt>
2043 "vst3", Dt, "\\{$Vd, $src2, $src3\\}, $Rn$Rm",
2079 class VST4D<bits<4> op11_8, bits<4> op7_4, string Dt>
2082 IIC_VST4, "vst4", Dt, "\\{$Vd, $src2, $src3, $src4\\}, $Rn",
2098 class VST4DWB<bits<4> op11_8, bits<4> op7_4, string Dt>
2102 "vst4", Dt, "\\{$Vd, $src2, $src3, $src4\\}, $Rn$Rm",
2164 class VST1LN<bits<4> op11_8, bits<4> op7_4, string Dt, ValueType Ty,
2168 IIC_VST1ln, "vst1", Dt, "\\{$Vd[$lane]\\}, $Rn", "",
2213 class VST1LNWB<bits<4> op11_8, bits<4> op7_4, string Dt, ValueType Ty,
2217 DPR:$Vd, nohash_imm:$lane), IIC_VST1lnu, "vst1", Dt,
2253 class VST2LN<bits<4> op11_8, bits<4> op7_4, string Dt>
2256 IIC_VST2ln, "vst2", Dt, "\\{$Vd[$lane], $src2[$lane]\\}, $Rn",
2291 class VST2LNWB<bits<4> op11_8, bits<4> op7_4, string Dt>
2294 DPR:$Vd, DPR:$src2, nohash_imm:$lane), IIC_VST2lnu, "vst2", Dt,
2326 class VST3LN<bits<4> op11_8, bits<4> op7_4, string Dt>
2329 nohash_imm:$lane), IIC_VST3ln, "vst3", Dt,
2362 class VST3LNWB<bits<4> op11_8, bits<4> op7_4, string Dt>
2366 IIC_VST3lnu, "vst3", Dt,
2397 class VST4LN<bits<4> op11_8, bits<4> op7_4, string Dt>
2400 nohash_imm:$lane), IIC_VST4ln, "vst4", Dt,
2436 class VST4LNWB<bits<4> op11_8, bits<4> op7_4, string Dt>
2440 IIC_VST4lnu, "vst4", Dt,
2523 string Dt, ValueType ResTy, ValueType OpTy, SDNode OpNode>
2525 (ins DPR:$Vm), IIC_VUNAD, OpcodeStr, Dt,"$Vd, $Vm", "",
2529 string Dt, ValueType ResTy, ValueType OpTy, SDNode OpNode>
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", "",
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", "",
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", "",
2749 string Dt, ValueType ResTy, ValueType OpTy,
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", "",
2805 string Dt, ValueType ResTy, ValueType OpTy,
2808 (outs QPR:$Vd), (ins QPR:$Vn, QPR:$Vm), f, itin, OpcodeStr, Dt,
2816 string Dt, ValueType ResTy, ValueType OpTy,
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", "",
3137 string Dt, ValueType ResTy, ValueType OpTy,
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", "",
3329 bits<5> op11_7, bit op4, string opc, string Dt,
3334 opc, !strconcat(Dt, "8"), asm, "",
3338 opc, !strconcat(Dt, "16"), asm, "",
3342 opc, !strconcat(Dt, "32"), asm, "",
3361 opc, !strconcat(Dt, "8"), asm, "",
3365 opc, !strconcat(Dt, "16"), asm, "",
3369 opc, !strconcat(Dt, "32"), asm, "",
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"),
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,
3726 !strconcat(Dt, "16"), v4i32, v4i16, OpNode>;
3728 !strconcat(Dt, "32"), v2i64, v2i32, OpNode>;
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,
3918 !strconcat(Dt, "8"), v8i16, v8i8, MulOp, OpNode>;
3920 !strconcat(Dt, "16"), v4i32, v4i16, MulOp, OpNode>;
3922 !strconcat(Dt, "32"), v2i64, v2i32, MulOp, OpNode>;
3926 string Dt, SDNode MulOp, SDNode OpNode> {
3928 !strconcat(Dt,"16"), v4i32, v4i16, MulOp, OpNode>;
3930 !strconcat(Dt, "32"), v2i64, v2i32, MulOp, OpNode>;
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>;
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"),
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", "",
6635 class VDUPD<bits<8> opcod1, bits<2> opcod3, string Dt, ValueType Ty>
6637 IIC_VMOVIS, "vdup", Dt, "$V, $R",
6639 class VDUPQ<bits<8> opcod1, bits<2> opcod3, string Dt, ValueType Ty>
6641 IIC_VMOVIS, "vdup", Dt, "$V, $R",
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", "",