Struct llhd::analysis::TemporalRegionData [−][src]
pub struct TemporalRegionData {
pub id: TemporalRegion,
pub blocks: HashSet<Block>,
pub entry: bool,
pub head_insts: HashSet<Inst>,
pub head_blocks: HashSet<Block>,
pub head_tight: bool,
pub tail_insts: HashSet<Inst>,
pub tail_blocks: HashSet<Block>,
pub tail_tight: bool,
}
Expand description
Data associated with a temporal region.
Fields
id: TemporalRegion
The unique identifier for this region.
blocks: HashSet<Block>
The blocks in this region.
entry: bool
Whether this is the initial temporal region upon entering the process.
head_insts: HashSet<Inst>
The temporal instructions that introduce this region.
Note that these reside in blocks outside this region, namely in the
predecessors of the head_blocks
.
head_blocks: HashSet<Block>
The entry blocks into this region.
These are the first blocks that are jumped into upon entering this region.
head_tight: bool
The head blocks are only reachable via branches from other regions.
tail_insts: HashSet<Inst>
The temporal instructions that terminate this region.
Note that these reside in blocks inside this region, namely in the
tail_blocks
.
tail_blocks: HashSet<Block>
The exit blocks out of this region.
These are the last blocks in this region, where execution either ends
in a wait
or halt
instruction.
tail_tight: bool
The tail blocks only branch to other regions.
Implementations
An iterator over the blocks in this region.
An iterator over the head instructions in this region.
An iterator over the head blocks in this region.
An iterator over the tail instructions in this region.
An iterator over the tail blocks in this region.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for TemporalRegionData
impl Send for TemporalRegionData
impl Sync for TemporalRegionData
impl Unpin for TemporalRegionData
impl UnwindSafe for TemporalRegionData
Blanket Implementations
Mutably borrows from an owned value. Read more