Lines Matching refs:TypeSet
45 /// TypeSet - This is either empty if it's completely unknown, or holds a set
50 /// TypeSet can have three states:
57 class TypeSet {
60 TypeSet() {}
61 TypeSet(MVT::SimpleValueType VT, TreePattern &TP);
62 TypeSet(const std::vector<MVT::SimpleValueType> &VTList);
91 /// hasIntegerTypes - Return true if this TypeSet contains any integer value
95 /// hasFloatingPointTypes - Return true if this TypeSet contains an fAny or
99 /// hasVectorTypes - Return true if this TypeSet contains a vector value
103 /// getName() - Return this TypeSet as a string.
109 bool MergeInTypeInfo(const EEVT::TypeSet &InVT, TreePattern &TP);
112 return MergeInTypeInfo(EEVT::TypeSet(InVT, TP), TP);
129 bool EnforceSmallerThan(EEVT::TypeSet &Other, TreePattern &TP);
133 bool EnforceVectorEltTypeIs(EEVT::TypeSet &VT, TreePattern &TP);
137 bool EnforceVectorSubVectorTypeIs(EEVT::TypeSet &VT, TreePattern &TP);
139 bool operator!=(const TypeSet &RHS) const { return TypeVec != RHS.TypeVec; }
140 bool operator==(const TypeSet &RHS) const { return TypeVec == RHS.TypeVec; }
302 SmallVector<EEVT::TypeSet, 1> Types;
347 const SmallVectorImpl<EEVT::TypeSet> &getExtTypes() const { return Types; }
348 const EEVT::TypeSet &getExtType(unsigned ResNo) const { return Types[ResNo]; }
349 EEVT::TypeSet &getExtType(unsigned ResNo) { return Types[ResNo]; }
350 void setType(unsigned ResNo, const EEVT::TypeSet &T) { Types[ResNo] = T; }
457 bool UpdateNodeType(unsigned ResNo, const EEVT::TypeSet &InTy,
464 return Types[ResNo].MergeInTypeInfo(EEVT::TypeSet(InTy, TP), TP);