1.0.28.28: delete %RAW-BITS and %SET-RAW-BITS
[sbcl.git] / src / compiler / x86 / backend-parms.lisp
index 62c17ec..3f8cf62 100644 (file)
 ;;;; files for more information.
 
 (in-package "SB!VM")
-
-(file-comment
- "$Header$")
 \f
 ;;;; compiler constants
 
-(setf *backend-fasl-file-type* "x86f")
-(setf *backend-fasl-file-implementation* :x86)
-(setf *backend-fasl-file-version* 5)
-;;; 2 = sbcl-0.6.4 uses COMPILE-OR-LOAD-DEFGENERIC.
-;;; 3 = sbcl-0.6.6 uses private symbol, not :EMPTY, for empty HASH-TABLE slot.
-;;; 4 = sbcl-0.6.7 uses HAIRY-DATA-VECTOR-REF and HAIRY-DATA-VECTOR-SET
-;;;     when array headers or data element type uncertainty exist, and
-;;;     uses DATA-VECTOR-REF and DATA-VECTOR-SET only for VOPs. (Thus,
-;;;     full calls to DATA-VECTOR-REF and DATA-VECTOR-SET from older
-;;;     fasl files would fail, because there are no DEFUNs for these
-;;;     operations any more.)
-;;; 5 = sbcl-0.6.8 has rearranged static symbols.
+(def!constant +backend-fasl-file-implementation+ :x86)
 
 (setf *backend-register-save-penalty* 3)
 
 (setf *backend-byte-order* :little-endian)
 
-(setf *backend-page-size* 4096)
+;;; KLUDGE: It would seem natural to set this by asking our C runtime
+;;; code for it, but mostly we need it for GENESIS, which doesn't in
+;;; general have our C runtime code running to ask, so instead we set
+;;; it by hand. -- WHN 2001-04-15
+;;;
+;;; Actually any information that we can retrieve C-side would be
+;;; useless in SBCL, since it's possible for otherwise binary
+;;; compatible systems to return different values for getpagesize().
+;;; -- JES, 2007-01-06
+(eval-when (:compile-toplevel :load-toplevel :execute)
+  (setf *backend-page-bytes* 4096))
 ;;; comment from CMU CL:
 ;;;
 ;;;   in case we ever wanted to do this for Windows NT..
@@ -47,4 +43,8 @@
 ;;;   page size is 512, but that doesn't do us a whole lot of good.
 ;;;   Effectively, the page size is 64K.
 ;;;
-;;;   would be: (setf *backend-page-size* 65536)
+;;;   would be: (setf *backend-page-bytes* 65536)
+
+;;; The size in bytes of the GENCGC pages. Should be a multiple of the
+;;; architecture code size.
+(def!constant gencgc-page-bytes *backend-page-bytes*)