Struct llhd::pass::tcm::TemporalCodeMotion [−][src]
pub struct TemporalCodeMotion;
Expand description
Temporal Code Motion
This pass rearranges temporal instructions. It does the following:
- Merge multiple identical waits into one (in a new block).
- Move
prb
instructions up to the top of the time region. - Move
drv
instructions down to the end of the time region, where possible. Failure to do so hints at conditionally-driven signals, such as storage elements.
Trait Implementations
Run this pass on an entire function or process.
Run this pass on an entire module.
Run this pass on an entire unit.
Run this pass on an instruction.