diff options
| author | Ben Kimock <kimockb@gmail.com> | 2023-05-07 19:33:58 -0400 |
|---|---|---|
| committer | Ben Kimock <kimockb@gmail.com> | 2023-05-09 20:34:16 -0400 |
| commit | c3e7ff4609ea14126077de16f2bd2dc4cc3e2cde (patch) | |
| tree | faceb9ed4e9d1746a3f457a3b766e38863d90c94 /src | |
| parent | 84f80f1fc9f89c8abbbbcbe55cc0bd1d0ae21c28 (diff) | |
| download | rust-c3e7ff4609ea14126077de16f2bd2dc4cc3e2cde.tar.gz rust-c3e7ff4609ea14126077de16f2bd2dc4cc3e2cde.zip | |
Adopt the measureme output naming strategy from rustc
Diffstat (limited to 'src')
| -rw-r--r-- | src/tools/miri/src/machine.rs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/tools/miri/src/machine.rs b/src/tools/miri/src/machine.rs index 21c5a9c1b70..b91efae3bcb 100644 --- a/src/tools/miri/src/machine.rs +++ b/src/tools/miri/src/machine.rs @@ -4,6 +4,8 @@ use std::borrow::Cow; use std::cell::RefCell; use std::fmt; +use std::path::Path; +use std::process; use rand::rngs::StdRng; use rand::SeedableRng; @@ -498,7 +500,17 @@ impl<'mir, 'tcx> MiriMachine<'mir, 'tcx> { let layouts = PrimitiveLayouts::new(layout_cx).expect("Couldn't get layouts of primitive types"); let profiler = config.measureme_out.as_ref().map(|out| { - measureme::Profiler::new(out).expect("Couldn't create `measureme` profiler") + let crate_name = layout_cx + .tcx + .sess + .opts + .crate_name + .clone() + .unwrap_or_else(|| "unknown-crate".to_string()); + let pid = process::id(); + let filename = format!("{crate_name}-{pid:07}"); + let path = Path::new(out).join(filename); + measureme::Profiler::new(path).expect("Couldn't create `measureme` profiler") }); let rng = StdRng::seed_from_u64(config.seed.unwrap_or(0)); let borrow_tracker = config.borrow_tracker.map(|bt| bt.instantiate_global_state(config)); |
