pub type CompiledCode = CompiledCodeBase<Final>;
Expand description

CompiledCode in its final form (i.e. after FunctionParameters have been applied), ready for consumption.

Aliased Type§

struct CompiledCode {
    pub buffer: MachBufferFinalized<Final>,
    pub frame_size: u32,
    pub vcode: Option<String>,
    pub value_labels_ranges: HashMap<ValueLabel, Vec<ValueLocRange, Global>, RandomState>,
    pub sized_stackslot_offsets: PrimaryMap<StackSlot, u32>,
    pub dynamic_stackslot_offsets: PrimaryMap<DynamicStackSlot, u32>,
    pub bb_starts: Vec<u32, Global>,
    pub bb_edges: Vec<(u32, u32), Global>,
}

Fields§

§buffer: MachBufferFinalized<Final>

Machine code.

§frame_size: u32

Size of stack frame, in bytes.

§vcode: Option<String>

Disassembly, if requested.

§value_labels_ranges: HashMap<ValueLabel, Vec<ValueLocRange, Global>, RandomState>

Debug info: value labels to registers/stackslots at code offsets.

§sized_stackslot_offsets: PrimaryMap<StackSlot, u32>

Debug info: stackslots to stack pointer offsets.

§dynamic_stackslot_offsets: PrimaryMap<DynamicStackSlot, u32>

Debug info: stackslots to stack pointer offsets.

§bb_starts: Vec<u32, Global>

Basic-block layout info: block start offsets.

This info is generated only if the machine_code_cfg_info flag is set.

§bb_edges: Vec<(u32, u32), Global>

Basic-block layout info: block edges. Each edge is (from, to), where from and to are basic-block start offsets of the respective blocks.

This info is generated only if the machine_code_cfg_info flag is set.