Skip to content
Snippets Groups Projects
Commit 1ec02609 authored by wlott's avatar wlott
Browse files

Added defuns for all the strange predicates that the new compiler needs to

be able to constant fold.
parent e669e995
No related branches found
No related tags found
No related merge requests found
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
;;; Scott Fahlman (FAHLMAN@CMUC). ;;; Scott Fahlman (FAHLMAN@CMUC).
;;; ********************************************************************** ;;; **********************************************************************
;;; ;;;
;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-fndb.lisp,v 1.7 1990/05/23 06:07:34 wlott Exp $ ;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-fndb.lisp,v 1.8 1990/05/26 22:46:32 wlott Exp $
;;; ;;;
;;; This file defines the machine specific function signatures. ;;; This file defines the machine specific function signatures.
;;; ;;;
...@@ -33,6 +33,25 @@ ...@@ -33,6 +33,25 @@
system-area-pointer-p realp unsigned-byte-32-p signed-byte-32-p) system-area-pointer-p realp unsigned-byte-32-p signed-byte-32-p)
(t) boolean (movable foldable flushable)) (t) boolean (movable foldable flushable))
;;; Introduce these predicates into the old compiler. This is necessary
;;; 'cause they are marked as foldable.
;;;
#-new-compiler
(macrolet ((frob (name type)
`(defun ,name (thing)
(typep thing ',type))))
(frob simple-array-unsigned-byte-2-p (simple-array (unsigned-byte 2) (*)))
(frob simple-array-unsigned-byte-4-p (simple-array (unsigned-byte 4) (*)))
(frob simple-array-unsigned-byte-8-p (simple-array (unsigned-byte 8) (*)))
(frob simple-array-unsigned-byte-16-p (simple-array (unsigned-byte 16) (*)))
(frob simple-array-unsigned-byte-32-p (simple-array (unsigned-byte 32) (*)))
(frob simple-array-single-float-p (simple-array single-float (*)))
(frob simple-array-double-float-p (simple-array double-float (*)))
(frob system-area-pointer-p system-area-pointer)
(frob realp real)
(frob unsigned-byte-32-p (unsigned-byte 32))
(frob signed-byte-32-p (signed-byte 32)))
;;;; Miscellaneous "sub-primitives": ;;;; Miscellaneous "sub-primitives":
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment