Inline dump_file_basename
into dump_path
This commit is contained in:
parent
b82d1d32b4
commit
1ec567b99a
@ -142,15 +142,17 @@ fn dump_matched_mir_node<'tcx, F>(
|
||||
}
|
||||
}
|
||||
|
||||
/// Returns the file basename portion (without extension) of a filename path
|
||||
/// where we should dump a MIR representation output files.
|
||||
fn dump_file_basename<'tcx>(
|
||||
/// Returns the path to the filename where we should dump a given MIR.
|
||||
/// Also used by other bits of code (e.g., NLL inference) that dump
|
||||
/// graphviz data or other things.
|
||||
fn dump_path<'tcx>(
|
||||
tcx: TyCtxt<'tcx>,
|
||||
extension: &str,
|
||||
pass_num: bool,
|
||||
pass_name: &str,
|
||||
disambiguator: &dyn Display,
|
||||
body: &Body<'tcx>,
|
||||
) -> String {
|
||||
) -> PathBuf {
|
||||
let source = body.source;
|
||||
let promotion_id = match source.promoted {
|
||||
Some(id) => format!("-{id:?}"),
|
||||
@ -186,19 +188,12 @@ fn dump_file_basename<'tcx>(
|
||||
_ => String::new(),
|
||||
};
|
||||
|
||||
format!(
|
||||
"{crate_name}.{item_name}{shim_disambiguator}{promotion_id}{pass_num}.{pass_name}.{disambiguator}",
|
||||
)
|
||||
}
|
||||
|
||||
/// Returns the path to the filename where we should dump a given MIR.
|
||||
/// Also used by other bits of code (e.g., NLL inference) that dump
|
||||
/// graphviz data or other things.
|
||||
fn dump_path(tcx: TyCtxt<'_>, basename: &str, extension: &str) -> PathBuf {
|
||||
let mut file_path = PathBuf::new();
|
||||
file_path.push(Path::new(&tcx.sess.opts.unstable_opts.dump_mir_dir));
|
||||
|
||||
let file_name = format!("{basename}.{extension}",);
|
||||
let file_name = format!(
|
||||
"{crate_name}.{item_name}{shim_disambiguator}{promotion_id}{pass_num}.{pass_name}.{disambiguator}.{extension}",
|
||||
);
|
||||
|
||||
file_path.push(&file_name);
|
||||
|
||||
@ -217,11 +212,7 @@ pub fn create_dump_file<'tcx>(
|
||||
disambiguator: &dyn Display,
|
||||
body: &Body<'tcx>,
|
||||
) -> io::Result<io::BufWriter<fs::File>> {
|
||||
let file_path = dump_path(
|
||||
tcx,
|
||||
&dump_file_basename(tcx, pass_num, pass_name, disambiguator, body),
|
||||
extension,
|
||||
);
|
||||
let file_path = dump_path(tcx, extension, pass_num, pass_name, disambiguator, body);
|
||||
if let Some(parent) = file_path.parent() {
|
||||
fs::create_dir_all(parent).map_err(|e| {
|
||||
io::Error::new(
|
||||
|
Loading…
Reference in New Issue
Block a user