(in-package "SB!C")
-(file-comment
- "$Header$")
-
;;; Return the template having the specified name, or die trying.
(defun template-or-lose (x)
(the template
(or (gethash x *backend-template-names*)
(error "~S is not a defined template." x))))
-;;; Return the SC structure, SB structure or SC number corresponding to a
-;;; name, or die trying.
+;;; Return the SC structure, SB structure or SC number corresponding
+;;; to a name, or die trying.
(defun sc-or-lose (x)
(the sc
(or (gethash x *backend-sc-names*)
\f
;;;; primitive type definition
-;;; Return the primitive type corresponding to the specified name, or die
-;;; trying.
+;;; Return the primitive type corresponding to the specified name, or
+;;; die trying.
(defun primitive-type-or-lose (name)
(the primitive-type
(or (gethash name *backend-primitive-type-names*)
(error "~S is not a defined primitive type." name))))
-;;; Return true if SC is either one of Ptype's SC's, or one of those SC's
-;;; alternate or constant SCs.
+;;; Return true if SC is either one of PTYPE's SC's, or one of those
+;;; SC's alternate or constant SCs.
(defun sc-allowed-by-primitive-type (sc ptype)
(declare (type sc sc) (type primitive-type ptype))
(let ((scn (sc-number sc)))
\f
;;;; generation of emit functions
-(defconstant max-vop-tn-refs 256)
+(eval-when (:compile-toplevel :load-toplevel :execute)
+ ;; We need the EVAL-WHEN because %EMIT-GENERIC-VOP (below)
+ ;; uses #.MAX-VOP-TN-REFS, not just MAX-VOP-TN-REFS.
+ ;; -- AL 20010218
+ (defconstant max-vop-tn-refs 256))
(defvar *vop-tn-refs* (make-array max-vop-tn-refs :initial-element nil))
(defvar *using-vop-tn-refs* nil)
(flet ((convert (types more-types)
(flet ((frob (x)
(if (eq x '*)
- 't
+ t
(ecase (first x)
(:or `(or ,@(mapcar #'(lambda (type)
(type-specifier