Lines Matching defs:CTy

671 void BTFDebug::visitStructType(const DICompositeType *CTy, bool IsStruct,
673 const DINodeArray Elements = CTy->getElements();
689 std::make_unique<BTFTypeStruct>(CTy, IsStruct, HasBitField, VLen);
691 TypeId = addType(std::move(TypeEntry), CTy);
694 processDeclAnnotations(CTy->getAnnotations(), TypeId, -1);
706 void BTFDebug::visitArrayType(const DICompositeType *CTy, uint32_t &TypeId) {
709 const DIType *ElemType = CTy->getBaseType();
713 DINodeArray Elements = CTy->getElements();
727 ElemTypeId = addType(std::move(TypeEntry), CTy);
745 void BTFDebug::visitEnumType(const DICompositeType *CTy, uint32_t &TypeId) {
746 DINodeArray Elements = CTy->getElements();
755 if (CTy->getBaseType() != nullptr) {
756 const auto *BTy = cast<DIBasicType>(CTy->getBaseType());
763 auto TypeEntry = std::make_unique<BTFTypeEnum>(CTy, VLen, IsSigned);
764 TypeId = addType(std::move(TypeEntry), CTy);
767 auto TypeEntry = std::make_unique<BTFTypeEnum64>(CTy, VLen, IsSigned);
768 TypeId = addType(std::move(TypeEntry), CTy);
774 void BTFDebug::visitFwdDeclType(const DICompositeType *CTy, bool IsUnion,
776 auto TypeEntry = std::make_unique<BTFTypeFwd>(CTy->getName(), IsUnion);
777 TypeId = addType(std::move(TypeEntry), CTy);
781 void BTFDebug::visitCompositeType(const DICompositeType *CTy,
783 auto Tag = CTy->getTag();
786 if (CTy->isForwardDecl())
787 visitFwdDeclType(CTy, Tag == dwarf::DW_TAG_union_type, TypeId);
789 visitStructType(CTy, Tag == dwarf::DW_TAG_structure_type, TypeId);
791 visitArrayType(CTy, TypeId);
793 visitEnumType(CTy, TypeId);
797 if (const auto *CTy = dyn_cast<DICompositeType>(Base)) {
798 auto CTag = CTy->getTag();
801 !CTy->getName().empty() && !CTy->isForwardDecl())
940 else if (const auto *CTy = dyn_cast<DICompositeType>(Ty))
941 visitCompositeType(CTy, TypeId);
970 const auto *CTy = dyn_cast<DICompositeType>(Ty);
971 if (!CTy)
974 auto Tag = CTy->getTag();
975 if (Tag != dwarf::DW_TAG_structure_type || CTy->isForwardDecl())
979 const DINodeArray Elements = CTy->getElements();
1634 const DICompositeType *CTy = Fixup.first;
1635 StringRef TypeName = CTy->getName();
1636 bool IsUnion = CTy->getTag() == dwarf::DW_TAG_union_type;