Lines Matching refs:I32
23 def I32 : PatLeaf<(i32 IntRegs:$R)>;
418 def: Pat<(i32 (add I32:$Rs, s32ImmPred:$s16)),
419 (i32 (A2_addi I32:$Rs, imm:$s16))>;
693 def : Pat<(i32 (select I1:$Pu, s32ImmPred:$s8, I32:$Rs)),
694 (C2_muxri I1:$Pu, s32ImmPred:$s8, I32:$Rs)>;
696 def : Pat<(i32 (select I1:$Pu, I32:$Rs, s32ImmPred:$s8)),
697 (C2_muxir I1:$Pu, I32:$Rs, s32ImmPred:$s8)>;
839 def: Pat<(shl I32:$src1, (i32 16)), (A2_aslh I32:$src1)>;
840 def: Pat<(sra I32:$src1, (i32 16)), (A2_asrh I32:$src1)>;
841 def: Pat<(sext_inreg I32:$src1, i8), (A2_sxtb I32:$src1)>;
842 def: Pat<(sext_inreg I32:$src1, i16), (A2_sxth I32:$src1)>;
1107 def: Pat<(sext_inreg (add I32:$src1, I32:$src2), i16),
1108 (A2_addh_l16_ll I32:$src1, I32:$src2)>;
1110 def: Pat<(sra (add (shl I32:$src1, (i32 16)), I32:$src2), (i32 16)),
1111 (A2_addh_l16_hl I32:$src1, I32:$src2)>;
1113 def: Pat<(shl (add I32:$src1, I32:$src2), (i32 16)),
1114 (A2_addh_h16_ll I32:$src1, I32:$src2)>;
1117 def: Pat<(sext_inreg (sub I32:$src1, I32:$src2), i16),
1118 (A2_subh_l16_ll I32:$src1, I32:$src2)>;
1120 def: Pat<(shl (sub I32:$src1, I32:$src2), (i32 16)),
1121 (A2_subh_h16_ll I32:$src1, I32:$src2)>;
2712 def: Pat<(i32 (mul I32:$src1, I32:$src2)), (M2_mpyi I32:$src1, I32:$src2)>;
2713 def: Pat<(i32 (mulhs I32:$src1, I32:$src2)), (M2_mpy_up I32:$src1, I32:$src2)>;
2714 def: Pat<(i32 (mulhu I32:$src1, I32:$src2)), (M2_mpyu_up I32:$src1, I32:$src2)>;
3393 : Pat<(Store Value:$src1, I32:$src2, Offset:$offset),
3394 (MI I32:$src2, imm:$offset, Value:$src1)>;
3396 def: Storepi_pat<post_truncsti8, I32, s4_0ImmPred, S2_storerb_pi>;
3397 def: Storepi_pat<post_truncsti16, I32, s4_1ImmPred, S2_storerh_pi>;
3398 def: Storepi_pat<post_store, I32, s4_2ImmPred, S2_storeri_pi>;
3616 defm: Storex_pat<truncstorei8, I32, s32_0ImmPred, S2_storerb_io>;
3617 defm: Storex_pat<truncstorei16, I32, s31_1ImmPred, S2_storerh_io>;
3618 defm: Storex_pat<store, I32, s30_2ImmPred, S2_storeri_io>;
3621 defm: Storex_pat<SwapSt<atomic_store_8>, I32, s32_0ImmPred, S2_storerb_io>;
3622 defm: Storex_pat<SwapSt<atomic_store_16>, I32, s31_1ImmPred, S2_storerh_io>;
3623 defm: Storex_pat<SwapSt<atomic_store_32>, I32, s30_2ImmPred, S2_storeri_io>;
3628 def: Storex_simple_pat<truncstorei8, I32, S2_storerb_io>;
3629 def: Storex_simple_pat<truncstorei16, I32, S2_storerh_io>;
3630 def: Storex_simple_pat<store, I32, S2_storeri_io>;
3633 def: Storex_simple_pat<SwapSt<atomic_store_8>, I32, S2_storerb_io>;
3634 def: Storex_simple_pat<SwapSt<atomic_store_16>, I32, S2_storerh_io>;
3635 def: Storex_simple_pat<SwapSt<atomic_store_32>, I32, S2_storeri_io>;
3986 def: Pat <(i64 (sext I32:$src)), (A2_sxtw I32:$src)>;
4115 def: Pat<(i32 (sra (i32 (add (i32 (sra I32:$src1, u5ImmPred:$src2)),
4202 def: Pat<(i32 (ctlz I32:$Rs)), (S2_cl0 I32:$Rs)>;
4204 def: Pat<(i32 (ctlz_zero_undef I32:$Rs)), (S2_cl0 I32:$Rs)>;
4208 def: Pat<(i32 (cttz I32:$Rs)), (S2_ct0 I32:$Rs)>;
4209 def: Pat<(i32 (cttz_zero_undef I32:$Rs)), (S2_ct0 I32:$Rs)>;
4212 def: Pat<(i32 (ctlz (not I32:$Rs))), (S2_cl1 I32:$Rs)>;
4214 def: Pat<(i32 (ctlz_zero_undef (not I32:$Rs))), (S2_cl1 I32:$Rs)>;
4218 def: Pat<(i32 (cttz (not I32:$Rs))), (S2_ct1 I32:$Rs)>;
4219 def: Pat<(i32 (cttz_zero_undef (not I32:$Rs))), (S2_ct1 I32:$Rs)>;
5608 def: Pat<(HexagonINSERT I32:$Rs, I32:$Rt, u5ImmPred:$u1, u5ImmPred:$u2),
5609 (S2_insert I32:$Rs, I32:$Rt, u5ImmPred:$u1, u5ImmPred:$u2)>;
5612 def: Pat<(HexagonINSERTRP I32:$Rs, I32:$Rt, I64:$Ru),
5613 (S2_insert_rp I32:$Rs, I32:$Rt, I64:$Ru)>;
5618 def: Pat<(or (or (shl (HexagonINSERT (i32 (zextloadi8 (add I32:$b, 2))),
5619 (i32 (extloadi8 (add I32:$b, 3))),
5622 (shl (i32 (zextloadi8 (add I32:$b, 1))), (i32 8))),
5623 (zextloadi8 I32:$b)),
5624 (A2_swiz (L2_loadri_io I32:$b, 0))>;
5703 def: Pat<(HexagonEXTRACTU I32:$src1, u5ImmPred:$src2, u5ImmPred:$src3),
5704 (S2_extractu I32:$src1, u5ImmPred:$src2, u5ImmPred:$src3)>;
5707 def: Pat<(HexagonEXTRACTURP I32:$src1, I64:$src2),
5708 (S2_extractu_rp I32:$src1, I64:$src2)>;