|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
Declarations
include/llvm/IR/Metadata.def 92 HANDLE_SPECIALIZED_MDNODE_LEAF_UNIQUABLE(DIDerivedType)
References
include/llvm/ADT/DenseMapInfo.h 39 static inline T* getEmptyKey() {
41 Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable;
45 static inline T* getTombstoneKey() {
47 Val <<= PointerLikeTypeTraits<T*>::NumLowBitsAvailable;
51 static unsigned getHashValue(const T *PtrVal) {
56 static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; }
56 static bool isEqual(const T *LHS, const T *RHS) { return LHS == RHS; }
include/llvm/IR/DIBuilder.h 202 DIDerivedType *createQualifiedType(unsigned Tag, DIType *FromTy);
210 DIDerivedType *createPointerType(DIType *PointeeTy, uint64_t SizeInBits,
221 DIDerivedType *
228 DIDerivedType *createReferenceType(unsigned Tag, DIType *RTy,
240 DIDerivedType *createTypedef(DIType *Ty, StringRef Name, DIFile *File,
244 DIDerivedType *createFriend(DIType *Ty, DIType *FriendTy);
254 DIDerivedType *createInheritance(DIType *Ty, DIType *BaseTy,
268 DIDerivedType *createMemberType(DIScope *Scope, StringRef Name,
288 DIDerivedType *createVariantMemberType(DIScope *Scope, StringRef Name,
306 DIDerivedType *createBitFieldMemberType(
321 DIDerivedType *createStaticMemberType(DIScope *Scope, StringRef Name,
338 DIDerivedType *createObjCIVar(StringRef Name, DIFile *File, unsigned LineNo,
434 DIDerivedType *Discriminator,
include/llvm/IR/DebugInfoMetadata.h 131 template <class Ty> Ty *getOperandAs(unsigned I) const {
132 return cast_or_null<Ty>(getOperand(I));
773 static DIDerivedType *
783 static DIDerivedType *getImpl(LLVMContext &Context, unsigned Tag,
921 DIDerivedType *Discriminator, StorageType Storage,
1027 DIDerivedType *getDiscriminator() const { return getOperandAs<DIDerivedType>(8); }
1027 DIDerivedType *getDiscriminator() const { return getOperandAs<DIDerivedType>(8); }
2624 DIDerivedType *StaticDataMemberDeclaration, MDTuple *TemplateParams,
2672 DIDerivedType *getStaticDataMemberDeclaration() const {
2673 return cast_or_null<DIDerivedType>(getRawStaticDataMemberDeclaration());
include/llvm/IR/Metadata.h 982 static typename std::enable_if<std::is_base_of<MDNode, T>::value, T *>::type
982 static typename std::enable_if<std::is_base_of<MDNode, T>::value, T *>::type
983 replaceWithUniqued(std::unique_ptr<T, TempMDNodeDeleter> N) {
984 return cast<T>(N.release()->replaceWithUniquedImpl());
1042 static void dispatchRecalculateHash(NodeTy *N, std::true_type) {
1046 static void dispatchRecalculateHash(NodeTy *, std::false_type) {}
1048 static void dispatchResetHash(NodeTy *N, std::true_type) {
1052 static void dispatchResetHash(NodeTy *, std::false_type) {}
include/llvm/IR/TrackingMDRef.h 111 explicit TypedTrackingMDRef(T *MD) : Ref(static_cast<Metadata *>(MD)) {}
126 T *get() const { return (T *)Ref.get(); }
127 operator T *() const { return get(); }
128 T *operator->() const { return get(); }
129 T &operator*() const { return *get(); }
135 void reset(T *MD) { Ref.reset(static_cast<Metadata *>(MD)); }
include/llvm/Support/Casting.h 58 return To::classof(&Val);
66 static inline bool doit(const From &) { return true; }
77 return isa_impl<To, From>::doit(Val);
92 return isa_impl<To, From>::doit(*Val);
104 static inline bool doit(const From *Val) {
106 return isa_impl<To, From>::doit(*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,
168 using ret_type = const To &; // Normal case, return Ty&
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;
218 static typename cast_retty<To, From>::ret_type doit(From &Val) {
219 return cast_convert_val<To, SimpleFrom,
227 static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
228 typename cast_retty<To, FromTy>::ret_type Res2
248 typename cast_retty<X, const Y>::ret_type>::type
252 X, const Y, typename simplify_type<const Y>::SimpleType>::doit(Val);
256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
258 return cast_convert_val<X, Y,
263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
265 return cast_convert_val<X, Y*,
285 typename cast_retty<X, const Y>::ret_type>::type
290 return cast<X>(Val);
296 typename cast_retty<X, Y>::ret_type>::type
305 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
309 return cast<X>(Val);
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;
366 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type
368 return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
368 return (Val && isa<X>(Val)) ? cast<X>(Val) : nullptr;
include/llvm/Support/PointerLikeTypeTraits.h 56 static inline void *getAsVoidPointer(T *P) { return P; }
57 static inline T *getFromVoidPointer(void *P) { return static_cast<T *>(P); }
59 enum { NumLowBitsAvailable = detail::ConstantLog2<alignof(T)>::value };
lib/Bitcode/Writer/BitcodeWriter.cpp 303 void writeDIDerivedType(const DIDerivedType *N,
1550 void ModuleBitcodeWriter::writeDIDerivedType(const DIDerivedType *N,
lib/CodeGen/AsmPrinter/CodeViewDebug.cpp 1456 const DIDerivedType *DT = dyn_cast<DIDerivedType>(T);
1456 const DIDerivedType *DT = dyn_cast<DIDerivedType>(T);
1498 return lowerTypeAlias(cast<DIDerivedType>(Ty));
1502 if (cast<DIDerivedType>(Ty)->getName() == "__vtbl_ptr_type")
1503 return lowerTypeVFTableShape(cast<DIDerivedType>(Ty));
1507 return lowerTypePointer(cast<DIDerivedType>(Ty));
1509 return lowerTypeMemberPointer(cast<DIDerivedType>(Ty));
1514 return lowerTypeModifier(cast<DIDerivedType>(Ty));
1541 TypeIndex CodeViewDebug::lowerTypeAlias(const DIDerivedType *Ty) {
1696 TypeIndex CodeViewDebug::lowerTypePointer(const DIDerivedType *Ty,
1767 TypeIndex CodeViewDebug::lowerTypeMemberPointer(const DIDerivedType *Ty,
1800 TypeIndex CodeViewDebug::lowerTypeModifier(const DIDerivedType *Ty) {
1826 BaseTy = cast<DIDerivedType>(BaseTy)->getBaseType();
1838 return lowerTypePointer(cast<DIDerivedType>(BaseTy), PO);
1840 return lowerTypeMemberPointer(cast<DIDerivedType>(BaseTy), PO);
1908 if (const DIDerivedType *PtrTy =
1909 dyn_cast_or_null<DIDerivedType>(ReturnAndArgs[Index])) {
1934 TypeIndex CodeViewDebug::lowerTypeVFTableShape(const DIDerivedType *Ty) {
2092 const DIDerivedType *MemberTypeNode;
2103 std::vector<const DIDerivedType *> Inheritance;
2128 const DIDerivedType *DDTy) {
2148 Ty = cast<DIDerivedType>(Ty)->getBaseType();
2177 } else if (auto *DDTy = dyn_cast<DIDerivedType>(Element)) {
2177 } else if (auto *DDTy = dyn_cast<DIDerivedType>(Element)) {
2324 for (const DIDerivedType *I : Info.Inheritance) {
2353 const DIDerivedType *Member = MemberInfo.MemberTypeNode;
2476 CodeViewDebug::getTypeIndexForThisPtr(const DIDerivedType *PtrTy,
2521 Ty = cast<DIDerivedType>(Ty)->getBaseType();
3123 if (const auto *MemberDecl = dyn_cast_or_null<DIDerivedType>(
3123 if (const auto *MemberDecl = dyn_cast_or_null<DIDerivedType>(
lib/CodeGen/AsmPrinter/CodeViewDebug.h 381 getTypeIndexForThisPtr(const DIDerivedType *PtrTy,
398 codeview::TypeIndex lowerTypeAlias(const DIDerivedType *Ty);
402 const DIDerivedType *Ty,
405 const DIDerivedType *Ty,
407 codeview::TypeIndex lowerTypeModifier(const DIDerivedType *Ty);
409 codeview::TypeIndex lowerTypeVFTableShape(const DIDerivedType *Ty);
432 void collectMemberInfo(ClassInfo &Info, const DIDerivedType *DDTy);
lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp 145 const DIDerivedType *DDTy = dyn_cast<DIDerivedType>(Ty);
145 const DIDerivedType *DDTy = dyn_cast<DIDerivedType>(Ty);
lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp 133 if (auto *SDMDecl = GV->getStaticDataMemberDeclaration()) {
lib/CodeGen/AsmPrinter/DwarfUnit.cpp 474 if (auto *DTy = dyn_cast<DIDerivedType>(Ty)) {
674 constructTypeDIE(TyDIE, cast<DIDerivedType>(Ty));
688 return getOrCreateTypeDIE(cast<DIDerivedType>(Ty)->getBaseType());
692 return getOrCreateTypeDIE(cast<DIDerivedType>(Ty)->getBaseType());
788 void DwarfUnit::constructTypeDIE(DIE &Buffer, const DIDerivedType *DTy) {
812 *getOrCreateTypeDIE(cast<DIDerivedType>(DTy)->getClassType()));
892 DIDerivedType *Discriminator = nullptr;
912 else if (auto *DDTy = dyn_cast<DIDerivedType>(Element)) {
1448 DIE &DwarfUnit::constructMemberDIE(DIE &Buffer, const DIDerivedType *DT) {
1557 DIE *DwarfUnit::getOrCreateStaticMemberDIE(const DIDerivedType *DT) {
lib/CodeGen/AsmPrinter/DwarfUnit.h 299 DIE *getOrCreateStaticMemberDIE(const DIDerivedType *DT);
310 void constructTypeDIE(DIE &Buffer, const DIDerivedType *DTy);
315 DIE &constructMemberDIE(DIE &Buffer, const DIDerivedType *DT);
lib/IR/AsmWriter.cpp 1843 static void writeDIDerivedType(raw_ostream &Out, const DIDerivedType *N,
lib/IR/DIBuilder.cpp 267 DIDerivedType *DIBuilder::createQualifiedType(unsigned Tag, DIType *FromTy) {
268 return DIDerivedType::get(VMContext, Tag, "", nullptr, 0, nullptr, FromTy, 0,
272 DIDerivedType *DIBuilder::createPointerType(
279 return DIDerivedType::get(VMContext, dwarf::DW_TAG_pointer_type, Name,
285 DIDerivedType *DIBuilder::createMemberPointerType(DIType *PointeeTy,
290 return DIDerivedType::get(VMContext, dwarf::DW_TAG_ptr_to_member_type, "",
295 DIDerivedType *DIBuilder::createReferenceType(
301 return DIDerivedType::get(VMContext, Tag, "", nullptr, 0, nullptr, RTy,
306 DIDerivedType *DIBuilder::createTypedef(DIType *Ty, StringRef Name,
309 return DIDerivedType::get(VMContext, dwarf::DW_TAG_typedef, Name, File,
314 DIDerivedType *DIBuilder::createFriend(DIType *Ty, DIType *FriendTy) {
317 return DIDerivedType::get(VMContext, dwarf::DW_TAG_friend, "", nullptr, 0, Ty,
321 DIDerivedType *DIBuilder::createInheritance(DIType *Ty, DIType *BaseTy,
328 return DIDerivedType::get(VMContext, dwarf::DW_TAG_inheritance, "", nullptr,
333 DIDerivedType *DIBuilder::createMemberType(DIScope *Scope, StringRef Name,
339 return DIDerivedType::get(VMContext, dwarf::DW_TAG_member, Name, File,
350 DIDerivedType *DIBuilder::createVariantMemberType(
354 return DIDerivedType::get(VMContext, dwarf::DW_TAG_member, Name, File,
360 DIDerivedType *DIBuilder::createBitFieldMemberType(
365 return DIDerivedType::get(
373 DIDerivedType *
379 return DIDerivedType::get(VMContext, dwarf::DW_TAG_member, Name, File,
385 DIDerivedType *
390 return DIDerivedType::get(VMContext, dwarf::DW_TAG_member, Name, File,
488 DIDerivedType *Discriminator, DINodeArray Elements, StringRef UniqueIdentifier) {
647 LineNumber, Ty, isLocalToUnit, true, cast_or_null<DIDerivedType>(Decl),
665 cast_or_null<DIDerivedType>(Decl), templateParams, AlignInBits)
lib/IR/DebugInfo.cpp 143 if (auto *DDT = dyn_cast<DIDerivedType>(DT)) {
143 if (auto *DDT = dyn_cast<DIDerivedType>(DT)) {
lib/IR/DebugInfoMetadata.cpp 367 DIDerivedType *DIDerivedType::getImpl(
797 if (auto *DT = dyn_cast<DIDerivedType>(RawType)) {
lib/IR/LLVMContextImpl.h 428 MDNodeKeyImpl(const DIDerivedType *N)
436 bool isKeyOf(const DIDerivedType *RHS) const {
466 using KeyTy = MDNodeKeyImpl<DIDerivedType>;
468 static bool isSubsetEqual(const KeyTy &LHS, const DIDerivedType *RHS) {
472 static bool isSubsetEqual(const DIDerivedType *LHS, const DIDerivedType *RHS) {
472 static bool isSubsetEqual(const DIDerivedType *LHS, const DIDerivedType *RHS) {
480 const MDString *Name, const DIDerivedType *RHS) {
1139 using KeyTy = MDNodeKeyImpl<NodeTy>;
1140 using SubsetEqualTy = MDNodeSubsetEqualImpl<NodeTy>;
1142 static inline NodeTy *getEmptyKey() {
1143 return DenseMapInfo<NodeTy *>::getEmptyKey();
1146 static inline NodeTy *getTombstoneKey() {
1147 return DenseMapInfo<NodeTy *>::getTombstoneKey();
1152 static unsigned getHashValue(const NodeTy *N) {
1156 static bool isEqual(const KeyTy &LHS, const NodeTy *RHS) {
1162 static bool isEqual(const NodeTy *LHS, const NodeTy *RHS) {
1162 static bool isEqual(const NodeTy *LHS, const NodeTy *RHS) {
lib/IR/Metadata.cpp 761 static T *uniquifyImpl(T *N, DenseSet<T *, InfoT> &Store) {
761 static T *uniquifyImpl(T *N, DenseSet<T *, InfoT> &Store) {
761 static T *uniquifyImpl(T *N, DenseSet<T *, InfoT> &Store) {
762 if (T *U = getUniqued(Store, N))
778 static const bool value = sizeof(check<NodeTy>(nullptr)) == sizeof(Yes);
lib/IR/MetadataImpl.h 22 static T *getUniqued(DenseSet<T *, InfoT> &Store,
22 static T *getUniqued(DenseSet<T *, InfoT> &Store,
42 T *MDNode::storeImpl(T *N, StorageType Storage, StoreT &Store) {
42 T *MDNode::storeImpl(T *N, StorageType Storage, StoreT &Store) {
lib/IR/Verifier.cpp 912 void Verifier::visitDIDerivedType(const DIDerivedType &N) {
lib/Target/BPF/BPFAbstractMemberAccess.cpp 157 void GetStorageBitRange(DICompositeType *CTy, DIDerivedType *MemberTy,
198 while (auto *DTy = dyn_cast<DIDerivedType>(Ty)) {
198 while (auto *DTy = dyn_cast<DIDerivedType>(Ty)) {
207 while (auto *DTy = dyn_cast<DIDerivedType>(Ty)) {
359 if (isa<DIDerivedType>(CType))
363 if (const auto *PtrTy = dyn_cast<DIDerivedType>(PType)) {
363 if (const auto *PtrTy = dyn_cast<DIDerivedType>(PType)) {
516 DIDerivedType *MemberTy,
527 auto Member = cast<DIDerivedType>(CTy->getElements()[Index]);
556 auto *MemberTy = cast<DIDerivedType>(CTy->getElements()[AccessIndex]);
556 auto *MemberTy = cast<DIDerivedType>(CTy->getElements()[AccessIndex]);
573 auto *MemberTy = cast<DIDerivedType>(CTy->getElements()[AccessIndex]);
573 auto *MemberTy = cast<DIDerivedType>(CTy->getElements()[AccessIndex]);
595 auto *MemberTy = cast<DIDerivedType>(CTy->getElements()[AccessIndex]);
595 auto *MemberTy = cast<DIDerivedType>(CTy->getElements()[AccessIndex]);
619 DIDerivedType *MemberTy = nullptr;
627 MemberTy = cast<DIDerivedType>(CTy->getElements()[AccessIndex]);
651 DIDerivedType *MemberTy = nullptr;
658 MemberTy = cast<DIDerivedType>(CTy->getElements()[AccessIndex]);
760 auto *DTy = cast<DIDerivedType>(Ty);
760 auto *DTy = cast<DIDerivedType>(Ty);
lib/Target/BPF/BTFDebug.cpp 43 BTFTypeDerived::BTFTypeDerived(const DIDerivedType *DTy, unsigned Tag,
237 const auto *DDTy = cast<DIDerivedType>(Element);
237 const auto *DDTy = cast<DIDerivedType>(Element);
457 auto E = cast<DIDerivedType>(Element);
471 visitTypeEntry(cast<DIDerivedType>(Element));
548 void BTFDebug::visitDerivedType(const DIDerivedType *DTy, uint32_t &TypeId,
612 else if (const auto *DTy = dyn_cast<DIDerivedType>(Ty))
612 else if (const auto *DTy = dyn_cast<DIDerivedType>(Ty))
642 auto E = cast<DIDerivedType>(Element);
656 const auto *MemberType = cast<DIDerivedType>(Element);
656 const auto *MemberType = cast<DIDerivedType>(Element);
lib/Target/BPF/BTFDebug.h 58 const DIDerivedType *DTy;
62 BTFTypeDerived(const DIDerivedType *Ty, unsigned Tag, bool NeedsFixup);
280 void visitDerivedType(const DIDerivedType *DTy, uint32_t &TypeId,
tools/clang/lib/CodeGen/CGDebugInfo.cpp 667 auto *ISATy = DBuilder.createPointerType(ClassTy, Size);
1034 const BlockPointerType *Ty, llvm::DIFile *Unit, llvm::DIDerivedType *DescTy,
1093 auto *DescTy = DBuilder.createPointerType(EltTy, Size);
1342 llvm::DIDerivedType *
1366 llvm::DIDerivedType *GV = DBuilder.createStaticMemberType(
4338 llvm::DIDerivedType *
tools/clang/lib/CodeGen/CGDebugInfo.h 147 llvm::DenseMap<const Decl *, llvm::TypedTrackingMDRef<llvm::DIDerivedType>>
294 llvm::DIDerivedType *CreateRecordStaticField(const VarDecl *Var,
332 llvm::DIDerivedType *DescTy, unsigned LineNo,
608 llvm::DIDerivedType *
unittests/IR/MetadataTest.cpp 104 return DIDerivedType::getDistinct(
1298 auto *N =
1299 DIDerivedType::get(Context, dwarf::DW_TAG_pointer_type, "something", File,
1368 auto *N = DIDerivedType::get(
1368 auto *N = DIDerivedType::get(
1584 DIDerivedType *Discriminator = cast<DIDerivedType>(getDerivedType());
1584 DIDerivedType *Discriminator = cast<DIDerivedType>(getDerivedType());
1585 DIDerivedType *Discriminator2 = cast<DIDerivedType>(getDerivedType());
1585 DIDerivedType *Discriminator2 = cast<DIDerivedType>(getDerivedType());
2141 DIDerivedType *StaticDataMemberDeclaration =
2142 cast<DIDerivedType>(getDerivedType());
2230 DIDerivedType *StaticDataMemberDeclaration =
2231 cast<DIDerivedType>(getDerivedType());
usr/include/c++/7.4.0/bits/unique_ptr.h 122 using type = _Up*;
137 using pointer = typename _Ptr<_Tp, _Dp>::type;
161 typename __uniq_ptr_impl<_Tp, _Up>::_DeleterConstraint::type;
163 __uniq_ptr_impl<_Tp, _Dp> _M_t;
166 using pointer = typename __uniq_ptr_impl<_Tp, _Dp>::pointer;
167 using element_type = _Tp;
252 unique_ptr(unique_ptr<_Up, _Ep>&& __u) noexcept
usr/include/c++/7.4.0/type_traits 215 : public __is_void_helper<typename remove_cv<_Tp>::type>::type
581 : public __or_<is_lvalue_reference<_Tp>,
582 is_rvalue_reference<_Tp>>::type
601 : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
601 : public __not_<__or_<is_function<_Tp>, is_reference<_Tp>,
602 is_void<_Tp>>>::type
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
638 : public __or_<is_object<_Tp>, is_reference<_Tp>>::type
1554 { typedef _Tp type; };
1563 { typedef _Tp type; };
1574 remove_const<typename remove_volatile<_Tp>::type>::type type;
1645 { typedef _Tp& type; };
1650 : public __add_lvalue_reference_helper<_Tp>
1983 { typedef _Up type; };
utils/unittest/googletest/include/gtest/gtest-printers.h 407 T* p, ::std::ostream* os) {
416 if (IsTrue(ImplicitlyConvertible<T*, const void*>::value)) {