Struct rustc_mir::transform::simplify::CfgSimplifier [−][src]
pub struct CfgSimplifier<'a, 'tcx: 'a> {
basic_blocks: &'a mut IndexVec<BasicBlock, BasicBlockData<'tcx>>,
pred_count: IndexVec<BasicBlock, u32>,
}🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Fields
basic_blocks: &'a mut IndexVec<BasicBlock, BasicBlockData<'tcx>>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
pred_count: IndexVec<BasicBlock, u32>
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Methods
impl<'a, 'tcx: 'a> CfgSimplifier<'a, 'tcx>[src]
impl<'a, 'tcx: 'a> CfgSimplifier<'a, 'tcx>pub fn new(mir: &'a mut Mir<'tcx>) -> Self[src]
pub fn new(mir: &'a mut Mir<'tcx>) -> Self🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
pub fn simplify(self)[src]
pub fn simplify(self)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn collapse_goto_chain(&mut self, start: &mut BasicBlock, changed: &mut bool)[src]
fn collapse_goto_chain(&mut self, start: &mut BasicBlock, changed: &mut bool)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn merge_successor(
&mut self,
new_stmts: &mut Vec<Statement<'tcx>>,
terminator: &mut Terminator<'tcx>
) -> bool[src]
fn merge_successor(
&mut self,
new_stmts: &mut Vec<Statement<'tcx>>,
terminator: &mut Terminator<'tcx>
) -> bool🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn simplify_branch(&mut self, terminator: &mut Terminator<'tcx>) -> bool[src]
fn simplify_branch(&mut self, terminator: &mut Terminator<'tcx>) -> bool🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
fn strip_nops(&mut self)[src]
fn strip_nops(&mut self)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Auto Trait Implementations
impl<'a, 'tcx> !Send for CfgSimplifier<'a, 'tcx>
impl<'a, 'tcx> !Send for CfgSimplifier<'a, 'tcx>impl<'a, 'tcx> !Sync for CfgSimplifier<'a, 'tcx>
impl<'a, 'tcx> !Sync for CfgSimplifier<'a, 'tcx>