Struct rustc_codegen_llvm::coverageinfo::mapgen::CoverageMapGenerator[−][src]

struct CoverageMapGenerator {
    filenames: FxIndexSet<CString>,
}

Fields

filenames: FxIndexSet<CString>

Implementations

impl CoverageMapGenerator[src]

fn new() -> Self[src]

fn write_coverage_mapping<'a>(
    &mut self,
    expressions: Vec<CounterExpression>,
    counter_regions: impl Iterator<Item = (Counter, &'a CodeRegion)>,
    coverage_mapping_buffer: &RustString
)
[src]

Using the expressions and counter_regions collected for the current function, generate the mapping_regions and virtual_file_mapping, and capture any new filenames. Then use LLVM APIs to encode the virtual_file_mapping, expressions, and mapping_regions into the given coverage_mapping byte buffer, compliant with the LLVM Coverage Mapping format.

fn generate_coverage_map<'ll, 'tcx>(
    self,
    cx: &CodegenCx<'ll, 'tcx>,
    version: u32,
    filenames_size: usize,
    filenames_val: &'ll Value
) -> &'ll Value
[src]

Construct coverage map header and the array of function records, and combine them into the coverage map. Save the coverage map data into the LLVM IR as a static global using a specific, well-known section and name.

Auto Trait Implementations

impl RefUnwindSafe for CoverageMapGenerator

impl Send for CoverageMapGenerator

impl Sync for CoverageMapGenerator

impl Unpin for CoverageMapGenerator

impl UnwindSafe for CoverageMapGenerator

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.