From fc47a92336c02ee551c72e86ae4d0396895f9535 Mon Sep 17 00:00:00 2001 From: Michael Woerister Date: Wed, 5 Sep 2018 13:52:58 +0200 Subject: [PATCH] ThinLTO: Don't keep files open after mmaping them (because it's not needed). --- src/librustc_codegen_llvm/back/lto.rs | 6 +++--- src/librustc_codegen_llvm/back/write.rs | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/librustc_codegen_llvm/back/lto.rs b/src/librustc_codegen_llvm/back/lto.rs index c1dda02264ed1..25bc662c408f6 100644 --- a/src/librustc_codegen_llvm/back/lto.rs +++ b/src/librustc_codegen_llvm/back/lto.rs @@ -29,7 +29,7 @@ use {ModuleCodegen, ModuleLlvm, ModuleKind}; use libc; use std::ffi::{CStr, CString}; -use std::fs::{self, File}; +use std::fs; use std::ptr; use std::slice; use std::sync::Arc; @@ -619,7 +619,7 @@ fn run_pass_manager(cgcx: &CodegenContext, pub enum SerializedModule { Local(ModuleBuffer), FromRlib(Vec), - FromUncompressedFile(memmap::Mmap, File), + FromUncompressedFile(memmap::Mmap), } impl SerializedModule { @@ -627,7 +627,7 @@ impl SerializedModule { match *self { SerializedModule::Local(ref m) => m.data(), SerializedModule::FromRlib(ref m) => m, - SerializedModule::FromUncompressedFile(ref m, _) => m, + SerializedModule::FromUncompressedFile(ref m) => m, } } } diff --git a/src/librustc_codegen_llvm/back/write.rs b/src/librustc_codegen_llvm/back/write.rs index 1c0f89193b209..f76a38c1a2b35 100644 --- a/src/librustc_codegen_llvm/back/write.rs +++ b/src/librustc_codegen_llvm/back/write.rs @@ -2485,7 +2485,7 @@ pub(crate) fn submit_pre_lto_module_to_llvm(tcx: TyCtxt, // Schedule the module to be loaded drop(tcx.tx_to_llvm_workers.lock().send(Box::new(Message::AddImportOnlyModule { - module_data: SerializedModule::FromUncompressedFile(mmap, file), + module_data: SerializedModule::FromUncompressedFile(mmap), work_product: module.source, }))); }