Lines Matching defs:s32

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