From a5661f459d8801a149c0fe255bea1a68cc149410 Mon Sep 17 00:00:00 2001
From: wlott <wlott>
Date: Mon, 23 Aug 1993 03:02:18 +0000
Subject: [PATCH] Added support for dylan module variables.

---
 code/byte-interp.lisp | 27 ++++++++++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)

diff --git a/code/byte-interp.lisp b/code/byte-interp.lisp
index b43ccdcb8..7f1299a9e 100644
--- a/code/byte-interp.lisp
+++ b/code/byte-interp.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/byte-interp.lisp,v 1.25 1993/08/21 00:23:00 ram Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/byte-interp.lisp,v 1.26 1993/08/23 03:02:18 wlott Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -878,6 +878,31 @@
       (push-eval-stack val))
     (byte-interpret component new-pc fp)))
 
+
+;;; Used to ref and set dylan variables.
+;;;
+(define-xop dylan-var-ref (component old-pc pc fp)
+  (declare (type code-component component)
+	   (ignore old-pc)
+	   (type pc pc)
+	   (type stack-pointer fp))
+  (let ((value (pop-eval-stack)))
+    (declare (optimize (inhibit-warnings 3)))
+    (push-eval-stack (dylan::value-datum value)))
+  (byte-interpret component pc fp))
+;;;
+(define-xop dylan-var-set (component old-pc pc fp)
+  (declare (type code-component component)
+	   (ignore old-pc)
+	   (type pc pc)
+	   (type stack-pointer fp))
+  (multiple-value-pop-eval-stack
+      (new value)
+    (declare (optimize (inhibit-warnings 3)))
+    (setf (dylan::value-datum value) new))
+  (byte-interpret component pc fp))
+
+
 
 ;;;; Type checking:
 
-- 
GitLab