diff --git a/compiler/alpha/array.lisp b/compiler/alpha/array.lisp index 126c29b8cdcf3ced8a26539b819574ccd881fa3c..a53ba10c6911f467667c7e4a6ec1c89993620390 100644 --- a/compiler/alpha/array.lisp +++ b/compiler/alpha/array.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/array.lisp,v 1.7 1998/03/10 18:35:12 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/array.lisp,v 1.8 1998/07/24 17:22:29 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -146,18 +146,14 @@ (def-full-data-vector-frobs simple-array-unsigned-byte-32 unsigned-num unsigned-reg) -#+signed-array (def-partial-data-vector-frobs simple-array-signed-byte-8 tagged-num :byte t signed-reg) -#+signed-array (def-partial-data-vector-frobs simple-array-signed-byte-16 tagged-num :short t signed-reg) -#+signed-array (def-full-data-vector-frobs simple-array-signed-byte-30 tagged-num any-reg) -#+signed-array (def-full-data-vector-frobs simple-array-signed-byte-32 signed-num signed-reg) ;;; Integer vectors whos elements are smaller than a byte. I.e. bit, 2-bit, @@ -409,8 +405,6 @@ ;;; Complex float arrays. -#+complex-float -(progn (define-vop (data-vector-ref/simple-array-complex-single-float) (:note "inline array access") @@ -520,8 +514,6 @@ (unless (location= result-imag value-imag) (inst fmove value-imag result-imag))))) -) ; end progn complex-float - ;;; These VOPs are used for implementing float slots in structures (whose raw ;;; data is an unsigned-32 vector. @@ -542,8 +534,6 @@ (:translate %raw-set-double) (:arg-types simple-array-unsigned-byte-32 positive-fixnum double-float)) -#+complex-float -(progn (define-vop (raw-ref-complex-single data-vector-ref/simple-array-complex-single-float) (:translate %raw-ref-complex-single) @@ -565,7 +555,6 @@ (:translate %raw-set-complex-double) (:arg-types simple-array-unsigned-byte-32 positive-fixnum complex-double-float)) -) ; end progn complex-float ;;; These vops are useful for accessing the bits of a vector irrespective of diff --git a/compiler/alpha/float.lisp b/compiler/alpha/float.lisp index 947f0c75fbbed4c67918f233e6d8e43183c51e15..68cbe7d3340363c676e1ccb1b1feefd5539fdfc4 100644 --- a/compiler/alpha/float.lisp +++ b/compiler/alpha/float.lisp @@ -6,7 +6,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/float.lisp,v 1.11 1998/03/11 17:15:47 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/float.lisp,v 1.12 1998/07/24 17:22:29 dtc Rel $") ;;; ;;; ********************************************************************** ;;; @@ -137,8 +137,6 @@ ;;;; Complex float move functions -#+complex-float -(progn (defun complex-single-reg-real-tn (x) (make-random-tn :kind :normal :sc (sc-or-lose 'single-reg *backend*) @@ -367,12 +365,9 @@ (define-move-vop move-complex-double-float-argument :move-argument (complex-double-reg descriptor-reg) (complex-double-reg)) -) ; progn complex-float - (define-move-vop move-argument :move-argument - (single-reg double-reg - #+complex-float complex-single-reg #+complex-float complex-double-reg) + (single-reg double-reg complex-single-reg complex-double-reg) (descriptor-reg)) @@ -786,9 +781,6 @@ ;;;; Complex float VOPs -#+complex-float -(progn - (define-vop (make-complex-single-float) (:translate complex) (:args (real :scs (single-reg) :target r) @@ -904,5 +896,3 @@ (:translate imagpart) (:note "complex double float imagpart") (:variant :imag)) - -) ; progn complex-float diff --git a/compiler/alpha/type-vops.lisp b/compiler/alpha/type-vops.lisp index 1c51aa45ec6e48ee2c4e7ab5173716e90cd154e2..c43ec325a31aa45837a7da9b8298ec4f47f0ffed 100644 --- a/compiler/alpha/type-vops.lisp +++ b/compiler/alpha/type-vops.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/type-vops.lisp,v 1.3 1998/01/21 19:23:46 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/type-vops.lisp,v 1.4 1998/07/24 17:22:30 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -257,24 +257,19 @@ (def-type-vops complexp check-complex complex object-not-complex-error complex-type - #+complex-float complex-single-float-type - #+complex-float complex-double-float-type) + complex-single-float-type complex-double-float-type) -#+complex-float (def-type-vops complex-rational-p check-complex-rational nil object-not-complex-rational-error complex-type) -#+complex-float (def-type-vops complex-float-p check-complex-float nil object-not-complex-float-error complex-single-float-type complex-double-float-type) -#+complex-float (def-type-vops complex-single-float-p check-complex-single-float complex-single-float object-not-complex-single-float-error complex-single-float-type) -#+complex-float (def-type-vops complex-double-float-p check-complex-double-float complex-double-float object-not-complex-double-float-error complex-double-float-type) @@ -324,28 +319,24 @@ object-not-simple-array-unsigned-byte-32-error simple-array-unsigned-byte-32-type) -#+signed-array (def-type-vops simple-array-signed-byte-8-p check-simple-array-signed-byte-8 simple-array-signed-byte-8 object-not-simple-array-signed-byte-8-error simple-array-signed-byte-8-type) -#+signed-array (def-type-vops simple-array-signed-byte-16-p check-simple-array-signed-byte-16 simple-array-signed-byte-16 object-not-simple-array-signed-byte-16-error simple-array-signed-byte-16-type) -#+signed-array (def-type-vops simple-array-signed-byte-30-p check-simple-array-signed-byte-30 simple-array-signed-byte-30 object-not-simple-array-signed-byte-30-error simple-array-signed-byte-30-type) -#+signed-array (def-type-vops simple-array-signed-byte-32-p check-simple-array-signed-byte-32 simple-array-signed-byte-32 @@ -360,14 +351,12 @@ simple-array-double-float object-not-simple-array-double-float-error simple-array-double-float-type) -#+complex-float (def-type-vops simple-array-complex-single-float-p check-simple-array-complex-single-float simple-array-complex-single-float object-not-simple-array-complex-single-float-error simple-array-complex-single-float-type) -#+complex-float (def-type-vops simple-array-complex-double-float-p check-simple-array-complex-double-float simple-array-complex-double-float @@ -420,13 +409,11 @@ simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type + simple-array-complex-single-float-type + simple-array-complex-double-float-type complex-string-type complex-bit-vector-type complex-vector-type) (def-type-vops simple-array-p check-simple-array nil object-not-simple-array-error @@ -434,34 +421,29 @@ simple-vector-type simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type) + simple-array-complex-single-float-type + simple-array-complex-double-float-type) (def-type-vops arrayp check-array nil object-not-array-error simple-array-type simple-string-type simple-bit-vector-type simple-vector-type simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type + simple-array-complex-single-float-type + simple-array-complex-double-float-type complex-string-type complex-bit-vector-type complex-vector-type complex-array-type) (def-type-vops numberp check-number nil object-not-number-error even-fixnum-type odd-fixnum-type bignum-type ratio-type single-float-type double-float-type complex-type - #+complex-float complex-single-float-type - #+complex-float complex-double-float-type) + complex-single-float-type complex-double-float-type) (def-type-vops rationalp check-rational nil object-not-rational-error even-fixnum-type odd-fixnum-type ratio-type bignum-type) diff --git a/compiler/alpha/vm.lisp b/compiler/alpha/vm.lisp index 48cd38d0f1e1f164a0ee835aaa107d8d6e32e880..a9014edcb7f6191b1511b3cdaf5290fb49e99d81 100644 --- a/compiler/alpha/vm.lisp +++ b/compiler/alpha/vm.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/vm.lisp,v 1.5 1998/03/04 15:01:52 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/alpha/vm.lisp,v 1.6 1998/07/24 17:22:30 dtc Rel $") ;;; ;;; ********************************************************************** ;;; @@ -156,9 +156,7 @@ (single-stack non-descriptor-stack) ; single-floats (double-stack non-descriptor-stack :element-size 2 :alignment 2) ; double floats. - #+complex-float (complex-single-stack non-descriptor-stack :element-size 2) - #+complex-float (complex-double-stack non-descriptor-stack :element-size 4 :alignment 2) @@ -231,7 +229,6 @@ :save-p t :alternate-scs (double-stack)) - #+complex-float (complex-single-reg float-registers :locations #.(loop for i from 4 to 28 by 2 collect i) :element-size 2 @@ -239,7 +236,6 @@ :save-p t :alternate-scs (complex-single-stack)) - #+complex-float (complex-double-reg float-registers :locations #.(loop for i from 4 to 28 by 2 collect i) :element-size 2 diff --git a/compiler/array-tran.lisp b/compiler/array-tran.lisp index 01c27e7fdc3684771dda82a6e4705433906b087c..f89ed3675c2cf4c5ce18be2e96091686b767e7ae 100644 --- a/compiler/array-tran.lisp +++ b/compiler/array-tran.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/array-tran.lisp,v 1.26 1998/03/21 08:08:31 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/array-tran.lisp,v 1.27 1998/07/24 17:22:26 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -209,15 +209,15 @@ ((unsigned-byte 8) 0 8 vm:simple-array-unsigned-byte-8-type) ((unsigned-byte 16) 0 16 vm:simple-array-unsigned-byte-16-type) ((unsigned-byte 32) 0 32 vm:simple-array-unsigned-byte-32-type) - #+signed-array ((signed-byte 8) 0 8 vm:simple-array-signed-byte-8-type) - #+signed-array ((signed-byte 16) 0 16 vm:simple-array-signed-byte-16-type) - #+signed-array ((signed-byte 30) 0 32 vm:simple-array-signed-byte-30-type) - #+signed-array ((signed-byte 32) 0 32 vm:simple-array-signed-byte-32-type) - #+complex-float ((complex single-float) #C(0.0s0 0.0s0) 64 - vm:simple-array-complex-single-float-type) - #+complex-float ((complex double-float) #C(0.0d0 0.0d0) 128 - vm:simple-array-complex-double-float-type) - #+(and complex-float long-float) + ((signed-byte 8) 0 8 vm:simple-array-signed-byte-8-type) + ((signed-byte 16) 0 16 vm:simple-array-signed-byte-16-type) + ((signed-byte 30) 0 32 vm:simple-array-signed-byte-30-type) + ((signed-byte 32) 0 32 vm:simple-array-signed-byte-32-type) + ((complex single-float) #C(0.0s0 0.0s0) 64 + vm:simple-array-complex-single-float-type) + ((complex double-float) #C(0.0d0 0.0d0) 128 + vm:simple-array-complex-double-float-type) + #+long-float ((complex long-float) #C(0.0l0 0.0l0) #+x86 192 #+sparc 256 vm:simple-array-complex-long-float-type) (t 0 32 vm:simple-vector-type))) diff --git a/compiler/dump.lisp b/compiler/dump.lisp index f0b0d100296b8226cb751f0ffa91ffb8dd50e869..7ec69e05492b695cf0e535648bb884cd8d06e30a 100644 --- a/compiler/dump.lisp +++ b/compiler/dump.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/dump.lisp,v 1.70 1998/03/21 08:08:32 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/dump.lisp,v 1.71 1998/07/24 17:22:26 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -1086,7 +1086,6 @@ ;;; Or a complex... -#+complex-float (defun dump-complex (x file) (typecase x ((complex single-float) @@ -1113,13 +1112,6 @@ (sub-dump-object (imagpart x) file) (dump-fop 'lisp::fop-complex file)))) -#-complex-float -(defun dump-complex (x file) - (sub-dump-object (realpart x) file) - (sub-dump-object (imagpart x) file) - (dump-fop 'lisp::fop-complex file)) - - ;;; Dump an integer. (defun dump-integer (n file) @@ -1365,15 +1357,13 @@ ((simple-array long-float (*)) (dump-long-float-vector simple-version file) (eq-save-object x file)) - #+complex-float ((simple-array (complex single-float) (*)) (dump-complex-single-float-vector simple-version file) (eq-save-object x file)) - #+complex-float ((simple-array (complex double-float) (*)) (dump-complex-double-float-vector simple-version file) (eq-save-object x file)) - #+(and complex-float long-float) + #+long-float ((simple-array (complex long-float) (*)) (dump-complex-long-float-vector simple-version file) (eq-save-object x file)) @@ -1423,27 +1413,6 @@ ;;; then just write the bits. Otherwise, dispatch off of the target byte order ;;; and write the vector one element at a time. ;;; -#-signed-array -(defun dump-i-vector (vec file &optional data-only) - (declare (type (simple-array * (*)) vec)) - (let* ((ac (etypecase vec - (simple-bit-vector 0) - ((simple-array (unsigned-byte 2) (*)) 1) - ((simple-array (unsigned-byte 4) (*)) 2) - ((simple-array (unsigned-byte 8) (*)) 3) - ((simple-array (unsigned-byte 16) (*)) 4) - ((simple-array (unsigned-byte 32) (*)) 5))) - (len (length vec)) - (size (ash 1 ac)) - (bytes (ash (+ (the index (ash len ac)) 7) -3))) - (declare (type index ac len size bytes)) - (unless data-only - (dump-fop 'lisp::fop-int-vector file) - (dump-unsigned-32 len file) - (dump-byte size file)) - (dump-data-maybe-byte-swapping vec bytes size file))) - -#+signed-array (defun dump-i-vector (vec file &optional data-only) (declare (type (simple-array * (*)) vec)) (let ((len (length vec))) @@ -1512,7 +1481,6 @@ ;;; DUMP-COMPLEX-SINGLE-FLOAT-VECTOR -- internal. ;;; -#+complex-float (defun dump-complex-single-float-vector (vec file) (let ((length (length vec))) (dump-fop 'lisp::fop-complex-single-float-vector file) @@ -1522,7 +1490,6 @@ ;;; DUMP-COMPLEX-DOUBLE-FLOAT-VECTOR -- internal. ;;; -#+complex-float (defun dump-complex-double-float-vector (vec file) (let ((length (length vec))) (dump-fop 'lisp::fop-complex-double-float-vector file) @@ -1532,7 +1499,7 @@ ;;; DUMP-COMPLEX-LONG-FLOAT-VECTOR -- internal. ;;; -#+(and complex-float long-float) +#+long-float (defun dump-complex-long-float-vector (vec file) (let ((length (length vec))) (dump-fop 'lisp::fop-complex-long-float-vector file) diff --git a/compiler/float-tran.lisp b/compiler/float-tran.lisp index d43b35962bc8b173283e916a5a0afddd5b938cb4..1deac782d188c90c5c1924ac9f265330e1aa5a68 100644 --- a/compiler/float-tran.lisp +++ b/compiler/float-tran.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/float-tran.lisp,v 1.69 1998/04/15 01:29:59 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/float-tran.lisp,v 1.70 1998/07/24 17:22:27 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -1032,14 +1032,10 @@ ) ;end progn for propagate-fun-type -#+complex-float -(progn - (deftransform realpart ((x) ((complex rational)) *) '(kernel:%realpart x)) (deftransform imagpart ((x) ((complex rational)) *) '(kernel:%imagpart x)) -) ;end progn complex-float ;;; Make REALPART and IMAGPART return the appropriate types. This ;;; should help a lot in optimized code. diff --git a/compiler/generic/interr.lisp b/compiler/generic/interr.lisp index d32a60324d7683396f144d0a5e9425579fdbf9fa..0af78fdcad97385dc8883fead8d37da22cfb65d3 100644 --- a/compiler/generic/interr.lisp +++ b/compiler/generic/interr.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/interr.lisp,v 1.9 1998/03/21 07:55:52 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/interr.lisp,v 1.10 1998/07/24 17:22:30 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -140,16 +140,12 @@ "Object is not of type (SIMPLE-ARRAY (UNSIGNED-BYTE 16) (*)).") (object-not-simple-array-unsigned-byte-32 "Object is not of type (SIMPLE-ARRAY (UNSIGNED-BYTE 32) (*)).") - #+signed-array (object-not-simple-array-signed-byte-8 "Object is not of type (SIMPLE-ARRAY (SIGNED-BYTE 8) (*)).") - #+signed-array (object-not-simple-array-signed-byte-16 "Object is not of type (SIMPLE-ARRAY (SIGNED-BYTE 16) (*)).") - #+signed-array (object-not-simple-array-signed-byte-30 "Object is not of type (SIMPLE-ARRAY FIXNUM (*)).") - #+signed-array (object-not-simple-array-signed-byte-32 "Object is not of type (SIMPLE-ARRAY (SIGNED-BYTE 32) (*)).") (object-not-simple-array-single-float @@ -159,30 +155,24 @@ #+long-float (object-not-simple-array-long-float "Object is not of type (SIMPLE-ARRAY LONG-FLOAT (*)).") - #+complex-float (object-not-simple-array-complex-single-float "Object is not of type (SIMPLE-ARRAY (COMPLEX SINGLE-FLOAT) (*)).") - #+complex-float (object-not-simple-array-complex-double-float "Object is not of type (SIMPLE-ARRAY (COMPLEX DOUBLE-FLOAT) (*)).") - #+(and complex-float long-float) + #+long-float (object-not-simple-array-complex-long-float "Object is not of type (SIMPLE-ARRAY (COMPLEX LONG-FLOAT) (*)).") (object-not-complex "Object is not of type COMPLEX.") - #+complex-float (object-not-complex-rational "Object is not of type (COMPLEX RATIONAL).") - #+complex-float (object-not-complex-float "Object is not of type (COMPLEX FLOAT).") - #+complex-float (object-not-complex-single-float "Object is not of type (COMPLEX SINGLE-FLOAT).") - #+complex-float (object-not-complex-double-float "Object is not of type (COMPLEX DOUBLE-FLOAT).") - #+(and complex-float long-float) + #+long-float (object-not-complex-long-float "Object is not of type (COMPLEX LONG-FLOAT).") (object-not-weak-pointer diff --git a/compiler/generic/new-genesis.lisp b/compiler/generic/new-genesis.lisp index e2c2afb73230a23e13b9b25a1d001405253a4312..b7a5af451912452b92303d8167082d964cd6cf66 100644 --- a/compiler/generic/new-genesis.lisp +++ b/compiler/generic/new-genesis.lisp @@ -4,7 +4,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/new-genesis.lisp,v 1.35 1998/06/11 21:27:56 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/new-genesis.lisp,v 1.36 1998/07/24 17:22:31 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -455,7 +455,6 @@ (error "Long-Float not supported"))) des)))) -#+complex-float (defun complex-single-float-to-core (num) (declare (type (complex single-float) num)) (let ((des (allocate-unboxed-object *dynamic* vm:word-bits @@ -467,7 +466,6 @@ (make-random-descriptor (single-float-bits (imagpart num)))) des)) -#+complex-float (defun complex-double-float-to-core (num) (declare (type (complex double-float) num)) (let ((des (allocate-unboxed-object *dynamic* vm:word-bits @@ -504,11 +502,9 @@ (ratio (number-pair-to-core (number-to-core (numerator number)) (number-to-core (denominator number)) vm:ratio-type)) - #+complex-float ((complex single-float) (complex-single-float-to-core number)) - #+complex-float ((complex double-float) (complex-double-float-to-core number)) - #+(and complex-float long-float) + #+long-float ((complex long-float) (error "~S isn't a cold-loadable number at all!" number)) (complex (number-pair-to-core (number-to-core (realpart number)) @@ -1333,9 +1329,9 @@ result)) #+long-float (not-cold-fop fop-long-float-vector) -#+complex-float (not-cold-fop fop-complex-single-float-vector) -#+complex-float (not-cold-fop fop-complex-double-float-vector) -#+(and complex-float long-float) (not-cold-fop fop-complex-long-float-vector) +(not-cold-fop fop-complex-single-float-vector) +(not-cold-fop fop-complex-double-float-vector) +#+long-float (not-cold-fop fop-complex-long-float-vector) (define-cold-fop (fop-array) (let* ((rank (read-arg 4)) @@ -1380,8 +1376,8 @@ (cold-number fop-small-integer) (cold-number fop-word-integer) (cold-number fop-byte-integer) -#+complex-float (cold-number fop-complex-single-float) -#+complex-float (cold-number fop-complex-double-float) +(cold-number fop-complex-single-float) +(cold-number fop-complex-double-float) #+long-float (define-cold-fop (fop-long-float) @@ -1415,7 +1411,7 @@ (write-indexed des (+ 3 vm:long-float-value-slot) low-bits) des))))) -#+(and complex-float long-float) +#+long-float (define-cold-fop (fop-complex-long-float) (ecase (c:backend-fasl-file-implementation c:*backend*) (#.c:x86-fasl-file-implementation ; 80 bit long-float format. diff --git a/compiler/generic/objdef.lisp b/compiler/generic/objdef.lisp index 66f78b133e7df9ef91ca38f56060f9ea3c1d0237..947e97d0dc54fc08d7b13ae478e9957f29a71a47 100644 --- a/compiler/generic/objdef.lisp +++ b/compiler/generic/objdef.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/objdef.lisp,v 1.43 1998/03/21 07:55:53 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/objdef.lisp,v 1.44 1998/07/24 17:22:31 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -116,9 +116,9 @@ double-float #+long-float long-float complex - #+complex-float complex-single-float - #+complex-float complex-double-float - #+(and complex-float long-float) complex-long-float + complex-single-float + complex-double-float + #+long-float complex-long-float simple-array simple-string @@ -129,16 +129,16 @@ simple-array-unsigned-byte-8 simple-array-unsigned-byte-16 simple-array-unsigned-byte-32 - #+signed-array simple-array-signed-byte-8 - #+signed-array simple-array-signed-byte-16 - #+signed-array simple-array-signed-byte-30 - #+signed-array simple-array-signed-byte-32 + simple-array-signed-byte-8 + simple-array-signed-byte-16 + simple-array-signed-byte-30 + simple-array-signed-byte-32 simple-array-single-float simple-array-double-float #+long-float simple-array-long-float - #+complex-float simple-array-complex-single-float - #+complex-float simple-array-complex-double-float - #+(and complex-float long-float) simple-array-complex-long-float + simple-array-complex-single-float + simple-array-complex-double-float + #+long-float simple-array-complex-long-float complex-string complex-bit-vector complex-vector @@ -485,14 +485,12 @@ :set-trans %set-symbol-package :init :null)) -#+complex-float (define-primitive-object (complex-single-float :lowtag other-pointer-type :header complex-single-float-type) (real :c-type "float") (imag :c-type "float")) -#+complex-float (define-primitive-object (complex-double-float :lowtag other-pointer-type :header complex-double-float-type) @@ -500,7 +498,7 @@ (real :c-type "double" :length 2) (imag :c-type "double" :length 2)) -#+(and complex-float long-float) +#+long-float (define-primitive-object (complex-long-float :lowtag other-pointer-type :header complex-long-float-type) diff --git a/compiler/generic/primtype.lisp b/compiler/generic/primtype.lisp index d1e66d5078f58730164b979a54c53a4b7de2bbe1..186aae0a48e8aa8249c6c7e9b9cf2a277b840d80 100644 --- a/compiler/generic/primtype.lisp +++ b/compiler/generic/primtype.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/primtype.lisp,v 1.19 1998/03/21 07:55:54 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/primtype.lisp,v 1.20 1998/07/24 17:22:32 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -86,13 +86,11 @@ (def-primitive-type double-float (double-reg descriptor-reg)) #+long-float (def-primitive-type long-float (long-reg descriptor-reg)) -#+complex-float (def-primitive-type complex-single-float (complex-single-reg descriptor-reg) :type (complex single-float)) -#+complex-float (def-primitive-type complex-double-float (complex-double-reg descriptor-reg) :type (complex double-float)) -#+(and complex-float long-float) +#+long-float (def-primitive-type complex-long-float (complex-long-reg descriptor-reg) :type (complex long-float)) @@ -111,16 +109,12 @@ :type (simple-array (unsigned-byte 16) (*))) (def-primitive-type simple-array-unsigned-byte-32 (descriptor-reg) :type (simple-array (unsigned-byte 32) (*))) -#+signed-array (def-primitive-type simple-array-signed-byte-8 (descriptor-reg) :type (simple-array (signed-byte 8) (*))) -#+signed-array (def-primitive-type simple-array-signed-byte-16 (descriptor-reg) :type (simple-array (signed-byte 16) (*))) -#+signed-array (def-primitive-type simple-array-signed-byte-30 (descriptor-reg) :type (simple-array (signed-byte 30) (*))) -#+signed-array (def-primitive-type simple-array-signed-byte-32 (descriptor-reg) :type (simple-array (signed-byte 32) (*))) (def-primitive-type simple-array-single-float (descriptor-reg) @@ -130,13 +124,11 @@ #+long-float (def-primitive-type simple-array-long-float (descriptor-reg) :type (simple-array long-float (*))) -#+complex-float (def-primitive-type simple-array-complex-single-float (descriptor-reg) :type (simple-array (complex single-float) (*))) -#+complex-float (def-primitive-type simple-array-complex-double-float (descriptor-reg) :type (simple-array (complex double-float) (*))) -#+(and complex-float long-float) +#+long-float (def-primitive-type simple-array-complex-long-float (descriptor-reg) :type (simple-array (complex long-float) (*))) @@ -177,18 +169,16 @@ ((unsigned-byte 8) . simple-array-unsigned-byte-8) ((unsigned-byte 16) . simple-array-unsigned-byte-16) ((unsigned-byte 32) . simple-array-unsigned-byte-32) - #+signed-array ((signed-byte 8) . simple-array-signed-byte-8) - #+signed-array ((signed-byte 16) . simple-array-signed-byte-16) - #+signed-array (fixnum . simple-array-signed-byte-30) - #+signed-array ((signed-byte 32) . simple-array-signed-byte-32) + ((signed-byte 8) . simple-array-signed-byte-8) + ((signed-byte 16) . simple-array-signed-byte-16) + (fixnum . simple-array-signed-byte-30) + ((signed-byte 32) . simple-array-signed-byte-32) (single-float . simple-array-single-float) (double-float . simple-array-double-float) #+long-float (long-float . simple-array-long-float) - #+complex-float ((complex single-float) . simple-array-complex-single-float) - #+complex-float ((complex double-float) . simple-array-complex-double-float) - #+(and complex-float long-float) + #+long-float ((complex long-float) . simple-array-complex-long-float) (t . simple-vector)) "An a-list for mapping simple array element types to their @@ -309,7 +299,6 @@ (t (any)))) (:complex - #+complex-float (if (eq (numeric-type-class type) 'float) (let ((exact (and (null lo) (null hi)))) (case (numeric-type-format type) @@ -328,9 +317,7 @@ exact)) (t (part-of complex)))) - (part-of complex)) - #-complex-float - (part-of complex)) + (part-of complex))) (t (any))))) (array-type diff --git a/compiler/generic/vm-fndb.lisp b/compiler/generic/vm-fndb.lisp index ca765b512a27bb03c4d875f9d0defdb3c41131c8..a773d26ad7c5c3f2066ad5c7895fcc295e68d24d 100644 --- a/compiler/generic/vm-fndb.lisp +++ b/compiler/generic/vm-fndb.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-fndb.lisp,v 1.60 1998/03/21 07:55:55 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-fndb.lisp,v 1.61 1998/07/24 17:22:32 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -48,23 +48,19 @@ (defknown (fixnump bignump ratiop short-float-p single-float-p double-float-p long-float-p - #+complex-float complex-rational-p #+complex-float complex-float-p - #+complex-float complex-single-float-p - #+complex-float complex-double-float-p - #+(and complex-float long-float) complex-long-float-p + complex-rational-p complex-float-p complex-single-float-p + complex-double-float-p #+long-float complex-long-float-p base-char-p %standard-char-p %instancep array-header-p simple-array-p simple-array-unsigned-byte-2-p simple-array-unsigned-byte-4-p simple-array-unsigned-byte-8-p simple-array-unsigned-byte-16-p simple-array-unsigned-byte-32-p - #+signed-array simple-array-signed-byte-8-p - #+signed-array simple-array-signed-byte-16-p - #+signed-array simple-array-signed-byte-30-p - #+signed-array simple-array-signed-byte-32-p + simple-array-signed-byte-8-p simple-array-signed-byte-16-p + simple-array-signed-byte-30-p simple-array-signed-byte-32-p simple-array-single-float-p simple-array-double-float-p #+long-float simple-array-long-float-p - #+complex-float simple-array-complex-single-float-p - #+complex-float simple-array-complex-double-float-p - #+(and complex-float long-float) simple-array-complex-long-float-p + simple-array-complex-single-float-p + simple-array-complex-double-float-p + #+long-float simple-array-complex-long-float-p system-area-pointer-p realp unsigned-byte-32-p signed-byte-32-p weak-pointer-p scavenger-hook-p code-component-p lra-p funcallable-instance-p dylan::dylan-function-p) @@ -134,8 +130,6 @@ (defknown %raw-set-long (raw-vector index long-float) long-float (unsafe)) -#+complex-float -(progn (defknown %raw-ref-complex-single (raw-vector index) (complex single-float) (foldable flushable)) (defknown %raw-ref-complex-double (raw-vector index) (complex double-float) @@ -153,7 +147,6 @@ (defknown %raw-set-complex-long (raw-vector index (complex long-float)) (complex long-float) (unsafe)) -) ; end progn complex-float (defknown %raw-bits (t fixnum) (unsigned-byte 32) (foldable flushable)) diff --git a/compiler/generic/vm-type.lisp b/compiler/generic/vm-type.lisp index f95c2332a1effed094a1805bb80a375ccb18c884..866b11ec422c35b53bfe78104fc71ea1952cfb28 100644 --- a/compiler/generic/vm-type.lisp +++ b/compiler/generic/vm-type.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-type.lisp,v 1.36 1998/03/21 07:55:56 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-type.lisp,v 1.37 1998/07/24 17:22:32 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -94,27 +94,23 @@ (defparameter specialized-array-element-types '(bit (unsigned-byte 2) (unsigned-byte 4) (unsigned-byte 8) (unsigned-byte 16) (unsigned-byte 32) - #+signed-array (signed-byte 8) #+signed-array (signed-byte 16) - #+signed-array (signed-byte 30) #+signed-array (signed-byte 32) - #+complex-float (complex single-float) - #+complex-float (complex double-float) - #+(and complex-float long-float) (complex long-float) + (signed-byte 8) (signed-byte 16) (signed-byte 30) (signed-byte 32) + (complex single-float) (complex double-float) + #+long-float (complex long-float) base-char single-float double-float #+long-float long-float)) (deftype unboxed-array (&optional dims) (collect ((types (list 'or))) (dolist (type specialized-array-element-types) - (when (subtypep type '(or integer character float - #+complex-float (complex float))) + (when (subtypep type '(or integer character float (complex float))) (types `(array ,type ,dims)))) (types))) (deftype simple-unboxed-array (&optional dims) (collect ((types (list 'or))) (dolist (type specialized-array-element-types) - (when (subtypep type '(or integer character float - #+complex-float (complex float))) + (when (subtypep type '(or integer character float (complex float))) (types `(simple-array ,type ,dims)))) (types))) diff --git a/compiler/generic/vm-typetran.lisp b/compiler/generic/vm-typetran.lisp index b105664857cf22fb77af0ee8365974d5a0aee179..dc08a69afd9290f4d10ea7409d892b8b8d16b8b2 100644 --- a/compiler/generic/vm-typetran.lisp +++ b/compiler/generic/vm-typetran.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-typetran.lisp,v 1.15 1998/03/21 07:55:56 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-typetran.lisp,v 1.16 1998/07/24 17:22:32 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -27,11 +27,9 @@ (define-type-predicate base-char-p base-char) (define-type-predicate bignump bignum) -#+complex-float (define-type-predicate complex-double-float-p (complex double-float)) -#+complex-float (define-type-predicate complex-single-float-p (complex single-float)) -#+(and complex-float long-float) +#+long-float (define-type-predicate complex-long-float-p (complex long-float)) (define-type-predicate double-float-p double-float) (define-type-predicate fixnump fixnum) @@ -50,16 +48,12 @@ (simple-array (unsigned-byte 16) (*))) (define-type-predicate simple-array-unsigned-byte-32-p (simple-array (unsigned-byte 32) (*))) -#+signed-array (define-type-predicate simple-array-signed-byte-8-p (simple-array (signed-byte 8) (*))) -#+signed-array (define-type-predicate simple-array-signed-byte-16-p (simple-array (signed-byte 16) (*))) -#+signed-array (define-type-predicate simple-array-signed-byte-30-p (simple-array (signed-byte 30) (*))) -#+signed-array (define-type-predicate simple-array-signed-byte-32-p (simple-array (signed-byte 32) (*))) (define-type-predicate simple-array-single-float-p @@ -69,13 +63,11 @@ #+long-float (define-type-predicate simple-array-long-float-p (simple-array long-float (*))) -#+complex-float (define-type-predicate simple-array-complex-single-float-p (simple-array (complex single-float) (*))) -#+complex-float (define-type-predicate simple-array-complex-double-float-p (simple-array (complex double-float) (*))) -#+(and complex-float long-float) +#+long-float (define-type-predicate simple-array-complex-long-float-p (simple-array (complex long-float) (*))) (define-type-predicate system-area-pointer-p system-area-pointer) diff --git a/compiler/hppa/array.lisp b/compiler/hppa/array.lisp index 059906962abaf3bf91fcb7f02030bc2181ba4381..cfde47a0231ae8f3ca550d7ee0be60ae1e809b11 100644 --- a/compiler/hppa/array.lisp +++ b/compiler/hppa/array.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/hppa/array.lisp,v 1.6 1998/03/04 15:11:38 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/hppa/array.lisp,v 1.7 1998/07/24 17:22:33 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -135,18 +135,14 @@ (def-full-data-vector-frobs simple-array-unsigned-byte-32 unsigned-num unsigned-reg) -#+signed-array (def-partial-data-vector-frobs simple-array-signed-byte-8 tagged-num :byte t signed-reg) -#+signed-array (def-partial-data-vector-frobs simple-array-signed-byte-16 tagged-num :short t signed-reg) -#+signed-array (def-full-data-vector-frobs simple-array-signed-byte-30 tagged-num any-reg) -#+signed-array (def-full-data-vector-frobs simple-array-signed-byte-32 signed-num signed-reg) @@ -344,8 +340,6 @@ ;;; Complex float arrays. -#+complex-float -(progn (define-vop (data-vector-ref/simple-array-complex-single-float) (:note "inline array access") @@ -443,8 +437,6 @@ (unless (location= result-imag value-imag) (inst funop :copy value-imag result-imag))))) -) ; end progn complex-float - ;;; These VOPs are used for implementing float slots in structures (whose raw ;;; data is an unsigned-32 vector. @@ -465,8 +457,6 @@ (:translate %raw-set-double) (:arg-types simple-array-unsigned-byte-32 positive-fixnum double-float)) -#+complex-float -(progn (define-vop (raw-ref-complex-single data-vector-ref/simple-array-complex-single-float) (:translate %raw-ref-complex-single) @@ -488,7 +478,6 @@ (:translate %raw-set-complex-double) (:arg-types simple-array-unsigned-byte-32 positive-fixnum complex-double-float)) -) ; end progn complex-float ;;; These vops are useful for accessing the bits of a vector irrespective of ;;; what type of vector it is. diff --git a/compiler/hppa/float.lisp b/compiler/hppa/float.lisp index 6f3b4e23c143ed2beaf3f62a102f43eccdbeeadd..cd3c02c48979709fbc782fb9026446da8a5453e4 100644 --- a/compiler/hppa/float.lisp +++ b/compiler/hppa/float.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/hppa/float.lisp,v 1.8 1998/03/11 17:15:44 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/hppa/float.lisp,v 1.9 1998/07/24 17:22:33 dtc Rel $") ;;; ;;; ********************************************************************** ;;; @@ -130,8 +130,6 @@ ;;;; Complex float move functions -#+complex-float -(progn (defun complex-single-reg-real-tn (x) (make-random-tn :kind :normal :sc (sc-or-lose 'single-reg *backend*) @@ -358,12 +356,9 @@ (define-move-vop move-complex-double-float-argument :move-argument (complex-double-reg descriptor-reg) (complex-double-reg)) -) ; end progn complex-float - (define-move-vop move-argument :move-argument - (single-reg double-reg - #+complex-float complex-single-reg #+complex-float complex-double-reg) + (single-reg double-reg complex-single-reg complex-double-reg) (descriptor-reg)) @@ -834,9 +829,6 @@ ;;;; Complex float VOPs -#+complex-float -(progn - (define-vop (make-complex-single-float) (:translate complex) (:args (real :scs (single-reg) :target r) @@ -953,5 +945,3 @@ (:translate imagpart) (:note "complex double float imagpart") (:variant :imag)) - -) ; progn complex-float diff --git a/compiler/hppa/type-vops.lisp b/compiler/hppa/type-vops.lisp index a6307c2c67f1f238e964f260d4f6d94a74bfe360..ffc0d924247f449b10dbc0fb3d009bacae1b94bb 100644 --- a/compiler/hppa/type-vops.lisp +++ b/compiler/hppa/type-vops.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/hppa/type-vops.lisp,v 1.5 1998/03/04 15:11:36 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/hppa/type-vops.lisp,v 1.6 1998/07/24 17:22:34 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -237,25 +237,19 @@ object-not-ratio-error ratio-type) (def-type-vops complexp check-complex complex object-not-complex-error - complex-type - #+complex-float complex-single-float-type - #+complex-float complex-double-float-type) + complex-type complex-single-float-type complex-double-float-type) -#+complex-float (def-type-vops complex-rational-p check-complex-rational nil object-not-complex-rational-error complex-type) -#+complex-float (def-type-vops complex-float-p check-complex-float nil object-not-complex-float-error complex-single-float-type complex-double-float-type) -#+complex-float (def-type-vops complex-single-float-p check-complex-single-float complex-single-float object-not-complex-single-float-error complex-single-float-type) -#+complex-float (def-type-vops complex-double-float-p check-complex-double-float complex-double-float object-not-complex-double-float-error complex-double-float-type) @@ -305,28 +299,24 @@ object-not-simple-array-unsigned-byte-32-error simple-array-unsigned-byte-32-type) -#+signed-array (def-type-vops simple-array-signed-byte-8-p check-simple-array-signed-byte-8 simple-array-signed-byte-8 object-not-simple-array-signed-byte-8-error simple-array-signed-byte-8-type) -#+signed-array (def-type-vops simple-array-signed-byte-16-p check-simple-array-signed-byte-16 simple-array-signed-byte-16 object-not-simple-array-signed-byte-16-error simple-array-signed-byte-16-type) -#+signed-array (def-type-vops simple-array-signed-byte-30-p check-simple-array-signed-byte-30 simple-array-signed-byte-30 object-not-simple-array-signed-byte-30-error simple-array-signed-byte-30-type) -#+signed-array (def-type-vops simple-array-signed-byte-32-p check-simple-array-signed-byte-32 simple-array-signed-byte-32 @@ -341,14 +331,12 @@ simple-array-double-float object-not-simple-array-double-float-error simple-array-double-float-type) -#+complex-float (def-type-vops simple-array-complex-single-float-p check-simple-array-complex-single-float simple-array-complex-single-float object-not-simple-array-complex-single-float-error simple-array-complex-single-float-type) -#+complex-float (def-type-vops simple-array-complex-double-float-p check-simple-array-complex-double-float simple-array-complex-double-float @@ -398,13 +386,11 @@ simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type + simple-array-complex-single-float-type + simple-array-complex-double-float-type complex-string-type complex-bit-vector-type complex-vector-type) (def-type-vops simple-array-p check-simple-array nil object-not-simple-array-error @@ -412,34 +398,29 @@ simple-vector-type simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type) + simple-array-complex-single-float-type + simple-array-complex-double-float-type) (def-type-vops arrayp check-array nil object-not-array-error simple-array-type simple-string-type simple-bit-vector-type simple-vector-type simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type + simple-array-complex-single-float-type + simple-array-complex-double-float-type complex-string-type complex-bit-vector-type complex-vector-type complex-array-type) (def-type-vops numberp check-number nil object-not-number-error even-fixnum-type odd-fixnum-type bignum-type ratio-type single-float-type double-float-type complex-type - #+complex-float complex-single-float-type - #+complex-float complex-double-float-type) + complex-single-float-type complex-double-float-type) (def-type-vops rationalp check-rational nil object-not-rational-error even-fixnum-type odd-fixnum-type ratio-type bignum-type) diff --git a/compiler/hppa/vm.lisp b/compiler/hppa/vm.lisp index 317692cefdb766cb5c82e232baed417382d43554..60596d9fe5b15e38332c844d7d871031737dc0e9 100644 --- a/compiler/hppa/vm.lisp +++ b/compiler/hppa/vm.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/hppa/vm.lisp,v 1.5 1998/03/10 18:17:11 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/hppa/vm.lisp,v 1.6 1998/07/24 17:22:34 dtc Rel $") ;;; ;;; ********************************************************************** ;;; @@ -151,9 +151,7 @@ (single-stack non-descriptor-stack) ; single-floats (double-stack non-descriptor-stack :element-size 2 :alignment 2) ; double floats. - #+complex-float (complex-single-stack non-descriptor-stack :element-size 2) - #+complex-float (complex-double-stack non-descriptor-stack :element-size 4 :alignment 2) @@ -226,7 +224,6 @@ :save-p t :alternate-scs (double-stack)) - #+complex-float (complex-single-reg float-registers :locations #.(loop for i from 4 to 30 by 2 collect i) :element-size 2 @@ -234,7 +231,6 @@ :save-p t :alternate-scs (complex-single-stack)) - #+complex-float (complex-double-reg float-registers :locations #.(loop for i from 4 to 30 by 2 collect i) :element-size 2 diff --git a/compiler/mips/array.lisp b/compiler/mips/array.lisp index e235f459a7bc10abfd44c9005a0f172ab242de14..da783ad86d292703571b6f770babdb186ca1ade4 100644 --- a/compiler/mips/array.lisp +++ b/compiler/mips/array.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/array.lisp,v 1.49 1998/03/10 18:20:26 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/array.lisp,v 1.50 1998/07/24 17:22:34 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -170,19 +170,15 @@ (def-full-data-vector-frobs simple-array-unsigned-byte-32 unsigned-num unsigned-reg) -#+signed-array (def-partial-data-vector-frobs simple-array-signed-byte-8 tagged-num :byte t signed-reg) -#+signed-array (def-partial-data-vector-frobs simple-array-signed-byte-16 tagged-num :short t signed-reg) -#+signed-array (def-full-data-vector-frobs simple-array-signed-byte-30 tagged-num any-reg) -#+signed-array (def-full-data-vector-frobs simple-array-signed-byte-32 signed-num signed-reg) @@ -466,8 +462,6 @@ ;;; Complex float arrays. -#+complex-float -(progn (define-vop (data-vector-ref/simple-array-complex-single-float) (:note "inline array access") @@ -574,8 +568,6 @@ (unless (location= result-imag value-imag) (inst fmove :double result-imag value-imag))))) -) ; end progn complex-float - ;;; These VOPs are used for implementing float slots in structures (whose raw ;;; data is an unsigned-32 vector. @@ -596,8 +588,6 @@ (:translate %raw-set-double) (:arg-types simple-array-unsigned-byte-32 positive-fixnum double-float)) -#+complex-float -(progn (define-vop (raw-ref-complex-single data-vector-ref/simple-array-complex-single-float) (:translate %raw-ref-complex-single) @@ -619,7 +609,6 @@ (:translate %raw-set-complex-double) (:arg-types simple-array-unsigned-byte-32 positive-fixnum complex-double-float)) -) ; end progn complex-float ;;; These vops are useful for accessing the bits of a vector irrespective of ;;; what type of vector it is. diff --git a/compiler/mips/float.lisp b/compiler/mips/float.lisp index dd6d79d6a68a4e6c2f5f5d4de4b39dffe3dbde39..c2131e911e945f7b85fcff5e01750c3a78963867 100644 --- a/compiler/mips/float.lisp +++ b/compiler/mips/float.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/float.lisp,v 1.25 1998/03/11 17:18:51 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/float.lisp,v 1.26 1998/07/24 17:22:35 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -174,8 +174,6 @@ ;;;; Complex float move functions -#+complex-float -(progn (defun complex-single-reg-real-tn (x) (make-random-tn :kind :normal :sc (sc-or-lose 'single-reg *backend*) @@ -402,12 +400,9 @@ (define-move-vop move-complex-double-float-argument :move-argument (complex-double-reg descriptor-reg) (complex-double-reg)) -) ; progn complex-float - (define-move-vop move-argument :move-argument - (single-reg double-reg - #+complex-float complex-single-reg #+complex-float complex-double-reg) + (single-reg double-reg complex-single-reg complex-double-reg) (descriptor-reg)) @@ -759,9 +754,6 @@ ;;;; Complex float VOPs -#+complex-float -(progn - (define-vop (make-complex-single-float) (:translate complex) (:args (real :scs (single-reg) :target r) @@ -880,5 +872,3 @@ (:translate imagpart) (:note "complex double float imagpart") (:variant :imag)) - -) ; progn complex-float diff --git a/compiler/mips/type-vops.lisp b/compiler/mips/type-vops.lisp index 27215b21e2b7ca9ac5942eb7002e73489a2f3320..de83832b5188ed478c1fed29c5aacd7df95e81d0 100644 --- a/compiler/mips/type-vops.lisp +++ b/compiler/mips/type-vops.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/type-vops.lisp,v 1.45 1998/03/04 15:08:46 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/type-vops.lisp,v 1.46 1998/07/24 17:22:36 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -261,25 +261,19 @@ object-not-ratio-error ratio-type) (def-type-vops complexp check-complex complex object-not-complex-error - complex-type - #+complex-float complex-single-float-type - #+complex-float complex-double-float-type) + complex-type complex-single-float-type complex-double-float-type) -#+complex-float (def-type-vops complex-rational-p check-complex-rational nil object-not-complex-rational-error complex-type) -#+complex-float (def-type-vops complex-float-p check-complex-float nil object-not-complex-float-error complex-single-float-type complex-double-float-type) -#+complex-float (def-type-vops complex-single-float-p check-complex-single-float complex-single-float object-not-complex-single-float-error complex-single-float-type) -#+complex-float (def-type-vops complex-double-float-p check-complex-double-float complex-double-float object-not-complex-double-float-error complex-double-float-type) @@ -329,28 +323,24 @@ object-not-simple-array-unsigned-byte-32-error simple-array-unsigned-byte-32-type) -#+signed-array (def-type-vops simple-array-signed-byte-8-p check-simple-array-signed-byte-8 simple-array-signed-byte-8 object-not-simple-array-signed-byte-8-error simple-array-signed-byte-8-type) -#+signed-array (def-type-vops simple-array-signed-byte-16-p check-simple-array-signed-byte-16 simple-array-signed-byte-16 object-not-simple-array-signed-byte-16-error simple-array-signed-byte-16-type) -#+signed-array (def-type-vops simple-array-signed-byte-30-p check-simple-array-signed-byte-30 simple-array-signed-byte-30 object-not-simple-array-signed-byte-30-error simple-array-signed-byte-30-type) -#+signed-array (def-type-vops simple-array-signed-byte-32-p check-simple-array-signed-byte-32 simple-array-signed-byte-32 @@ -365,14 +355,12 @@ simple-array-double-float object-not-simple-array-double-float-error simple-array-double-float-type) -#+complex-float (def-type-vops simple-array-complex-single-float-p check-simple-array-complex-single-float simple-array-complex-single-float object-not-simple-array-complex-single-float-error simple-array-complex-single-float-type) -#+complex-float (def-type-vops simple-array-complex-double-float-p check-simple-array-complex-double-float simple-array-complex-double-float @@ -425,13 +413,11 @@ simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type + simple-array-complex-single-float-type + simple-array-complex-double-float-type complex-string-type complex-bit-vector-type complex-vector-type) (def-type-vops simple-array-p check-simple-array nil object-not-simple-array-error @@ -439,34 +425,29 @@ simple-vector-type simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type) + simple-array-complex-single-float-type + simple-array-complex-double-float-type) (def-type-vops arrayp check-array nil object-not-array-error simple-array-type simple-string-type simple-bit-vector-type simple-vector-type simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type + simple-array-complex-single-float-type + simple-array-complex-double-float-type complex-string-type complex-bit-vector-type complex-vector-type complex-array-type) (def-type-vops numberp check-number nil object-not-number-error even-fixnum-type odd-fixnum-type bignum-type ratio-type single-float-type double-float-type complex-type - #+complex-float complex-single-float-type - #+complex-float complex-double-float-type) + complex-single-float-type complex-double-float-type) (def-type-vops rationalp check-rational nil object-not-rational-error even-fixnum-type odd-fixnum-type ratio-type bignum-type) diff --git a/compiler/mips/vm.lisp b/compiler/mips/vm.lisp index 1fa4ef60ef62838361ccae40a78e366ee8dfc09e..fb3e373ae93fc4ce86382641c6bdf757b5912a80 100644 --- a/compiler/mips/vm.lisp +++ b/compiler/mips/vm.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/vm.lisp,v 1.52 1998/03/11 17:18:50 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/vm.lisp,v 1.53 1998/07/24 17:22:36 dtc Rel $") ;;; ;;; ********************************************************************** ;;; @@ -145,10 +145,8 @@ (sap-stack non-descriptor-stack) ; System area pointers. (single-stack non-descriptor-stack) ; single-floats (double-stack non-descriptor-stack :element-size 2) ; double floats. - #+complex-float ;; complex-single-floats (complex-single-stack non-descriptor-stack :element-size 2) - #+complex-float ;; complex-double-floats. (complex-double-stack non-descriptor-stack :element-size 4 :alignment 2) @@ -233,7 +231,6 @@ :save-p t :alternate-scs (double-stack)) - #+complex-float (complex-single-reg float-registers :locations (0 4 8 12 16 20 24 28) :element-size 4 @@ -242,7 +239,6 @@ :save-p t :alternate-scs (complex-single-stack)) - #+complex-float (complex-double-reg float-registers :locations (0 4 8 12 16 20 24 28) :element-size 4 diff --git a/compiler/sparc/array.lisp b/compiler/sparc/array.lisp index e6faaf4dc2a5a6d14ad4aeb29e5fc1e924895bce..991762987b8590329683fd6b0a8e14b394a0635f 100644 --- a/compiler/sparc/array.lisp +++ b/compiler/sparc/array.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/array.lisp,v 1.20 1998/03/21 08:05:21 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/array.lisp,v 1.21 1998/07/24 17:22:36 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -148,10 +148,8 @@ (def-data-vector-frobs simple-array-unsigned-byte-32 word-index unsigned-num unsigned-reg) -#+signed-array (def-data-vector-frobs simple-array-signed-byte-30 word-index tagged-num any-reg) -#+signed-array (def-data-vector-frobs simple-array-signed-byte-32 word-index signed-num signed-reg) @@ -447,7 +445,6 @@ ;;; -#+signed-array (define-vop (data-vector-ref/simple-array-signed-byte-8 signed-byte-index-ref) (:note "inline array access") (:variant vm:vector-data-offset vm:other-pointer-type) @@ -455,7 +452,7 @@ (:arg-types simple-array-signed-byte-8 positive-fixnum) (:results (value :scs (signed-reg))) (:result-types tagged-num)) -#+signed-array + (define-vop (data-vector-set/simple-array-signed-byte-8 byte-index-set) (:note "inline array store") (:variant vm:vector-data-offset vm:other-pointer-type) @@ -467,7 +464,7 @@ (:results (result :scs (signed-reg))) (:result-types tagged-num)) -#+signed-array + (define-vop (data-vector-ref/simple-array-signed-byte-16 signed-halfword-index-ref) (:note "inline array access") @@ -476,7 +473,7 @@ (:arg-types simple-array-signed-byte-16 positive-fixnum) (:results (value :scs (signed-reg))) (:result-types tagged-num)) -#+signed-array + (define-vop (data-vector-set/simple-array-signed-byte-16 halfword-index-set) (:note "inline array store") (:variant vm:vector-data-offset vm:other-pointer-type) @@ -490,8 +487,6 @@ ;;; Complex float arrays. -#+complex-float -(progn (define-vop (data-vector-ref/simple-array-complex-single-float) (:note "inline array access") @@ -639,8 +634,6 @@ (unless (location= result-imag value-imag) (move-long-reg result-imag value-imag))))) -) ; end progn complex-float - ;;; These VOPs are used for implementing float slots in structures (whose raw ;;; data is an unsigned-32 vector. @@ -671,8 +664,6 @@ (:translate %raw-set-long) (:arg-types simple-array-unsigned-byte-32 positive-fixnum long-float)) -#+complex-float -(progn (define-vop (raw-ref-complex-single data-vector-ref/simple-array-complex-single-float) (:translate %raw-ref-complex-single) @@ -708,7 +699,6 @@ (:arg-types simple-array-unsigned-byte-32 positive-fixnum complex-long-float)) -) ; end progn complex-float ;;; These vops are useful for accessing the bits of a vector irrespective of ;;; what type of vector it is. diff --git a/compiler/sparc/float.lisp b/compiler/sparc/float.lisp index 38071b3646ee423b85edd04f2ef31ba2d16171d8..779facbc3e28c781ff095fa86bfa5cb8e219637b 100644 --- a/compiler/sparc/float.lisp +++ b/compiler/sparc/float.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/float.lisp,v 1.23 1998/03/21 08:05:22 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/float.lisp,v 1.24 1998/07/24 17:22:37 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -260,8 +260,6 @@ ;;;; Complex float move functions -#+complex-float -(progn (defun complex-single-reg-real-tn (x) (make-random-tn :kind :normal :sc (sc-or-lose 'single-reg *backend*) @@ -597,13 +595,10 @@ (define-move-vop move-complex-long-float-argument :move-argument (complex-long-reg descriptor-reg) (complex-long-reg)) -) ; progn complex-float - (define-move-vop move-argument :move-argument (single-reg double-reg #+long-float long-reg - #+complex-float complex-single-reg #+complex-float complex-double-reg - #+(and complex-float long-float) complex-long-reg) + complex-single-reg complex-double-reg #+long-float complex-long-reg) (descriptor-reg)) @@ -1302,9 +1297,6 @@ ;;;; Complex float VOPs -#+complex-float -(progn - (define-vop (make-complex-single-float) (:translate complex) (:args (real :scs (single-reg) :target r @@ -1488,5 +1480,3 @@ (:translate imagpart) (:note "complex long float imagpart") (:variant :imag)) - -) ; progn complex-float diff --git a/compiler/sparc/type-vops.lisp b/compiler/sparc/type-vops.lisp index 258d9ae005f07752465ceb87bb802130d6a97c59..e9c17c7ab1b80250a4a7f2dd934dabf14cb40a92 100644 --- a/compiler/sparc/type-vops.lisp +++ b/compiler/sparc/type-vops.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/type-vops.lisp,v 1.18 1998/03/21 08:05:25 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/type-vops.lisp,v 1.19 1998/07/24 17:22:38 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -111,32 +111,26 @@ object-not-ratio-error vm:ratio-type) (def-type-vops complexp check-complex complex object-not-complex-error - vm:complex-type - #+complex-float vm:complex-single-float-type - #+complex-float vm:complex-double-float-type - #+(and complex-float long-float) vm:complex-long-float-type) + vm:complex-type vm:complex-single-float-type + vm:complex-double-float-type #+long-float vm:complex-long-float-type) -#+complex-float (def-type-vops complex-rational-p check-complex-rational nil object-not-complex-rational-error vm:complex-type) -#+complex-float (def-type-vops complex-float-p check-complex-float nil object-not-complex-float-error vm:complex-single-float-type vm:complex-double-float-type #+long-float vm:complex-long-float-type) -#+complex-float (def-type-vops complex-single-float-p check-complex-single-float complex-single-float object-not-complex-single-float-error vm:complex-single-float-type) -#+complex-float (def-type-vops complex-double-float-p check-complex-double-float complex-double-float object-not-complex-double-float-error vm:complex-double-float-type) -#+(and complex-float long-float) +#+long-float (def-type-vops complex-long-float-p check-complex-long-float complex-long-float object-not-complex-long-float-error vm:complex-long-float-type) @@ -190,28 +184,24 @@ object-not-simple-array-unsigned-byte-32-error vm:simple-array-unsigned-byte-32-type) -#+signed-array (def-type-vops simple-array-signed-byte-8-p check-simple-array-signed-byte-8 simple-array-signed-byte-8 object-not-simple-array-signed-byte-8-error simple-array-signed-byte-8-type) -#+signed-array (def-type-vops simple-array-signed-byte-16-p check-simple-array-signed-byte-16 simple-array-signed-byte-16 object-not-simple-array-signed-byte-16-error simple-array-signed-byte-16-type) -#+signed-array (def-type-vops simple-array-signed-byte-30-p check-simple-array-signed-byte-30 simple-array-signed-byte-30 object-not-simple-array-signed-byte-30-error simple-array-signed-byte-30-type) -#+signed-array (def-type-vops simple-array-signed-byte-32-p check-simple-array-signed-byte-32 simple-array-signed-byte-32 @@ -231,21 +221,19 @@ simple-array-long-float object-not-simple-array-long-float-error vm:simple-array-long-float-type) -#+complex-float (def-type-vops simple-array-complex-single-float-p check-simple-array-complex-single-float simple-array-complex-single-float object-not-simple-array-complex-single-float-error vm:simple-array-complex-single-float-type) -#+complex-float (def-type-vops simple-array-complex-double-float-p check-simple-array-complex-double-float simple-array-complex-double-float object-not-simple-array-complex-double-float-error vm:simple-array-complex-double-float-type) -#+(and complex-float long-float) +#+long-float (def-type-vops simple-array-complex-long-float-p check-simple-array-complex-long-float simple-array-complex-long-float @@ -297,15 +285,13 @@ vm:simple-array-unsigned-byte-2-type vm:simple-array-unsigned-byte-4-type vm:simple-array-unsigned-byte-8-type vm:simple-array-unsigned-byte-16-type vm:simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type vm:simple-array-single-float-type vm:simple-array-double-float-type #+long-float vm:simple-array-long-float-type - #+complex-float vm:simple-array-complex-single-float-type - #+complex-float vm:simple-array-complex-double-float-type - #+(and complex-float long-float) vm:simple-array-complex-long-float-type + vm:simple-array-complex-single-float-type + vm:simple-array-complex-double-float-type + #+long-float vm:simple-array-complex-long-float-type vm:complex-string-type vm:complex-bit-vector-type vm:complex-vector-type) (def-type-vops simple-array-p check-simple-array nil object-not-simple-array-error @@ -313,40 +299,34 @@ vm:simple-vector-type vm:simple-array-unsigned-byte-2-type vm:simple-array-unsigned-byte-4-type vm:simple-array-unsigned-byte-8-type vm:simple-array-unsigned-byte-16-type vm:simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type vm:simple-array-single-float-type vm:simple-array-double-float-type #+long-float vm:simple-array-long-float-type - #+complex-float vm:simple-array-complex-single-float-type - #+complex-float vm:simple-array-complex-double-float-type - #+(and complex-float long-float) vm:simple-array-complex-long-float-type) + vm:simple-array-complex-single-float-type + vm:simple-array-complex-double-float-type + #+long-float vm:simple-array-complex-long-float-type) (def-type-vops arrayp check-array nil object-not-array-error vm:simple-array-type vm:simple-string-type vm:simple-bit-vector-type vm:simple-vector-type vm:simple-array-unsigned-byte-2-type vm:simple-array-unsigned-byte-4-type vm:simple-array-unsigned-byte-8-type vm:simple-array-unsigned-byte-16-type vm:simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type vm:simple-array-single-float-type vm:simple-array-double-float-type #+long-float vm:simple-array-long-float-type - #+complex-float vm:simple-array-complex-single-float-type - #+complex-float vm:simple-array-complex-double-float-type - #+(and complex-float long-float) vm:simple-array-complex-long-float-type + vm:simple-array-complex-single-float-type + vm:simple-array-complex-double-float-type + #+long-float vm:simple-array-complex-long-float-type vm:complex-string-type vm:complex-bit-vector-type vm:complex-vector-type vm:complex-array-type) (def-type-vops numberp check-number nil object-not-number-error vm:even-fixnum-type vm:odd-fixnum-type vm:bignum-type vm:ratio-type vm:single-float-type vm:double-float-type #+long-float vm:long-float-type - vm:complex-type - #+complex-float vm:complex-single-float-type - #+complex-float vm:complex-double-float-type - #+(and complex-float long-float) vm:complex-long-float-type) + vm:complex-type vm:complex-single-float-type vm:complex-double-float-type + #+long-float vm:complex-long-float-type) (def-type-vops rationalp check-rational nil object-not-rational-error vm:even-fixnum-type vm:odd-fixnum-type vm:ratio-type vm:bignum-type) diff --git a/compiler/sparc/vm.lisp b/compiler/sparc/vm.lisp index 5c9969bc257ba443e7410467fb0badcbd11f0e08..b0041fa179b12835f0607176f8a08c8dbc8d94be 100644 --- a/compiler/sparc/vm.lisp +++ b/compiler/sparc/vm.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/vm.lisp,v 1.13 1998/07/09 01:38:20 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/vm.lisp,v 1.14 1998/07/24 17:22:38 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -150,13 +150,11 @@ :element-size 2 :alignment 2) ; double floats. #+long-float (long-stack non-descriptor-stack :element-size 4 :alignment 4) ; long floats. - #+complex-float ;; complex-single-floats (complex-single-stack non-descriptor-stack :element-size 2) - #+complex-float ;; complex-double-floats. (complex-double-stack non-descriptor-stack :element-size 4 :alignment 2) - #+(and complex-float long-float) + #+long-float ;; complex-long-floats. (complex-long-stack non-descriptor-stack :element-size 8 :alignment 4) @@ -245,7 +243,6 @@ :save-p t :alternate-scs (long-stack)) - #+complex-float (complex-single-reg float-registers :locations #.(loop for i from 0 to 31 by 2 collect i) :element-size 2 :alignment 2 @@ -254,7 +251,6 @@ :save-p t :alternate-scs (complex-single-stack)) - #+complex-float (complex-double-reg float-registers :locations #.(loop for i from 0 to #-sparc-v9 31 #+sparc-v9 63 by 4 collect i) @@ -264,7 +260,7 @@ :save-p t :alternate-scs (complex-double-stack)) - #+(and complex-float long-float) + #+long-float (complex-long-reg float-registers :locations #.(loop for i from 0 to #-sparc-v9 31 #+sparc-v9 63 by 8 collect i) diff --git a/compiler/srctran.lisp b/compiler/srctran.lisp index 3192c458896d585187ca6b5fe041819e7f183e0b..93fb62972156e94914d72a4bdab7878fe7426a23 100644 --- a/compiler/srctran.lisp +++ b/compiler/srctran.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/srctran.lisp,v 1.84 1998/03/21 08:08:34 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/srctran.lisp,v 1.85 1998/07/24 17:22:27 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -218,23 +218,6 @@ `(if (ratiop ,n-num) (%denominator ,n-num) 1))) -;;; -#-complex-float -(def-source-transform realpart (num) - (once-only ((n-num num)) - `(if (complexp ,n-num) - (%realpart ,n-num) - ,n-num))) -;;; -#-complex-float -(def-source-transform imagpart (num) - (once-only ((n-num num)) - `(cond ((complexp ,n-num) - (%imagpart ,n-num)) - ((floatp ,n-num) - (float 0 ,n-num)) - (t - 0)))) ;;;; Interval arithmetic for computing bounds diff --git a/compiler/typetran.lisp b/compiler/typetran.lisp index 60ec108a8dfc9d51333b08a5f00beee477898fae..53d271050cc4b8aa6ed6718abf67ce397dec6d96 100644 --- a/compiler/typetran.lisp +++ b/compiler/typetran.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/typetran.lisp,v 1.34 1998/05/29 06:41:23 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/typetran.lisp,v 1.35 1998/07/24 17:22:28 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -134,8 +134,8 @@ (define-type-predicate characterp character) (define-type-predicate compiled-function-p compiled-function) (define-type-predicate complexp complex) - #+complex-float (define-type-predicate complex-rational-p (complex rational)) - #+complex-float (define-type-predicate complex-float-p (complex float)) + (define-type-predicate complex-rational-p (complex rational)) + (define-type-predicate complex-float-p (complex float)) (define-type-predicate consp cons) (define-type-predicate floatp float) (define-type-predicate functionp function) diff --git a/compiler/x86/array.lisp b/compiler/x86/array.lisp index 056112834dbaad1065a691f08acd7eafc63ab748..61df7876df191ab700649d73f382f8263d7fc0f6 100644 --- a/compiler/x86/array.lisp +++ b/compiler/x86/array.lisp @@ -7,7 +7,7 @@ ;;; Scott Fahlman or slisp-group@cs.cmu.edu. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/array.lisp,v 1.14 1998/07/24 15:21:29 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/array.lisp,v 1.15 1998/07/24 17:22:39 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -133,9 +133,7 @@ (def-full-data-vector-frobs simple-vector * descriptor-reg any-reg) (def-full-data-vector-frobs simple-array-unsigned-byte-32 unsigned-num unsigned-reg) -#+signed-array (def-full-data-vector-frobs simple-array-signed-byte-30 tagged-num any-reg) -#+signed-array (def-full-data-vector-frobs simple-array-signed-byte-32 signed-num signed-reg) ;;; Integer vectors whos elements are smaller than a byte. I.e. bit, 2-bit, @@ -608,8 +606,6 @@ (inst fxch value))))))) ;;; Complex float variants. -#+complex-float -(progn (define-vop (data-vector-ref/simple-array-complex-single-float) (:note "inline array access") (:translate data-vector-ref) @@ -1058,8 +1054,6 @@ (inst fstd result-imag)) (inst fxch value-imag)))) -) ; complex-float - ;;;; ;;;; dtc expanded and fixed the following: @@ -1293,8 +1287,6 @@ value) (move result value))) -#+signed-array -(progn ;;; signed-byte-8 @@ -1440,7 +1432,6 @@ ax-tn) (move result eax))) -) ; end signed-array ;;; These VOPs are used for implementing float slots in structures (whose raw @@ -1496,8 +1487,6 @@ long-float)) ;;;; Complex-float raw structure slot accessors. -#+complex-float -(progn (define-vop (raw-ref-complex-single data-vector-ref/simple-array-complex-single-float) @@ -1562,8 +1551,6 @@ (:arg-types simple-array-unsigned-byte-32 (:constant (signed-byte 30)) complex-long-float)) -) ; end progn complex-float - ;;; These vops are useful for accessing the bits of a vector irrespective of ;;; what type of vector it is. diff --git a/compiler/x86/float.lisp b/compiler/x86/float.lisp index ee9fd6e024026d1f8e68c57d9e9d9e51fc1e8570..73ef376991db898e7fe2f2ed2bf04edabee15061 100644 --- a/compiler/x86/float.lisp +++ b/compiler/x86/float.lisp @@ -7,7 +7,7 @@ ;;; Scott Fahlman or slisp-group@cs.cmu.edu. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/float.lisp,v 1.30 1998/03/31 18:29:20 pw Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/float.lisp,v 1.31 1998/07/24 17:22:41 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -36,22 +36,18 @@ (defun ea-for-lf-desc (tn) (ea-for-xf-desc tn vm:long-float-value-slot)) ;; Complex floats - #+complex-float (defun ea-for-csf-real-desc (tn) (ea-for-xf-desc tn vm:complex-single-float-real-slot)) - #+complex-float (defun ea-for-csf-imag-desc (tn) (ea-for-xf-desc tn vm:complex-single-float-imag-slot)) - #+complex-float (defun ea-for-cdf-real-desc (tn) (ea-for-xf-desc tn vm:complex-double-float-real-slot)) - #+complex-float (defun ea-for-cdf-imag-desc (tn) (ea-for-xf-desc tn vm:complex-double-float-imag-slot)) - #+(and long-float complex-float) + #+long-float (defun ea-for-clf-real-desc (tn) (ea-for-xf-desc tn vm:complex-long-float-real-slot)) - #+(and long-float complex-float) + #+long-float (defun ea-for-clf-imag-desc (tn) (ea-for-xf-desc tn vm:complex-long-float-imag-slot))) @@ -70,7 +66,6 @@ (ea-for-xf-stack tn :long))) ;;; Complex float stack EAs -#+complex-float (macrolet ((ea-for-cxf-stack (tn kind slot &optional base) `(make-ea :dword :base ,base @@ -205,8 +200,6 @@ ;;;; Complex float move functions -#+complex-float -(progn (defun complex-single-reg-real-tn (x) (make-random-tn :kind :normal :sc (sc-or-lose 'single-reg *backend*) @@ -303,8 +296,6 @@ (store-long-float (ea-for-clf-imag-stack y)) (inst fxch imag-tn))) -) ; complex-float - ;;;; Move VOPs: @@ -343,8 +334,6 @@ #+long-float (define-move-vop long-move :move (long-reg) (long-reg)) -#+complex-float -(progn ;;; ;;; Complex float register to register moves. ;;; @@ -395,8 +384,6 @@ (define-move-vop complex-long-move :move (complex-long-reg) (complex-long-reg)) -) ; complex-float - ;;; ;;; Move from float to a descriptor reg. allocating a new float @@ -501,8 +488,6 @@ (define-move-vop move-to-long :move (descriptor-reg) (long-reg)) -#+complex-float -(progn ;;; ;;; Move from complex float to a descriptor reg. allocating a new ;;; complex float object in the process. @@ -589,7 +574,6 @@ (frob move-to-complex-double complex-double-reg :double) #+long-float (frob move-to-complex-double complex-long-reg :long)) -) ; complex-float ;;; @@ -651,7 +635,6 @@ (frob move-long-float-argument long-reg long-stack :long)) ;;;; Complex float move-argument vop -#+complex-float (macrolet ((frob (name sc stack-sc format) `(progn (define-vop (,name) @@ -731,8 +714,7 @@ (define-move-vop move-argument :move-argument (single-reg double-reg #+long-float long-reg - #+complex-float complex-single-reg #+complex-float complex-double-reg - #+(and complex-float long-float) complex-long-reg) + complex-single-reg complex-double-reg #+long-float complex-long-reg) (descriptor-reg)) @@ -4356,9 +4338,6 @@ ;;;; Complex float VOPs -#+complex-float -(progn - (define-vop (make-complex-single-float) (:translate complex) (:args (real :scs (single-reg) :to :result :target r @@ -4615,8 +4594,6 @@ (:note "complex float imagpart") (:variant 1)) -) ; complex-float - ;;; A hack dummy VOP to bias the representation selection of its ;;; argument towards a FP register which can help avoid consing at diff --git a/compiler/x86/type-vops.lisp b/compiler/x86/type-vops.lisp index 62194f806648e23827a99b71dd56728517f9d757..6dbf364c65edd46ea816eb186ffe289520c342f2 100644 --- a/compiler/x86/type-vops.lisp +++ b/compiler/x86/type-vops.lisp @@ -7,7 +7,7 @@ ;;; Scott Fahlman or slisp-group@cs.cmu.edu. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/type-vops.lisp,v 1.11 1998/03/21 07:54:40 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/type-vops.lisp,v 1.12 1998/07/24 17:22:43 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -353,32 +353,26 @@ object-not-ratio-error ratio-type) (def-type-vops complexp check-complex complex object-not-complex-error - complex-type - #+complex-float complex-single-float-type - #+complex-float complex-double-float-type - #+(and complex-float long-float) complex-long-float-type) + complex-type complex-single-float-type complex-double-float-type + #+long-float complex-long-float-type) -#+complex-float (def-type-vops complex-rational-p check-complex-rational nil object-not-complex-rational-error complex-type) -#+complex-float (def-type-vops complex-float-p check-complex-float nil object-not-complex-float-error complex-single-float-type complex-double-float-type #+long-float complex-long-float-type) -#+complex-float (def-type-vops complex-single-float-p check-complex-single-float complex-single-float object-not-complex-single-float-error complex-single-float-type) -#+complex-float (def-type-vops complex-double-float-p check-complex-double-float complex-double-float object-not-complex-double-float-error complex-double-float-type) -#+(and complex-float long-float) +#+long-float (def-type-vops complex-long-float-p check-complex-long-float complex-long-float object-not-complex-long-float-error complex-long-float-type) @@ -432,28 +426,24 @@ object-not-simple-array-unsigned-byte-32-error simple-array-unsigned-byte-32-type) -#+signed-array (def-type-vops simple-array-signed-byte-8-p check-simple-array-signed-byte-8 simple-array-signed-byte-8 object-not-simple-array-signed-byte-8-error simple-array-signed-byte-8-type) -#+signed-array (def-type-vops simple-array-signed-byte-16-p check-simple-array-signed-byte-16 simple-array-signed-byte-16 object-not-simple-array-signed-byte-16-error simple-array-signed-byte-16-type) -#+signed-array (def-type-vops simple-array-signed-byte-30-p check-simple-array-signed-byte-30 simple-array-signed-byte-30 object-not-simple-array-signed-byte-30-error simple-array-signed-byte-30-type) -#+signed-array (def-type-vops simple-array-signed-byte-32-p check-simple-array-signed-byte-32 simple-array-signed-byte-32 @@ -473,21 +463,19 @@ simple-array-long-float object-not-simple-array-long-float-error simple-array-long-float-type) -#+complex-float (def-type-vops simple-array-complex-single-float-p check-simple-array-complex-single-float simple-array-complex-single-float object-not-simple-array-complex-single-float-error simple-array-complex-single-float-type) -#+complex-float (def-type-vops simple-array-complex-double-float-p check-simple-array-complex-double-float simple-array-complex-double-float object-not-simple-array-complex-double-float-error simple-array-complex-double-float-type) -#+(and complex-float long-float) +#+long-float (def-type-vops simple-array-complex-long-float-p check-simple-array-complex-long-float simple-array-complex-long-float @@ -537,15 +525,13 @@ simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type #+long-float simple-array-long-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type - #+(and complex-float long-float) simple-array-complex-long-float-type + simple-array-complex-single-float-type + simple-array-complex-double-float-type + #+long-float simple-array-complex-long-float-type complex-string-type complex-bit-vector-type complex-vector-type) (def-type-vops simple-array-p check-simple-array nil object-not-simple-array-error @@ -553,39 +539,34 @@ simple-vector-type simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type #+long-float simple-array-long-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type - #+(and complex-float long-float) simple-array-complex-long-float-type) + simple-array-complex-single-float-type + simple-array-complex-double-float-type + #+long-float simple-array-complex-long-float-type) (def-type-vops arrayp check-array nil object-not-array-error simple-array-type simple-string-type simple-bit-vector-type simple-vector-type simple-array-unsigned-byte-2-type simple-array-unsigned-byte-4-type simple-array-unsigned-byte-8-type simple-array-unsigned-byte-16-type simple-array-unsigned-byte-32-type - #+signed-array simple-array-signed-byte-8-type - #+signed-array simple-array-signed-byte-16-type - #+signed-array simple-array-signed-byte-30-type - #+signed-array simple-array-signed-byte-32-type + simple-array-signed-byte-8-type simple-array-signed-byte-16-type + simple-array-signed-byte-30-type simple-array-signed-byte-32-type simple-array-single-float-type simple-array-double-float-type #+long-float simple-array-long-float-type - #+complex-float simple-array-complex-single-float-type - #+complex-float simple-array-complex-double-float-type - #+(and complex-float long-float) simple-array-complex-long-float-type + simple-array-complex-single-float-type + simple-array-complex-double-float-type + #+long-float simple-array-complex-long-float-type complex-string-type complex-bit-vector-type complex-vector-type complex-array-type) (def-type-vops numberp check-number nil object-not-number-error even-fixnum-type odd-fixnum-type bignum-type ratio-type single-float-type double-float-type #+long-float long-float-type complex-type - #+complex-float complex-single-float-type - #+complex-float complex-double-float-type - #+(and complex-float long-float) complex-long-float-type) + complex-single-float-type complex-double-float-type + #+long-float complex-long-float-type) (def-type-vops rationalp check-rational nil object-not-rational-error even-fixnum-type odd-fixnum-type ratio-type bignum-type) diff --git a/compiler/x86/vm.lisp b/compiler/x86/vm.lisp index 05a1cc98cb62391c7904668c13f101a7eb94672b..470fbbaabebf96ecb941c6c93821ab7f273b6d6f 100644 --- a/compiler/x86/vm.lisp +++ b/compiler/x86/vm.lisp @@ -7,7 +7,7 @@ ;;; Scott Fahlman or slisp-group@cs.cmu.edu. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/vm.lisp,v 1.9 1998/03/21 07:54:41 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/vm.lisp,v 1.10 1998/07/24 17:22:44 dtc Exp $") ;;; ;;; ********************************************************************** ;;; @@ -176,11 +176,9 @@ (double-stack stack :element-size 2) ; double-floats. #+long-float (long-stack stack :element-size 3) ; long-floats. - #+complex-float (complex-single-stack stack :element-size 2) ; complex-single-floats - #+complex-float (complex-double-stack stack :element-size 4) ; complex-double-floats - #+(and complex-float long-float) + #+long-float (complex-long-stack stack :element-size 6) ; complex-long-floats ;; **** Magic SCs. @@ -282,7 +280,6 @@ :save-p t :alternate-scs (long-stack)) - #+complex-float (complex-single-reg float-registers :locations (0 2 4 6) :element-size 2 @@ -290,7 +287,6 @@ :save-p t :alternate-scs (complex-single-stack)) - #+complex-float (complex-double-reg float-registers :locations (0 2 4 6) :element-size 2 @@ -298,7 +294,7 @@ :save-p t :alternate-scs (complex-double-stack)) - #+(and complex-float long-float) + #+long-float (complex-long-reg float-registers :locations (0 2 4 6) :element-size 2