Lines Matching full:record

183   /// Saves the offset of the VSTOffset record that must eventually be
264 /// True if a module hash record should be written.
303 SmallVectorImpl<uint64_t> &Record);
304 void writeMDTuple(const MDTuple *N, SmallVectorImpl<uint64_t> &Record,
307 void writeDILocation(const DILocation *N, SmallVectorImpl<uint64_t> &Record,
311 SmallVectorImpl<uint64_t> &Record, unsigned &Abbrev);
312 void writeDISubrange(const DISubrange *N, SmallVectorImpl<uint64_t> &Record,
315 SmallVectorImpl<uint64_t> &Record,
318 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
319 void writeDIBasicType(const DIBasicType *N, SmallVectorImpl<uint64_t> &Record,
322 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
324 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
326 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
328 SmallVectorImpl<uint64_t> &Record,
330 void writeDIFile(const DIFile *N, SmallVectorImpl<uint64_t> &Record,
333 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
335 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
337 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
339 SmallVectorImpl<uint64_t> &Record,
342 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
343 void writeDINamespace(const DINamespace *N, SmallVectorImpl<uint64_t> &Record,
345 void writeDIMacro(const DIMacro *N, SmallVectorImpl<uint64_t> &Record,
347 void writeDIMacroFile(const DIMacroFile *N, SmallVectorImpl<uint64_t> &Record,
349 void writeDIArgList(const DIArgList *N, SmallVectorImpl<uint64_t> &Record);
350 void writeDIModule(const DIModule *N, SmallVectorImpl<uint64_t> &Record,
352 void writeDIAssignID(const DIAssignID *N, SmallVectorImpl<uint64_t> &Record,
355 SmallVectorImpl<uint64_t> &Record,
358 SmallVectorImpl<uint64_t> &Record,
361 SmallVectorImpl<uint64_t> &Record,
364 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
366 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
368 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
370 SmallVectorImpl<uint64_t> &Record,
373 SmallVectorImpl<uint64_t> &Record, unsigned Abbrev);
375 SmallVectorImpl<uint64_t> &Record,
378 void writeNamedMetadata(SmallVectorImpl<uint64_t> &Record);
381 SmallVectorImpl<uint64_t> &Record);
383 SmallVectorImpl<uint64_t> &Record,
389 void pushGlobalMetadataAttachment(SmallVectorImpl<uint64_t> &Record,
474 // vector. If not, record it. in IndexBitcodeWriter()
496 // Record all stack id indices actually used in the summary entries being in IndexBitcodeWriter()
698 // Emit the finished record. in writeStringRecord()
918 static void emitConstantRange(SmallVectorImpl<uint64_t> &Record, in emitConstantRange() argument
922 Record.push_back(BitWidth); in emitConstantRange()
924 Record.push_back(CR.getLower().getActiveWords() | in emitConstantRange()
926 emitWideAPInt(Record, CR.getLower()); in emitConstantRange()
927 emitWideAPInt(Record, CR.getUpper()); in emitConstantRange()
929 emitSignedInt64(Record, CR.getLower().getSExtValue()); in emitConstantRange()
930 emitSignedInt64(Record, CR.getUpper().getSExtValue()); in emitConstantRange()
941 SmallVector<uint64_t, 64> Record; in writeAttributeGroupTable() local
945 Record.push_back(VE.getAttributeGroupID(Pair)); in writeAttributeGroupTable()
946 Record.push_back(AttrListIndex); in writeAttributeGroupTable()
950 Record.push_back(0); in writeAttributeGroupTable()
951 Record.push_back(getAttrKindEncoding(Attr.getKindAsEnum())); in writeAttributeGroupTable()
953 Record.push_back(1); in writeAttributeGroupTable()
954 Record.push_back(getAttrKindEncoding(Attr.getKindAsEnum())); in writeAttributeGroupTable()
955 Record.push_back(Attr.getValueAsInt()); in writeAttributeGroupTable()
960 Record.push_back(Val.empty() ? 3 : 4); in writeAttributeGroupTable()
961 Record.append(Kind.begin(), Kind.end()); in writeAttributeGroupTable()
962 Record.push_back(0); in writeAttributeGroupTable()
964 Record.append(Val.begin(), Val.end()); in writeAttributeGroupTable()
965 Record.push_back(0); in writeAttributeGroupTable()
969 Record.push_back(Ty ? 6 : 5); in writeAttributeGroupTable()
970 Record.push_back(getAttrKindEncoding(Attr.getKindAsEnum())); in writeAttributeGroupTable()
972 Record.push_back(VE.getTypeID(Attr.getValueAsType())); in writeAttributeGroupTable()
974 Record.push_back(7); in writeAttributeGroupTable()
975 Record.push_back(getAttrKindEncoding(Attr.getKindAsEnum())); in writeAttributeGroupTable()
976 emitConstantRange(Record, Attr.getValueAsConstantRange(), in writeAttributeGroupTable()
980 Record.push_back(8); in writeAttributeGroupTable()
981 Record.push_back(getAttrKindEncoding(Attr.getKindAsEnum())); in writeAttributeGroupTable()
983 Record.push_back(Val.size()); in writeAttributeGroupTable()
984 Record.push_back(Val[0].getBitWidth()); in writeAttributeGroupTable()
986 emitConstantRange(Record, CR, /*EmitBitWidth=*/false); in writeAttributeGroupTable()
990 Stream.EmitRecord(bitc::PARAMATTR_GRP_CODE_ENTRY, Record); in writeAttributeGroupTable()
991 Record.clear(); in writeAttributeGroupTable()
1003 SmallVector<uint64_t, 64> Record; in writeAttributeTable() local
1008 Record.push_back(VE.getAttributeGroupID({i, AS})); in writeAttributeTable()
1011 Stream.EmitRecord(bitc::PARAMATTR_CODE_ENTRY, Record); in writeAttributeTable()
1012 Record.clear(); in writeAttributeTable()
1184 // Emit the finished record. in writeTypeTable()
1359 /// Write a record that will eventually hold the word offset of the
1521 // Emit the finished record. in writeModuleInfo()
1710 const ValueAsMetadata *MD, SmallVectorImpl<uint64_t> &Record) { in writeValueAsMetadata() argument
1713 Record.push_back(VE.getTypeID(V->getType())); in writeValueAsMetadata()
1714 Record.push_back(VE.getValueID(V)); in writeValueAsMetadata()
1715 Stream.EmitRecord(bitc::METADATA_VALUE, Record, 0); in writeValueAsMetadata()
1716 Record.clear(); in writeValueAsMetadata()
1720 SmallVectorImpl<uint64_t> &Record, in writeMDTuple() argument
1726 Record.push_back(VE.getMetadataOrNullID(MD)); in writeMDTuple()
1730 Record, Abbrev); in writeMDTuple()
1731 Record.clear(); in writeMDTuple()
1749 SmallVectorImpl<uint64_t> &Record, in writeDILocation() argument
1754 Record.push_back(N->isDistinct()); in writeDILocation()
1755 Record.push_back(N->getLine()); in writeDILocation()
1756 Record.push_back(N->getColumn()); in writeDILocation()
1757 Record.push_back(VE.getMetadataID(N->getScope())); in writeDILocation()
1758 Record.push_back(VE.getMetadataOrNullID(N->getInlinedAt())); in writeDILocation()
1759 Record.push_back(N->isImplicitCode()); in writeDILocation()
1761 Stream.EmitRecord(bitc::METADATA_LOCATION, Record, Abbrev); in writeDILocation()
1762 Record.clear(); in writeDILocation()
1780 SmallVectorImpl<uint64_t> &Record, in writeGenericDINode() argument
1785 Record.push_back(N->isDistinct()); in writeGenericDINode()
1786 Record.push_back(N->getTag()); in writeGenericDINode()
1787 Record.push_back(0); // Per-tag version field; unused for now. in writeGenericDINode()
1790 Record.push_back(VE.getMetadataOrNullID(I)); in writeGenericDINode()
1792 Stream.EmitRecord(bitc::METADATA_GENERIC_DEBUG, Record, Abbrev); in writeGenericDINode()
1793 Record.clear(); in writeGenericDINode()
1797 SmallVectorImpl<uint64_t> &Record, in writeDISubrange() argument
1800 Record.push_back((uint64_t)N->isDistinct() | Version); in writeDISubrange()
1801 Record.push_back(VE.getMetadataOrNullID(N->getRawCountNode())); in writeDISubrange()
1802 Record.push_back(VE.getMetadataOrNullID(N->getRawLowerBound())); in writeDISubrange()
1803 Record.push_back(VE.getMetadataOrNullID(N->getRawUpperBound())); in writeDISubrange()
1804 Record.push_back(VE.getMetadataOrNullID(N->getRawStride())); in writeDISubrange()
1806 Stream.EmitRecord(bitc::METADATA_SUBRANGE, Record, Abbrev); in writeDISubrange()
1807 Record.clear(); in writeDISubrange()
1811 const DIGenericSubrange *N, SmallVectorImpl<uint64_t> &Record, in writeDIGenericSubrange() argument
1813 Record.push_back((uint64_t)N->isDistinct()); in writeDIGenericSubrange()
1814 Record.push_back(VE.getMetadataOrNullID(N->getRawCountNode())); in writeDIGenericSubrange()
1815 Record.push_back(VE.getMetadataOrNullID(N->getRawLowerBound())); in writeDIGenericSubrange()
1816 Record.push_back(VE.getMetadataOrNullID(N->getRawUpperBound())); in writeDIGenericSubrange()
1817 Record.push_back(VE.getMetadataOrNullID(N->getRawStride())); in writeDIGenericSubrange()
1819 Stream.EmitRecord(bitc::METADATA_GENERIC_SUBRANGE, Record, Abbrev); in writeDIGenericSubrange()
1820 Record.clear(); in writeDIGenericSubrange()
1824 SmallVectorImpl<uint64_t> &Record, in writeDIEnumerator() argument
1827 Record.push_back(IsBigInt | (N->isUnsigned() << 1) | N->isDistinct()); in writeDIEnumerator()
1828 Record.push_back(N->getValue().getBitWidth()); in writeDIEnumerator()
1829 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDIEnumerator()
1830 emitWideAPInt(Record, N->getValue()); in writeDIEnumerator()
1832 Stream.EmitRecord(bitc::METADATA_ENUMERATOR, Record, Abbrev); in writeDIEnumerator()
1833 Record.clear(); in writeDIEnumerator()
1837 SmallVectorImpl<uint64_t> &Record, in writeDIBasicType() argument
1839 Record.push_back(N->isDistinct()); in writeDIBasicType()
1840 Record.push_back(N->getTag()); in writeDIBasicType()
1841 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDIBasicType()
1842 Record.push_back(N->getSizeInBits()); in writeDIBasicType()
1843 Record.push_back(N->getAlignInBits()); in writeDIBasicType()
1844 Record.push_back(N->getEncoding()); in writeDIBasicType()
1845 Record.push_back(N->getFlags()); in writeDIBasicType()
1847 Stream.EmitRecord(bitc::METADATA_BASIC_TYPE, Record, Abbrev); in writeDIBasicType()
1848 Record.clear(); in writeDIBasicType()
1852 SmallVectorImpl<uint64_t> &Record, in writeDIStringType() argument
1854 Record.push_back(N->isDistinct()); in writeDIStringType()
1855 Record.push_back(N->getTag()); in writeDIStringType()
1856 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDIStringType()
1857 Record.push_back(VE.getMetadataOrNullID(N->getStringLength())); in writeDIStringType()
1858 Record.push_back(VE.getMetadataOrNullID(N->getStringLengthExp())); in writeDIStringType()
1859 Record.push_back(VE.getMetadataOrNullID(N->getStringLocationExp())); in writeDIStringType()
1860 Record.push_back(N->getSizeInBits()); in writeDIStringType()
1861 Record.push_back(N->getAlignInBits()); in writeDIStringType()
1862 Record.push_back(N->getEncoding()); in writeDIStringType()
1864 Stream.EmitRecord(bitc::METADATA_STRING_TYPE, Record, Abbrev); in writeDIStringType()
1865 Record.clear(); in writeDIStringType()
1869 SmallVectorImpl<uint64_t> &Record, in writeDIDerivedType() argument
1871 Record.push_back(N->isDistinct()); in writeDIDerivedType()
1872 Record.push_back(N->getTag()); in writeDIDerivedType()
1873 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDIDerivedType()
1874 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDIDerivedType()
1875 Record.push_back(N->getLine()); in writeDIDerivedType()
1876 Record.push_back(VE.getMetadataOrNullID(N->getScope())); in writeDIDerivedType()
1877 Record.push_back(VE.getMetadataOrNullID(N->getBaseType())); in writeDIDerivedType()
1878 Record.push_back(N->getSizeInBits()); in writeDIDerivedType()
1879 Record.push_back(N->getAlignInBits()); in writeDIDerivedType()
1880 Record.push_back(N->getOffsetInBits()); in writeDIDerivedType()
1881 Record.push_back(N->getFlags()); in writeDIDerivedType()
1882 Record.push_back(VE.getMetadataOrNullID(N->getExtraData())); in writeDIDerivedType()
1887 Record.push_back(*DWARFAddressSpace + 1); in writeDIDerivedType()
1889 Record.push_back(0); in writeDIDerivedType()
1891 Record.push_back(VE.getMetadataOrNullID(N->getAnnotations().get())); in writeDIDerivedType()
1894 Record.push_back(PtrAuthData->RawData); in writeDIDerivedType()
1896 Record.push_back(0); in writeDIDerivedType()
1898 Stream.EmitRecord(bitc::METADATA_DERIVED_TYPE, Record, Abbrev); in writeDIDerivedType()
1899 Record.clear(); in writeDIDerivedType()
1903 const DICompositeType *N, SmallVectorImpl<uint64_t> &Record, in writeDICompositeType() argument
1906 Record.push_back(IsNotUsedInOldTypeRef | (unsigned)N->isDistinct()); in writeDICompositeType()
1907 Record.push_back(N->getTag()); in writeDICompositeType()
1908 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDICompositeType()
1909 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDICompositeType()
1910 Record.push_back(N->getLine()); in writeDICompositeType()
1911 Record.push_back(VE.getMetadataOrNullID(N->getScope())); in writeDICompositeType()
1912 Record.push_back(VE.getMetadataOrNullID(N->getBaseType())); in writeDICompositeType()
1913 Record.push_back(N->getSizeInBits()); in writeDICompositeType()
1914 Record.push_back(N->getAlignInBits()); in writeDICompositeType()
1915 Record.push_back(N->getOffsetInBits()); in writeDICompositeType()
1916 Record.push_back(N->getFlags()); in writeDICompositeType()
1917 Record.push_back(VE.getMetadataOrNullID(N->getElements().get())); in writeDICompositeType()
1918 Record.push_back(N->getRuntimeLang()); in writeDICompositeType()
1919 Record.push_back(VE.getMetadataOrNullID(N->getVTableHolder())); in writeDICompositeType()
1920 Record.push_back(VE.getMetadataOrNullID(N->getTemplateParams().get())); in writeDICompositeType()
1921 Record.push_back(VE.getMetadataOrNullID(N->getRawIdentifier())); in writeDICompositeType()
1922 Record.push_back(VE.getMetadataOrNullID(N->getDiscriminator())); in writeDICompositeType()
1923 Record.push_back(VE.getMetadataOrNullID(N->getRawDataLocation())); in writeDICompositeType()
1924 Record.push_back(VE.getMetadataOrNullID(N->getRawAssociated())); in writeDICompositeType()
1925 Record.push_back(VE.getMetadataOrNullID(N->getRawAllocated())); in writeDICompositeType()
1926 Record.push_back(VE.getMetadataOrNullID(N->getRawRank())); in writeDICompositeType()
1927 Record.push_back(VE.getMetadataOrNullID(N->getAnnotations().get())); in writeDICompositeType()
1929 Stream.EmitRecord(bitc::METADATA_COMPOSITE_TYPE, Record, Abbrev); in writeDICompositeType()
1930 Record.clear(); in writeDICompositeType()
1934 const DISubroutineType *N, SmallVectorImpl<uint64_t> &Record, in writeDISubroutineType() argument
1937 Record.push_back(HasNoOldTypeRefs | (unsigned)N->isDistinct()); in writeDISubroutineType()
1938 Record.push_back(N->getFlags()); in writeDISubroutineType()
1939 Record.push_back(VE.getMetadataOrNullID(N->getTypeArray().get())); in writeDISubroutineType()
1940 Record.push_back(N->getCC()); in writeDISubroutineType()
1942 Stream.EmitRecord(bitc::METADATA_SUBROUTINE_TYPE, Record, Abbrev); in writeDISubroutineType()
1943 Record.clear(); in writeDISubroutineType()
1947 SmallVectorImpl<uint64_t> &Record, in writeDIFile() argument
1949 Record.push_back(N->isDistinct()); in writeDIFile()
1950 Record.push_back(VE.getMetadataOrNullID(N->getRawFilename())); in writeDIFile()
1951 Record.push_back(VE.getMetadataOrNullID(N->getRawDirectory())); in writeDIFile()
1953 Record.push_back(N->getRawChecksum()->Kind); in writeDIFile()
1954 Record.push_back(VE.getMetadataOrNullID(N->getRawChecksum()->Value)); in writeDIFile()
1958 Record.push_back(0); in writeDIFile()
1959 Record.push_back(VE.getMetadataOrNullID(nullptr)); in writeDIFile()
1963 Record.push_back(VE.getMetadataOrNullID(Source)); in writeDIFile()
1965 Stream.EmitRecord(bitc::METADATA_FILE, Record, Abbrev); in writeDIFile()
1966 Record.clear(); in writeDIFile()
1970 SmallVectorImpl<uint64_t> &Record, in writeDICompileUnit() argument
1973 Record.push_back(/* IsDistinct */ true); in writeDICompileUnit()
1974 Record.push_back(N->getSourceLanguage()); in writeDICompileUnit()
1975 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDICompileUnit()
1976 Record.push_back(VE.getMetadataOrNullID(N->getRawProducer())); in writeDICompileUnit()
1977 Record.push_back(N->isOptimized()); in writeDICompileUnit()
1978 Record.push_back(VE.getMetadataOrNullID(N->getRawFlags())); in writeDICompileUnit()
1979 Record.push_back(N->getRuntimeVersion()); in writeDICompileUnit()
1980 Record.push_back(VE.getMetadataOrNullID(N->getRawSplitDebugFilename())); in writeDICompileUnit()
1981 Record.push_back(N->getEmissionKind()); in writeDICompileUnit()
1982 Record.push_back(VE.getMetadataOrNullID(N->getEnumTypes().get())); in writeDICompileUnit()
1983 Record.push_back(VE.getMetadataOrNullID(N->getRetainedTypes().get())); in writeDICompileUnit()
1984 Record.push_back(/* subprograms */ 0); in writeDICompileUnit()
1985 Record.push_back(VE.getMetadataOrNullID(N->getGlobalVariables().get())); in writeDICompileUnit()
1986 Record.push_back(VE.getMetadataOrNullID(N->getImportedEntities().get())); in writeDICompileUnit()
1987 Record.push_back(N->getDWOId()); in writeDICompileUnit()
1988 Record.push_back(VE.getMetadataOrNullID(N->getMacros().get())); in writeDICompileUnit()
1989 Record.push_back(N->getSplitDebugInlining()); in writeDICompileUnit()
1990 Record.push_back(N->getDebugInfoForProfiling()); in writeDICompileUnit()
1991 Record.push_back((unsigned)N->getNameTableKind()); in writeDICompileUnit()
1992 Record.push_back(N->getRangesBaseAddress()); in writeDICompileUnit()
1993 Record.push_back(VE.getMetadataOrNullID(N->getRawSysRoot())); in writeDICompileUnit()
1994 Record.push_back(VE.getMetadataOrNullID(N->getRawSDK())); in writeDICompileUnit()
1996 Stream.EmitRecord(bitc::METADATA_COMPILE_UNIT, Record, Abbrev); in writeDICompileUnit()
1997 Record.clear(); in writeDICompileUnit()
2001 SmallVectorImpl<uint64_t> &Record, in writeDISubprogram() argument
2005 Record.push_back(uint64_t(N->isDistinct()) | HasUnitFlag | HasSPFlagsFlag); in writeDISubprogram()
2006 Record.push_back(VE.getMetadataOrNullID(N->getScope())); in writeDISubprogram()
2007 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDISubprogram()
2008 Record.push_back(VE.getMetadataOrNullID(N->getRawLinkageName())); in writeDISubprogram()
2009 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDISubprogram()
2010 Record.push_back(N->getLine()); in writeDISubprogram()
2011 Record.push_back(VE.getMetadataOrNullID(N->getType())); in writeDISubprogram()
2012 Record.push_back(N->getScopeLine()); in writeDISubprogram()
2013 Record.push_back(VE.getMetadataOrNullID(N->getContainingType())); in writeDISubprogram()
2014 Record.push_back(N->getSPFlags()); in writeDISubprogram()
2015 Record.push_back(N->getVirtualIndex()); in writeDISubprogram()
2016 Record.push_back(N->getFlags()); in writeDISubprogram()
2017 Record.push_back(VE.getMetadataOrNullID(N->getRawUnit())); in writeDISubprogram()
2018 Record.push_back(VE.getMetadataOrNullID(N->getTemplateParams().get())); in writeDISubprogram()
2019 Record.push_back(VE.getMetadataOrNullID(N->getDeclaration())); in writeDISubprogram()
2020 Record.push_back(VE.getMetadataOrNullID(N->getRetainedNodes().get())); in writeDISubprogram()
2021 Record.push_back(N->getThisAdjustment()); in writeDISubprogram()
2022 Record.push_back(VE.getMetadataOrNullID(N->getThrownTypes().get())); in writeDISubprogram()
2023 Record.push_back(VE.getMetadataOrNullID(N->getAnnotations().get())); in writeDISubprogram()
2024 Record.push_back(VE.getMetadataOrNullID(N->getRawTargetFuncName())); in writeDISubprogram()
2026 Stream.EmitRecord(bitc::METADATA_SUBPROGRAM, Record, Abbrev); in writeDISubprogram()
2027 Record.clear(); in writeDISubprogram()
2031 SmallVectorImpl<uint64_t> &Record, in writeDILexicalBlock() argument
2033 Record.push_back(N->isDistinct()); in writeDILexicalBlock()
2034 Record.push_back(VE.getMetadataOrNullID(N->getScope())); in writeDILexicalBlock()
2035 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDILexicalBlock()
2036 Record.push_back(N->getLine()); in writeDILexicalBlock()
2037 Record.push_back(N->getColumn()); in writeDILexicalBlock()
2039 Stream.EmitRecord(bitc::METADATA_LEXICAL_BLOCK, Record, Abbrev); in writeDILexicalBlock()
2040 Record.clear(); in writeDILexicalBlock()
2044 const DILexicalBlockFile *N, SmallVectorImpl<uint64_t> &Record, in writeDILexicalBlockFile() argument
2046 Record.push_back(N->isDistinct()); in writeDILexicalBlockFile()
2047 Record.push_back(VE.getMetadataOrNullID(N->getScope())); in writeDILexicalBlockFile()
2048 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDILexicalBlockFile()
2049 Record.push_back(N->getDiscriminator()); in writeDILexicalBlockFile()
2051 Stream.EmitRecord(bitc::METADATA_LEXICAL_BLOCK_FILE, Record, Abbrev); in writeDILexicalBlockFile()
2052 Record.clear(); in writeDILexicalBlockFile()
2056 SmallVectorImpl<uint64_t> &Record, in writeDICommonBlock() argument
2058 Record.push_back(N->isDistinct()); in writeDICommonBlock()
2059 Record.push_back(VE.getMetadataOrNullID(N->getScope())); in writeDICommonBlock()
2060 Record.push_back(VE.getMetadataOrNullID(N->getDecl())); in writeDICommonBlock()
2061 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDICommonBlock()
2062 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDICommonBlock()
2063 Record.push_back(N->getLineNo()); in writeDICommonBlock()
2065 Stream.EmitRecord(bitc::METADATA_COMMON_BLOCK, Record, Abbrev); in writeDICommonBlock()
2066 Record.clear(); in writeDICommonBlock()
2070 SmallVectorImpl<uint64_t> &Record, in writeDINamespace() argument
2072 Record.push_back(N->isDistinct() | N->getExportSymbols() << 1); in writeDINamespace()
2073 Record.push_back(VE.getMetadataOrNullID(N->getScope())); in writeDINamespace()
2074 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDINamespace()
2076 Stream.EmitRecord(bitc::METADATA_NAMESPACE, Record, Abbrev); in writeDINamespace()
2077 Record.clear(); in writeDINamespace()
2081 SmallVectorImpl<uint64_t> &Record, in writeDIMacro() argument
2083 Record.push_back(N->isDistinct()); in writeDIMacro()
2084 Record.push_back(N->getMacinfoType()); in writeDIMacro()
2085 Record.push_back(N->getLine()); in writeDIMacro()
2086 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDIMacro()
2087 Record.push_back(VE.getMetadataOrNullID(N->getRawValue())); in writeDIMacro()
2089 Stream.EmitRecord(bitc::METADATA_MACRO, Record, Abbrev); in writeDIMacro()
2090 Record.clear(); in writeDIMacro()
2094 SmallVectorImpl<uint64_t> &Record, in writeDIMacroFile() argument
2096 Record.push_back(N->isDistinct()); in writeDIMacroFile()
2097 Record.push_back(N->getMacinfoType()); in writeDIMacroFile()
2098 Record.push_back(N->getLine()); in writeDIMacroFile()
2099 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDIMacroFile()
2100 Record.push_back(VE.getMetadataOrNullID(N->getElements().get())); in writeDIMacroFile()
2102 Stream.EmitRecord(bitc::METADATA_MACRO_FILE, Record, Abbrev); in writeDIMacroFile()
2103 Record.clear(); in writeDIMacroFile()
2107 SmallVectorImpl<uint64_t> &Record) { in writeDIArgList() argument
2108 Record.reserve(N->getArgs().size()); in writeDIArgList()
2110 Record.push_back(VE.getMetadataID(MD)); in writeDIArgList()
2112 Stream.EmitRecord(bitc::METADATA_ARG_LIST, Record); in writeDIArgList()
2113 Record.clear(); in writeDIArgList()
2117 SmallVectorImpl<uint64_t> &Record, in writeDIModule() argument
2119 Record.push_back(N->isDistinct()); in writeDIModule()
2121 Record.push_back(VE.getMetadataOrNullID(I)); in writeDIModule()
2122 Record.push_back(N->getLineNo()); in writeDIModule()
2123 Record.push_back(N->getIsDecl()); in writeDIModule()
2125 Stream.EmitRecord(bitc::METADATA_MODULE, Record, Abbrev); in writeDIModule()
2126 Record.clear(); in writeDIModule()
2130 SmallVectorImpl<uint64_t> &Record, in writeDIAssignID() argument
2133 Record.push_back(N->isDistinct()); in writeDIAssignID()
2134 Stream.EmitRecord(bitc::METADATA_ASSIGN_ID, Record, Abbrev); in writeDIAssignID()
2135 Record.clear(); in writeDIAssignID()
2139 const DITemplateTypeParameter *N, SmallVectorImpl<uint64_t> &Record, in writeDITemplateTypeParameter() argument
2141 Record.push_back(N->isDistinct()); in writeDITemplateTypeParameter()
2142 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDITemplateTypeParameter()
2143 Record.push_back(VE.getMetadataOrNullID(N->getType())); in writeDITemplateTypeParameter()
2144 Record.push_back(N->isDefault()); in writeDITemplateTypeParameter()
2146 Stream.EmitRecord(bitc::METADATA_TEMPLATE_TYPE, Record, Abbrev); in writeDITemplateTypeParameter()
2147 Record.clear(); in writeDITemplateTypeParameter()
2151 const DITemplateValueParameter *N, SmallVectorImpl<uint64_t> &Record, in writeDITemplateValueParameter() argument
2153 Record.push_back(N->isDistinct()); in writeDITemplateValueParameter()
2154 Record.push_back(N->getTag()); in writeDITemplateValueParameter()
2155 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDITemplateValueParameter()
2156 Record.push_back(VE.getMetadataOrNullID(N->getType())); in writeDITemplateValueParameter()
2157 Record.push_back(N->isDefault()); in writeDITemplateValueParameter()
2158 Record.push_back(VE.getMetadataOrNullID(N->getValue())); in writeDITemplateValueParameter()
2160 Stream.EmitRecord(bitc::METADATA_TEMPLATE_VALUE, Record, Abbrev); in writeDITemplateValueParameter()
2161 Record.clear(); in writeDITemplateValueParameter()
2165 const DIGlobalVariable *N, SmallVectorImpl<uint64_t> &Record, in writeDIGlobalVariable() argument
2168 Record.push_back((uint64_t)N->isDistinct() | Version); in writeDIGlobalVariable()
2169 Record.push_back(VE.getMetadataOrNullID(N->getScope())); in writeDIGlobalVariable()
2170 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDIGlobalVariable()
2171 Record.push_back(VE.getMetadataOrNullID(N->getRawLinkageName())); in writeDIGlobalVariable()
2172 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDIGlobalVariable()
2173 Record.push_back(N->getLine()); in writeDIGlobalVariable()
2174 Record.push_back(VE.getMetadataOrNullID(N->getType())); in writeDIGlobalVariable()
2175 Record.push_back(N->isLocalToUnit()); in writeDIGlobalVariable()
2176 Record.push_back(N->isDefinition()); in writeDIGlobalVariable()
2177 Record.push_back(VE.getMetadataOrNullID(N->getStaticDataMemberDeclaration())); in writeDIGlobalVariable()
2178 Record.push_back(VE.getMetadataOrNullID(N->getTemplateParams())); in writeDIGlobalVariable()
2179 Record.push_back(N->getAlignInBits()); in writeDIGlobalVariable()
2180 Record.push_back(VE.getMetadataOrNullID(N->getAnnotations().get())); in writeDIGlobalVariable()
2182 Stream.EmitRecord(bitc::METADATA_GLOBAL_VAR, Record, Abbrev); in writeDIGlobalVariable()
2183 Record.clear(); in writeDIGlobalVariable()
2187 const DILocalVariable *N, SmallVectorImpl<uint64_t> &Record, in writeDILocalVariable() argument
2191 // 1) Record has no artificial tag (Record[1]), in writeDILocalVariable()
2192 // has no obsolete inlinedAt field (Record[9]). in writeDILocalVariable()
2193 // In this case Record size will be 8, HasAlignment flag is false. in writeDILocalVariable()
2194 // 2) Record has artificial tag (Record[1]), in writeDILocalVariable()
2195 // has no obsolete inlignedAt field (Record[9]). in writeDILocalVariable()
2196 // In this case Record size will be 9, HasAlignment flag is false. in writeDILocalVariable()
2197 // 3) Record has both artificial tag (Record[1]) and in writeDILocalVariable()
2198 // obsolete inlignedAt field (Record[9]). in writeDILocalVariable()
2199 // In this case Record size will be 10, HasAlignment flag is false. in writeDILocalVariable()
2200 // 4) Record has neither artificial tag, nor inlignedAt field, but in writeDILocalVariable()
2201 // HasAlignment flag is true and Record[8] contains alignment value. in writeDILocalVariable()
2203 Record.push_back((uint64_t)N->isDistinct() | HasAlignmentFlag); in writeDILocalVariable()
2204 Record.push_back(VE.getMetadataOrNullID(N->getScope())); in writeDILocalVariable()
2205 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDILocalVariable()
2206 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDILocalVariable()
2207 Record.push_back(N->getLine()); in writeDILocalVariable()
2208 Record.push_back(VE.getMetadataOrNullID(N->getType())); in writeDILocalVariable()
2209 Record.push_back(N->getArg()); in writeDILocalVariable()
2210 Record.push_back(N->getFlags()); in writeDILocalVariable()
2211 Record.push_back(N->getAlignInBits()); in writeDILocalVariable()
2212 Record.push_back(VE.getMetadataOrNullID(N->getAnnotations().get())); in writeDILocalVariable()
2214 Stream.EmitRecord(bitc::METADATA_LOCAL_VAR, Record, Abbrev); in writeDILocalVariable()
2215 Record.clear(); in writeDILocalVariable()
2219 const DILabel *N, SmallVectorImpl<uint64_t> &Record, in writeDILabel() argument
2221 Record.push_back((uint64_t)N->isDistinct()); in writeDILabel()
2222 Record.push_back(VE.getMetadataOrNullID(N->getScope())); in writeDILabel()
2223 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDILabel()
2224 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDILabel()
2225 Record.push_back(N->getLine()); in writeDILabel()
2227 Stream.EmitRecord(bitc::METADATA_LABEL, Record, Abbrev); in writeDILabel()
2228 Record.clear(); in writeDILabel()
2232 SmallVectorImpl<uint64_t> &Record, in writeDIExpression() argument
2234 Record.reserve(N->getElements().size() + 1); in writeDIExpression()
2236 Record.push_back((uint64_t)N->isDistinct() | Version); in writeDIExpression()
2237 Record.append(N->elements_begin(), N->elements_end()); in writeDIExpression()
2239 Stream.EmitRecord(bitc::METADATA_EXPRESSION, Record, Abbrev); in writeDIExpression()
2240 Record.clear(); in writeDIExpression()
2244 const DIGlobalVariableExpression *N, SmallVectorImpl<uint64_t> &Record, in writeDIGlobalVariableExpression() argument
2246 Record.push_back(N->isDistinct()); in writeDIGlobalVariableExpression()
2247 Record.push_back(VE.getMetadataOrNullID(N->getVariable())); in writeDIGlobalVariableExpression()
2248 Record.push_back(VE.getMetadataOrNullID(N->getExpression())); in writeDIGlobalVariableExpression()
2250 Stream.EmitRecord(bitc::METADATA_GLOBAL_VAR_EXPR, Record, Abbrev); in writeDIGlobalVariableExpression()
2251 Record.clear(); in writeDIGlobalVariableExpression()
2255 SmallVectorImpl<uint64_t> &Record, in writeDIObjCProperty() argument
2257 Record.push_back(N->isDistinct()); in writeDIObjCProperty()
2258 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDIObjCProperty()
2259 Record.push_back(VE.getMetadataOrNullID(N->getFile())); in writeDIObjCProperty()
2260 Record.push_back(N->getLine()); in writeDIObjCProperty()
2261 Record.push_back(VE.getMetadataOrNullID(N->getRawSetterName())); in writeDIObjCProperty()
2262 Record.push_back(VE.getMetadataOrNullID(N->getRawGetterName())); in writeDIObjCProperty()
2263 Record.push_back(N->getAttributes()); in writeDIObjCProperty()
2264 Record.push_back(VE.getMetadataOrNullID(N->getType())); in writeDIObjCProperty()
2266 Stream.EmitRecord(bitc::METADATA_OBJC_PROPERTY, Record, Abbrev); in writeDIObjCProperty()
2267 Record.clear(); in writeDIObjCProperty()
2271 const DIImportedEntity *N, SmallVectorImpl<uint64_t> &Record, in writeDIImportedEntity() argument
2273 Record.push_back(N->isDistinct()); in writeDIImportedEntity()
2274 Record.push_back(N->getTag()); in writeDIImportedEntity()
2275 Record.push_back(VE.getMetadataOrNullID(N->getScope())); in writeDIImportedEntity()
2276 Record.push_back(VE.getMetadataOrNullID(N->getEntity())); in writeDIImportedEntity()
2277 Record.push_back(N->getLine()); in writeDIImportedEntity()
2278 Record.push_back(VE.getMetadataOrNullID(N->getRawName())); in writeDIImportedEntity()
2279 Record.push_back(VE.getMetadataOrNullID(N->getRawFile())); in writeDIImportedEntity()
2280 Record.push_back(VE.getMetadataOrNullID(N->getElements().get())); in writeDIImportedEntity()
2282 Stream.EmitRecord(bitc::METADATA_IMPORTED_ENTITY, Record, Abbrev); in writeDIImportedEntity()
2283 Record.clear(); in writeDIImportedEntity()
2295 SmallVectorImpl<uint64_t> &Record) { in writeNamedMetadata() argument
2303 Record.append(Str.bytes_begin(), Str.bytes_end()); in writeNamedMetadata()
2304 Stream.EmitRecord(bitc::METADATA_NAME, Record, Abbrev); in writeNamedMetadata()
2305 Record.clear(); in writeNamedMetadata()
2309 Record.push_back(VE.getMetadataID(N)); in writeNamedMetadata()
2310 Stream.EmitRecord(bitc::METADATA_NAMED_NODE, Record, 0); in writeNamedMetadata()
2311 Record.clear(); in writeNamedMetadata()
2324 /// Write out a record for MDString.
2327 /// record. The sizes and strings themselves are shoved into a blob.
2329 ArrayRef<const Metadata *> Strings, SmallVectorImpl<uint64_t> &Record) { in writeMetadataStrings() argument
2333 // Start the record with the number of strings. in writeMetadataStrings()
2334 Record.push_back(bitc::METADATA_STRINGS); in writeMetadataStrings()
2335 Record.push_back(Strings.size()); in writeMetadataStrings()
2346 // Add the offset to the strings to the record. in writeMetadataStrings()
2347 Record.push_back(Blob.size()); in writeMetadataStrings()
2353 // Emit the final record. in writeMetadataStrings()
2354 Stream.EmitRecordWithBlob(createMetadataStringsAbbrev(), Record, Blob); in writeMetadataStrings()
2355 Record.clear(); in writeMetadataStrings()
2358 // Generates an enum to use as an index in the Abbrev array of Metadata record.
2366 ArrayRef<const Metadata *> MDs, SmallVectorImpl<uint64_t> &Record, in writeMetadataRecords() argument
2387 write##CLASS(cast<CLASS>(N), Record, \ in writeMetadataRecords()
2390 write##CLASS(cast<CLASS>(N), Record, CLASS##Abbrev); \ in writeMetadataRecords()
2396 writeDIArgList(AL, Record); in writeMetadataRecords()
2399 writeValueAsMetadata(cast<ValueAsMetadata>(MD), Record); in writeMetadataRecords()
2408 SmallVector<uint64_t, 64> Record; in writeModuleMetadata() local
2432 writeMetadataStrings(VE.getMDStrings(), Record); in writeModuleMetadata()
2434 // We only emit an index for the metadata record if we have more than a given in writeModuleMetadata()
2450 // This index will contain the bitpos for each individual record. in writeModuleMetadata()
2455 writeMetadataRecords(VE.getNonMDStrings(), Record, &MDAbbrevs, &IndexPos); in writeModuleMetadata()
2472 // Emit the index record. in writeModuleMetadata()
2478 writeNamedMetadata(Record); in writeModuleMetadata()
2481 SmallVector<uint64_t, 4> Record; in writeModuleMetadata() local
2482 Record.push_back(VE.getValueID(&GO)); in writeModuleMetadata()
2483 pushGlobalMetadataAttachment(Record, GO); in writeModuleMetadata()
2484 Stream.EmitRecord(bitc::METADATA_GLOBAL_DECL_ATTACHMENT, Record); in writeModuleMetadata()
2503 SmallVector<uint64_t, 64> Record; in writeFunctionMetadata() local
2504 writeMetadataStrings(VE.getMDStrings(), Record); in writeFunctionMetadata()
2505 writeMetadataRecords(VE.getNonMDStrings(), Record); in writeFunctionMetadata()
2510 SmallVectorImpl<uint64_t> &Record, const GlobalObject &GO) { in pushGlobalMetadataAttachment() argument
2515 Record.push_back(I.first); in pushGlobalMetadataAttachment()
2516 Record.push_back(VE.getMetadataID(I.second)); in pushGlobalMetadataAttachment()
2523 SmallVector<uint64_t, 64> Record; in writeFunctionMetadataAttachment() local
2526 pushGlobalMetadataAttachment(Record, F); in writeFunctionMetadataAttachment()
2527 Stream.EmitRecord(bitc::METADATA_ATTACHMENT, Record, 0); in writeFunctionMetadataAttachment()
2528 Record.clear(); in writeFunctionMetadataAttachment()
2542 Record.push_back(VE.getInstructionID(&I)); in writeFunctionMetadataAttachment()
2545 Record.push_back(MDs[i].first); in writeFunctionMetadataAttachment()
2546 Record.push_back(VE.getMetadataID(MDs[i].second)); in writeFunctionMetadataAttachment()
2548 Stream.EmitRecord(bitc::METADATA_ATTACHMENT, Record, 0); in writeFunctionMetadataAttachment()
2549 Record.clear(); in writeFunctionMetadataAttachment()
2556 SmallVector<uint64_t, 64> Record; in writeModuleMetadataKinds() local
2568 Record.push_back(MDKindID); in writeModuleMetadataKinds()
2570 Record.append(KName.begin(), KName.end()); in writeModuleMetadataKinds()
2572 Stream.EmitRecord(bitc::METADATA_KIND, Record, 0); in writeModuleMetadataKinds()
2573 Record.clear(); in writeModuleMetadataKinds()
2594 SmallVector<uint64_t, 64> Record; in writeOperandBundleTags() local
2597 Record.append(Tag.begin(), Tag.end()); in writeOperandBundleTags()
2599 Stream.EmitRecord(bitc::OPERAND_BUNDLE_TAG, Record, 0); in writeOperandBundleTags()
2600 Record.clear(); in writeOperandBundleTags()
2614 SmallVector<uint64_t, 64> Record; in writeSyncScopeNames() local
2616 Record.append(SSN.begin(), SSN.end()); in writeSyncScopeNames()
2617 Stream.EmitRecord(bitc::SYNC_SCOPE_NAME, Record, 0); in writeSyncScopeNames()
2618 Record.clear(); in writeSyncScopeNames()
2663 SmallVector<uint64_t, 64> Record; in writeConstants() local
2672 Record.push_back(VE.getTypeID(LastTy)); in writeConstants()
2673 Stream.EmitRecord(bitc::CST_CODE_SETTYPE, Record, in writeConstants()
2675 Record.clear(); in writeConstants()
2679 Record.push_back(VE.getTypeID(IA->getFunctionType())); in writeConstants()
2680 Record.push_back( in writeConstants()
2686 Record.push_back(AsmStr.size()); in writeConstants()
2687 Record.append(AsmStr.begin(), AsmStr.end()); in writeConstants()
2691 Record.push_back(ConstraintStr.size()); in writeConstants()
2692 Record.append(ConstraintStr.begin(), ConstraintStr.end()); in writeConstants()
2693 Stream.EmitRecord(bitc::CST_CODE_INLINEASM, Record); in writeConstants()
2694 Record.clear(); in writeConstants()
2709 emitSignedInt64(Record, V); in writeConstants()
2713 emitWideAPInt(Record, IV->getValue()); in writeConstants()
2721 Record.push_back(CFP->getValueAPF().bitcastToAPInt().getZExtValue()); in writeConstants()
2727 Record.push_back((p[1] << 48) | (p[0] >> 16)); in writeConstants()
2728 Record.push_back(p[0] & 0xffffLL); in writeConstants()
2732 Record.push_back(p[0]); in writeConstants()
2733 Record.push_back(p[1]); in writeConstants()
2754 Record.push_back(V); in writeConstants()
2770 Record.push_back(CDS->getElementAsInteger(i)); in writeConstants()
2773 Record.push_back( in writeConstants()
2779 Record.push_back(VE.getValueID(Op)); in writeConstants()
2786 Record.push_back(getEncodedCastOpcode(CE->getOpcode())); in writeConstants()
2787 Record.push_back(VE.getTypeID(C->getOperand(0)->getType())); in writeConstants()
2788 Record.push_back(VE.getValueID(C->getOperand(0))); in writeConstants()
2793 Record.push_back(getEncodedBinaryOpcode(CE->getOpcode())); in writeConstants()
2794 Record.push_back(VE.getValueID(C->getOperand(0))); in writeConstants()
2795 Record.push_back(VE.getValueID(C->getOperand(1))); in writeConstants()
2798 Record.push_back(Flags); in writeConstants()
2804 Record.push_back(getEncodedUnaryOpcode(CE->getOpcode())); in writeConstants()
2805 Record.push_back(VE.getValueID(C->getOperand(0))); in writeConstants()
2808 Record.push_back(Flags); in writeConstants()
2814 Record.push_back(VE.getTypeID(GO->getSourceElementType())); in writeConstants()
2815 Record.push_back(getOptimizationFlags(GO)); in writeConstants()
2818 emitConstantRange(Record, *Range, /*EmitBitWidth=*/true); in writeConstants()
2821 Record.push_back(VE.getTypeID(C->getOperand(i)->getType())); in writeConstants()
2822 Record.push_back(VE.getValueID(C->getOperand(i))); in writeConstants()
2828 Record.push_back(VE.getTypeID(C->getOperand(0)->getType())); in writeConstants()
2829 Record.push_back(VE.getValueID(C->getOperand(0))); in writeConstants()
2830 Record.push_back(VE.getTypeID(C->getOperand(1)->getType())); in writeConstants()
2831 Record.push_back(VE.getValueID(C->getOperand(1))); in writeConstants()
2835 Record.push_back(VE.getValueID(C->getOperand(0))); in writeConstants()
2836 Record.push_back(VE.getValueID(C->getOperand(1))); in writeConstants()
2837 Record.push_back(VE.getTypeID(C->getOperand(2)->getType())); in writeConstants()
2838 Record.push_back(VE.getValueID(C->getOperand(2))); in writeConstants()
2849 Record.push_back(VE.getTypeID(C->getOperand(0)->getType())); in writeConstants()
2851 Record.push_back(VE.getValueID(C->getOperand(0))); in writeConstants()
2852 Record.push_back(VE.getValueID(C->getOperand(1))); in writeConstants()
2853 Record.push_back(VE.getValueID(CE->getShuffleMaskForBitcode())); in writeConstants()
2858 Record.push_back(VE.getTypeID(BA->getFunction()->getType())); in writeConstants()
2859 Record.push_back(VE.getValueID(BA->getFunction())); in writeConstants()
2860 Record.push_back(VE.getGlobalBasicBlockID(BA->getBasicBlock())); in writeConstants()
2863 Record.push_back(VE.getTypeID(Equiv->getGlobalValue()->getType())); in writeConstants()
2864 Record.push_back(VE.getValueID(Equiv->getGlobalValue())); in writeConstants()
2867 Record.push_back(VE.getTypeID(NC->getGlobalValue()->getType())); in writeConstants()
2868 Record.push_back(VE.getValueID(NC->getGlobalValue())); in writeConstants()
2871 Record.push_back(VE.getValueID(CPA->getPointer())); in writeConstants()
2872 Record.push_back(VE.getValueID(CPA->getKey())); in writeConstants()
2873 Record.push_back(VE.getValueID(CPA->getDiscriminator())); in writeConstants()
2874 Record.push_back(VE.getValueID(CPA->getAddrDiscriminator())); in writeConstants()
2881 Stream.EmitRecord(Code, Record, AbbrevToUse); in writeConstants()
2882 Record.clear(); in writeConstants()
2923 SmallVector<unsigned, 64> Record; in writeOperandBundles() local
2928 Record.push_back(C.getOperandBundleTagID(Bundle.getTagName())); in writeOperandBundles()
2931 pushValueAndType(Input, InstID, Record); in writeOperandBundles()
2933 Stream.EmitRecord(bitc::FUNC_CODE_OPERAND_BUNDLE, Record); in writeOperandBundles()
2934 Record.clear(); in writeOperandBundles()
3276 unsigned Record = 0; in writeInstruction() local
3279 Record, EncodedAlign & ((1 << APV::AlignLower::Bits) - 1)); in writeInstruction()
3280 Bitfield::set<APV::AlignUpper>(Record, in writeInstruction()
3282 Bitfield::set<APV::UsedWithInAlloca>(Record, AI.isUsedWithInAlloca()); in writeInstruction()
3283 Bitfield::set<APV::ExplicitType>(Record, true); in writeInstruction()
3284 Bitfield::set<APV::SwiftError>(Record, AI.isSwiftError()); in writeInstruction()
3285 Vals.push_back(Record); in writeInstruction()
3418 // the VST forward declaration record. in writeGlobalValueSymbolTable()
3437 uint64_t Record[2]; in writeGlobalValueSymbolTable() local
3442 Record[0] = VE.getValueID(&F); in writeGlobalValueSymbolTable()
3451 Record[1] = BitcodeIndex / 32 + 1; in writeGlobalValueSymbolTable()
3453 Stream.EmitRecord(bitc::VST_CODE_FNENTRY, Record, FnEntryAbbrev); in writeGlobalValueSymbolTable()
3496 // Emit the finished record. in writeFunctionLevelValueSymbolTable()
3512 SmallVector<uint64_t, 64> Record(Order.Shuffle.begin(), Order.Shuffle.end()); in writeUseList() local
3513 Record.push_back(VE.getValueID(Order.V)); in writeUseList()
3514 Stream.EmitRecord(Code, Record); in writeUseList()
3984 // Emit the finished record. in writeModStrings()
3990 // Emit the hash record. in writeModStrings()
4008 SmallVector<uint64_t, 64> Record; in writeFunctionTypeMetadataRecords() local
4014 Record.clear(); in writeFunctionTypeMetadataRecords()
4016 Record.push_back(VF.GUID); in writeFunctionTypeMetadataRecords()
4017 Record.push_back(VF.Offset); in writeFunctionTypeMetadataRecords()
4019 Stream.EmitRecord(Ty, Record); in writeFunctionTypeMetadataRecords()
4030 Record.clear(); in writeFunctionTypeMetadataRecords()
4031 Record.push_back(VC.VFunc.GUID); in writeFunctionTypeMetadataRecords()
4032 Record.push_back(VC.VFunc.Offset); in writeFunctionTypeMetadataRecords()
4033 llvm::append_range(Record, VC.Args); in writeFunctionTypeMetadataRecords()
4034 Stream.EmitRecord(Ty, Record); in writeFunctionTypeMetadataRecords()
4047 emitSignedInt64(Record, *Range.getLower().getRawData()); in writeFunctionTypeMetadataRecords()
4048 emitSignedInt64(Record, *Range.getUpper().getRawData()); in writeFunctionTypeMetadataRecords()
4052 Record.clear(); in writeFunctionTypeMetadataRecords()
4054 size_t UndoSize = Record.size(); in writeFunctionTypeMetadataRecords()
4055 Record.push_back(Arg.ParamNo); in writeFunctionTypeMetadataRecords()
4057 Record.push_back(Arg.Calls.size()); in writeFunctionTypeMetadataRecords()
4059 Record.push_back(Call.ParamNo); in writeFunctionTypeMetadataRecords()
4064 Record.resize(UndoSize); in writeFunctionTypeMetadataRecords()
4067 Record.push_back(*ValueID); in writeFunctionTypeMetadataRecords()
4071 if (!Record.empty()) in writeFunctionTypeMetadataRecords()
4072 Stream.EmitRecord(bitc::FS_PARAM_ACCESS, Record); in writeFunctionTypeMetadataRecords()
4166 SmallVector<uint64_t> Record; in writeFunctionHeapProfileRecords() local
4169 Record.clear(); in writeFunctionHeapProfileRecords()
4173 Record.push_back(GetValueID(CI.Callee)); in writeFunctionHeapProfileRecords()
4175 Record.push_back(CI.StackIdIndices.size()); in writeFunctionHeapProfileRecords()
4176 Record.push_back(CI.Clones.size()); in writeFunctionHeapProfileRecords()
4179 Record.push_back(GetStackIndex(Id)); in writeFunctionHeapProfileRecords()
4182 Record.push_back(V); in writeFunctionHeapProfileRecords()
4186 Record, CallsiteAbbrev); in writeFunctionHeapProfileRecords()
4190 Record.clear(); in writeFunctionHeapProfileRecords()
4194 Record.push_back(AI.MIBs.size()); in writeFunctionHeapProfileRecords()
4196 Record.push_back(AI.Versions.size()); in writeFunctionHeapProfileRecords()
4198 Record.push_back((uint8_t)MIB.AllocType); in writeFunctionHeapProfileRecords()
4199 Record.push_back(MIB.StackIdIndices.size()); in writeFunctionHeapProfileRecords()
4201 Record.push_back(GetStackIndex(Id)); in writeFunctionHeapProfileRecords()
4205 Record.push_back(V); in writeFunctionHeapProfileRecords()
4210 Record.push_back(Size); in writeFunctionHeapProfileRecords()
4214 Record, AllocAbbrev); in writeFunctionHeapProfileRecords()
4218 // Helper to emit a single function summary record.
4266 // Emit the finished record. in writePerModuleFunctionSummaryRecord()
4272 // and emit them in a summary record.
4612 // immediately after the record. in writeCombinedGlobalValueSummary()
4640 // If this is invoked for an aliasee, we want to record the above in writeCombinedGlobalValueSummary()
4666 // Emit the finished record. in writeCombinedGlobalValueSummary()
4691 // the callee function summary is not included. Record 0 which we in writeCombinedGlobalValueSummary()
4739 // summary and we don't need to record any calls to it. in writeCombinedGlobalValueSummary()
4747 // Emit the finished record. in writeCombinedGlobalValueSummary()
4766 // Emit the finished record. in writeCombinedGlobalValueSummary()
4823 /// current llvm version, and a record for the epoch number.
4858 // Emit the finished record. in writeModuleHash()
5017 void BitcodeWriter::writeBlob(unsigned Block, unsigned Record, StringRef Blob) { in writeBlob() argument
5021 Abbv->Add(BitCodeAbbrevOp(Record)); in writeBlob()
5025 Stream->EmitRecordWithBlob(AbbrevNo, ArrayRef<uint64_t>{Record}, Blob); in writeBlob()