diff options
| author | Niko Matsakis <niko@alum.mit.edu> | 2016-07-21 12:49:59 -0400 |
|---|---|---|
| committer | Niko Matsakis <niko@alum.mit.edu> | 2016-07-28 12:05:45 -0400 |
| commit | 58d4b8edd319d0f0d76024504cdfc74f89a001b1 (patch) | |
| tree | 83a92fe303444117e45ba19cfc78bbef41e2ff7d /src/test/run-make/execution-engine | |
| parent | cca4804251957646d4840bf33b3b13e3f2b645de (diff) | |
| download | rust-58d4b8edd319d0f0d76024504cdfc74f89a001b1.tar.gz rust-58d4b8edd319d0f0d76024504cdfc74f89a001b1.zip | |
Modify trans to skip generating `.o` files
This checks the `previous_work_products` data from the dep-graph and tries to simply copy a `.o` file if possible. We also add new work-products into the dep-graph, and create edges to/from the dep-node for a work-product.
Diffstat (limited to 'src/test/run-make/execution-engine')
| -rw-r--r-- | src/test/run-make/execution-engine/test.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/test/run-make/execution-engine/test.rs b/src/test/run-make/execution-engine/test.rs index 2e90b518432..b58295d47f2 100644 --- a/src/test/run-make/execution-engine/test.rs +++ b/src/test/run-make/execution-engine/test.rs @@ -20,6 +20,7 @@ extern crate rustc_metadata; extern crate rustc_resolve; extern crate rustc_errors; extern crate rustc_errors as errors; +extern crate rustc_trans; #[macro_use] extern crate syntax; use std::ffi::{CStr, CString}; @@ -37,6 +38,7 @@ use rustc::session::build_session; use rustc_driver::{driver, abort_on_err}; use rustc_resolve::MakeGlobMap; use rustc_metadata::cstore::CStore; +use rustc_trans::ModuleSource; use libc::c_void; use rustc_errors::registry::Registry; @@ -261,7 +263,10 @@ fn compile_program(input: &str, sysroot: PathBuf) .filter_map(|(_, p)| p).collect(); assert_eq!(trans.modules.len(), 1); - let llmod = trans.modules[0].llmod; + let llmod = match trans.modules[0].source { + ModuleSource::Preexisting(_) => unimplemented!(), + ModuleSource::Translated(llvm) => llvm.llmod, + }; // Workaround because raw pointers do not impl Send let modp = llmod as usize; |
