From c6e0a2eb1bc15bfeba9791e51925c976e219bfff Mon Sep 17 00:00:00 2001 From: Douglas Katzman Date: Fri, 12 Feb 2016 01:55:51 -0500 Subject: [PATCH] Fix "Cosmetic problem" per remark in compiler/generic/parms --- src/compiler/arm64/parms.lisp | 2 +- src/compiler/generic/parms.lisp | 12 +++--------- src/compiler/ppc/parms.lisp | 1 + src/compiler/x86-64/parms.lisp | 8 +++----- src/compiler/x86/parms.lisp | 16 ++++++++-------- 5 files changed, 16 insertions(+), 23 deletions(-) diff --git a/src/compiler/arm64/parms.lisp b/src/compiler/arm64/parms.lisp index 7cf56b968..fee4e9918 100644 --- a/src/compiler/arm64/parms.lisp +++ b/src/compiler/arm64/parms.lisp @@ -90,7 +90,7 @@ (def!constant linkage-table-space-end #x0b000000)) #!+gencgc -(!gencgc-space-setup #x04000000 #x4f000000) +(!gencgc-space-setup #x04000000 :dynamic-space-start #x4f000000) (def!constant linkage-table-entry-size 16) diff --git a/src/compiler/generic/parms.lisp b/src/compiler/generic/parms.lisp index f0a5f478c..be2cabd44 100644 --- a/src/compiler/generic/parms.lisp +++ b/src/compiler/generic/parms.lisp @@ -12,7 +12,7 @@ (in-package "SB!VM") -(def!macro !configure-dynamic-space-end (&optional default) +(defmacro !configure-dynamic-space-end (&optional default) (with-open-file (f "output/dynamic-space-size.txt") (let ((line (read-line f))) (multiple-value-bind (number end) @@ -59,15 +59,9 @@ ;; happy -- hence the need for an extra `alignment' configuration ;; option below, which parms.lisp can set to #x10000 on Windows. ;; -;; Cosmetic problem: -;; -;; In the interest of readability, &KEY would be much nicer than -;; &OPTIONAL. But is it possible to use keyword arguments to -;; DEF!MACRO? -;; -(def!macro !gencgc-space-setup +(defmacro !gencgc-space-setup (small-spaces-start - &optional dynamic-space-start* + &key ((:dynamic-space-start dynamic-space-start*)) default-dynamic-space-size ;; Smallest os_validate()able alignment; used as safepoint ;; page size. Default suitable for POSIX platforms. diff --git a/src/compiler/ppc/parms.lisp b/src/compiler/ppc/parms.lisp index b1d65a1e8..7b741b5fe 100644 --- a/src/compiler/ppc/parms.lisp +++ b/src/compiler/ppc/parms.lisp @@ -101,6 +101,7 @@ ;;; While on gencgc we don't. #!+gencgc (!gencgc-space-setup #x04000000 + :dynamic-space-start #!+linux #x4f000000 #!+netbsd #x4f000000 #!+openbsd #x4f000000 diff --git a/src/compiler/x86-64/parms.lisp b/src/compiler/x86-64/parms.lisp index 5e0a6d336..7e7430eb7 100644 --- a/src/compiler/x86-64/parms.lisp +++ b/src/compiler/x86-64/parms.lisp @@ -107,13 +107,11 @@ ;;; run under the default 512M data size limit. (!gencgc-space-setup #x20000000 - #x1000000000 + :dynamic-space-start #x1000000000 - ;; :default-dynamic-space-size - #!+openbsd #x1bcf0000 + #!+openbsd :default-dynamic-space-size #!+openbsd #x1bcf0000 - ;; :alignment - #!+win32 #!+win32 nil #x10000) + #!+win32 :alignment #!+win32 #x10000) (def!constant linkage-table-entry-size 16) diff --git a/src/compiler/x86/parms.lisp b/src/compiler/x86/parms.lisp index 15a37ba0f..71b3e399a 100644 --- a/src/compiler/x86/parms.lisp +++ b/src/compiler/x86/parms.lisp @@ -187,14 +187,14 @@ ;;; NetBSD configuration used to have this comment regarding the linkage ;;; table: "In CMUCL: 0xB0000000->0xB1000000" -#!+win32 (!gencgc-space-setup #x22000000 nil nil #x10000) -#!+linux (!gencgc-space-setup #x01000000 #x09000000) -#!+sunos (!gencgc-space-setup #x20000000 #x48000000) -#!+freebsd (!gencgc-space-setup #x01000000 #x58000000) -#!+dragonfly (!gencgc-space-setup #x01000000 #x58000000) -#!+openbsd (!gencgc-space-setup #x1b000000 #x40000000) -#!+netbsd (!gencgc-space-setup #x20000000 #x60000000) -#!+darwin (!gencgc-space-setup #x04000000 #x10000000) +#!+win32 (!gencgc-space-setup #x22000000 :alignment #x10000) +#!+linux (!gencgc-space-setup #x01000000 :dynamic-space-start #x09000000) +#!+sunos (!gencgc-space-setup #x20000000 :dynamic-space-start #x48000000) +#!+freebsd (!gencgc-space-setup #x01000000 :dynamic-space-start #x58000000) +#!+dragonfly (!gencgc-space-setup #x01000000 :dynamic-space-start #x58000000) +#!+openbsd (!gencgc-space-setup #x1b000000 :dynamic-space-start #x40000000) +#!+netbsd (!gencgc-space-setup #x20000000 :dynamic-space-start #x60000000) +#!+darwin (!gencgc-space-setup #x04000000 :dynamic-space-start #x10000000) ;;; Size of one linkage-table entry in bytes. (def!constant linkage-table-entry-size 8) -- 2.11.4.GIT