X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcompiler%2Fdebug.lisp;h=9c37ee19b56b88da64376ad8e893898db39e0eca;hb=eaf81bd22d56879aa1feff5535d60db81acbd15f;hp=e3c665b732003434151707b7ac192432a17349b9;hpb=c2431e2d0d0222a3cf20cfdfa48201bdcc65cd76;p=sbcl.git diff --git a/src/compiler/debug.lisp b/src/compiler/debug.lisp index e3c665b..9c37ee1 100644 --- a/src/compiler/debug.lisp +++ b/src/compiler/debug.lisp @@ -122,7 +122,7 @@ (unless (or (constant-p v) (and (global-var-p v) (member (global-var-kind v) - '(:global :special)))) + '(:global :special :unknown)))) (barf "strange *FREE-VARS* entry: ~S" v)) (dolist (n (leaf-refs v)) (check-node-reached n)) @@ -415,7 +415,7 @@ (typecase last (cif (unless (proper-list-of-length-p succ 1 2) - (barf "~S ends in an IF, but doesn't have one or two succesors." + (barf "~S ends in an IF, but doesn't have one or two successors." block)) (unless (member (if-consequent last) succ) (barf "The CONSEQUENT for ~S isn't in SUCC for ~S." last block)) @@ -642,7 +642,7 @@ atypes) (template-more-args-type info) "args") (check-tn-refs (vop-results vop) vop t - (if (eq rtypes :conditional) 0 (length rtypes)) + (if (template-conditional-p info) 0 (length rtypes)) (template-more-results-type info) "results") (check-tn-refs (vop-temps vop) vop t 0 t "temps") (unless (= (length (vop-codegen-info vop)) @@ -1009,7 +1009,12 @@ (case (cleanup-kind cleanup) ((:dynamic-extent) (format t "entry DX~{ v~D~}" - (mapcar #'cont-num (cleanup-info cleanup)))) + (mapcar (lambda (lvar-or-cell) + (if (consp lvar-or-cell) + (cons (car lvar-or-cell) + (cont-num (cdr lvar-or-cell))) + (cont-num lvar-or-cell))) + (cleanup-info cleanup)))) (t (format t "entry ~S" (entry-exits node)))))) (exit