about summary refs log tree commit diff
path: root/src/librustc_codegen_ssa/mir
diff options
context:
space:
mode:
authorEduard-Mihai Burtescu <edy.burt@gmail.com>2019-10-29 16:26:25 +0200
committerEduard-Mihai Burtescu <edy.burt@gmail.com>2019-12-03 13:31:03 +0200
commitfce40a22569d31dcb20b4bc9505d835f12278d98 (patch)
tree6e85341e73270b0aa654bcf95b067376f56a73da /src/librustc_codegen_ssa/mir
parenta7094f7ce3fbf7fd44e0c81cfdd00ec6d2a59cc1 (diff)
downloadrust-fce40a22569d31dcb20b4bc9505d835f12278d98.tar.gz
rust-fce40a22569d31dcb20b4bc9505d835f12278d98.zip
rustc_codegen_ssa: make codegen_instance a simple wrapper for codegen_mir.
Diffstat (limited to 'src/librustc_codegen_ssa/mir')
-rw-r--r--src/librustc_codegen_ssa/mir/mod.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/librustc_codegen_ssa/mir/mod.rs b/src/librustc_codegen_ssa/mir/mod.rs
index 600bdced4ed..f2f0f36824c 100644
--- a/src/librustc_codegen_ssa/mir/mod.rs
+++ b/src/librustc_codegen_ssa/mir/mod.rs
@@ -121,13 +121,16 @@ impl<'a, 'tcx, V: CodegenObject> LocalRef<'tcx, V> {
 
 pub fn codegen_mir<'a, 'tcx, Bx: BuilderMethods<'a, 'tcx>>(
     cx: &'a Bx::CodegenCx,
-    llfn: Bx::Function,
-    mir: mir::ReadOnlyBodyCache<'tcx, 'tcx>,
     instance: Instance<'tcx>,
-    sig: ty::FnSig<'tcx>,
 ) {
     assert!(!instance.substs.needs_infer());
 
+    let llfn = cx.get_fn(instance);
+
+    let mir = cx.tcx().instance_mir(instance.def);
+
+    let sig = instance.fn_sig(cx.tcx());
+    let sig = cx.tcx().normalize_erasing_late_bound_regions(ty::ParamEnv::reveal_all(), &sig);
     let fn_abi = FnAbi::new(cx, sig, &[]);
     debug!("fn_abi: {:?}", fn_abi);