Changeset 7338
- Timestamp:
- Oct 1, 2007, 8:18:21 PM (13 years ago)
- Location:
- branches/ia32
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/ia32/compiler/nxenv.lisp
r6176 r7338 27 27 28 28 #+ppc-target (require "PPCENV") 29 #+x8632-target (require "X8632ENV") 29 30 #+x8664-target (require "X8664ENV") 30 31 -
branches/ia32/level-0/l0-array.lisp
r7244 r7338 104 104 unused)) 105 105 106 #+x8632-target 107 (defconstant x8632::*immheader-array-types* 108 '#(short-float 109 (unsigned-byte 32) 110 (signed-byte 32) 111 fixnum 112 character 113 (unsigned-byte 8) 114 (signed-byte 8) 115 unused 116 (unsigned-byte 16) 117 (signed-byte 16) 118 double-float 119 bit)) 120 106 121 #+x8664-target 107 122 (progn … … 183 198 #+ppc64-target 184 199 (ash (the fixnum (logand subtag #x7f)) (- ppc64::nlowtagbits))) 200 #+x8632-target 201 (svref x8632::*immheader-array-types* 202 (ash (the fixnum (- subtag x8632::min-cl-ivector-subtag)) 203 (- x8632::ntagbits))) 185 204 #+x8664-target 186 205 (let* ((class (logand subtag x8664::fulltagmask)) … … 714 733 (ash (the fixnum (+ 7 total-bits)) -3))) 715 734 735 #+x8632-target 736 (defun subtag-bytes (subtag element-count) 737 (declare (fixnum subtag element-count)) 738 (unless (= #.x8632::fulltag-immheader (logand subtag #.x8632::fulltagmask)) 739 (error "Not an ivector subtag: ~s" subtag)) 740 (let* ((element-bit-shift 741 (if (<= subtag x8632::max-32-bit-ivector-subtag) 742 5 743 (if (<= subtag x8632::max-8-bit-ivector-subtag) 744 3 745 (if (<= subtag x8632::max-16-bit-ivector-subtag) 746 4 747 (if (= subtag x8632::subtag-double-float-vector) 748 6 749 0))))) 750 (total-bits (ash element-count element-bit-shift))) 751 (ash (+ 7 total-bits) -3))) 752 716 753 #+x8664-target 717 754 (defun subtag-bytes (subtag element-count)
Note: See TracChangeset
for help on using the changeset viewer.