Struct rustc_codegen_ssa::back::write::ModuleConfig[−][src]

pub struct ModuleConfig {
Show fields pub passes: Vec<String>, pub opt_level: Option<OptLevel>, pub opt_size: Option<OptLevel>, pub pgo_gen: SwitchWithOptPath, pub pgo_use: Option<PathBuf>, pub instrument_coverage: bool, pub instrument_gcov: bool, pub sanitizer: SanitizerSet, pub sanitizer_recover: SanitizerSet, pub sanitizer_memory_track_origins: usize, pub emit_pre_lto_bc: bool, pub emit_no_opt_bc: bool, pub emit_bc: bool, pub emit_ir: bool, pub emit_asm: bool, pub emit_obj: EmitObj, pub bc_cmdline: String, pub verify_llvm_ir: bool, pub no_prepopulate_passes: bool, pub no_builtins: bool, pub time_module: bool, pub vectorize_loop: bool, pub vectorize_slp: bool, pub merge_functions: bool, pub inline_threshold: Option<u32>, pub new_llvm_pass_manager: Option<bool>, pub emit_lifetime_markers: bool,
}
Expand description

Module-specific configuration for optimize_and_codegen.

Fields

passes: Vec<String>
Expand description

Names of additional optimization passes to run.

opt_level: Option<OptLevel>
Expand description

Some(level) to optimize at a certain level, or None to run absolutely no optimizations (used for the metadata module).

opt_size: Option<OptLevel>
Expand description

Some(level) to optimize binary size, or None to not affect program size.

pgo_gen: SwitchWithOptPathpgo_use: Option<PathBuf>instrument_coverage: boolinstrument_gcov: boolsanitizer: SanitizerSetsanitizer_recover: SanitizerSetsanitizer_memory_track_origins: usizeemit_pre_lto_bc: boolemit_no_opt_bc: boolemit_bc: boolemit_ir: boolemit_asm: boolemit_obj: EmitObjbc_cmdline: Stringverify_llvm_ir: boolno_prepopulate_passes: boolno_builtins: booltime_module: boolvectorize_loop: boolvectorize_slp: boolmerge_functions: boolinline_threshold: Option<u32>new_llvm_pass_manager: Option<bool>emit_lifetime_markers: bool

Implementations

impl ModuleConfig[src]

fn new(
    kind: ModuleKind,
    sess: &Session,
    no_builtins: bool,
    is_compiler_builtins: bool
) -> ModuleConfig
[src]

pub fn bitcode_needed(&self) -> bool[src]

Auto Trait Implementations

impl RefUnwindSafe for ModuleConfig

impl Send for ModuleConfig

impl Sync for ModuleConfig

impl Unpin for ModuleConfig

impl UnwindSafe for ModuleConfig

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.