29 : Container(Container), Kind(Kind), Data(Data) {}
43 Info.Container = Container;
58 : Subsection(
std::move(Subsection)), Container(Container) {}
62 : Contents(Contents), Container(Container) {}
65 uint32_t DataSize = Subsection ? Subsection->calculateSerializedSize()
74 "Debug Subsection not properly aligned");
80 uint32_t DataSize = Subsection ? Subsection->calculateSerializedSize()
87 if (
auto EC = Subsection->commit(Writer))
Error writeObject(const T &Obj)
Writes the object Obj to the underlying stream, as if by using memcpy.
This class represents lattice values for constants.
Error readObject(const T *&Dest)
Get a pointer to an object of type T from the underlying stream, as if by memcpy, and store the resul...
DebugSubsectionKind kind() const
uint64_t alignTo(uint64_t Value, uint64_t Align, uint64_t Skew=0)
Returns the next integer (mod 2**64) that is greater than or equal to Value and is a multiple of Alig...
BinaryStreamRef getRecordData() const
uint32_t alignOf(CodeViewContainer Container)
Analysis containing CSE Info
uint32_t getRecordLength() const
uint32_t getOffset() const
Error writeStreamRef(BinaryStreamRef Ref)
Efficiently reads all data from Ref, and writes it to this stream.
Provides write only access to a subclass of WritableBinaryStream.
uint32_t getLength() const
static ErrorSuccess success()
Create a success value.
BinaryStreamRef is to BinaryStream what ArrayRef is to an Array.
static Error initialize(BinaryStreamRef Stream, DebugSubsectionRecord &Info, CodeViewContainer Container)
Error padToAlignment(uint32_t Align)
Error readStreamRef(BinaryStreamRef &Ref)
Read the entire remainder of the underlying stream into Ref.
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
Lightweight error class with error context and mandatory checking.
Provides read only access to a subclass of BinaryStream.
uint32_t calculateSerializedLength()
DebugSubsectionRecordBuilder(std::shared_ptr< DebugSubsection > Subsection, CodeViewContainer Container)
Error commit(BinaryStreamWriter &Writer) const