• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/utils/TableGen/

Lines Matching defs:TypeSetByHwMode

191 struct TypeSetByHwMode : public InfoByHwMode<MachineValueTypeSet> {
195 TypeSetByHwMode() = default;
196 TypeSetByHwMode(const TypeSetByHwMode &VTS) = default;
197 TypeSetByHwMode &operator=(const TypeSetByHwMode &) = default;
198 TypeSetByHwMode(MVT::SimpleValueType VT)
199 : TypeSetByHwMode(ValueTypeByHwMode(VT)) {}
200 TypeSetByHwMode(ValueTypeByHwMode VT)
201 : TypeSetByHwMode(ArrayRef<ValueTypeByHwMode>(&VT, 1)) {}
202 TypeSetByHwMode(ArrayRef<ValueTypeByHwMode> VTList);
241 bool constrain(const TypeSetByHwMode &VTS);
244 bool assign_if(const TypeSetByHwMode &VTS, Predicate P);
249 bool operator==(const TypeSetByHwMode &VTS) const;
250 bool operator!=(const TypeSetByHwMode &VTS) const { return !(*this == VTS); }
261 raw_ostream &operator<<(raw_ostream &OS, const TypeSetByHwMode &T);
266 bool isConcrete(const TypeSetByHwMode &VTS, bool AllowEmpty) const {
269 ValueTypeByHwMode getConcrete(const TypeSetByHwMode &VTS,
279 bool MergeInTypeInfo(TypeSetByHwMode &Out, const TypeSetByHwMode &In);
280 bool MergeInTypeInfo(TypeSetByHwMode &Out, MVT::SimpleValueType InVT) {
281 return MergeInTypeInfo(Out, TypeSetByHwMode(InVT));
283 bool MergeInTypeInfo(TypeSetByHwMode &Out, ValueTypeByHwMode InVT) {
284 return MergeInTypeInfo(Out, TypeSetByHwMode(InVT));
288 bool forceArbitrary(TypeSetByHwMode &Out);
296 bool EnforceInteger(TypeSetByHwMode &Out);
297 bool EnforceFloatingPoint(TypeSetByHwMode &Out);
298 bool EnforceScalar(TypeSetByHwMode &Out);
299 bool EnforceVector(TypeSetByHwMode &Out);
303 bool EnforceAny(TypeSetByHwMode &Out);
306 bool EnforceSmallerThan(TypeSetByHwMode &Small, TypeSetByHwMode &Big);
311 bool EnforceVectorEltTypeIs(TypeSetByHwMode &Vec, TypeSetByHwMode &Elem);
312 bool EnforceVectorEltTypeIs(TypeSetByHwMode &Vec,
317 bool EnforceVectorSubVectorTypeIs(TypeSetByHwMode &Vec,
318 TypeSetByHwMode &Sub);
325 bool EnforceSameNumElts(TypeSetByHwMode &V, TypeSetByHwMode &W);
330 bool EnforceSameSize(TypeSetByHwMode &A, TypeSetByHwMode &B);
334 void expandOverloads(TypeSetByHwMode &VTS);
335 void expandOverloads(TypeSetByHwMode::SetType &Out,
336 const TypeSetByHwMode::SetType &Legal);
339 ValidateOnExit(TypeSetByHwMode &T, TypeInfer &TI) : Infer(TI), VTS(T) {}
346 TypeSetByHwMode &VTS;
366 const TypeSetByHwMode &getLegalTypes();
370 TypeSetByHwMode LegalCache;
637 std::vector<TypeSetByHwMode> Types;
703 const std::vector<TypeSetByHwMode> &getExtTypes() const { return Types; }
704 const TypeSetByHwMode &getExtType(unsigned ResNo) const {
707 TypeSetByHwMode &getExtType(unsigned ResNo) { return Types[ResNo]; }
708 void setType(unsigned ResNo, const TypeSetByHwMode &T) { Types[ResNo] = T; }
835 bool UpdateNodeType(unsigned ResNo, const TypeSetByHwMode &InTy,
986 const TypeSetByHwMode &InTy,
988 TypeSetByHwMode VTS(InTy);
996 TypeSetByHwMode VTS(InTy);
1004 TypeSetByHwMode VTS(InTy);
1168 TypeSetByHwMode LegalVTS;
1181 const TypeSetByHwMode &getLegalTypes() const { return LegalVTS; }