]> git.eshelyaron.com Git - emacs.git/commitdiff
pdumper-stats now returns s, not ms
authorPaul Eggert <eggert@cs.ucla.edu>
Sat, 19 Jan 2019 22:38:52 +0000 (14:38 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Sat, 19 Jan 2019 22:39:16 +0000 (14:39 -0800)
* doc/lispref/internals.texi (pdumper-stats):
* src/pdumper.c (pdumper_load): Return seconds, not milliseconds.
Minimize rounding errors in the usual case.

doc/lispref/internals.texi
src/pdumper.c

index 437657f2438a27e89a8b2227e43620c3ac4c27be..06ff9f70bf9ddc6c5072481a39a6dccc7858dc08 100644 (file)
@@ -232,7 +232,7 @@ time it took to restore the Emacs state.  The value is an alist
 @w{@code{((dumped-with-pdumper . t) (load-time . @var{time})
 (dump-file-name . @var{file}))}},
 where @var{file} is the name of the dump file, and @var{time} is the
-time in milliseconds it took to restore the state from the dump file.
+time in seconds it took to restore the state from the dump file.
 If the current session was not restored from a portable dump file, the
 value is nil.
 @end defun
index 19a21329b1ed94787530e1a2f60898bbc8928aa7..4bbeabb828ef3c5d27a5eaec2f630c8449e09bc3 100644 (file)
@@ -5545,9 +5545,10 @@ pdumper_load (const char *dump_filename)
 
   struct timespec load_timespec =
     timespec_sub (current_timespec (), start_time);
-  dump_private.load_time =
-    (double) load_timespec.tv_sec * 1000.0
-    + (double) load_timespec.tv_nsec * 0.000001;
+  ALLOW_IMPLICIT_CONVERSION;
+  double s = load_timespec.tv_sec, ns = load_timespec.tv_nsec;
+  DISALLOW_IMPLICIT_CONVERSION;
+  dump_private.load_time = (s * 1e9 + ns) / 1e9;
   dump_private.dump_filename = dump_filename_copy;
   dump_filename_copy = NULL;
 
@@ -5569,7 +5570,7 @@ the return value is an alist of the form:
 
   ((dumped-with-pdumper . t) (load-time . TIME) (dump-file-name . FILE))
 
-where TIME is the time in milliseconds it took to restore Emacs state
+where TIME is the time in seconds it took to restore Emacs state
 from the dump file, and FILE is the name of the dump file.
 Value is nil if this session was not started using a portable dump file.*/)
      (void)