Lines Matching refs:Enc

6436   std::string Enc;  member in __anona890a3f31011::FieldEncoding
6438 FieldEncoding(bool b, SmallStringEnc &e) : HasName(b), Enc(e.c_str()) {}; in FieldEncoding()
6439 StringRef str() {return Enc.c_str();}; in str()
6442 return Enc < rhs.Enc; in operator <()
6616 static bool getTypeString(SmallStringEnc &Enc, const Decl *D,
6622 SmallStringEnc Enc; in emitTargetMD() local
6623 if (getTypeString(Enc, D, CGM, TSC)) { in emitTargetMD()
6627 MDVals.push_back(llvm::MDString::get(Ctx, Enc.str())); in emitTargetMD()
6634 static bool appendType(SmallStringEnc &Enc, QualType QType,
6645 SmallStringEnc Enc; in extractFieldType() local
6646 Enc += "m("; in extractFieldType()
6647 Enc += Field->getName(); in extractFieldType()
6648 Enc += "){"; in extractFieldType()
6650 Enc += "b("; in extractFieldType()
6651 llvm::raw_svector_ostream OS(Enc); in extractFieldType()
6655 Enc += ':'; in extractFieldType()
6657 if (!appendType(Enc, Field->getType(), CGM, TSC)) in extractFieldType()
6660 Enc += ')'; in extractFieldType()
6661 Enc += '}'; in extractFieldType()
6662 FE.push_back(FieldEncoding(!Field->getName().empty(), Enc)); in extractFieldType()
6670 static bool appendRecordType(SmallStringEnc &Enc, const RecordType *RT, in appendRecordType() argument
6676 Enc += TypeString; in appendRecordType()
6681 size_t Start = Enc.size(); in appendRecordType()
6682 Enc += (RT->isUnionType()? 'u' : 's'); in appendRecordType()
6683 Enc += '('; in appendRecordType()
6685 Enc += ID->getName(); in appendRecordType()
6686 Enc += "){"; in appendRecordType()
6696 std::string StubEnc(Enc.substr(Start).str()); in appendRecordType()
6712 Enc += ','; in appendRecordType()
6713 Enc += FE[I].str(); in appendRecordType()
6716 Enc += '}'; in appendRecordType()
6717 TSC.addIfComplete(ID, Enc.substr(Start), IsRecursive); in appendRecordType()
6722 static bool appendEnumType(SmallStringEnc &Enc, const EnumType *ET, in appendEnumType() argument
6728 Enc += TypeString; in appendEnumType()
6732 size_t Start = Enc.size(); in appendEnumType()
6733 Enc += "e("; in appendEnumType()
6735 Enc += ID->getName(); in appendEnumType()
6736 Enc += "){"; in appendEnumType()
6755 Enc += ','; in appendEnumType()
6756 Enc += FE[I].str(); in appendEnumType()
6759 Enc += '}'; in appendEnumType()
6760 TSC.addIfComplete(ID, Enc.substr(Start), false); in appendEnumType()
6766 static void appendQualifier(SmallStringEnc &Enc, QualType QT) { in appendQualifier() argument
6776 Enc += Table[Lookup]; in appendQualifier()
6780 static bool appendBuiltinType(SmallStringEnc &Enc, const BuiltinType *BT) { in appendBuiltinType() argument
6834 Enc += EncType; in appendBuiltinType()
6839 static bool appendPointerType(SmallStringEnc &Enc, const PointerType *PT, in appendPointerType() argument
6842 Enc += "p("; in appendPointerType()
6843 if (!appendType(Enc, PT->getPointeeType(), CGM, TSC)) in appendPointerType()
6845 Enc += ')'; in appendPointerType()
6850 static bool appendArrayType(SmallStringEnc &Enc, QualType QT, in appendArrayType() argument
6856 Enc += "a("; in appendArrayType()
6858 CAT->getSize().toStringUnsigned(Enc); in appendArrayType()
6860 Enc += NoSizeEnc; // Global arrays use "*", otherwise it is "". in appendArrayType()
6861 Enc += ':'; in appendArrayType()
6863 appendQualifier(Enc, QT); in appendArrayType()
6864 if (!appendType(Enc, AT->getElementType(), CGM, TSC)) in appendArrayType()
6866 Enc += ')'; in appendArrayType()
6872 static bool appendFunctionType(SmallStringEnc &Enc, const FunctionType *FT, in appendFunctionType() argument
6875 Enc += "f{"; in appendFunctionType()
6876 if (!appendType(Enc, FT->getReturnType(), CGM, TSC)) in appendFunctionType()
6878 Enc += "}("; in appendFunctionType()
6885 if (!appendType(Enc, *I, CGM, TSC)) in appendFunctionType()
6889 Enc += ','; in appendFunctionType()
6892 Enc += ",va"; in appendFunctionType()
6895 Enc += "va"; in appendFunctionType()
6897 Enc += '0'; in appendFunctionType()
6900 Enc += ')'; in appendFunctionType()
6906 static bool appendType(SmallStringEnc &Enc, QualType QType, in appendType() argument
6915 return appendArrayType(Enc, QT, AT, CGM, TSC, ""); in appendType()
6917 appendQualifier(Enc, QT); in appendType()
6920 return appendBuiltinType(Enc, BT); in appendType()
6923 return appendPointerType(Enc, PT, CGM, TSC); in appendType()
6926 return appendEnumType(Enc, ET, TSC, QT.getBaseTypeIdentifier()); in appendType()
6929 return appendRecordType(Enc, RT, CGM, TSC, QT.getBaseTypeIdentifier()); in appendType()
6932 return appendRecordType(Enc, RT, CGM, TSC, QT.getBaseTypeIdentifier()); in appendType()
6935 return appendFunctionType(Enc, FT, CGM, TSC); in appendType()
6940 static bool getTypeString(SmallStringEnc &Enc, const Decl *D, in getTypeString() argument
6948 return appendType(Enc, FD->getType(), CGM, TSC); in getTypeString()
6959 return appendArrayType(Enc, QT, AT, CGM, TSC, "*"); in getTypeString()
6961 return appendType(Enc, QT, CGM, TSC); in getTypeString()