projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
don't consider an interpreted->compiled function change interesting
[sbcl.git]
/
src
/
compiler
/
debug-dump.lisp
diff --git
a/src/compiler/debug-dump.lisp
b/src/compiler/debug-dump.lisp
index
6633b3f
..
35929cc
100644
(file)
--- a/
src/compiler/debug-dump.lisp
+++ b/
src/compiler/debug-dump.lisp
@@
-268,10
+268,7
@@
:form (let ((direct-file-info (source-info-file-info info)))
(when (eq :lisp (file-info-name direct-file-info))
:form (let ((direct-file-info (source-info-file-info info)))
(when (eq :lisp (file-info-name direct-file-info))
- (let ((form (elt (file-info-forms direct-file-info) 0)))
- ;; The form COMPILE saves may include gunk
- ;; from %SIMPLE-EVAL -- this gets rid of that.
- (sb!impl::eval-lambda-source-lambda form))))
+ (elt (file-info-forms direct-file-info) 0)))
:function function)))
;;; Given an arbitrary sequence, coerce it to an unsigned vector if
:function function)))
;;; Given an arbitrary sequence, coerce it to an unsigned vector if
@@
-352,7
+349,8
@@
(let* ((name (leaf-debug-name var))
(save-tn (and tn (tn-save-tn tn)))
(kind (and tn (tn-kind tn)))
(let* ((name (leaf-debug-name var))
(save-tn (and tn (tn-save-tn tn)))
(kind (and tn (tn-kind tn)))
- (flags 0))
+ (flags 0)
+ (info (lambda-var-arg-info var)))
(declare (type index flags))
(when minimal
(setq flags (logior flags compiled-debug-var-minimal-p))
(declare (type index flags))
(when minimal
(setq flags (logior flags compiled-debug-var-minimal-p))
@@
-369,6
+367,12
@@
(setq flags (logior flags compiled-debug-var-save-loc-p)))
(unless (or (zerop id) minimal)
(setq flags (logior flags compiled-debug-var-id-p)))
(setq flags (logior flags compiled-debug-var-save-loc-p)))
(unless (or (zerop id) minimal)
(setq flags (logior flags compiled-debug-var-id-p)))
+ (when info
+ (case (arg-info-kind info)
+ (:more-context
+ (setq flags (logior flags compiled-debug-var-more-context-p)))
+ (:more-count
+ (setq flags (logior flags compiled-debug-var-more-count-p)))))
(vector-push-extend flags buffer)
(unless minimal
(vector-push-extend name buffer)
(vector-push-extend flags buffer)
(unless minimal
(vector-push-extend name buffer)
@@
-534,8
+538,9
@@
(level (if #!+sb-dyncount *collect-dynamic-statistics*
#!-sb-dyncount nil
(max actual-level 2)
(level (if #!+sb-dyncount *collect-dynamic-statistics*
#!-sb-dyncount nil
(max actual-level 2)
- actual-level)))
- (cond ((zerop level))
+ actual-level))
+ (toplevel-p (eq :toplevel (compiled-debug-fun-kind dfun))))
+ (cond ((or (zerop level) toplevel-p))
((and (<= level 1)
(let ((od (lambda-optional-dispatch fun)))
(or (not od)
((and (<= level 1)
(let ((od (lambda-optional-dispatch fun)))
(or (not od)
@@
-549,7
+554,7
@@
(setf (compiled-debug-fun-arguments dfun)
(compute-args fun var-locs))))
(setf (compiled-debug-fun-arguments dfun)
(compute-args fun var-locs))))
- (if (>= level 2)
+ (if (and (>= level 2) (not toplevel-p))
(multiple-value-bind (blocks tlf-num)
(compute-debug-blocks fun var-locs)
(setf (compiled-debug-fun-tlf-number dfun) tlf-num)
(multiple-value-bind (blocks tlf-num)
(compute-debug-blocks fun var-locs)
(setf (compiled-debug-fun-tlf-number dfun) tlf-num)