[Git][cmucl/cmucl][master] 2 commits: Address #195: Use relocatable stacks by default
Raymond Toy (@rtoy)
gitlab at common-lisp.net
Tue May 16 23:48:30 UTC 2023
Raymond Toy pushed to branch master at cmucl / cmucl
Commits:
84ec62e3 by Raymond Toy at 2023-05-16T23:47:44+00:00
Address #195: Use relocatable stacks by default
- - - - -
78acc885 by Raymond Toy at 2023-05-16T23:47:53+00:00
Merge branch 'issue-195-relocatable-stacks-by-default' into 'master'
Address #195: Use relocatable stacks by default
See merge request cmucl/cmucl!146
- - - - -
7 changed files:
- .gitlab-ci.yml
- src/code/sparc-svr4-vm.lisp
- src/code/x86-vm.lisp
- src/lisp/solaris-os.c
- src/lisp/sparc-validate.h
- src/lisp/x86-validate-darwin.h
- src/lisp/x86-validate-linux.h
Changes:
=====================================
.gitlab-ci.yml
=====================================
@@ -1,7 +1,7 @@
variables:
- download_url: "https://common-lisp.net/project/cmucl/downloads/snapshots/2023/04"
- version: "2023-04-x86"
- bootstrap: "-B boot-21e"
+ download_url: "https://common-lisp.net/project/cmucl/downloads/release/21e"
+ version: "21e-x86"
+ bootstrap: ""
stages:
- install
=====================================
src/code/sparc-svr4-vm.lisp
=====================================
@@ -26,9 +26,6 @@
#+complex-fp-vops
(sys:register-lisp-feature :complex-fp-vops)
-#+(and sparc solaris)
-(sys:register-lisp-runtime-feature :relocatable-stacks)
-
;;;; The sigcontext structure.
=====================================
src/code/x86-vm.lisp
=====================================
@@ -42,9 +42,6 @@
(setf *features* (delete :x87 *features*))
(sys:register-lisp-feature :sse2))
-#+(or darwin linux)
-(sys:register-lisp-runtime-feature :relocatable-stacks)
-
;;;; The sigcontext structure.
=====================================
src/lisp/solaris-os.c
=====================================
@@ -415,10 +415,6 @@ os_vm_address_t round_up_sparse_size(os_vm_address_t addr)
*/
static os_vm_address_t spaces[] = {
READ_ONLY_SPACE_START, STATIC_SPACE_START,
-#ifndef FEATURE_RELOCATABLE_STACKS
- BINDING_STACK_START,
- CONTROL_STACK_START
-#endif
};
/*
@@ -505,10 +501,8 @@ make_holes(void)
void
make_stack_holes(void)
{
-#ifdef FEATURE_RELOCATABLE_STACKS
make_hole((os_vm_address_t)control_stack, control_stack_size);
make_hole((os_vm_address_t)binding_stack, binding_stack_size);
-#endif
}
void *
=====================================
src/lisp/sparc-validate.h
=====================================
@@ -92,22 +92,12 @@
#define READ_ONLY_SPACE_START (SpaceStart_TargetReadOnly)
#define READ_ONLY_SPACE_SIZE ((2*MB_128) - SPARSE_BLOCK_SIZE) /* 256 MB - 32 KB, 256 MB max */
-#ifndef FEATURE_RELOCATABLE_STACKS
-#define BINDING_STACK_START (0x20000000)
-#endif
-
#define BINDING_STACK_SIZE (MB_128 - SPARSE_BLOCK_SIZE) /* 128 MB - 32 KB, 128 MB max */
#define STATIC_SPACE_START (SpaceStart_TargetStatic)
#define STATIC_SPACE_SIZE ((2*MB_128) - SPARSE_BLOCK_SIZE) /* 256 MB - 32 KB, 256 MB max */
-#ifndef FEATURE_RELOCATABLE_STACKS
-#define CONTROL_STACK_START (0x38000000)
-#endif
#define CONTROL_STACK_SIZE (MB_128 - SPARSE_BLOCK_SIZE) /* 128 MB - 32 KB, 128 MB max */
-#if 0
-#define CONTROL_STACK_END (CONTROL_STACK_START + control_stack_size)
-#endif
#define SIGNAL_STACK_SIZE SIGSTKSZ
=====================================
src/lisp/x86-validate-darwin.h
=====================================
@@ -18,24 +18,14 @@
#define STATIC_SPACE_START (SpaceStart_TargetStatic)
#define STATIC_SPACE_SIZE (0x0ffff000) /* 256MB - 1 page */
-#ifndef FEATURE_RELOCATABLE_STACKS
-#define BINDING_STACK_START (0x38000000)
-#endif
#define BINDING_STACK_SIZE (0x07fff000) /* 128MB - 1 page */
-#ifndef FEATURE_RELOCATABLE_STACKS
-#define CONTROL_STACK_START (0x40000000)
-#endif
-
/*
* According to /usr/include/sys/signal.h, MINSIGSTKSZ is 32K and
* SIGSTKSZ is 128K. We should account for that appropriately.
*/
#define CONTROL_STACK_SIZE (0x07fdf000) /* 128MB - SIGSTKSZ - 1 page */
-#ifndef FEATURE_RELOCATABLE_STACKS
-#define SIGNAL_STACK_START (0x47fe0000) /* One page past the end of the control stack */
-#endif
#define SIGNAL_STACK_SIZE SIGSTKSZ
#define DYNAMIC_0_SPACE_START (SpaceStart_TargetDynamic)
=====================================
src/lisp/x86-validate-linux.h
=====================================
@@ -63,19 +63,10 @@
#define STATIC_SPACE_START (SpaceStart_TargetStatic)
#define STATIC_SPACE_SIZE (0x0ffff000) /* 256MB - 1 page */
-#ifndef FEATURE_RELOCATABLE_STACKS
-#define BINDING_STACK_START (0x20000000)
-#endif
#define BINDING_STACK_SIZE (0x07fff000) /* 128MB - 1 page */
-#ifndef FEATURE_RELOCATABLE_STACKS
-#define CONTROL_STACK_START 0x38000000
-#endif
#define CONTROL_STACK_SIZE (0x07fff000 - 8192)
-#ifndef FEATURE_RELOCATABLE_STACKS
-#define SIGNAL_STACK_START CONTROL_STACK_END
-#endif
#define SIGNAL_STACK_SIZE SIGSTKSZ
#define DYNAMIC_0_SPACE_START (SpaceStart_TargetDynamic)
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/e82bebb7be1f2a642286246071c0b470dacacaa0...78acc885ad3e6661159158b8593eef022f8a1388
--
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/e82bebb7be1f2a642286246071c0b470dacacaa0...78acc885ad3e6661159158b8593eef022f8a1388
You're receiving this email because of your account on gitlab.common-lisp.net.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cmucl-cvs/attachments/20230516/2770bd56/attachment-0001.html>
More information about the cmucl-cvs
mailing list