llvm::BitstreamWriter

Low-level writer for emitting an arbitrary LLVM bitstream.

Synopsis

Declared in <llvm/Bitstream/BitstreamWriter.h>

class BitstreamWriter;

Member Functions

NameDescription
BitstreamWriter [constructor]Constructors
~BitstreamWriter [destructor]Flush remaining bits and assert balanced block scope on destruction.
BackpatchByte Backpatch a byte in the output at the given bit offset with the specified value.
BackpatchHalfWord Backpatch a 16-bit little-endian half-word at bit offset BitNo with Val.
BackpatchWord Backpatch a 32-bit little-endian word at bit offset BitNo with Val.
BackpatchWord64 Backpatch a 64-bit little-endian value at bit offset BitNo with Val.
Emit Emit Val using NumBits into the bitstream.
EmitAbbrev Emit the abbreviation Abbv to the stream.
EmitBlockInfoAbbrev Emit a DEFINE_ABBREV record for the specified BlockID in BLOCKINFO.
EmitCode Emit the specified code using the current block's code width.
EmitRecord Emit the specified record to the stream, using an abbrev if we have one to compress the output.
EmitRecordWithAbbrev Emit a record with the specified abbreviation.
EmitRecordWithArray EmitRecordWithArray overloads
EmitRecordWithBlob EmitRecordWithBlob overloads
EmitVBR Emit Val using VBR encoding with NumBits-wide chunks.
EmitVBR64 Emit a 64-bit value using VBR encoding with NumBits-wide chunks.
EnterBlockInfoBlock EnterBlockInfoBlock - Start emitting the BLOCKINFO_BLOCK.
EnterSubblock Enter a subblock with the given block ID and abbreviation code width.
ExitBlock Exit the current subblock, writing its size and restoring outer state.
FlushToWord Pad with zeros so the next emit starts on a 32-bit word boundary.
GetAbbrevIDWidth Retrieve the number of bits currently used to encode an abbrev ID.
GetCurrentBitNo Retrieve the current position in the stream, in bits.
emitBlob emitBlob overloads
getBlockInfo If there is block info for the specified ID, return it, otherwise return null.
getMarkedBufferAndResumeFlushing Resume flushing and return the marked unflushed buffer section.
markAndBlockFlushing Disable flushing and mark the current buffer position for later access.