Lines Matching defs:s32
77 const LLT s32 = LLT::scalar(32);
103 const LLT nxv1s32 = LLT::scalable_vector(1, s32);
104 const LLT nxv2s32 = LLT::scalable_vector(2, s32);
105 const LLT nxv4s32 = LLT::scalable_vector(4, s32);
106 const LLT nxv8s32 = LLT::scalable_vector(8, s32);
107 const LLT nxv16s32 = LLT::scalable_vector(16, s32);
124 .legalFor({s32, sXLen})
127 .clampScalar(0, s32, sXLen);
140 ShiftActions.customFor({{s32, s32}});
141 ShiftActions.legalFor({{s32, s32}, {s32, sXLen}, {sXLen, sXLen}})
143 .clampScalar(1, s32, sXLen)
144 .clampScalar(0, s32, sXLen)
153 ExtActions.legalFor({{sXLen, s32}});
171 all(typeIs(BigTyIdx, s64), typeIs(LitTyIdx, s32)));
183 RotateActions.legalFor({{s32, sXLen}, {sXLen, sXLen}});
184 // Widen s32 rotate amount to s64 so SDAG patterns will match.
186 RotateActions.widenScalarIf(all(typeIs(0, s32), typeIs(1, s32)),
209 CountZerosActions.legalFor({{s32, s32}, {sXLen, sXLen}})
210 .clampScalar(0, s32, sXLen)
221 CTPOPActions.legalFor({{s32, s32}, {sXLen, sXLen}})
222 .clampScalar(0, s32, sXLen)
230 ConstantActions.legalFor({s32, p0});
233 ConstantActions.widenScalarToNextPow2(0).clampScalar(0, s32, sXLen);
238 .legalFor({s32, sXLen, p0})
242 .clampScalar(0, s32, sXLen);
254 .legalFor({{s32, sXLen}, {p0, sXLen}})
260 .clampScalar(0, s32, (XLen == 64 || ST.hasStdExtD()) ? s64 : s32)
265 .legalForTypesWithMemDesc({{s32, p0, s8, 8},
266 {s32, p0, s16, 16},
267 {s32, p0, s32, 32},
271 .legalForTypesWithMemDesc({{s32, p0, s8, 8}, {s32, p0, s16, 16}});
275 {s64, p0, s32, 32},
278 {{s64, p0, s8, 8}, {s64, p0, s16, 16}, {s64, p0, s32, 32}});
282 LoadStoreActions.clampScalar(0, s32, sXLen).lower();
283 ExtLoadActions.widenScalarToNextPow2(0).clampScalar(0, s32, sXLen).lower();
311 .legalFor({s32, sXLen})
313 .clampScalar(0, s32, sXLen);
342 .legalFor({s32, sXLen})
344 .clampScalar(0, s32, sDoubleXLen)
358 AbsActions.customFor({s32, sXLen}).minScalar(0, sXLen);
380 .libcallFor({s32, s64})
381 .minScalar(0, s32)
390 return (ST.hasStdExtD() && typeIs(0, s32)(Query) &&
393 typeIs(1, s32)(Query)) ||
400 typeIs(1, s32)(Query)) ||
401 (ST.hasStdExtZfh() && typeIs(0, s32)(Query) &&
417 .lowerFor({s32, s64});
420 .legalIf(all(typeInSet(0, {s32, sXLen}), typeIsScalarFPArith(1, ST)))
422 .clampScalar(0, s32, sXLen)
426 .legalIf(all(typeIsScalarFPArith(0, ST), typeInSet(1, {s32, sXLen})))
428 .clampScalar(1, s32, sXLen);
433 .libcallFor({s32, s64});
441 // outside the [s32, sXLen] range.
442 .clampScalar(0, s32, sXLen)
443 .lowerForCartesianProduct({s32, sXLen, p0}, {p0});