-;;; stomping on an address range that the dynamic libraries want to use.
-;;; (They want to use this address range even if we try to reserve it
-;;; with a call to validate() as the first operation in main().)
-#!-linux (defparameter *read-only-space-start* #x10000000)
-#!-linux (defparameter *static-space-start*
- #!+freebsd #x30000000
- #!+openbsd #x28000000)
-#!-linux (defparameter *dynamic-space-start* #x48000000)
-#!+linux (defparameter *read-only-space-start* #x01000000)
-#!+linux (defparameter *static-space-start* #x05000000)
-#!+linux (defparameter *dynamic-space-start* #x09000000)
+;;; stomping on an address range that the dynamic libraries want to
+;;; use. (They want to use this address range even if we try to
+;;; reserve it with a call to validate() as the first operation in
+;;; main().)
+
+#!+linux
+(progn
+
+ (defconstant read-only-space-start #x01000000)
+ (defconstant read-only-space-end #x037ff000)
+
+ (defconstant static-space-start #x05000000)
+ (defconstant static-space-end #x07fff000)
+
+ (defconstant dynamic-space-start #x09000000)
+ (defconstant dynamic-space-end #x29000000)
+
+ (defconstant control-stack-start #x50000000)
+ (defconstant control-stack-end #x57fff000)
+
+ (defconstant binding-stack-start #x60000000)
+ (defconstant binding-stack-end #x67fff000))
+
+#!+bsd
+(progn
+
+ (defconstant read-only-space-start #x10000000)
+ (defconstant read-only-space-end #x1ffff000)
+
+ (defconstant static-space-start
+ #!+freebsd #x30000000
+ #!+openbsd #x28000000)
+ (defconstant static-space-end #x37fff000)
+
+ (defconstant binding-stack-start #x38000000)
+ (defconstant binding-stack-end #x3ffff000)
+
+ (defconstant control-stack-start
+ #+freebsd #x40000000
+ #+openbsd #x48000000)
+ (defconstant control-stack-end
+ #+freebsd #x47fff000
+ #+openbsd #x4ffff000)
+ (defconstant dynamic-space-start
+ #+freebsd #x48000000
+ #+openbsd #x50000000)
+ (defconstant dynamic-space-end #x88000000))