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

References

include/llvm/ADT/FoldingSet.h
  221   static void Profile(const T &X, FoldingSetNodeID &ID) {
  224   static void Profile(T &X, FoldingSetNodeID &ID) {
  232   static inline bool Equals(T &X, const FoldingSetNodeID &ID, unsigned IDHash,
  240   static inline unsigned ComputeHash(T &X, FoldingSetNodeID &TempID);
  250   : public DefaultFoldingSetTrait<T> {};
  369   FoldingSetTrait<T>::Profile(X, TempID);
  375   FoldingSetTrait<T>::Profile(X, TempID);
  410   using iterator = FoldingSetIterator<T>;
  415   using const_iterator = FoldingSetIterator<const T>;
  420   using bucket_iterator = FoldingSetBucketIterator<T>;
  432   bool RemoveNode(T *N) { return FoldingSetBase::RemoveNode(N); }
  437   T *GetOrInsertNode(T *N) {
  437   T *GetOrInsertNode(T *N) {
  444   T *FindNodeOrInsertPos(const FoldingSetNodeID &ID, void *&InsertPos) {
  451   void InsertNode(T *N, void *InsertPos) {
  457   void InsertNode(T *N) {
  473 template <class T> class FoldingSet final : public FoldingSetImpl<T> {
  474   using Super = FoldingSetImpl<T>;
  480     T *TN = static_cast<T *>(N);
  481     FoldingSetTrait<T>::Profile(*TN, ID);
  488     T *TN = static_cast<T *>(N);
  489     return FoldingSetTrait<T>::Equals(*TN, ID, IDHash, TempID);
  495     T *TN = static_cast<T *>(N);
  496     return FoldingSetTrait<T>::ComputeHash(*TN, TempID);
include/llvm/Support/Casting.h
   58     return To::classof(&Val);
  106     return isa_impl<To, From>::doit(*Val);
  122     return isa_impl_wrap<To, SimpleFrom,
  132     return isa_impl_cl<To,FromTy>::doit(Val);
  142   return isa_impl_wrap<X, const Y,
  172   using ret_type = To *;       // Pointer arg case, return Ty*
  176   using ret_type = const To *; // Constant pointer arg case, return const Ty*
  198   using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
  204   using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
  210       To, From, typename simplify_type<From>::SimpleType>::ret_type;
  227   static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
  228     typename cast_retty<To, FromTy>::ret_type Res2
  256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
  263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
  265   return cast_convert_val<X, Y*,
  337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
  342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
  343   return isa<X>(Val) ? cast<X>(Val) : nullptr;
include/llvm/Support/TrailingObjects.h
  134     : public TrailingObjectsImpl<Align, BaseTy, TopTrailingObj, NextTy,
  137   typedef TrailingObjectsImpl<Align, BaseTy, TopTrailingObj, NextTy, MoreTys...>
  141     static const bool value = alignof(PrevTy) < alignof(NextTy);
  162   getTrailingObjectsImpl(const BaseTy *Obj,
  177   getTrailingObjectsImpl(BaseTy *Obj,
  179     auto *Ptr = TopTrailingObj::getTrailingObjectsImpl(
  232                             BaseTy, TrailingObjects<BaseTy, TrailingTys...>,
  232                             BaseTy, TrailingObjects<BaseTy, TrailingTys...>,
  233                             BaseTy, TrailingTys...> {
  242       BaseTy, TrailingObjects<BaseTy, TrailingTys...>, BaseTy, TrailingTys...>
  242       BaseTy, TrailingObjects<BaseTy, TrailingTys...>, BaseTy, TrailingTys...>
  242       BaseTy, TrailingObjects<BaseTy, TrailingTys...>, BaseTy, TrailingTys...>
  257   static const BaseTy *
  258   getTrailingObjectsImpl(const BaseTy *Obj,
  259                          TrailingObjectsBase::OverloadToken<BaseTy>) {
  263   static BaseTy *
  264   getTrailingObjectsImpl(BaseTy *Obj,
  265                          TrailingObjectsBase::OverloadToken<BaseTy>) {
  277   callNumTrailingObjects(const BaseTy *Obj,
  278                          TrailingObjectsBase::OverloadToken<BaseTy>) {
  283   static size_t callNumTrailingObjects(const BaseTy *Obj,
  284                                        TrailingObjectsBase::OverloadToken<T>) {
  345     return sizeof(BaseTy) + ParentType::additionalSizeToAllocImpl(0, Counts...);
include/llvm/TableGen/Record.h
  238                           public TrailingObjects<RecordRecTy, Record *> {
  247   RecordRecTy(const RecordRecTy &) = delete;
  248   RecordRecTy &operator=(const RecordRecTy &) = delete;
  248   RecordRecTy &operator=(const RecordRecTy &) = delete;
  258   static RecordRecTy *get(ArrayRef<Record *> Classes);
 1216     : TypedInit(IK_VarDefInit, RecordRecTy::get(Class)), Class(Class), NumArgs(N) {}
 1496   RecordRecTy *getType();
 1699   FoldingSet<RecordRecTy> RecordTypePool;
lib/TableGen/Record.cpp
  157 RecordRecTy *RecordRecTy::get(ArrayRef<Record *> UnsortedClasses) {
  159     static RecordRecTy AnyRecord(0);
  163   FoldingSet<RecordRecTy> &ThePool =
  176   if (RecordRecTy *Ty = ThePool.FindNodeOrInsertPos(ID, IP))
  190                                  alignof(RecordRecTy));
  191   RecordRecTy *Ty = new(Mem) RecordRecTy(Classes.size());
  191   RecordRecTy *Ty = new(Mem) RecordRecTy(Classes.size());
  229   const RecordRecTy *RTy = dyn_cast<RecordRecTy>(RHS);
  229   const RecordRecTy *RTy = dyn_cast<RecordRecTy>(RHS);
  242 static RecordRecTy *resolveRecordTypes(RecordRecTy *T1, RecordRecTy *T2) {
  242 static RecordRecTy *resolveRecordTypes(RecordRecTy *T1, RecordRecTy *T2) {
  242 static RecordRecTy *resolveRecordTypes(RecordRecTy *T1, RecordRecTy *T2) {
  259   return RecordRecTy::get(CommonSuperClasses);
  266   if (RecordRecTy *RecTy1 = dyn_cast<RecordRecTy>(T1)) {
  266   if (RecordRecTy *RecTy1 = dyn_cast<RecordRecTy>(T1)) {
  267     if (RecordRecTy *RecTy2 = dyn_cast<RecordRecTy>(T2))
  267     if (RecordRecTy *RecTy2 = dyn_cast<RecordRecTy>(T2))
  724     } else if (isa<RecordRecTy>(getType())) {
 1363     if (isa<RecordRecTy>(CheckType)) {
 1395   if (RecordRecTy *RecordType = dyn_cast<RecordRecTy>(getType())) {
 1395   if (RecordRecTy *RecordType = dyn_cast<RecordRecTy>(getType())) {
 1567   if (auto *RRT = dyn_cast<RecordRecTy>(Ty))
 1567   if (auto *RRT = dyn_cast<RecordRecTy>(Ty))
 2042 RecordRecTy *Record::getType() {
 2045   return RecordRecTy::get(DirectSCs);
lib/TableGen/TGParser.cpp
  806     if (Record *R = ParseClassID()) return RecordRecTy::get(R);
utils/TableGen/CodeGenRegisters.cpp
  641     RecTy *RegisterRecTy = RecordRecTy::get(RegisterCl);
utils/TableGen/DFAEmitter.cpp
  340     if (auto *Ty = dyn_cast<RecordRecTy>(SymbolV->getType())) {
  340     if (auto *Ty = dyn_cast<RecordRecTy>(SymbolV->getType())) {
utils/TableGen/SearchableTableEmitter.cpp
  532       Field.RecType = RecordRecTy::get(Field.Enum->Class);
  626     if (auto RecordTy = dyn_cast<RecordRecTy>(Field.RecType)) {