Lines Matching refs:CTy
640 void BTFDebug::visitStructType(const DICompositeType *CTy, bool IsStruct, in visitStructType() argument
642 const DINodeArray Elements = CTy->getElements(); in visitStructType()
658 std::make_unique<BTFTypeStruct>(CTy, IsStruct, HasBitField, VLen); in visitStructType()
660 TypeId = addType(std::move(TypeEntry), CTy); in visitStructType()
663 processDeclAnnotations(CTy->getAnnotations(), TypeId, -1); in visitStructType()
675 void BTFDebug::visitArrayType(const DICompositeType *CTy, uint32_t &TypeId) { in visitArrayType() argument
678 const DIType *ElemType = CTy->getBaseType(); in visitArrayType()
682 DINodeArray Elements = CTy->getElements(); in visitArrayType()
696 ElemTypeId = addType(std::move(TypeEntry), CTy); in visitArrayType()
714 void BTFDebug::visitEnumType(const DICompositeType *CTy, uint32_t &TypeId) { in visitEnumType() argument
715 DINodeArray Elements = CTy->getElements(); in visitEnumType()
724 if (CTy->getBaseType() != nullptr) { in visitEnumType()
725 const auto *BTy = cast<DIBasicType>(CTy->getBaseType()); in visitEnumType()
732 auto TypeEntry = std::make_unique<BTFTypeEnum>(CTy, VLen, IsSigned); in visitEnumType()
733 TypeId = addType(std::move(TypeEntry), CTy); in visitEnumType()
736 auto TypeEntry = std::make_unique<BTFTypeEnum64>(CTy, VLen, IsSigned); in visitEnumType()
737 TypeId = addType(std::move(TypeEntry), CTy); in visitEnumType()
743 void BTFDebug::visitFwdDeclType(const DICompositeType *CTy, bool IsUnion, in visitFwdDeclType() argument
745 auto TypeEntry = std::make_unique<BTFTypeFwd>(CTy->getName(), IsUnion); in visitFwdDeclType()
746 TypeId = addType(std::move(TypeEntry), CTy); in visitFwdDeclType()
750 void BTFDebug::visitCompositeType(const DICompositeType *CTy, in visitCompositeType() argument
752 auto Tag = CTy->getTag(); in visitCompositeType()
755 if (CTy->isForwardDecl()) in visitCompositeType()
756 visitFwdDeclType(CTy, Tag == dwarf::DW_TAG_union_type, TypeId); in visitCompositeType()
758 visitStructType(CTy, Tag == dwarf::DW_TAG_structure_type, TypeId); in visitCompositeType()
760 visitArrayType(CTy, TypeId); in visitCompositeType()
762 visitEnumType(CTy, TypeId); in visitCompositeType()
779 if (const auto *CTy = dyn_cast<DICompositeType>(Base)) { in visitDerivedType() local
780 auto CTag = CTy->getTag(); in visitDerivedType()
783 !CTy->getName().empty() && !CTy->isForwardDecl()) { in visitDerivedType()
788 auto &Fixup = FixupDerivedTypes[CTy]; in visitDerivedType()
887 else if (const auto *CTy = dyn_cast<DICompositeType>(Ty)) in visitTypeEntry() local
888 visitCompositeType(CTy, TypeId); in visitTypeEntry()
917 const auto *CTy = dyn_cast<DICompositeType>(Ty); in visitMapDefType() local
918 if (!CTy) in visitMapDefType()
921 auto Tag = CTy->getTag(); in visitMapDefType()
922 if (Tag != dwarf::DW_TAG_structure_type || CTy->isForwardDecl()) in visitMapDefType()
926 const DINodeArray Elements = CTy->getElements(); in visitMapDefType()
1572 const DICompositeType *CTy = Fixup.first; in endModule() local
1573 StringRef TypeName = CTy->getName(); in endModule()
1574 bool IsUnion = CTy->getTag() == dwarf::DW_TAG_union_type; in endModule()