From 8bbe714375308479ffc42986cda219cd9245325d Mon Sep 17 00:00:00 2001
From: ram <ram>
Date: Sun, 6 May 1990 23:40:37 +0000
Subject: [PATCH] In CHECK-VOP-REFS, flushed check for all args coming after
 all results, since they now can come in random orders with the new arg/result
 :to/:from options to DEFINE-VOP.

---
 compiler/debug.lisp | 42 +++++++++++++++++++-----------------------
 1 file changed, 19 insertions(+), 23 deletions(-)

diff --git a/compiler/debug.lisp b/compiler/debug.lisp
index 7f784bf39..3bccf3832 100644
--- a/compiler/debug.lisp
+++ b/compiler/debug.lisp
@@ -633,29 +633,25 @@
 ;;; 
 (defun check-vop-refs (vop)
   (declare (type vop vop))
-  (let ((saw-arg nil))
-    (do ((ref (vop-refs vop) (tn-ref-next-ref ref)))
-	((null ref))
-      (cond
-       ((find-in #'tn-ref-across ref (vop-args vop))
-	(setq saw-arg t))
-       ((find-in #'tn-ref-across ref (vop-results vop))
-	(when saw-arg
-	  (barf "Result ~S after arg in refs for ~S." ref vop)))
-       ((not (eq (tn-ref-vop ref) vop))
-	(barf "VOP in ~S isn't ~S." ref vop))
-       ((find-in #'tn-ref-across ref (vop-temps vop)))
-       ((tn-ref-write-p ref)
-	(barf "Stray ref that isn't a read: ~S." ref))
-       (t
-	(let* ((tn (tn-ref-tn ref))
-	       (temp (find-in #'tn-ref-across tn (vop-temps vop)
-			      :key #'tn-ref-tn)))
-	  (unless temp
-	    (barf "Stray ref with no corresponding temp write: ~S." ref))
-	  (unless (find-in #'tn-ref-next-ref temp (tn-ref-next-ref ref))
-	    (barf "Read is after write for temp ~S in refs of ~S."
-		  tn vop)))))))
+  (do ((ref (vop-refs vop) (tn-ref-next-ref ref)))
+      ((null ref))
+    (cond
+     ((find-in #'tn-ref-across ref (vop-args vop)))
+     ((find-in #'tn-ref-across ref (vop-results vop)))
+     ((not (eq (tn-ref-vop ref) vop))
+      (barf "VOP in ~S isn't ~S." ref vop))
+     ((find-in #'tn-ref-across ref (vop-temps vop)))
+     ((tn-ref-write-p ref)
+      (barf "Stray ref that isn't a read: ~S." ref))
+     (t
+      (let* ((tn (tn-ref-tn ref))
+	     (temp (find-in #'tn-ref-across tn (vop-temps vop)
+			    :key #'tn-ref-tn)))
+	(unless temp
+	  (barf "Stray ref with no corresponding temp write: ~S." ref))
+	(unless (find-in #'tn-ref-next-ref temp (tn-ref-next-ref ref))
+	  (barf "Read is after write for temp ~S in refs of ~S."
+		tn vop))))))
   (undefined-value))
 
 
-- 
GitLab