@@ -2497,33 +2497,6 @@ def : GCNPat<pat,
24972497 $src1, /* clamp */ 0, /* op_sel */ 0)
24982498>;
24992499
2500- //def : GCNPat<(i32 (trunc (srl i64:$src0, (and i32:$src1, (i32 31))))),
2501- // (V_ALIGNBIT_B32_opsel_e64 0, /* src0_modifiers */
2502- // (i32 (EXTRACT_SUBREG (i64 $src0), sub1)),
2503- // 0, /* src1_modifiers */
2504- // (i32 (EXTRACT_SUBREG (i64 $src0), sub0)),
2505- // 0, /* src2_modifiers */
2506- // $src1, /* clamp */ 0, /* op_sel */ 0)
2507- //>;
2508-
2509- //def : GCNPat<(i32 (trunc (srl i64:$src0, (and i32:$src1, (i32 31))))),
2510- // (V_ALIGNBIT_B32_opsel_e64 0, /* src0_modifiers */
2511- // (i32 (EXTRACT_SUBREG (i64 $src0), sub1)),
2512- // 0, /* src1_modifiers */
2513- // (i32 (EXTRACT_SUBREG (i64 $src0), sub0)),
2514- // 0, /* src2_modifiers */
2515- // $src1, /* clamp */ 0, /* op_sel */ 0)
2516- //>;
2517-
2518- //def : GCNPat<(i32 (trunc (srl i64:$src0, (i32 ShiftAmt32Imm:$src1)))),
2519- // (V_ALIGNBIT_B32_opsel_e64 0, /* src0_modifiers */
2520- // (i32 (EXTRACT_SUBREG (i64 $src0), sub1)),
2521- // 0, /* src1_modifiers */
2522- // (i32 (EXTRACT_SUBREG (i64 $src0), sub0)),
2523- // 0, /* src2_modifiers */
2524- // $src1, /* clamp */ 0, /* op_sel */ 0)
2525- //>;
2526-
25272500def : GCNPat<(fshr i32:$src0, i32:$src1, i32:$src2),
25282501 (V_ALIGNBIT_B32_opsel_e64 /* src0_modifiers */ 0, $src0,
25292502 /* src1_modifiers */ 0, $src1,
@@ -3607,7 +3580,6 @@ def : GCNPat <
36073580// Take the upper 16 bits from V[0] and the lower 16 bits from V[1]
36083581// Special case, can use V_ALIGNBIT (always uses encoded literal)
36093582let True16Predicate = NotHasTrue16BitInsts in {
3610-
36113583defvar BuildVectorToAlignBitPat =
36123584 (vecTy (DivergentBinFrag<build_vector>
36133585 (Ty !if(!eq(Ty, i16),
@@ -3620,26 +3592,6 @@ def : GCNPat<BuildVectorToAlignBitPat, (V_ALIGNBIT_B32_e64 VGPR_32:$b, VGPR_32:$
36203592
36213593let SubtargetPredicate = isGFX9GFX10 in
36223594def : GCNPat<BuildVectorToAlignBitPat, (V_ALIGNBIT_B32_opsel_e64 0, VGPR_32:$b, 0, VGPR_32:$a, 0, (i32 16), 0, 0)>;
3623-
3624- //let SubtargetPredicate = isNotGFX9Plus in
3625- //def : GCNPat <
3626- // (vecTy (DivergentBinFrag<build_vector>
3627- // (Ty !if(!eq(Ty, i16),
3628- // (Ty (trunc (srl VGPR_32:$a, (i32 16)))),
3629- // (Ty (bitconvert (i16 (trunc (srl VGPR_32:$a, (i32 16)))))))),
3630- // (Ty VGPR_32:$b))),
3631- // (V_ALIGNBIT_B32_e64 VGPR_32:$b, VGPR_32:$a, (i32 16))
3632- //>;
3633-
3634- //let SubtargetPredicate = isGFX9GFX10 in
3635- //def : GCNPat <
3636- // (vecTy (DivergentBinFrag<build_vector>
3637- // (Ty !if(!eq(Ty, i16),
3638- // (Ty (trunc (srl VGPR_32:$a, (i32 16)))),
3639- // (Ty (bitconvert (i16 (trunc (srl VGPR_32:$a, (i32 16)))))))),
3640- // (Ty VGPR_32:$b))),
3641- // (V_ALIGNBIT_B32_opsel_e64 0, VGPR_32:$b, 0, VGPR_32:$a, 0, (i32 16), 0, 0)
3642- //>;
36433595} //True16Predicate = NotHasTrue16BitInsts
36443596
36453597let True16Predicate = UseFakeTrue16Insts in
0 commit comments