Merge rustc_trans_trait into rustc_trans_utils

This commit is contained in:
bjorn3 2017-09-18 18:12:07 +02:00
parent 9eeaba18bd
commit d703552325
10 changed files with 24 additions and 61 deletions

16
src/Cargo.lock generated
View File

@ -1575,7 +1575,6 @@ dependencies = [
"rustc_resolve 0.0.0",
"rustc_save_analysis 0.0.0",
"rustc_trans 0.0.0",
"rustc_trans_traits 0.0.0",
"rustc_trans_utils 0.0.0",
"rustc_typeck 0.0.0",
"serialize 0.0.0",
@ -1770,7 +1769,6 @@ dependencies = [
"rustc_incremental 0.0.0",
"rustc_llvm 0.0.0",
"rustc_platform_intrinsics 0.0.0",
"rustc_trans_traits 0.0.0",
"rustc_trans_utils 0.0.0",
"serialize 0.0.0",
"syntax 0.0.0",
@ -1778,26 +1776,16 @@ dependencies = [
]
[[package]]
name = "rustc_trans_traits"
name = "rustc_trans_utils"
version = "0.0.0"
dependencies = [
"ar 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"flate2 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc 0.0.0",
"rustc_back 0.0.0",
"rustc_incremental 0.0.0",
"rustc_trans_utils 0.0.0",
"syntax 0.0.0",
]
[[package]]
name = "rustc_trans_utils"
version = "0.0.0"
dependencies = [
"log 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc 0.0.0",
"rustc_incremental 0.0.0",
"syntax 0.0.0",
"syntax_pos 0.0.0",
]

View File

@ -33,7 +33,6 @@ rustc_resolve = { path = "../librustc_resolve" }
rustc_save_analysis = { path = "../librustc_save_analysis" }
rustc_trans = { path = "../librustc_trans", optional = true }
rustc_trans_utils = { path = "../librustc_trans_utils" }
rustc_trans_traits = { path = "../librustc_trans_traits" }
rustc_typeck = { path = "../librustc_typeck" }
serialize = { path = "../libserialize" }
syntax = { path = "../libsyntax" }

View File

@ -33,7 +33,7 @@ use rustc_resolve::{MakeGlobMap, Resolver};
use rustc_metadata::creader::CrateLoader;
use rustc_metadata::cstore::{self, CStore};
use rustc_trans as trans;
use rustc_trans_traits::TransCrate;
use rustc_trans_utils::trans_crate::TransCrate;
use rustc_typeck as typeck;
use rustc_privacy;
use rustc_plugin::registry::Registry;

View File

@ -50,7 +50,6 @@ extern crate rustc_save_analysis;
#[cfg(feature="llvm")]
extern crate rustc_trans;
extern crate rustc_trans_utils;
extern crate rustc_trans_traits;
extern crate rustc_typeck;
extern crate serialize;
#[macro_use]
@ -76,7 +75,7 @@ use rustc::middle::cstore::CrateStore;
use rustc_metadata::locator;
use rustc_metadata::cstore::CStore;
use rustc::util::common::{time, ErrorReported};
use rustc_trans_traits::TransCrate;
use rustc_trans_utils::trans_crate::TransCrate;
use serialize::json::ToJson;
@ -153,7 +152,7 @@ pub fn run<F>(run_compiler: F) -> isize
}
#[cfg(not(feature="llvm"))]
pub use rustc_trans_traits::MetadataOnlyTransCrate as DefaultTransCrate;
pub use rustc_trans_utils::trans_crate::MetadataOnlyTransCrate as DefaultTransCrate;
#[cfg(feature="llvm")]
pub use rustc_trans::LlvmTransCrate as DefaultTransCrate;
@ -162,8 +161,8 @@ mod rustc_trans {
use syntax_pos::symbol::Symbol;
use rustc::session::Session;
use rustc::session::config::PrintRequest;
pub use rustc_trans_traits::MetadataOnlyTransCrate as LlvmTransCrate;
pub use rustc_trans_traits::TranslatedCrate as CrateTranslation;
pub use rustc_trans_utils::trans_crate::MetadataOnlyTransCrate as LlvmTransCrate;
pub use rustc_trans_utils::trans_crate::TranslatedCrate as CrateTranslation;
pub fn init(_sess: &Session) {}
pub fn enable_llvm_debug() {}

View File

@ -27,7 +27,6 @@ rustc_incremental = { path = "../librustc_incremental" }
rustc_llvm = { path = "../librustc_llvm" }
rustc_platform_intrinsics = { path = "../librustc_platform_intrinsics" }
rustc_trans_utils = { path = "../librustc_trans_utils" }
rustc_trans_traits = { path = "../librustc_trans_traits" }
serialize = { path = "../libserialize" }
syntax = { path = "../libsyntax" }
syntax_pos = { path = "../libsyntax_pos" }

View File

@ -50,7 +50,6 @@ extern crate rustc_incremental;
extern crate rustc_llvm as llvm;
extern crate rustc_platform_intrinsics as intrinsics;
extern crate rustc_const_math;
extern crate rustc_trans_traits;
extern crate rustc_trans_utils;
extern crate rustc_demangle;
extern crate jobserver;
@ -154,7 +153,7 @@ impl LlvmTransCrate {
}
}
impl rustc_trans_traits::TransCrate for LlvmTransCrate {
impl rustc_trans_utils::trans_crate::TransCrate for LlvmTransCrate {
type MetadataLoader = metadata::LlvmMetadataLoader;
type OngoingCrateTranslation = back::write::OngoingCrateTranslation;
type TranslatedCrate = CrateTranslation;

View File

@ -1,21 +0,0 @@
[package]
authors = ["The Rust Project Developers"]
name = "rustc_trans_traits"
version = "0.0.0"
[lib]
name = "rustc_trans_traits"
path = "lib.rs"
crate-type = ["dylib"]
test = false
[dependencies]
ar = "0.3.0"
flate2 = "0.2"
owning_ref = "0.3.3"
syntax = { path = "../libsyntax" }
rustc = { path = "../librustc" }
rustc_back = { path = "../librustc_back" }
rustc_incremental = { path = "../librustc_incremental" }
rustc_trans_utils = { path = "../librustc_trans_utils" }

View File

@ -10,8 +10,13 @@ crate-type = ["dylib"]
test = false
[dependencies]
ar = "0.3.0"
flate2 = "0.2"
owning_ref = "0.3.3"
log = "0.3"
rustc = { path = "../librustc" }
rustc_incremental = { path = "../librustc_incremental" }
syntax = { path = "../libsyntax" }
syntax_pos = { path = "../libsyntax_pos" }
rustc = { path = "../librustc" }
rustc_back = { path = "../librustc_back" }
rustc_incremental = { path = "../librustc_incremental" }

View File

@ -29,9 +29,15 @@
#![cfg_attr(stage0, feature(const_fn))]
extern crate ar;
extern crate flate2;
extern crate owning_ref;
#[macro_use]
extern crate log;
#[macro_use]
extern crate rustc;
extern crate rustc_back;
extern crate rustc_incremental;
extern crate syntax;
extern crate syntax_pos;
@ -44,6 +50,7 @@ use rustc::util::nodemap::NodeSet;
use syntax::attr;
pub mod link;
pub mod trans_crate;
/// The context provided lists a set of reachable ids as calculated by
/// middle::reachable, but this contains far more ids and symbols than we're

View File

@ -21,17 +21,6 @@
#![feature(box_syntax)]
extern crate ar;
extern crate flate2;
extern crate owning_ref;
extern crate syntax;
#[macro_use]
extern crate rustc;
extern crate rustc_back;
extern crate rustc_incremental;
extern crate rustc_trans_utils;
use std::io::prelude::*;
use std::io::{self, Cursor};
use std::fs::File;
@ -53,8 +42,7 @@ use rustc::middle::cstore::MetadataLoader as MetadataLoaderTrait;
use rustc::dep_graph::DepGraph;
use rustc_back::target::Target;
use rustc_incremental::IncrementalHashesMap;
use rustc_trans_utils::find_exported_symbols;
use rustc_trans_utils::link::{build_link_meta, out_filename};
use link::{build_link_meta, out_filename};
pub trait TransCrate {
type MetadataLoader: MetadataLoaderTrait;
@ -197,7 +185,7 @@ impl TransCrate for MetadataOnlyTransCrate {
_output_filenames: &OutputFilenames,
) -> Self::OngoingCrateTranslation {
let link_meta = build_link_meta(&incr_hashes_map);
let exported_symbols = find_exported_symbols(tcx, &analysis.reachable);
let exported_symbols = ::find_exported_symbols(tcx, &analysis.reachable);
let (metadata, _hashes) = tcx.encode_metadata(&link_meta, &exported_symbols);
OngoingCrateTranslation {