From: Thiemo S. <th...@us...> - 2008-12-23 14:10:33
|
Update of /cvsroot/sbcl/sbcl/src/compiler/alpha In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv25684/src/compiler/alpha Modified Files: array.lisp Log Message: 1.0.23.66: Calculate array sizes in a more reliable way. * The old implementation depended on the array header size being an even number of words. * Also, another micro-optimization for MIPS. Index: array.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/compiler/alpha/array.lisp,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- array.lisp 4 Jun 2006 14:25:07 -0000 1.22 +++ array.lisp 23 Dec 2008 14:10:23 -0000 1.23 @@ -22,7 +22,7 @@ (:temporary (:scs (non-descriptor-reg)) header) (:results (result :scs (descriptor-reg))) (:generator 13 - (inst addq rank (+ (* array-dimensions-offset n-word-bytes) + (inst addq rank (+ (* (1+ array-dimensions-offset) n-word-bytes) lowtag-mask) bytes) (inst li (lognot lowtag-mask) header) |