From aa2fda27c9359250072f29b15d13ecab5e6eabde Mon Sep 17 00:00:00 2001 From: toy <toy> Date: Tue, 3 Sep 2002 16:29:46 +0000 Subject: [PATCH] o Moved the definitions of LOWTAG-BITS, LOWTAG-MASK, and LOWTAG-LIMIT from compiler/generic/objdef.lisp to compiler/sparc/parms.lisp because cross-compiling on sparc loads parms after objdef, and parms uses these symbols. o Added TARGET-FOREIGN-LINKAGE-SPACE-START and TARGET-FOREIGN-LINKAGE-ENTRY-SIZE to parms.lisp to support the new linkage table stuff. (Not yet implemented on sparc, so these values may be wrong.) --- compiler/generic/objdef.lisp | 12 +----------- compiler/sparc/parms.lisp | 21 +++++++++++++++++++-- 2 files changed, 20 insertions(+), 13 deletions(-) diff --git a/compiler/generic/objdef.lisp b/compiler/generic/objdef.lisp index e62a0c64f..97f20c7cc 100644 --- a/compiler/generic/objdef.lisp +++ b/compiler/generic/objdef.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/objdef.lisp,v 1.45 2001/02/11 14:22:03 dtc Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/objdef.lisp,v 1.46 2002/09/03 16:29:45 toy Exp $") ;;; ;;; ********************************************************************** ;;; @@ -65,16 +65,6 @@ (eval-when (compile eval load) -(defconstant lowtag-bits 3 - "Number of bits at the low end of a pointer used for type information.") - -(defconstant lowtag-mask (1- (ash 1 lowtag-bits)) - "Mask to extract the low tag bits from a pointer.") - -(defconstant lowtag-limit (ash 1 lowtag-bits) - "Exclusive upper bound on the value of the low tag bits from a - pointer.") - (defconstant type-bits 8 "Number of bits used in the header word of a data block for typeing.") diff --git a/compiler/sparc/parms.lisp b/compiler/sparc/parms.lisp index 69e886bcf..da9e1ad0b 100644 --- a/compiler/sparc/parms.lisp +++ b/compiler/sparc/parms.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/parms.lisp,v 1.34 2002/03/31 14:48:41 pw Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/parms.lisp,v 1.35 2002/09/03 16:29:46 toy Exp $") ;;; ;;; ********************************************************************** ;;; @@ -91,6 +91,19 @@ (defconstant word-bytes (/ word-bits byte-bits) "Number of bytes in a word.") +(defconstant lowtag-bits 3 + "Number of bits at the low end of a pointer used for type information.") + +(defconstant lowtag-mask (1- (ash 1 lowtag-bits)) + "Mask to extract the low tag bits from a pointer.") + +(defconstant lowtag-limit (ash 1 lowtag-bits) + "Exclusive upper bound on the value of the low tag bits from a + pointer.") + +(defconstant lowtag-bits 3 + "Number of bits at the low end of a pointer used for type information.") + (defconstant fixnum-tag-bits (1- lowtag-bits) "Number of tag bits used for a fixnum") @@ -174,13 +187,17 @@ (export '(target-read-only-space-start target-static-space-start - target-dynamic-space-start)) + target-dynamic-space-start + target-foreign-linkage-space-start + target-foreign-linkage-entry-size)) ;;; Where to put the different spaces. Must match the C code! ;;; (defparameter target-read-only-space-start #x10000000) (defparameter target-static-space-start #x28000000) (defparameter target-dynamic-space-start #x40000000) +(defparameter target-foreign-linkage-space-start #x0fc00000) +(defconstant target-foreign-linkage-entry-size 8) ;In bytes. Duh. -- GitLab