pub struct ExtendedInlinePass {
pub config: InlineConfig,
pub scc: Option<TarjanScc>,
pub budget: InlineBudget,
pub annotations: InlineAnnotationRegistry,
pub size_table: CalleeSizeTable,
pub speculative: SpeculativeInliner,
pub recursive_limiter: RecursiveInlineLimiter,
pub stats: ExtendedInlineStats,
pub cleanup: PostInlineCleanup,
}Fields§
§config: InlineConfig§scc: Option<TarjanScc>§budget: InlineBudget§annotations: InlineAnnotationRegistry§size_table: CalleeSizeTable§speculative: SpeculativeInliner§recursive_limiter: RecursiveInlineLimiter§stats: ExtendedInlineStats§cleanup: PostInlineCleanupImplementations§
Source§impl ExtendedInlinePass
impl ExtendedInlinePass
pub fn new(config: InlineConfig, total_budget: u64) -> Self
pub fn init_scc(&mut self, decls: &[LcnfFunDecl])
pub fn should_inline_extended( &mut self, caller: &str, callee: &str, _profile: &InlineProfile, ) -> bool
pub fn run(&mut self, decls: &mut [LcnfFunDecl])
pub fn extended_stats(&self) -> &ExtendedInlineStats
Auto Trait Implementations§
impl Freeze for ExtendedInlinePass
impl RefUnwindSafe for ExtendedInlinePass
impl Send for ExtendedInlinePass
impl Sync for ExtendedInlinePass
impl Unpin for ExtendedInlinePass
impl UnsafeUnpin for ExtendedInlinePass
impl UnwindSafe for ExtendedInlinePass
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more