0.pre7.86.flaky7.3:
[sbcl.git] / src / compiler / meta-vmdef.lisp
index 2d73241..90cfd02 100644 (file)
 (defmacro !def-primitive-type (name scs &key (type name))
   (declare (type symbol name) (type list scs))
   (let ((scns (mapcar #'meta-sc-number-or-lose scs))
-       (get-type `(specifier-type ',type)))
+       (ctype-form `(specifier-type ',type)))
     `(progn
        (/show0 "doing !DEF-PRIMITIVE-TYPE, NAME=..")
        (/primitive-print ,(symbol-name name))
         (setf (gethash ',name *backend-meta-primitive-type-names*)
               (make-primitive-type :name ',name
                                    :scs ',scns
-                                   :type ,get-type)))
+                                   :type ,ctype-form)))
        ,(once-only ((n-old `(gethash ',name *backend-primitive-type-names*))
-                   (n-type get-type))
+                   (n-type ctype-form))
          `(progn
             ;; If the PRIMITIVE-TYPE structure already exists, we
             ;; destructively modify it so that existing references in
   ;; name of the operand (which we bind to the TN)
   (name nil :type symbol)
   ;; the way this operand is used:
-  (kind (required-argument)
+  (kind (missing-arg)
        :type (member :argument :result :temporary
                      :more-argument :more-result))
   ;; If true, the name of an operand that this operand is targeted to.
                            :key #'operand-parse-name))))))
   (values))
 \f
-;;; the top-level parse function: clobber PARSE to represent the
+;;; the top level parse function: clobber PARSE to represent the
 ;;; specified options.
 (defun parse-define-vop (parse specs)
   (declare (type vop-parse parse) (list specs))
                   (when (and ,tn-var (not (eq ,tn-var :more)))
                     (,n-bod ,tn-var)))))))))))
 
-;;; Iterate over all the IR2 blocks in the environment Env, in emit order.
-(defmacro do-environment-ir2-blocks ((block-var env &optional result)
-                                    &body body)
-  (once-only ((n-env env))
-    (once-only ((n-first `(node-block
-                          (lambda-bind
-                           (environment-function ,n-env)))))
+;;; Iterate over all the IR2 blocks in PHYSENV, in emit order.
+(defmacro do-physenv-ir2-blocks ((block-var physenv &optional result)
+                                &body body)
+  (once-only ((n-physenv physenv))
+    (once-only ((n-first `(lambda-block (physenv-lambda ,n-physenv))))
       (once-only ((n-tail `(block-info
                            (component-tail
                             (block-component ,n-first)))))
        `(do ((,block-var (block-info ,n-first)
                          (ir2-block-next ,block-var)))
             ((or (eq ,block-var ,n-tail)
-                 (not (eq (ir2-block-environment ,block-var) ,n-env)))
+                 (not (eq (ir2-block-physenv ,block-var) ,n-physenv)))
              ,result)
           ,@body)))))