Lines Matching defs:TypeSetByHwMode

79 // --- TypeSetByHwMode
85 TypeSetByHwMode::TypeSetByHwMode(ArrayRef<ValueTypeByHwMode> VTList) {
94 bool TypeSetByHwMode::isValueTypeByHwMode(bool AllowEmpty) const {
104 ValueTypeByHwMode TypeSetByHwMode::getValueTypeByHwMode() const {
117 bool TypeSetByHwMode::isPossible() const {
124 bool TypeSetByHwMode::insert(const ValueTypeByHwMode &VVT) {
151 bool TypeSetByHwMode::constrain(const TypeSetByHwMode &VTS) {
177 bool TypeSetByHwMode::constrain(Predicate P) {
185 bool TypeSetByHwMode::assign_if(const TypeSetByHwMode &VTS, Predicate P) {
196 void TypeSetByHwMode::writeToStream(raw_ostream &OS) const {
216 bool TypeSetByHwMode::operator==(const TypeSetByHwMode &VTS) const {
264 raw_ostream &operator<<(raw_ostream &OS, const TypeSetByHwMode &T) {
271 void TypeSetByHwMode::dump() const {
275 bool TypeSetByHwMode::intersect(SetType &Out, const SetType &In) {
357 bool TypeSetByHwMode::validate() const {
368 bool TypeInfer::MergeInTypeInfo(TypeSetByHwMode &Out,
369 const TypeSetByHwMode &In) const {
386 bool TypeInfer::forceArbitrary(TypeSetByHwMode &Out) {
394 TypeSetByHwMode::SetType &S = I.second;
405 bool TypeInfer::EnforceInteger(TypeSetByHwMode &Out) {
415 bool TypeInfer::EnforceFloatingPoint(TypeSetByHwMode &Out) {
425 bool TypeInfer::EnforceScalar(TypeSetByHwMode &Out) {
435 bool TypeInfer::EnforceVector(TypeSetByHwMode &Out) {
445 bool TypeInfer::EnforceAny(TypeSetByHwMode &Out) {
483 bool TypeInfer::EnforceSmallerThan(TypeSetByHwMode &Small, TypeSetByHwMode &Big,
508 TypeSetByHwMode::SetType &S = Small.get(M);
509 TypeSetByHwMode::SetType &B = Big.get(M);
565 TypeSetByHwMode::SetType &S = Small.get(M);
566 TypeSetByHwMode::SetType &B = Big.get(M);
603 bool TypeInfer::EnforceVectorEltTypeIs(TypeSetByHwMode &Vec,
604 TypeSetByHwMode &Elem) {
618 TypeSetByHwMode::SetType &V = Vec.get(M);
619 TypeSetByHwMode::SetType &E = Elem.get(M);
645 bool TypeInfer::EnforceVectorEltTypeIs(TypeSetByHwMode &Vec,
647 TypeSetByHwMode Tmp(VVT);
655 bool TypeInfer::EnforceVectorSubVectorTypeIs(TypeSetByHwMode &Vec,
656 TypeSetByHwMode &Sub) {
677 auto NoSubV = [&IsSubVec](const TypeSetByHwMode::SetType &S, MVT T) -> bool {
686 auto NoSupV = [&IsSubVec](const TypeSetByHwMode::SetType &S, MVT T) -> bool {
703 TypeSetByHwMode::SetType &S = Sub.get(M);
704 TypeSetByHwMode::SetType &V = Vec.get(M);
724 bool TypeInfer::EnforceSameNumElts(TypeSetByHwMode &V, TypeSetByHwMode &W) {
747 TypeSetByHwMode::SetType &VS = V.get(M);
748 TypeSetByHwMode::SetType &WS = W.get(M);
775 bool TypeInfer::EnforceSameSize(TypeSetByHwMode &A, TypeSetByHwMode &B) {
794 TypeSetByHwMode::SetType &AS = A.get(M);
795 TypeSetByHwMode::SetType &BS = B.get(M);
810 void TypeInfer::expandOverloads(TypeSetByHwMode &VTS) const {
812 const TypeSetByHwMode &Legal = getLegalTypes();
814 const TypeSetByHwMode::SetType &LegalTypes = Legal.getSimple();
820 void TypeInfer::expandOverloads(TypeSetByHwMode::SetType &Out,
821 const TypeSetByHwMode::SetType &Legal) const {
860 const TypeSetByHwMode &TypeInfer::getLegalTypes() const {
862 TypeSetByHwMode::SetType &LegalTypes = LegalCache.getOrCreate(DefaultMode);
864 const TypeSetByHwMode &LTS = TP.getDAGPatterns().getLegalTypes();
1452 const TypeSetByHwMode &T0 = Child->getExtType(0);
1667 TypeSetByHwMode TypeListTmp(VVT);
1775 for (const TypeSetByHwMode &S : Types)
1785 for (const TypeSetByHwMode &S : Types)
1795 for (TypeSetByHwMode &S : Types) {
2037 std::fill(Types.begin(), Types.end(), TypeSetByHwMode());
2226 static TypeSetByHwMode getImplicitType(Record *R, unsigned ResNo,
2236 return TypeSetByHwMode(); // Unknown.
2239 return TypeSetByHwMode(T.getRegisterClass(RegClass).getValueTypes());
2248 return TypeSetByHwMode(MVT::i32);
2253 return TypeSetByHwMode(); // Unknown.
2255 return TypeSetByHwMode(T.getRegisterClass(R).getValueTypes());
2261 return TypeSetByHwMode(); // Unknown.
2267 return TypeSetByHwMode(); // Unknown.
2269 return TypeSetByHwMode(T.getRegisterVTs(R));
2274 return TypeSetByHwMode(MVT::i32);
2284 return TypeSetByHwMode(MVT::Other);
2291 return TypeSetByHwMode(); // Unknown.
2293 return TypeSetByHwMode(getValueTypeByHwMode(R, CGH));
2299 return TypeSetByHwMode(MVT::Other);
2305 return TypeSetByHwMode(); // Unknown.
2308 return TypeSetByHwMode(getValueTypeByHwMode(T, CGH));
2312 TypeSetByHwMode VTS(MVT::iPTR);
2321 return TypeSetByHwMode(); // Unknown.
2327 return TypeSetByHwMode(getValueTypeByHwMode(T, CGH));
2331 return TypeSetByHwMode(MVT::Other);
4395 for (const TypeSetByHwMode &VTS : N->getExtTypes())