Lines Matching defs:CTy
586 if (auto *CTy = dyn_cast<DICompositeType>(Ty)) {
588 (Ty->getRawName() || CTy->getRawIdentifier())) {
590 if (MDString *TypeId = CTy->getRawIdentifier()) {
592 DD->addDwarfTypeUnitType(getCU(), TypeId->getString(), TyDIE, CTy);
595 finishNonUnitTypeDIE(TyDIE, CTy);
599 construct(CTy);
856 void DwarfUnit::constructTypeDIE(DIE &Buffer, const DISubroutineType *CTy) {
858 auto Elements = cast<DISubroutineType>(CTy)->getTypeArray();
875 if (CTy->getCC() && CTy->getCC() != dwarf::DW_CC_normal)
877 CTy->getCC());
879 if (CTy->isLValueReference())
882 if (CTy->isRValueReference())
907 void DwarfUnit::constructTypeDIE(DIE &Buffer, const DICompositeType *CTy) {
909 StringRef Name = CTy->getName();
911 uint64_t Size = CTy->getSizeInBits() >> 3;
916 constructArrayTypeDIE(Buffer, CTy);
919 constructEnumTypeDIE(Buffer, CTy);
929 Discriminator = CTy->getDiscriminator();
943 addTemplateParams(Buffer, CTy->getTemplateParams());
946 DINodeArray Elements = CTy->getElements();
1006 if (CTy->isAppleBlockExtension())
1009 if (CTy->getExportSymbols())
1016 if (auto *ContainingType = CTy->getVTableHolder())
1020 if (CTy->isObjcClassComplete())
1027 if (CTy->isTypePassByValue())
1029 else if (CTy->isTypePassByReference())
1045 addAnnotation(Buffer, CTy->getAnnotations());
1054 (!CTy->isForwardDecl() || Tag == dwarf::DW_TAG_enumeration_type))
1056 else if (!CTy->isForwardDecl())
1061 if (CTy->isForwardDecl())
1065 addAccess(Buffer, CTy->getFlags());
1068 if (!CTy->isForwardDecl())
1069 addSourceLine(Buffer, CTy);
1072 unsigned RLang = CTy->getRuntimeLang();
1078 if (uint32_t AlignInBytes = CTy->getAlignInBytes())
1484 static bool hasVectorBeenPadded(const DICompositeType *CTy) {
1485 assert(CTy && CTy->isVector() && "Composite type is not a vector");
1486 const uint64_t ActualSize = CTy->getSizeInBits();
1489 DIType *BaseTy = CTy->getBaseType();
1494 const DINodeArray Elements = CTy->getElements();
1510 void DwarfUnit::constructArrayTypeDIE(DIE &Buffer, const DICompositeType *CTy) {
1511 if (CTy->isVector()) {
1513 if (hasVectorBeenPadded(CTy))
1515 CTy->getSizeInBits() / CHAR_BIT);
1518 if (DIVariable *Var = CTy->getDataLocation()) {
1521 } else if (DIExpression *Expr = CTy->getDataLocationExp()) {
1529 if (DIVariable *Var = CTy->getAssociated()) {
1532 } else if (DIExpression *Expr = CTy->getAssociatedExp()) {
1540 if (DIVariable *Var = CTy->getAllocated()) {
1543 } else if (DIExpression *Expr = CTy->getAllocatedExp()) {
1551 if (auto *RankConst = CTy->getRankConst()) {
1554 } else if (auto *RankExpr = CTy->getRankExp()) {
1563 addType(Buffer, CTy->getBaseType());
1571 DINodeArray Elements = CTy->getElements();
1584 void DwarfUnit::constructEnumTypeDIE(DIE &Buffer, const DICompositeType *CTy) {
1585 const DIType *DTy = CTy->getBaseType();
1590 if (DD->getDwarfVersion() >= 4 && (CTy->getFlags() & DINode::FlagEnumClass))
1594 auto *Context = CTy->getScope();
1597 DINodeArray Elements = CTy->getElements();
1891 void DwarfTypeUnit::finishNonUnitTypeDIE(DIE& D, const DICompositeType *CTy) {