X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Ftime.lisp;h=9ae42fcbfb9b69d2a1916c0269c611ee1c8119ed;hb=872175cd9cb5b4966a36d4bd92421cc407a0355b;hp=6b9f5de445fcb86dec93420745349d28055eafb1;hpb=d45e8a2e9167150c8283783152d2449bd8d59d2d;p=sbcl.git diff --git a/src/code/time.lisp b/src/code/time.lisp index 6b9f5de..9ae42fc 100644 --- a/src/code/time.lisp +++ b/src/code/time.lisp @@ -47,16 +47,6 @@ (setq *internal-real-time-base-seconds* seconds) uint))))) -;;; REMOVEME once runtime nonmonotonicity problem is debugged -(defvar *last-utime-sec*) -(defvar *last-utime-usec*) -(defvar *last-stime-sec*) -(defvar *last-stime-usec*) -(defvar *last-internal-run-time*) -(push (lambda () - (makunbound '*last-internal-run-time*)) - *before-save-initializations*) - (defun get-internal-run-time () #!+sb-doc "Return the run time in the internal time format. This is useful for @@ -85,27 +75,6 @@ stime-usec (floor micro-seconds-per-internal-time-unit 2)) micro-seconds-per-internal-time-unit)))) - - ;; REMOVEME once runtime nonmonotonicity problem is debugged - (when (boundp '*last-internal-run-time*) - (unless (>= result *last-internal-run-time*) - (error "non-monotonic:~@ - UTIME-SEC ~S ~S~@ - UTIME-USEC ~S ~S~@ - STIME-SEC ~S ~S~@ - STIME-USEC ~S ~S~@ - RESULT ~S ~S" - *last-utime-sec* utime-sec - *last-utime-usec* utime-usec - *last-stime-sec* stime-sec - *last-stime-usec* stime-usec - *last-internal-run-time* result))) - (setf *last-utime-sec* utime-sec - *last-utime-usec* utime-usec - *last-stime-sec* stime-sec - *last-stime-usec* stime-usec - *last-internal-run-time* result) - result))) ;;;; Encode and decode universal times. @@ -270,20 +239,15 @@ ;;; Try to compile the closure arg to %TIME if it is interpreted. (defun massage-time-function (fun) - (cond - ((sb!eval:interpreted-function-p fun) - (multiple-value-bind (def env-p) (function-lambda-expression fun) - (declare (ignore def)) - (cond - (env-p - (warn "TIME form in a non-null environment, forced to interpret.~@ - Compiling entire form will produce more accurate times.") - fun) - (t - (compile nil fun))))) - (t fun))) + ;; This is just a placeholder as of the switch from IR1 interpreter + ;; to bytecode interpreter. Someday it might make sense to complain + ;; about bytecoded FUN and/or compile it to native code, so I've + ;; left the placeholder in place, but as of sbcl-0.7.0 it's not + ;; obvious how to do the right thing easily, so I haven't actually + ;; done it. -- WHN + fun) -;;; Return all the files that we want time to report. +;;; Return all the data that we want TIME to report. (defun time-get-sys-info () (multiple-value-bind (user sys faults) (sb!sys:get-system-info) (values user sys faults (get-bytes-consed))))