Enum rustc_session::config::Lto
source · pub enum Lto {
No,
Thin,
ThinLocal,
Fat,
}
Expand description
This is what the LtoCli
values get mapped to after resolving defaults and
and taking other command line options into account.
Note that linker plugin-based LTO is a different mechanism entirely.
Variants§
No
Don’t do any LTO whatsoever.
Thin
Do a full-crate-graph (inter-crate) LTO with ThinLTO.
ThinLocal
Do a local ThinLTO (intra-crate, over the CodeGen Units of the local crate only). This is only relevant if multiple CGUs are used.
Fat
Do a full-crate-graph (inter-crate) LTO with “fat” LTO.
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for Lto
impl Send for Lto
impl Sync for Lto
impl Unpin for Lto
impl UnwindSafe for Lto
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
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 1 byte
Size for each variant:
No
: 0 bytesThin
: 0 bytesThinLocal
: 0 bytesFat
: 0 bytes