Lines Matching full:aspect
200 LegacyLegalizerInfo::getAspectAction(const InstrAspect &Aspect) const {
204 if (Aspect.Type.isScalar() || Aspect.Type.isPointer())
205 return findScalarLegalAction(Aspect);
206 assert(Aspect.Type.isVector());
207 return findVectorLegalAction(Aspect);
303 LegacyLegalizerInfo::findScalarLegalAction(const InstrAspect &Aspect) const {
304 assert(Aspect.Type.isScalar() || Aspect.Type.isPointer());
305 if (Aspect.Opcode < FirstOp || Aspect.Opcode > LastOp)
307 const unsigned OpcodeIdx = getOpcodeIdxForOpcode(Aspect.Opcode);
308 if (Aspect.Type.isPointer() &&
309 AddrSpace2PointerActions[OpcodeIdx].find(Aspect.Type.getAddressSpace()) ==
314 Aspect.Type.isPointer()
316 .find(Aspect.Type.getAddressSpace())
319 if (Aspect.Idx >= Actions.size())
321 const SizeAndActionsVec &Vec = Actions[Aspect.Idx];
324 auto SizeAndAction = findAction(Vec, Aspect.Type.getSizeInBits());
326 Aspect.Type.isScalar() ? LLT::scalar(SizeAndAction.first)
327 : LLT::pointer(Aspect.Type.getAddressSpace(),
332 LegacyLegalizerInfo::findVectorLegalAction(const InstrAspect &Aspect) const {
333 assert(Aspect.Type.isVector());
336 if (Aspect.Opcode < FirstOp || Aspect.Opcode > LastOp)
337 return {NotFound, Aspect.Type};
338 const unsigned OpcodeIdx = getOpcodeIdxForOpcode(Aspect.Opcode);
339 const unsigned TypeIdx = Aspect.Idx;
341 return {NotFound, Aspect.Type};
347 findAction(ElemSizeVec, Aspect.Type.getScalarSizeInBits());
348 IntermediateType = LLT::fixed_vector(Aspect.Type.getNumElements(),