0.7.13.28:
[sbcl.git] / src / assembly / alpha / array.lisp
index 1ab3057..b67466a 100644 (file)
@@ -1,17 +1,14 @@
-;;; -*- Package: ALPHA -*-
-;;;
-;;; **********************************************************************
-;;; This code was written as part of the CMU Common Lisp project at
-;;; Carnegie Mellon University, and has been placed in the public domain.
-;;;
-;;;
-;;; **********************************************************************
-;;;
-;;;    This file contains the support routines for arrays and vectors.
-;;;
-;;; Written by William Lott.
-;;; Conversion by Sean Hallgren
-;;; 
+;;;; support routines for arrays and vectors
+
+;;;; This software is part of the SBCL system. See the README file for
+;;;; more information.
+;;;;
+;;;; This software is derived from the CMU CL system, which was
+;;;; written at Carnegie Mellon University and released into the
+;;;; public domain. The software is in the public domain and is
+;;;; provided with absolutely no warranty. See the COPYING and CREDITS
+;;;; files for more information.
+
 (in-package "SB!VM")
 
 
                          (:temp ndescr non-descriptor-reg nl0-offset))
   ;; This is kinda sleezy, changing words like this.  But we can because
   ;; the vop thinks it is temporary.
-  (inst addq words (+ (1- (ash 1 lowtag-bits))
-                     (* vector-data-offset word-bytes))
+  (inst addq words (+ (1- (ash 1 n-lowtag-bits))
+                     (* vector-data-offset n-word-bytes))
        words)
   (inst li (lognot lowtag-mask) ndescr)
   (inst and words ndescr words)
   (inst srl type word-shift ndescr)
 
   (pseudo-atomic ()
-    (inst bis alloc-tn other-pointer-type result)
+    (inst bis alloc-tn other-pointer-lowtag result)
     (inst addq alloc-tn words alloc-tn)
-    (storew ndescr result 0 other-pointer-type)
-    (storew length result vector-length-slot other-pointer-type)))
-
+    (storew ndescr result 0 other-pointer-lowtag)
+    (storew length result vector-length-slot other-pointer-lowtag)))
 \f
-;;;; Hash primitives
+;;;; hash primitives
 #|
 (define-assembly-routine (sxhash-simple-string
                          (:translate %sxhash-simple-string)
@@ -65,7 +61,7 @@
   (progn result lip accum data byte  retaddr)
 
   (inst li (make-fixup 'sxhash-simple-substring :assembly-routine) temp1)
-  (loadw length string vector-length-slot other-pointer-type)
+  (loadw length string vector-length-slot other-pointer-lowtag)
   (inst jmp zero-tn temp1
        (make-fixup 'sxhash-simple-substring :assembly-routine)))
 
@@ -89,7 +85,7 @@
 
   ;; Get a pointer to the data.
   (inst addq string
-       (- (* vector-data-offset word-bytes) other-pointer-type)
+       (- (* vector-data-offset n-word-bytes) other-pointer-lowtag)
        lip)
   (move zero-tn accum)
   (inst br zero-tn test)