pub static no_vectorize_slp: uint = 1 << 27;
pub static no_prepopulate_passes: uint = 1 << 28;
pub static use_softfp: uint = 1 << 29;
+pub static gen_crate_map: uint = 1 << 30;
pub fn debugging_opts_map() -> ~[(&'static str, &'static str, uint)] {
~[("verbose", "in general, enable more debug printouts", verbose),
"Don't run LLVM's SLP vectorization passes",
no_vectorize_slp),
("soft-float", "Generate software floating point library calls", use_softfp),
+ ("gen-crate-map", "Force generation of a toplevel crate map", gen_crate_map),
]
}
pub fn no_vectorize_slp(&self) -> bool {
self.debugging_opt(no_vectorize_slp)
}
+ pub fn gen_crate_map(&self) -> bool {
+ self.debugging_opt(gen_crate_map)
+ }
// pointless function, now...
pub fn str_of(&self, id: ast::Ident) -> @str {
let mut n_subcrates = 1;
let cstore = sess.cstore;
while cstore::have_crate_data(cstore, n_subcrates) { n_subcrates += 1; }
- let mapname = if *sess.building_library {
+ let mapname = if *sess.building_library && !sess.gen_crate_map() {
format!("{}_{}_{}", mapmeta.name, mapmeta.vers, mapmeta.extras_hash)
} else {
~"toplevel"