Update of /cvsroot/sbcl/sbcl/src/compiler/alpha
In directory usw-pr-cvs1:/tmp/cvs-serv15820/src/compiler/alpha
Modified Files:
arith.lisp macros.lisp
Log Message:
0.7.5.1:
Alpha build fix
... define the relevant types earlier in the build
... s/INTEGER-WITH-A-BITE-OUT/UNSIGNED-BYTE-WITH-A-BITE-OUT/
Array performance enhancement
... remove the (SAFETY 3) declaration from HAIRY-DATA-VECTOR-{REF,SET}
... write tests for AREF beyond array bounds
Buglet fix in pack.lisp
... put FILL arguments the right way round
Index: arith.lisp
===================================================================
RCS file: /cvsroot/sbcl/sbcl/src/compiler/alpha/arith.lisp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- arith.lisp 18 Mar 2002 19:08:01 -0000 1.6
+++ arith.lisp 25 Jun 2002 15:57:14 -0000 1.7
@@ -294,14 +294,6 @@
(:temporary (:scs (non-descriptor-reg)) temp)
(:policy :fast-safe))
-(deftype integer-with-a-bite-out (s bite)
- (cond ((eq s '*) 'integer)
- ((and (integerp s) (> s 1))
- (let ((bound (ash 1 s)))
- `(integer 0 ,(- bound bite 1))))
- (t
- (error "Bad size specified for SIGNED-BYTE type specifier: ~S." s))))
-
(define-vop (fast-conditional/fixnum fast-conditional)
(:args (x :scs (any-reg))
(y :scs (any-reg)))
@@ -310,7 +302,7 @@
(define-vop (fast-conditional-c/fixnum fast-conditional/fixnum)
(:args (x :scs (any-reg)))
- (:arg-types tagged-num (:constant (integer-with-a-bite-out 6 4)))
+ (:arg-types tagged-num (:constant (unsigned-byte-with-a-bite-out 6 4)))
(:info target not-p y))
(define-vop (fast-conditional/signed fast-conditional)
@@ -321,7 +313,7 @@
(define-vop (fast-conditional-c/signed fast-conditional/signed)
(:args (x :scs (signed-reg)))
- (:arg-types signed-num (:constant (integer-with-a-bite-out 8 1)))
+ (:arg-types signed-num (:constant (unsigned-byte-with-a-bite-out 8 1)))
(:info target not-p y))
(define-vop (fast-conditional/unsigned fast-conditional)
@@ -332,7 +324,7 @@
(define-vop (fast-conditional-c/unsigned fast-conditional/unsigned)
(:args (x :scs (unsigned-reg)))
- (:arg-types unsigned-num (:constant (integer-with-a-bite-out 8 1)))
+ (:arg-types unsigned-num (:constant (unsigned-byte-with-a-bite-out 8 1)))
(:info target not-p y))
Index: macros.lisp
===================================================================
RCS file: /cvsroot/sbcl/sbcl/src/compiler/alpha/macros.lisp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- macros.lisp 19 May 2002 13:55:32 -0000 1.12
+++ macros.lisp 25 Jun 2002 15:57:14 -0000 1.13
@@ -261,16 +261,6 @@
;;;; memory accessor vop generators
-(deftype load/store-index (scale lowtag min-offset
- &optional (max-offset min-offset))
- `(integer ,(- (truncate (+ (ash 1 16)
- (* min-offset n-word-bytes)
- (- lowtag))
- scale))
- ,(truncate (- (+ (1- (ash 1 16)) lowtag)
- (* max-offset n-word-bytes))
- scale)))
-
(defmacro define-full-reffer (name type offset lowtag scs el-type
&optional translate)
`(progn
|