Lines Matching refs:Enc
7352 std::string Enc; member in __anonbc557ed21411::FieldEncoding
7354 FieldEncoding(bool b, SmallStringEnc &e) : HasName(b), Enc(e.c_str()) {} in FieldEncoding()
7355 StringRef str() {return Enc.c_str();} in str()
7358 return Enc < rhs.Enc; in operator <()
7536 static bool getTypeString(SmallStringEnc &Enc, const Decl *D,
7542 SmallStringEnc Enc; in emitTargetMD() local
7543 if (getTypeString(Enc, D, CGM, TSC)) { in emitTargetMD()
7546 llvm::MDString::get(Ctx, Enc.str())}; in emitTargetMD()
7598 static bool appendType(SmallStringEnc &Enc, QualType QType,
7610 SmallStringEnc Enc; in extractFieldType() local
7611 Enc += "m("; in extractFieldType()
7612 Enc += Field->getName(); in extractFieldType()
7613 Enc += "){"; in extractFieldType()
7615 Enc += "b("; in extractFieldType()
7616 llvm::raw_svector_ostream OS(Enc); in extractFieldType()
7618 Enc += ':'; in extractFieldType()
7620 if (!appendType(Enc, Field->getType(), CGM, TSC)) in extractFieldType()
7623 Enc += ')'; in extractFieldType()
7624 Enc += '}'; in extractFieldType()
7625 FE.emplace_back(!Field->getName().empty(), Enc); in extractFieldType()
7633 static bool appendRecordType(SmallStringEnc &Enc, const RecordType *RT, in appendRecordType() argument
7639 Enc += TypeString; in appendRecordType()
7644 size_t Start = Enc.size(); in appendRecordType()
7645 Enc += (RT->isUnionType()? 'u' : 's'); in appendRecordType()
7646 Enc += '('; in appendRecordType()
7648 Enc += ID->getName(); in appendRecordType()
7649 Enc += "){"; in appendRecordType()
7659 std::string StubEnc(Enc.substr(Start).str()); in appendRecordType()
7675 Enc += ','; in appendRecordType()
7676 Enc += FE[I].str(); in appendRecordType()
7679 Enc += '}'; in appendRecordType()
7680 TSC.addIfComplete(ID, Enc.substr(Start), IsRecursive); in appendRecordType()
7685 static bool appendEnumType(SmallStringEnc &Enc, const EnumType *ET, in appendEnumType() argument
7691 Enc += TypeString; in appendEnumType()
7695 size_t Start = Enc.size(); in appendEnumType()
7696 Enc += "e("; in appendEnumType()
7698 Enc += ID->getName(); in appendEnumType()
7699 Enc += "){"; in appendEnumType()
7718 Enc += ','; in appendEnumType()
7719 Enc += FE[I].str(); in appendEnumType()
7722 Enc += '}'; in appendEnumType()
7723 TSC.addIfComplete(ID, Enc.substr(Start), false); in appendEnumType()
7729 static void appendQualifier(SmallStringEnc &Enc, QualType QT) { in appendQualifier() argument
7739 Enc += Table[Lookup]; in appendQualifier()
7743 static bool appendBuiltinType(SmallStringEnc &Enc, const BuiltinType *BT) { in appendBuiltinType() argument
7797 Enc += EncType; in appendBuiltinType()
7802 static bool appendPointerType(SmallStringEnc &Enc, const PointerType *PT, in appendPointerType() argument
7805 Enc += "p("; in appendPointerType()
7806 if (!appendType(Enc, PT->getPointeeType(), CGM, TSC)) in appendPointerType()
7808 Enc += ')'; in appendPointerType()
7813 static bool appendArrayType(SmallStringEnc &Enc, QualType QT, in appendArrayType() argument
7819 Enc += "a("; in appendArrayType()
7821 CAT->getSize().toStringUnsigned(Enc); in appendArrayType()
7823 Enc += NoSizeEnc; // Global arrays use "*", otherwise it is "". in appendArrayType()
7824 Enc += ':'; in appendArrayType()
7826 appendQualifier(Enc, QT); in appendArrayType()
7827 if (!appendType(Enc, AT->getElementType(), CGM, TSC)) in appendArrayType()
7829 Enc += ')'; in appendArrayType()
7835 static bool appendFunctionType(SmallStringEnc &Enc, const FunctionType *FT, in appendFunctionType() argument
7838 Enc += "f{"; in appendFunctionType()
7839 if (!appendType(Enc, FT->getReturnType(), CGM, TSC)) in appendFunctionType()
7841 Enc += "}("; in appendFunctionType()
7848 if (!appendType(Enc, *I, CGM, TSC)) in appendFunctionType()
7852 Enc += ','; in appendFunctionType()
7855 Enc += ",va"; in appendFunctionType()
7858 Enc += "va"; in appendFunctionType()
7860 Enc += '0'; in appendFunctionType()
7863 Enc += ')'; in appendFunctionType()
7869 static bool appendType(SmallStringEnc &Enc, QualType QType, in appendType() argument
7878 return appendArrayType(Enc, QT, AT, CGM, TSC, ""); in appendType()
7880 appendQualifier(Enc, QT); in appendType()
7883 return appendBuiltinType(Enc, BT); in appendType()
7886 return appendPointerType(Enc, PT, CGM, TSC); in appendType()
7889 return appendEnumType(Enc, ET, TSC, QT.getBaseTypeIdentifier()); in appendType()
7892 return appendRecordType(Enc, RT, CGM, TSC, QT.getBaseTypeIdentifier()); in appendType()
7895 return appendRecordType(Enc, RT, CGM, TSC, QT.getBaseTypeIdentifier()); in appendType()
7898 return appendFunctionType(Enc, FT, CGM, TSC); in appendType()
7903 static bool getTypeString(SmallStringEnc &Enc, const Decl *D, in getTypeString() argument
7911 return appendType(Enc, FD->getType(), CGM, TSC); in getTypeString()
7922 return appendArrayType(Enc, QT, AT, CGM, TSC, "*"); in getTypeString()
7924 return appendType(Enc, QT, CGM, TSC); in getTypeString()