X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fppc%2Fbackend-parms.lisp;h=cfb3bb487953617dbf765070d801a36287e955dd;hb=7c406887c08477181e869b1b98142d99b52990ac;hp=71f5771cb477ecd782a14f82bfe08a2f99a41f40;hpb=ce3935c80e46e3f5fbaeab82eb1ccabe82cb44f9;p=sbcl.git diff --git a/src/compiler/ppc/backend-parms.lisp b/src/compiler/ppc/backend-parms.lisp index 71f5771..cfb3bb4 100644 --- a/src/compiler/ppc/backend-parms.lisp +++ b/src/compiler/ppc/backend-parms.lisp @@ -1,7 +1,17 @@ (in-package "SB!VM") -(defconstant +backend-fasl-file-implementation+ :ppc) +(def!constant +backend-fasl-file-implementation+ :ppc) (setf *backend-register-save-penalty* 3) (setf *backend-byte-order* :big-endian) -(setf *backend-page-size* 4096) +(eval-when (:compile-toplevel :load-toplevel :execute) + ;; On Linux, the ABI specifies the page size to be 4k-64k, use the + ;; maximum of that range. FIXME: it'd be great if somebody would + ;; find out whether using exact multiples of the page size actually + ;; matters in the few places where that's done, or whether we could + ;; just use 4k everywhere. + (setf *backend-page-bytes* #!+linux 65536 #!-linux 4096)) + +;;; The size in bytes of the GENCGC pages. Should be a multiple of the +;;; architecture page size. +(def!constant gencgc-page-bytes *backend-page-bytes*)