Lines Matching refs:CTy

662 void BTFDebug::visitStructType(const DICompositeType *CTy, bool IsStruct,  in visitStructType()  argument
664 const DINodeArray Elements = CTy->getElements(); in visitStructType()
680 std::make_unique<BTFTypeStruct>(CTy, IsStruct, HasBitField, VLen); in visitStructType()
682 TypeId = addType(std::move(TypeEntry), CTy); in visitStructType()
685 processDeclAnnotations(CTy->getAnnotations(), TypeId, -1); in visitStructType()
697 void BTFDebug::visitArrayType(const DICompositeType *CTy, uint32_t &TypeId) { in visitArrayType() argument
700 const DIType *ElemType = CTy->getBaseType(); in visitArrayType()
704 DINodeArray Elements = CTy->getElements(); in visitArrayType()
718 ElemTypeId = addType(std::move(TypeEntry), CTy); in visitArrayType()
736 void BTFDebug::visitEnumType(const DICompositeType *CTy, uint32_t &TypeId) { in visitEnumType() argument
737 DINodeArray Elements = CTy->getElements(); in visitEnumType()
746 if (CTy->getBaseType() != nullptr) { in visitEnumType()
747 const auto *BTy = cast<DIBasicType>(CTy->getBaseType()); in visitEnumType()
754 auto TypeEntry = std::make_unique<BTFTypeEnum>(CTy, VLen, IsSigned); in visitEnumType()
755 TypeId = addType(std::move(TypeEntry), CTy); in visitEnumType()
758 auto TypeEntry = std::make_unique<BTFTypeEnum64>(CTy, VLen, IsSigned); in visitEnumType()
759 TypeId = addType(std::move(TypeEntry), CTy); in visitEnumType()
765 void BTFDebug::visitFwdDeclType(const DICompositeType *CTy, bool IsUnion, in visitFwdDeclType() argument
767 auto TypeEntry = std::make_unique<BTFTypeFwd>(CTy->getName(), IsUnion); in visitFwdDeclType()
768 TypeId = addType(std::move(TypeEntry), CTy); in visitFwdDeclType()
772 void BTFDebug::visitCompositeType(const DICompositeType *CTy, in visitCompositeType() argument
774 auto Tag = CTy->getTag(); in visitCompositeType()
777 if (CTy->isForwardDecl()) in visitCompositeType()
778 visitFwdDeclType(CTy, Tag == dwarf::DW_TAG_union_type, TypeId); in visitCompositeType()
780 visitStructType(CTy, Tag == dwarf::DW_TAG_structure_type, TypeId); in visitCompositeType()
782 visitArrayType(CTy, TypeId); in visitCompositeType()
784 visitEnumType(CTy, TypeId); in visitCompositeType()
788 if (const auto *CTy = dyn_cast<DICompositeType>(Base)) { in IsForwardDeclCandidate() local
789 auto CTag = CTy->getTag(); in IsForwardDeclCandidate()
792 !CTy->getName().empty() && !CTy->isForwardDecl()) in IsForwardDeclCandidate()
927 else if (const auto *CTy = dyn_cast<DICompositeType>(Ty)) in visitTypeEntry() local
928 visitCompositeType(CTy, TypeId); in visitTypeEntry()
957 const auto *CTy = dyn_cast<DICompositeType>(Ty); in visitMapDefType() local
958 if (!CTy) in visitMapDefType()
961 auto Tag = CTy->getTag(); in visitMapDefType()
962 if (Tag != dwarf::DW_TAG_structure_type || CTy->isForwardDecl()) in visitMapDefType()
966 const DINodeArray Elements = CTy->getElements(); in visitMapDefType()
1623 const DICompositeType *CTy = Fixup.first; in endModule() local
1624 StringRef TypeName = CTy->getName(); in endModule()
1625 bool IsUnion = CTy->getTag() == dwarf::DW_TAG_union_type; in endModule()