[Git][cmucl/cmucl][rtoy-mmap-anon-control-and-binding-stacks] 4 commits: Replace CONTROL_STACK_START with control_stack.

Raymond Toy rtoy at common-lisp.net
Sat Oct 3 21:12:24 UTC 2015


Raymond Toy pushed to branch rtoy-mmap-anon-control-and-binding-stacks at cmucl / cmucl


Commits:
57a7df13 by Raymond Toy at 2015-10-03T14:10:24Z
Replace CONTROL_STACK_START with control_stack.

Cast to appropriate pointer types too.

- - - - -
e0ae3367 by Raymond Toy at 2015-10-03T14:11:08Z
Replace CONTROL_STACK_START with control_stack and BINDING_STACK_START
with binding_stack.

- - - - -
748991e2 by Raymond Toy at 2015-10-03T14:11:33Z
Cast os_validate to the appropriate type to get rid of warning.

- - - - -
e4897224 by Raymond Toy at 2015-10-03T14:11:43Z
Declare validate_stacks().

- - - - -


4 changed files:

- src/lisp/backtrace.c
- src/lisp/solaris-os.c
- src/lisp/validate.c
- src/lisp/validate.h


Changes:

=====================================
src/lisp/backtrace.c
=====================================
--- a/src/lisp/backtrace.c
+++ b/src/lisp/backtrace.c
@@ -252,7 +252,7 @@ backtrace(int nframes)
 static int
 stack_pointer_p(unsigned long p)
 {
-    return (p < CONTROL_STACK_START + control_stack_size
+    return ((void *)p < (void *)control_stack + control_stack_size
 	    && p > (unsigned long) &p && (p & 3) == 0);
 }
 


=====================================
src/lisp/solaris-os.c
=====================================
--- a/src/lisp/solaris-os.c
+++ b/src/lisp/solaris-os.c
@@ -199,8 +199,8 @@ boolean valid_addr(os_vm_address_t addr)
 #ifndef GENCGC
 	    || in_range_p(addr, DYNAMIC_1_SPACE_START, dynamic_space_size)
 #endif
-	    || in_range_p(addr, CONTROL_STACK_START, control_stack_size)
-	    || in_range_p(addr, BINDING_STACK_START, binding_stack_size));
+	    || in_range_p(addr, control_stack, control_stack_size)
+	    || in_range_p(addr, binding_stack, binding_stack_size));
 }
 
 /* ---------------------------------------------------------------- */
@@ -412,8 +412,7 @@ os_vm_address_t round_up_sparse_size(os_vm_address_t addr)
  * of the dynamic space can be controlled from the command line.
  */
 static os_vm_address_t spaces[] = {
-    READ_ONLY_SPACE_START, STATIC_SPACE_START,
-    BINDING_STACK_START, CONTROL_STACK_START
+    READ_ONLY_SPACE_START, STATIC_SPACE_START
 };
 
 /*


=====================================
src/lisp/validate.c
=====================================
--- a/src/lisp/validate.c
+++ b/src/lisp/validate.c
@@ -116,14 +116,14 @@ validate_stacks()
 {
     /* Control Stack */
     /* Map the conrol stack wherever we have space */
-    control_stack = os_validate(NULL, control_stack_size);
+  control_stack = (lispobj*) os_validate(NULL, control_stack_size);
 
 #if (defined(i386) || defined(__x86_64))
     control_stack_end = (void*)control_stack + control_stack_size;
 #endif
 
     /* Binding Stack */
-    binding_stack = os_validate(NULL, binding_stack_size);
+    binding_stack = (lispobj*) os_validate(NULL, binding_stack_size);
 
 #ifdef sparc
     make_stack_holes();


=====================================
src/lisp/validate.h
=====================================
--- a/src/lisp/validate.h
+++ b/src/lisp/validate.h
@@ -37,5 +37,6 @@
 #endif
 
 extern void validate(void);
+extern void validate_stacks(void);
 
 #endif /* _VALIDATE_H_ */



View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/compare/65b5ed7715ded275fd4d360eab85df7c5357769d...e4897224933bfcdaf64888f51c0f3e03fd074748
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cmucl-cvs/attachments/20151003/a3d40e71/attachment-0001.html>


More information about the cmucl-cvs mailing list