Lines Matching full:s32

74   const LLT s32 = LLT::scalar(32);  in MipsLegalizerInfo()  local
84 if (CheckTyN(0, Query, {s32})) in MipsLegalizerInfo()
90 .clampScalar(0, s32, s32); in MipsLegalizerInfo()
93 .lowerFor({{s32, s1}}); in MipsLegalizerInfo()
96 .legalFor({s32}) in MipsLegalizerInfo()
97 .maxScalar(0, s32); in MipsLegalizerInfo()
109 Query, {{s32, p0, 8, NoAlignRequirements}, in MipsLegalizerInfo()
110 {s32, p0, 16, ST.systemSupportsUnalignedAccess()}, in MipsLegalizerInfo()
111 {s32, p0, 32, NoAlignRequirements}, in MipsLegalizerInfo()
150 .minScalar(0, s32) in MipsLegalizerInfo()
154 .legalFor({s32, s64}); in MipsLegalizerInfo()
157 .legalFor({{s32, s64}}); in MipsLegalizerInfo()
160 .legalFor({{s64, s32}}); in MipsLegalizerInfo()
163 .legalForTypesWithMemDesc({{s32, p0, s8, 8}, in MipsLegalizerInfo()
164 {s32, p0, s16, 8}}) in MipsLegalizerInfo()
165 .clampScalar(0, s32, s32); in MipsLegalizerInfo()
169 .maxScalar(0, s32); in MipsLegalizerInfo()
173 .maxScalar(1, s32); in MipsLegalizerInfo()
176 .legalForCartesianProduct({p0, s32, s64}, {s32}) in MipsLegalizerInfo()
177 .minScalar(0, s32) in MipsLegalizerInfo()
178 .minScalar(1, s32); in MipsLegalizerInfo()
181 .legalFor({s32}) in MipsLegalizerInfo()
182 .minScalar(0, s32); in MipsLegalizerInfo()
185 .legalFor({{p0, s32}}); in MipsLegalizerInfo()
191 .legalFor({p0, s32, s64}) in MipsLegalizerInfo()
192 .minScalar(0, s32); in MipsLegalizerInfo()
195 .legalFor({s32}) in MipsLegalizerInfo()
196 .clampScalar(0, s32, s32); in MipsLegalizerInfo()
200 if (CheckTyN(0, Query, {s32})) in MipsLegalizerInfo()
206 .minScalar(0, s32) in MipsLegalizerInfo()
210 .legalFor({{s32, s32}}) in MipsLegalizerInfo()
211 .clampScalar(1, s32, s32) in MipsLegalizerInfo()
212 .clampScalar(0, s32, s32); in MipsLegalizerInfo()
215 .legalForCartesianProduct({s32}, {s32, p0}) in MipsLegalizerInfo()
216 .clampScalar(1, s32, s32) in MipsLegalizerInfo()
217 .minScalar(0, s32); in MipsLegalizerInfo()
220 .legalFor({s32}) in MipsLegalizerInfo()
221 .clampScalar(0, s32, s32); in MipsLegalizerInfo()
224 .legalFor({{p0, s32}}); in MipsLegalizerInfo()
227 .legalFor({{s32, p0}}); in MipsLegalizerInfo()
236 .lowerFor({{p0, s32}}); in MipsLegalizerInfo()
243 if (ST.hasMips32r2() && CheckTyN(0, Query, {s32})) in MipsLegalizerInfo()
248 if (!ST.hasMips32r2() && CheckTyN(0, Query, {s32})) in MipsLegalizerInfo()
252 .maxScalar(0, s32); in MipsLegalizerInfo()
255 .lowerFor({s32}) in MipsLegalizerInfo()
256 .maxScalar(0, s32); in MipsLegalizerInfo()
259 .legalFor({{s32, s32}}) in MipsLegalizerInfo()
260 .maxScalar(0, s32) in MipsLegalizerInfo()
261 .maxScalar(1, s32); in MipsLegalizerInfo()
263 .lowerFor({{s32, s32}}); in MipsLegalizerInfo()
266 .lowerFor({{s32, s32}}) in MipsLegalizerInfo()
267 .maxScalar(0, s32) in MipsLegalizerInfo()
268 .maxScalar(1, s32); in MipsLegalizerInfo()
270 .lowerFor({{s32, s32}, {s64, s64}}); in MipsLegalizerInfo()
273 .lowerFor({{s32, s32}}) in MipsLegalizerInfo()
274 .clampScalar(0, s32, s32) in MipsLegalizerInfo()
275 .clampScalar(1, s32, s32); in MipsLegalizerInfo()
279 .legalFor({s32, s64}); in MipsLegalizerInfo()
283 if (CheckTyN(0, Query, {s32, s64})) in MipsLegalizerInfo()
291 .legalFor({{s32, s32}, {s32, s64}}) in MipsLegalizerInfo()
292 .minScalar(0, s32); in MipsLegalizerInfo()
295 .libcallFor({s32, s64}); in MipsLegalizerInfo()
298 .legalFor({{s64, s32}}); in MipsLegalizerInfo()
301 .legalFor({{s32, s64}}); in MipsLegalizerInfo()
305 .legalForCartesianProduct({s32}, {s64, s32}) in MipsLegalizerInfo()
306 .libcallForCartesianProduct({s64}, {s64, s32}) in MipsLegalizerInfo()
307 .minScalar(0, s32); in MipsLegalizerInfo()
310 .libcallForCartesianProduct({s64}, {s64, s32}) in MipsLegalizerInfo()
311 .lowerForCartesianProduct({s32}, {s64, s32}) in MipsLegalizerInfo()
312 .minScalar(0, s32); in MipsLegalizerInfo()
316 .legalForCartesianProduct({s64, s32}, {s32}) in MipsLegalizerInfo()
317 .libcallForCartesianProduct({s64, s32}, {s64}) in MipsLegalizerInfo()
318 .minScalar(1, s32); in MipsLegalizerInfo()
321 .libcallForCartesianProduct({s64, s32}, {s64}) in MipsLegalizerInfo()
322 .customForCartesianProduct({s64, s32}, {s32}) in MipsLegalizerInfo()
323 .minScalar(1, s32); in MipsLegalizerInfo()
341 const LLT s32 = LLT::scalar(32); in legalizeCustom() local
374 // Widen Val to s32 or s64 in order to create legal G_LSHR or G_UNMERGE. in legalizeCustom()
376 Val = MIRBuilder.buildAnyExt(s32, Val).getReg(0); in legalizeCustom()
380 auto C_P2HalfMemSize = MIRBuilder.buildConstant(s32, P2HalfMemSize); in legalizeCustom()
385 auto C_P2Half_InBits = MIRBuilder.buildConstant(s32, P2HalfMemSize * 8); in legalizeCustom()
386 auto Shift = MIRBuilder.buildLShr(s32, Val, C_P2Half_InBits); in legalizeCustom()
389 auto Unmerge = MIRBuilder.buildUnmerge(s32, Val); in legalizeCustom()
404 auto Load = MIRBuilder.buildLoad(s32, BaseAddr, *Load4MMO); in legalizeCustom()
409 auto C_P2HalfMemSize = MIRBuilder.buildConstant(s32, P2HalfMemSize); in legalizeCustom()
412 auto Load_P2Half = MIRBuilder.buildLoad(s32, BaseAddr, *P2HalfMemOp); in legalizeCustom()
413 auto Load_Rem = MIRBuilder.buildLoad(s32, Addr, *RemMemOp); in legalizeCustom()
433 if (SrcTy != s32) in legalizeCustom()
435 if (DstTy != s32 && DstTy != s64) in legalizeCustom()
445 auto C_HiMask = MIRBuilder.buildConstant(s32, UINT32_C(0x43300000)); in legalizeCustom()