Move hashes from rustc_data_structure to rustc_hashes so they can be shared with rust-analyzer

This commit is contained in:
Ben Kimock 2025-02-15 15:18:19 -05:00
parent 07ba8570a8
commit b4b1e778c9
4 changed files with 19 additions and 5 deletions

View file

@ -9,6 +9,7 @@ use hir_expand::name::Name;
use intern::sym; use intern::sym;
use la_arena::Arena; use la_arena::Arena;
use rustc_abi::{Align, Integer, IntegerType, ReprFlags, ReprOptions}; use rustc_abi::{Align, Integer, IntegerType, ReprFlags, ReprOptions};
use rustc_hashes::Hash64;
use triomphe::Arc; use triomphe::Arc;
use tt::iter::TtElement; use tt::iter::TtElement;
@ -172,7 +173,7 @@ fn parse_repr_tt(tt: &TopSubtree) -> Option<ReprOptions> {
} }
} }
Some(ReprOptions { int, align: max_align, pack: min_pack, flags, field_shuffle_seed: 0 }) Some(ReprOptions { int, align: max_align, pack: min_pack, flags, field_shuffle_seed: Hash64::ZERO })
} }
impl StructData { impl StructData {

View file

@ -18,9 +18,15 @@ extern crate ra_ap_rustc_parse_format as rustc_parse_format;
#[cfg(feature = "in-rust-tree")] #[cfg(feature = "in-rust-tree")]
extern crate rustc_abi; extern crate rustc_abi;
#[cfg(feature = "in-rust-tree")]
extern crate rustc_hashes;
#[cfg(not(feature = "in-rust-tree"))] #[cfg(not(feature = "in-rust-tree"))]
extern crate ra_ap_rustc_abi as rustc_abi; extern crate ra_ap_rustc_abi as rustc_abi;
#[cfg(not(feature = "in-rust-tree"))]
extern crate ra_ap_rustc_hashes as rustc_hashes;
pub mod db; pub mod db;
pub mod attr; pub mod attr;

View file

@ -15,6 +15,7 @@ use hir_def::{
use la_arena::{Idx, RawIdx}; use la_arena::{Idx, RawIdx};
use rustc_abi::AddressSpace; use rustc_abi::AddressSpace;
use rustc_index::{IndexSlice, IndexVec}; use rustc_index::{IndexSlice, IndexVec};
use rustc_hashes::Hash64;
use triomphe::Arc; use triomphe::Arc;
@ -197,7 +198,7 @@ fn layout_of_simd_ty(
align, align,
max_repr_align: None, max_repr_align: None,
unadjusted_abi_align: align.abi, unadjusted_abi_align: align.abi,
randomization_seed: 0, randomization_seed: Hash64::ZERO,
})) }))
} }
@ -314,7 +315,7 @@ pub fn layout_of_ty_query(
size, size,
max_repr_align: None, max_repr_align: None,
unadjusted_abi_align: element.align.abi, unadjusted_abi_align: element.align.abi,
randomization_seed: 0, randomization_seed: Hash64::ZERO,
} }
} }
TyKind::Slice(element) => { TyKind::Slice(element) => {
@ -328,7 +329,7 @@ pub fn layout_of_ty_query(
size: Size::ZERO, size: Size::ZERO,
max_repr_align: None, max_repr_align: None,
unadjusted_abi_align: element.align.abi, unadjusted_abi_align: element.align.abi,
randomization_seed: 0, randomization_seed: Hash64::ZERO,
} }
} }
TyKind::Str => Layout { TyKind::Str => Layout {
@ -340,7 +341,7 @@ pub fn layout_of_ty_query(
size: Size::ZERO, size: Size::ZERO,
max_repr_align: None, max_repr_align: None,
unadjusted_abi_align: dl.i8_align.abi, unadjusted_abi_align: dl.i8_align.abi,
randomization_seed: 0, randomization_seed: Hash64::ZERO,
}, },
// Potentially-wide pointers. // Potentially-wide pointers.
TyKind::Ref(_, _, pointee) | TyKind::Raw(_, pointee) => { TyKind::Ref(_, _, pointee) | TyKind::Raw(_, pointee) => {

View file

@ -12,6 +12,9 @@ extern crate ra_ap_rustc_index as rustc_index;
#[cfg(feature = "in-rust-tree")] #[cfg(feature = "in-rust-tree")]
extern crate rustc_abi; extern crate rustc_abi;
#[cfg(feature = "in-rust-tree")]
extern crate rustc_hashes;
#[cfg(not(feature = "in-rust-tree"))] #[cfg(not(feature = "in-rust-tree"))]
extern crate ra_ap_rustc_abi as rustc_abi; extern crate ra_ap_rustc_abi as rustc_abi;
@ -21,6 +24,9 @@ extern crate rustc_pattern_analysis;
#[cfg(not(feature = "in-rust-tree"))] #[cfg(not(feature = "in-rust-tree"))]
extern crate ra_ap_rustc_pattern_analysis as rustc_pattern_analysis; extern crate ra_ap_rustc_pattern_analysis as rustc_pattern_analysis;
#[cfg(not(feature = "in-rust-tree"))]
extern crate ra_ap_rustc_hashes as rustc_hashes;
mod builder; mod builder;
mod chalk_db; mod chalk_db;
mod chalk_ext; mod chalk_ext;