9#ifndef LLVM_DEBUGINFO_CODEVIEW_DEBUGLINESSUBSECTION_H
10#define LLVM_DEBUGINFO_CODEVIEW_DEBUGLINESSUBSECTION_H
95 Iterator
begin()
const {
return LinesAndColumns.begin(); }
96 Iterator
end()
const {
return LinesAndColumns.end(); }
104 LineInfoArray LinesAndColumns;
109 Block(
uint32_t ChecksumBufferOffset)
110 : ChecksumBufferOffset(ChecksumBufferOffset) {}
113 std::vector<LineNumberEntry>
Lines;
114 std::vector<ColumnNumberEntry> Columns;
130 uint32_t calculateSerializedSize()
const override;
137 bool hasColumnInfo()
const;
145 std::vector<Block> Blocks;
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.
StringRef - Represent a constant reference to a string, i.e.
VarStreamArrayIterator< LineColumnEntry, LineColumnExtractor > Iterator
LLVM_ABI bool hasColumnInfo() const
LLVM_ABI DebugLinesSubsectionRef()
const LineFragmentHeader * header() const
static bool classof(const DebugSubsectionRef *S)
LLVM_ABI Error initialize(BinaryStreamReader Reader)
friend class LineColumnExtractor
DebugLinesSubsection(DebugChecksumsSubsection &Checksums, DebugStringTableSubsection &Strings)
static bool classof(const DebugSubsection *S)
Represents a read-write view of a CodeView string table.
DebugSubsectionKind kind() const
DebugSubsectionRef(DebugSubsectionKind Kind)
DebugSubsection(DebugSubsectionKind Kind)
DebugSubsectionKind kind() const
const LineFragmentHeader * Header
LLVM_ABI Error operator()(BinaryStreamRef Stream, uint32_t &Len, LineColumnEntry &Item)
detail::packed_endian_specific_integral< uint32_t, llvm::endianness::little, unaligned > ulittle32_t
detail::packed_endian_specific_integral< uint16_t, llvm::endianness::little, unaligned > ulittle16_t
This is an optimization pass for GlobalISel generic memory operations.
support::ulittle16_t StartColumn
support::ulittle16_t EndColumn
FixedStreamArray< ColumnNumberEntry > Columns
support::ulittle32_t NameIndex
FixedStreamArray< LineNumberEntry > LineNumbers
support::ulittle32_t Offset
support::ulittle32_t Flags