9#ifndef LLVM_DEBUGINFO_CODEVIEW_DEBUGCROSSIMPSUBSECTION_H
10#define LLVM_DEBUGINFO_CODEVIEW_DEBUGCROSSIMPSUBSECTION_H
24class BinaryStreamReader;
25class BinaryStreamWriter;
46class DebugStringTableSubsection;
67 ReferenceArray References;
This file defines the StringMap class.
Lightweight arrays that are backed by an arbitrary BinaryStream.
Provides read only access to a subclass of BinaryStream.
BinaryStreamRef is to BinaryStream what ArrayRef is to an Array.
Provides write only access to a subclass of WritableBinaryStream.
Lightweight error class with error context and mandatory checking.
FixedStreamArray is similar to VarStreamArray, except with each record having a fixed-length.
A Module instance is used to store all the information related to an LLVM module.
StringMap - This is an unconventional map that is specialized for handling keys that are "strings",...
StringRef - Represent a constant reference to a string, i.e.
VarStreamArray represents an array of variable length records backed by a stream.
VarStreamArrayIterator< CrossModuleImportItem, VarStreamArrayExtractor< CrossModuleImportItem > > Iterator
Iterator begin(bool *HadError=nullptr) const
Error initialize(BinaryStreamReader Reader)
DebugCrossModuleImportsSubsectionRef()
static bool classof(const DebugSubsectionRef *S)
void addImport(StringRef Module, uint32_t ImportId)
static bool classof(const DebugSubsection *S)
uint32_t calculateSerializedSize() const override
DebugCrossModuleImportsSubsection(DebugStringTableSubsection &Strings)
Error commit(BinaryStreamWriter &Writer) const override
Represents a read-write view of a CodeView string table.
DebugSubsectionKind kind() const
DebugSubsectionKind kind() const
This is an optimization pass for GlobalISel generic memory operations.
FixedStreamArray< support::ulittle32_t > Imports
const CrossModuleImport * Header