diff options
| author | bjorn3 <bjorn3@users.noreply.github.com> | 2021-06-08 18:36:30 +0200 |
|---|---|---|
| committer | bjorn3 <bjorn3@users.noreply.github.com> | 2021-07-06 11:28:04 +0200 |
| commit | 489ad8b8b511df0d19fa3ef825240d020d240d3e (patch) | |
| tree | fe8d56c85f714832fecdd2ace168bcb82d9edbc7 /compiler/rustc_incremental/src | |
| parent | 9a27044f42ace9eb652781b53f598e25d4e7e918 (diff) | |
| download | rust-489ad8b8b511df0d19fa3ef825240d020d240d3e.tar.gz rust-489ad8b8b511df0d19fa3ef825240d020d240d3e.zip | |
Revert "Revert "Merge CrateDisambiguator into StableCrateId""
This reverts commit 8176ab8bc18fdd7d3c2cf7f720c51166364c33a3.
Diffstat (limited to 'compiler/rustc_incremental/src')
| -rw-r--r-- | compiler/rustc_incremental/src/persist/fs.rs | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/compiler/rustc_incremental/src/persist/fs.rs b/compiler/rustc_incremental/src/persist/fs.rs index 83e80b55dae..2ed0539841a 100644 --- a/compiler/rustc_incremental/src/persist/fs.rs +++ b/compiler/rustc_incremental/src/persist/fs.rs @@ -108,7 +108,7 @@ use rustc_data_structures::svh::Svh; use rustc_data_structures::{base_n, flock}; use rustc_errors::ErrorReported; use rustc_fs_util::{link_or_copy, LinkOrCopy}; -use rustc_session::{CrateDisambiguator, Session}; +use rustc_session::{Session, StableCrateId}; use std::fs as std_fs; use std::io; @@ -189,7 +189,7 @@ pub fn in_incr_comp_dir(incr_comp_session_dir: &Path, file_name: &str) -> PathBu pub fn prepare_session_directory( sess: &Session, crate_name: &str, - crate_disambiguator: CrateDisambiguator, + stable_crate_id: StableCrateId, ) -> Result<(), ErrorReported> { if sess.opts.incremental.is_none() { return Ok(()); @@ -200,7 +200,7 @@ pub fn prepare_session_directory( debug!("prepare_session_directory"); // {incr-comp-dir}/{crate-name-and-disambiguator} - let crate_dir = crate_path(sess, crate_name, crate_disambiguator); + let crate_dir = crate_path(sess, crate_name, stable_crate_id); debug!("crate-dir: {}", crate_dir.display()); create_dir(sess, &crate_dir, "crate")?; @@ -648,19 +648,12 @@ fn string_to_timestamp(s: &str) -> Result<SystemTime, ()> { Ok(UNIX_EPOCH + duration) } -fn crate_path( - sess: &Session, - crate_name: &str, - crate_disambiguator: CrateDisambiguator, -) -> PathBuf { +fn crate_path(sess: &Session, crate_name: &str, stable_crate_id: StableCrateId) -> PathBuf { let incr_dir = sess.opts.incremental.as_ref().unwrap().clone(); - // The full crate disambiguator is really long. 64 bits of it should be - // sufficient. - let crate_disambiguator = crate_disambiguator.to_fingerprint().to_smaller_hash(); - let crate_disambiguator = base_n::encode(crate_disambiguator as u128, INT_ENCODE_BASE); + let stable_crate_id = base_n::encode(stable_crate_id.to_u64() as u128, INT_ENCODE_BASE); - let crate_name = format!("{}-{}", crate_name, crate_disambiguator); + let crate_name = format!("{}-{}", crate_name, stable_crate_id); incr_dir.join(crate_name) } |
