Lines Matching refs:CTy

661 void BTFDebug::visitStructType(const DICompositeType *CTy, bool IsStruct,  in visitStructType()  argument
663 const DINodeArray Elements = CTy->getElements(); in visitStructType()
679 std::make_unique<BTFTypeStruct>(CTy, IsStruct, HasBitField, VLen); in visitStructType()
681 TypeId = addType(std::move(TypeEntry), CTy); in visitStructType()
684 processDeclAnnotations(CTy->getAnnotations(), TypeId, -1); in visitStructType()
696 void BTFDebug::visitArrayType(const DICompositeType *CTy, uint32_t &TypeId) { in visitArrayType() argument
699 const DIType *ElemType = CTy->getBaseType(); in visitArrayType()
703 DINodeArray Elements = CTy->getElements(); in visitArrayType()
717 ElemTypeId = addType(std::move(TypeEntry), CTy); in visitArrayType()
735 void BTFDebug::visitEnumType(const DICompositeType *CTy, uint32_t &TypeId) { in visitEnumType() argument
736 DINodeArray Elements = CTy->getElements(); in visitEnumType()
745 if (CTy->getBaseType() != nullptr) { in visitEnumType()
746 const auto *BTy = cast<DIBasicType>(CTy->getBaseType()); in visitEnumType()
753 auto TypeEntry = std::make_unique<BTFTypeEnum>(CTy, VLen, IsSigned); in visitEnumType()
754 TypeId = addType(std::move(TypeEntry), CTy); in visitEnumType()
757 auto TypeEntry = std::make_unique<BTFTypeEnum64>(CTy, VLen, IsSigned); in visitEnumType()
758 TypeId = addType(std::move(TypeEntry), CTy); in visitEnumType()
764 void BTFDebug::visitFwdDeclType(const DICompositeType *CTy, bool IsUnion, in visitFwdDeclType() argument
766 auto TypeEntry = std::make_unique<BTFTypeFwd>(CTy->getName(), IsUnion); in visitFwdDeclType()
767 TypeId = addType(std::move(TypeEntry), CTy); in visitFwdDeclType()
771 void BTFDebug::visitCompositeType(const DICompositeType *CTy, in visitCompositeType() argument
773 auto Tag = CTy->getTag(); in visitCompositeType()
776 if (CTy->isForwardDecl()) in visitCompositeType()
777 visitFwdDeclType(CTy, Tag == dwarf::DW_TAG_union_type, TypeId); in visitCompositeType()
779 visitStructType(CTy, Tag == dwarf::DW_TAG_structure_type, TypeId); in visitCompositeType()
781 visitArrayType(CTy, TypeId); in visitCompositeType()
783 visitEnumType(CTy, TypeId); in visitCompositeType()
787 if (const auto *CTy = dyn_cast<DICompositeType>(Base)) { in IsForwardDeclCandidate() local
788 auto CTag = CTy->getTag(); in IsForwardDeclCandidate()
791 !CTy->getName().empty() && !CTy->isForwardDecl()) in IsForwardDeclCandidate()
926 else if (const auto *CTy = dyn_cast<DICompositeType>(Ty)) in visitTypeEntry() local
927 visitCompositeType(CTy, TypeId); in visitTypeEntry()
956 const auto *CTy = dyn_cast<DICompositeType>(Ty); in visitMapDefType() local
957 if (!CTy) in visitMapDefType()
960 auto Tag = CTy->getTag(); in visitMapDefType()
961 if (Tag != dwarf::DW_TAG_structure_type || CTy->isForwardDecl()) in visitMapDefType()
965 const DINodeArray Elements = CTy->getElements(); in visitMapDefType()
1601 const DICompositeType *CTy = Fixup.first; in endModule() local
1602 StringRef TypeName = CTy->getName(); in endModule()
1603 bool IsUnion = CTy->getTag() == dwarf::DW_TAG_union_type; in endModule()