From: Nathan F. <nf...@us...> - 2007-05-19 02:14:10
|
Update of /cvsroot/sbcl/sbcl/src/compiler/hppa In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv9999/src/compiler/hppa Modified Files: macros.lisp Log Message: 1.0.5.53: cleanup LOAD-TYPE macros * when the LOAD-TYPE macros in the various backends hardcoded '3', they really meant (1- N-WORD-BYTES)--a little reflection on widetags, lowtags, and endian orderings should make this clear (we don't have a 64-bit big-endian port to drive it home, though); * catch the spread of magic constants in code/array.lisp. Index: macros.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/compiler/hppa/macros.lisp,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- macros.lisp 14 Jul 2005 18:48:31 -0000 1.7 +++ macros.lisp 19 May 2007 02:14:06 -0000 1.8 @@ -52,7 +52,7 @@ (:little-endian `(inst ldb ,offset ,source ,target)) (:big-endian - `(inst ldb (+ ,offset 3) ,source ,target)))) + `(inst ldb (+ ,offset (1- n-word-bytes)) ,source ,target)))) ;;; Macros to handle the fact that we cannot use the machine native call and ;;; return instructions. |