Rollup merge of #76958 - est31:ns, r=oli-obk

Replace manual as_nanos and as_secs_f64 reimplementations
This commit is contained in:
Ralf Jung 2020-09-21 10:40:39 +02:00 committed by GitHub
commit 048866bd6b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 3 additions and 10 deletions

View file

@ -108,7 +108,7 @@ pub fn compile_codegen_unit(
// We assume that the cost to run LLVM on a CGU is proportional to // We assume that the cost to run LLVM on a CGU is proportional to
// the time we needed for codegenning it. // the time we needed for codegenning it.
let cost = time_to_codegen.as_secs() * 1_000_000_000 + time_to_codegen.subsec_nanos() as u64; let cost = time_to_codegen.as_nanos() as u64;
fn module_codegen(tcx: TyCtxt<'_>, cgu_name: Symbol) -> ModuleCodegen<ModuleLlvm> { fn module_codegen(tcx: TyCtxt<'_>, cgu_name: Symbol) -> ModuleCodegen<ModuleLlvm> {
let cgu = tcx.codegen_unit(cgu_name); let cgu = tcx.codegen_unit(cgu_name);

View file

@ -600,10 +600,7 @@ pub fn print_time_passes_entry(do_it: bool, what: &str, dur: Duration) {
// Hack up our own formatting for the duration to make it easier for scripts // Hack up our own formatting for the duration to make it easier for scripts
// to parse (always use the same number of decimal places and the same unit). // to parse (always use the same number of decimal places and the same unit).
pub fn duration_to_secs_str(dur: std::time::Duration) -> String { pub fn duration_to_secs_str(dur: std::time::Duration) -> String {
const NANOS_PER_SEC: f64 = 1_000_000_000.0; format!("{:.3}", dur.as_secs_f64())
let secs = dur.as_secs() as f64 + dur.subsec_nanos() as f64 / NANOS_PER_SEC;
format!("{:.3}", secs)
} }
// Memory reporting // Memory reporting

View file

@ -98,10 +98,6 @@ fn fmt_thousands_sep(mut n: usize, sep: char) -> String {
output output
} }
fn ns_from_dur(dur: Duration) -> u64 {
dur.as_secs() * 1_000_000_000 + (dur.subsec_nanos() as u64)
}
fn ns_iter_inner<T, F>(inner: &mut F, k: u64) -> u64 fn ns_iter_inner<T, F>(inner: &mut F, k: u64) -> u64
where where
F: FnMut() -> T, F: FnMut() -> T,
@ -110,7 +106,7 @@ where
for _ in 0..k { for _ in 0..k {
black_box(inner()); black_box(inner());
} }
ns_from_dur(start.elapsed()) start.elapsed().as_nanos() as u64
} }
pub fn iter<T, F>(inner: &mut F) -> stats::Summary pub fn iter<T, F>(inner: &mut F) -> stats::Summary