reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
  819           return Query.Types[LargeTypeIdx].getScalarSizeInBits() >
  820                  Query.Types[TypeIdx].getSizeInBits();
  823           LLT T = Query.Types[LargeTypeIdx];
  835           return Query.Types[LargeTypeIdx].getScalarSizeInBits() >
  836                      Query.Types[TypeIdx].getScalarSizeInBits() &&
  840           LLT T = Query.Types[LargeTypeIdx];
  863           LLT VecTy = Query.Types[TypeIdx];
  868           LLT VecTy = Query.Types[TypeIdx];
  881           LLT VecTy = Query.Types[TypeIdx];
  886           LLT VecTy = Query.Types[TypeIdx];
lib/CodeGen/GlobalISel/LegalityPredicates.cpp
   19       [=](const LegalityQuery &Query) { return Query.Types[TypeIdx] == Type; };
   27     return std::find(Types.begin(), Types.end(), Query.Types[TypeIdx]) != Types.end();
   36     std::pair<LLT, LLT> Match = {Query.Types[TypeIdx0], Query.Types[TypeIdx1]};
   36     std::pair<LLT, LLT> Match = {Query.Types[TypeIdx0], Query.Types[TypeIdx1]};
   46     TypePairAndMemDesc Match = {Query.Types[TypeIdx0], Query.Types[TypeIdx1],
   46     TypePairAndMemDesc Match = {Query.Types[TypeIdx0], Query.Types[TypeIdx1],
   59     return Query.Types[TypeIdx].isScalar();
   65     return Query.Types[TypeIdx].isVector();
   71     return Query.Types[TypeIdx].isPointer();
   78     LLT Ty = Query.Types[TypeIdx];
   86     const LLT QueryTy = Query.Types[TypeIdx];
   94     const LLT QueryTy = Query.Types[TypeIdx];
  102     const LLT QueryTy = Query.Types[TypeIdx];
  110     const LLT QueryTy = Query.Types[TypeIdx];
  117     const LLT QueryTy = Query.Types[TypeIdx];
  124     const LLT QueryTy = Query.Types[TypeIdx];
  132     return Query.Types[TypeIdx0].getSizeInBits() ==
  133            Query.Types[TypeIdx1].getSizeInBits();
  145     const LLT QueryTy = Query.Types[TypeIdx];
lib/CodeGen/GlobalISel/LegalizeMutations.cpp
   25     return std::make_pair(TypeIdx, Query.Types[FromTypeIdx]);
   32     const LLT OldTy = Query.Types[TypeIdx];
   33     const LLT NewTy = Query.Types[FromTypeIdx];
   41     const LLT OldTy = Query.Types[TypeIdx];
   49     const LLT Ty = Query.Types[TypeIdx];
   59     const LLT VecTy = Query.Types[TypeIdx];
   69     return std::make_pair(TypeIdx, Query.Types[TypeIdx].getElementType());
lib/CodeGen/GlobalISel/LegalizerInfo.cpp
   86   for (const auto &Type : Types) {
  111     return Q.Types[Mutation.first] != Mutation.second;
  126   const LLT OldTy = Q.Types[TypeIdx];
  462   for (unsigned i = 0; i < Query.Types.size(); ++i) {
  463     auto Action = getAspectAction({Query.Opcode, i, Query.Types[i]});
lib/Target/AArch64/AArch64LegalizerInfo.cpp
   67         return Query.Types[0].isVector() &&
   68           (Query.Types[0].getElementType() != s64 ||
   69            Query.Types[0].getNumElements() != 2);
   72         LLT EltTy = Query.Types[0].getElementType();
  122         const auto &SrcTy = Query.Types[0];
  123         const auto &AmtTy = Query.Types[1];
  160             const auto &Ty = Query.Types[0];
  169             return Query.Types[0] == s16 && !ST.hasFullFP16();
  184         return Query.Types[0].getSizeInBits() <= Query.Types[1].getSizeInBits();
  184         return Query.Types[0].getSizeInBits() <= Query.Types[1].getSizeInBits();
  187         const LLT &Ty0 = Query.Types[0];
  188         const LLT &Ty1 = Query.Types[1];
  202         return Query.Types[0].getSizeInBits() >= Query.Types[1].getSizeInBits();
  202         return Query.Types[0].getSizeInBits() >= Query.Types[1].getSizeInBits();
  205         const LLT &Ty0 = Query.Types[0];
  206         const LLT &Ty1 = Query.Types[1];
  239     const LLT &ValTy = Query.Types[0];
  267         return Query.Types[0].getSizeInBits() != Query.MMODescrs[0].SizeInBits;
  292         return Query.Types[0].isScalar() &&
  293                Query.Types[0].getSizeInBits() != Query.MMODescrs[0].SizeInBits;
  324             const LLT &Ty = Query.Types[0];
  325             const LLT &SrcTy = Query.Types[1];
  331           [=](const LegalityQuery &Query) { return Query.Types[1] == v2s16; },
  334           [=](const LegalityQuery &Query) { return Query.Types[1] == v2p0; }, 0,
  346     unsigned DstSize = Query.Types[0].getSizeInBits();
  348     if (DstSize == 128 && !Query.Types[0].isVector())
  356     const LLT &SrcTy = Query.Types[1];
  424         return Query.Types[0].getSizeInBits() != Query.Types[1].getSizeInBits();
  424         return Query.Types[0].getSizeInBits() != Query.Types[1].getSizeInBits();
  470       const LLT &Ty = Query.Types[TypeIdx];
  502               const LLT &Ty = Query.Types[BigTyIdx];
  509               const LLT &Ty = Query.Types[BigTyIdx];
  528           const LLT &BigTy = Query.Types[BigTyIdx];
  529           const LLT &LitTy = Query.Types[LitTyIdx];
  543         const LLT &EltTy = Query.Types[1].getElementType();
  544         return Query.Types[0] != EltTy;
  548         const LLT &VecTy = Query.Types[1];
  555         const LLT &VecTy = Query.Types[0];
  572         return Query.Types[0].getScalarSizeInBits() <
  573                Query.Types[1].getSizeInBits();
  583         const LLT &DstTy = Query.Types[0];
  584         const LLT &SrcTy = Query.Types[1];
  598         return !Query.Types[1].isVector();
  610     return Query.Types[0] == p0 && Query.Types[1] == s64;
  610     return Query.Types[0] == p0 && Query.Types[1] == s64;
lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
   45     const LLT Ty = Query.Types[TypeIdx];
   53     return Query.Types[TypeIdx].getSizeInBits() == Size;
   59     const LLT Ty = Query.Types[TypeIdx];
   69     const LLT Ty = Query.Types[TypeIdx];
   77     const LLT Ty = Query.Types[TypeIdx];
   85     const LLT Ty = Query.Types[TypeIdx];
   98     const LLT Ty = Query.Types[TypeIdx];
  114     const LLT QueryTy = Query.Types[TypeIdx];
  121     const LLT QueryTy = Query.Types[TypeIdx];
  128     const LLT QueryTy = Query.Types[TypeIdx];
  137     const LLT Ty = Query.Types[TypeIdx];
  151     return Query.Types[TypeIdx].getElementType() == Type;
  157     const LLT Ty = Query.Types[TypeIdx];
  562       return Query.Types[TypeIdx0].getSizeInBits() <
  563              Query.Types[TypeIdx1].getSizeInBits();
  569       return Query.Types[TypeIdx0].getSizeInBits() >
  570              Query.Types[TypeIdx1].getSizeInBits();
  583         return std::make_pair(1, LLT::scalar(Query.Types[0].getSizeInBits()));
  587         return std::make_pair(1, LLT::scalar(Query.Types[0].getSizeInBits()));
  599         return std::make_pair(0, LLT::scalar(Query.Types[1].getSizeInBits()));
  604         return std::make_pair(0, LLT::scalar(Query.Types[1].getSizeInBits()));
  638     const LLT DstTy = Query.Types[0];
  645     const LLT PtrTy = Query.Types[1];
  722               return !Query.Types[0].isVector() && needToSplitLoad(Query);
  725               const LLT DstTy = Query.Types[0];
  726               const LLT PtrTy = Query.Types[1];
  750               return Query.Types[0].isVector() && needToSplitLoad(Query);
  753               const LLT DstTy = Query.Types[0];
  754               const LLT PtrTy = Query.Types[1];
  793           const LLT Ty0 = Query.Types[0];
  919           const LLT EltTy = Query.Types[EltTypeIdx];
  920           const LLT VecTy = Query.Types[VecTypeIdx];
  921           const LLT IdxTy = Query.Types[IdxTypeIdx];
  935         const LLT &EltTy = Query.Types[1].getElementType();
  936         return Query.Types[0] != EltTy;
  948           const LLT BigTy = Query.Types[BigTyIdx];
  949           const LLT LitTy = Query.Types[LitTyIdx];
  955           const LLT BigTy = Query.Types[BigTyIdx];
  961           const LLT LitTy = Query.Types[LitTyIdx];
 1006       const LLT &Ty = Query.Types[TypeIdx];
 1042           const LLT Ty = Query.Types[LitTyIdx];
 1050         const LLT Ty = Query.Types[BigTyIdx];
 1057         const LLT &Ty = Query.Types[BigTyIdx];
 1067           const LLT &BigTy = Query.Types[BigTyIdx];
 1068           const LLT &LitTy = Query.Types[LitTyIdx];
lib/Target/Mips/MipsLegalizerInfo.cpp
   30     if (Val.ValTy != Query.Types[0])
   32     if (Val.PtrTy != Query.Types[1])
   47     if (Val == Query.Types[N])