Module lto

Source

Structs§

Linker 🔒
ModuleBuffer
ThinBuffer
ThinData
ThinLTOKeysMap 🔒
Maps LLVM module identifiers to their corresponding LLVM LTO cache keys

Constants§

THIN_LTO_KEYS_INCR_COMP_FILE_NAME 🔒
We keep track of the computed LTO cache keys from the previous session to determine which CGUs we can reuse.

Functions§

crate_type_allows_lto 🔒
enable_autodiff_settings 🔒
fat_lto 🔒
get_bitcode_slice_from_object_data 🔒
module_name_to_str 🔒
optimize_thin_module 🔒
parse_module 🔒
prepare_lto 🔒
prepare_thin 🔒
run_fat 🔒
Performs fat LTO by merging all modules into a single one and returning it for further optimization.
run_pass_manager 🔒
run_thin 🔒
Performs thin LTO by performing necessary global analysis and returning two lists, one of the modules that need optimization and another for modules that can simply be copied over from the incr. comp. cache.
thin_lto 🔒
Prepare “thin” LTO to get run on these modules.