23 :
Bitstream(Encoded), ContainerType(ContainerType) {}
32 R.push_back(RecordID);
56 auto Abbrev = std::make_shared<BitCodeAbbrev>();
68 auto Abbrev = std::make_shared<BitCodeAbbrev>();
80 R.push_back(RemarkVersion);
87 auto Abbrev = std::make_shared<BitCodeAbbrev>();
111 auto Abbrev = std::make_shared<BitCodeAbbrev>();
133 auto Abbrev = std::make_shared<BitCodeAbbrev>();
147 auto Abbrev = std::make_shared<BitCodeAbbrev>();
160 auto Abbrev = std::make_shared<BitCodeAbbrev>();
172 auto Abbrev = std::make_shared<BitCodeAbbrev>();
188 auto Abbrev = std::make_shared<BitCodeAbbrev>();
235 uint64_t ContainerVersion, std::optional<uint64_t> RemarkVersion,
236 std::optional<const StringTable *> StrTab,
237 std::optional<StringRef> Filename) {
244 R.push_back(ContainerVersion);
250 assert(StrTab != std::nullopt && *StrTab !=
nullptr);
252 assert(Filename != std::nullopt);
256 assert(RemarkVersion != std::nullopt);
260 assert(RemarkVersion != std::nullopt);
262 assert(StrTab != std::nullopt && *StrTab !=
nullptr);
282 if (
const std::optional<RemarkLocation> &Loc =
Remark.
Loc) {
285 R.push_back(StrTab.
add(Loc->SourceFilePath).first);
286 R.push_back(Loc->SourceLine);
287 R.push_back(Loc->SourceColumn);
294 R.push_back(*Hotness);
300 unsigned Key = StrTab.
add(
Arg.Key).first;
301 unsigned Val = StrTab.
add(
Arg.Val).first;
302 bool HasDebugLoc =
Arg.Loc != std::nullopt;
308 R.push_back(StrTab.
add(
Arg.Loc->SourceFilePath).first);
309 R.push_back(
Arg.Loc->SourceLine);
310 R.push_back(
Arg.Loc->SourceColumn);
334 "For SerializerMode::Standalone, a pre-filled string table needs to "
359 : std::optional<const StringTable *>(std::nullopt));
365 "The Block info block and the meta block were not emitted yet.");
372 raw_ostream &OS, std::optional<StringRef> ExternalFilename) {
377 return std::make_unique<BitstreamMetaSerializer>(
381 &*
StrTab, ExternalFilename);