Expand description
Routines and structures for “unrolling” a Bitstream
into a block-and-record hierarchy.
Structs§
- Bitcode
Module - A
BitcodeModule
encapsulates the top-level pieces of bitstream state needed for a single LLVM bitcode module: theIDENTIFICATION_BLOCK
, theMODULE_BLOCK
itself, aSTRTAB_BLOCK
, and aSYMTAB_BLOCK
(if the last is present). A bitstream can contain multiple LLVM modules (e.g. if produced byllvm-cat -b
), so parsing a bitstream can result in multipleBitcodeModule
s. - Unrolled
Bitcode - A fully unrolled bitcode structure, taken from a bitstream.
- Unrolled
Block - A fully unrolled block within the bitstream, with potential records and sub-blocks.
- Unrolled
Blocks - Represents a collection of unrolled blocks.
- Unrolled
Record - An “unrolled” record. This is internally indistinguishable from a raw bitstream
Record
, but is newtyped to enforce proper isolation of concerns. - Unrolled
Records - Represents a collection of unrolled records.
Enums§
- Consistency
Error - Errors that can occur when attempting to search for blocks and records within an unrolled bitstream.