
Using symbol::Interner makes it very easy to mixup UniqueTypeId symbols with the global interner. In fact the Debug implementation of UniqueTypeId did exactly this. Using a separate interner type also avoids prefilling the interner with unused symbols and allow for optimizing the symbol interner for parallel access without negatively affecting the single threaded module codegen.
34 lines
1 KiB
TOML
34 lines
1 KiB
TOML
[package]
|
|
name = "rustc_codegen_llvm"
|
|
version = "0.0.0"
|
|
edition = "2018"
|
|
|
|
[lib]
|
|
test = false
|
|
doctest = false
|
|
|
|
[dependencies]
|
|
bitflags = "1.0"
|
|
cstr = "0.2"
|
|
libc = "0.2"
|
|
measureme = "9.1.0"
|
|
snap = "1"
|
|
tracing = "0.1"
|
|
rustc_middle = { path = "../rustc_middle" }
|
|
rustc-demangle = "0.1.21"
|
|
rustc_arena = { path = "../rustc_arena" }
|
|
rustc_attr = { path = "../rustc_attr" }
|
|
rustc_codegen_ssa = { path = "../rustc_codegen_ssa" }
|
|
rustc_data_structures = { path = "../rustc_data_structures" }
|
|
rustc_errors = { path = "../rustc_errors" }
|
|
rustc_fs_util = { path = "../rustc_fs_util" }
|
|
rustc_hir = { path = "../rustc_hir" }
|
|
rustc_index = { path = "../rustc_index" }
|
|
rustc_llvm = { path = "../rustc_llvm" }
|
|
rustc_metadata = { path = "../rustc_metadata" }
|
|
rustc_session = { path = "../rustc_session" }
|
|
rustc_serialize = { path = "../rustc_serialize" }
|
|
rustc_target = { path = "../rustc_target" }
|
|
smallvec = { version = "1.6.1", features = ["union", "may_dangle"] }
|
|
rustc_ast = { path = "../rustc_ast" }
|
|
rustc_span = { path = "../rustc_span" }
|