diff options
| author | bors <bors@rust-lang.org> | 2019-03-01 01:22:15 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2019-03-01 01:22:15 +0000 |
| commit | 20cfc9deb5a85c4daf235871e47c0a81daa9b700 (patch) | |
| tree | 31edaefbb8eddbb49c29794e73b6a87e64d98396 /src/librustc_codegen_ssa | |
| parent | 350674b7180a41c8e508d93c6ab8e203b69d3df7 (diff) | |
| parent | 320640060f38957028141ea30bc4d5577d1e53b0 (diff) | |
| download | rust-20cfc9deb5a85c4daf235871e47c0a81daa9b700.tar.gz rust-20cfc9deb5a85c4daf235871e47c0a81daa9b700.zip | |
Auto merge of #58408 - alexcrichton:update-llvm, r=michaelwoerister
rustc: Update LLVM, remove dead wasm code This commit updates the LLVM branch to the rebased version of the upstream release/8.x branch. This includes a wasm patch which means that the `rewrite_imports` pass in rustc is no longer needed (yay!) and we can instead rely on `wasm-import-module`, an attribute we're already emitting, to take care of all the work.
Diffstat (limited to 'src/librustc_codegen_ssa')
| -rw-r--r-- | src/librustc_codegen_ssa/base.rs | 24 | ||||
| -rw-r--r-- | src/librustc_codegen_ssa/lib.rs | 1 |
2 files changed, 1 insertions, 24 deletions
diff --git a/src/librustc_codegen_ssa/base.rs b/src/librustc_codegen_ssa/base.rs index fad41a11a82..39ce15e4772 100644 --- a/src/librustc_codegen_ssa/base.rs +++ b/src/librustc_codegen_ssa/base.rs @@ -16,7 +16,7 @@ use crate::{ModuleCodegen, ModuleKind, CachedModuleCodegen}; use rustc::dep_graph::cgu_reuse_tracker::CguReuse; -use rustc::hir::def_id::{CrateNum, DefId, LOCAL_CRATE}; +use rustc::hir::def_id::{DefId, LOCAL_CRATE}; use rustc::middle::lang_items::StartFnLangItem; use rustc::middle::weak_lang_items; use rustc::mir::mono::{Stats, CodegenUnitNameBuilder}; @@ -816,21 +816,11 @@ impl CrateInfo { used_crates_dynamic: cstore::used_crates(tcx, LinkagePreference::RequireDynamic), used_crates_static: cstore::used_crates(tcx, LinkagePreference::RequireStatic), used_crate_source: Default::default(), - wasm_imports: Default::default(), lang_item_to_crate: Default::default(), missing_lang_items: Default::default(), }; let lang_items = tcx.lang_items(); - let load_wasm_items = tcx.sess.crate_types.borrow() - .iter() - .any(|c| *c != config::CrateType::Rlib) && - tcx.sess.opts.target_triple.triple() == "wasm32-unknown-unknown"; - - if load_wasm_items { - info.load_wasm_imports(tcx, LOCAL_CRATE); - } - let crates = tcx.crates(); let n_crates = crates.len(); @@ -858,9 +848,6 @@ impl CrateInfo { if tcx.is_no_builtins(cnum) { info.is_no_builtins.insert(cnum); } - if load_wasm_items { - info.load_wasm_imports(tcx, cnum); - } let missing = tcx.missing_lang_items(cnum); for &item in missing.iter() { if let Ok(id) = lang_items.require(item) { @@ -879,15 +866,6 @@ impl CrateInfo { return info } - - fn load_wasm_imports(&mut self, tcx: TyCtxt<'_, '_, '_>, cnum: CrateNum) { - self.wasm_imports.extend(tcx.wasm_import_module_map(cnum).iter().map(|(&id, module)| { - let instance = Instance::mono(tcx, id); - let import_name = tcx.symbol_name(instance); - - (import_name.to_string(), module.clone()) - })); - } } fn is_codegened_item(tcx: TyCtxt<'_, '_, '_>, id: DefId) -> bool { diff --git a/src/librustc_codegen_ssa/lib.rs b/src/librustc_codegen_ssa/lib.rs index 92fa2766f87..f38b22aa041 100644 --- a/src/librustc_codegen_ssa/lib.rs +++ b/src/librustc_codegen_ssa/lib.rs @@ -138,7 +138,6 @@ pub struct CrateInfo { pub used_crate_source: FxHashMap<CrateNum, Lrc<CrateSource>>, pub used_crates_static: Vec<(CrateNum, LibSource)>, pub used_crates_dynamic: Vec<(CrateNum, LibSource)>, - pub wasm_imports: FxHashMap<String, String>, pub lang_item_to_crate: FxHashMap<LangItem, CrateNum>, pub missing_lang_items: FxHashMap<CrateNum, Vec<LangItem>>, } |
