guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] GNU Guile branch, branch_release-1-8, updated. release_1


From: Andy Wingo
Subject: [Guile-commits] GNU Guile branch, branch_release-1-8, updated. release_1-8-7-32-g4e30666
Date: Sun, 29 Aug 2010 19:18:12 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

http://git.savannah.gnu.org/cgit/guile.git/commit/?id=4e30666a1ae21435ebe13c3f3108f1c62bbb82e8

The branch, branch_release-1-8 has been updated
       via  4e30666a1ae21435ebe13c3f3108f1c62bbb82e8 (commit)
      from  dcf7c034873e3ecf36558e4ae9dfd7d1866ae7ca (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 4e30666a1ae21435ebe13c3f3108f1c62bbb82e8
Author: Andy Wingo <address@hidden>
Date:   Sun Aug 29 12:20:05 2010 -0700

    fix libguile compilation on newer solaris
    
    * libguile/gc_os_dep.c: Update SUNOS5 stack and heap bounding heuristics
      from upstream libgc. Based on a patch by Marion Hakanson.

-----------------------------------------------------------------------

Summary of changes:
 libguile/gc_os_dep.c |   34 ++++++++++++++++++++++++----------
 1 files changed, 24 insertions(+), 10 deletions(-)

diff --git a/libguile/gc_os_dep.c b/libguile/gc_os_dep.c
index 7bc9644..02a2ae4 100644
--- a/libguile/gc_os_dep.c
+++ b/libguile/gc_os_dep.c
@@ -1,5 +1,5 @@
 /*
- * Copyright 1988, 1989 Hans-J. Boehm, Alan J. Demers
+ * Copyright 1988, 1989, 2010 Hans-J. Boehm, Alan J. Demers
  * Copyright (c) 1991-1995 by Xerox Corporation.  All rights reserved.
  * Copyright (c) 1996-1999 by Silicon Graphics.  All rights reserved.
  * Copyright (c) 1999 by Hewlett-Packard Company.  All rights reserved.
@@ -706,11 +706,18 @@ scm_get_stack_base ()
     extern int etext;
 #   ifdef SUNOS5
 #      define OS_TYPE "SUNOS5"
-       extern int _etext;
-       extern int _end;
-       extern char * GC_SysVGetDataStart();
-#       define DATASTART (ptr_t)GC_SysVGetDataStart(0x10000, &_etext)
-#      define DATAEND (&_end)
+#      define OS_TYPE "SUNOS5"
+        extern int _etext[], _end[];
+        ptr_t GC_SysVGetDataStart(size_t, ptr_t);
+#       define DATASTART GC_SysVGetDataStart(0x1000, (ptr_t)_etext)
+#       define DATAEND (ptr_t)(_end)
+/*      # define STACKBOTTOM ((ptr_t)(_start)) worked through 2.7,      */
+/*      but reportedly breaks under 2.8.  It appears that the stack     */
+/*      base is a property of the executable, so this should not break  */
+/*      old executables.                                                */
+/*      HEURISTIC2 probably works, but this appears to be preferable.   */
+#       include <sys/vm.h>
+#       define STACKBOTTOM ((ptr_t) USRSTACK)
 #      ifndef USE_MMAP
 #          define USE_MMAP
 #      endif
@@ -797,10 +804,17 @@ scm_get_stack_base ()
 #   endif
 #   ifdef SUNOS5
 #      define OS_TYPE "SUNOS5"
-       extern int etext, _start;
-       extern char * GC_SysVGetDataStart();
-#       define DATASTART GC_SysVGetDataStart(0x1000, &etext)
-#      define STACKBOTTOM ((ptr_t)(&_start))
+        extern int _etext[], _end[];
+        ptr_t GC_SysVGetDataStart(size_t, ptr_t);
+#       define DATASTART GC_SysVGetDataStart(0x1000, (ptr_t)_etext)
+#       define DATAEND (ptr_t)(_end)
+/*      # define STACKBOTTOM ((ptr_t)(_start)) worked through 2.7,      */
+/*      but reportedly breaks under 2.8.  It appears that the stack     */
+/*      base is a property of the executable, so this should not break  */
+/*      old executables.                                                */
+/*      HEURISTIC2 probably works, but this appears to be preferable.   */
+#       include <sys/vm.h>
+#       define STACKBOTTOM ((ptr_t) USRSTACK)
 /** At least in Solaris 2.5, PROC_VDB gives wrong values for dirty bits. */
 /*#    define PROC_VDB*/
 #      define DYNAMIC_LOADING


hooks/post-receive
-- 
GNU Guile



reply via email to

[Prev in Thread] Current Thread [Next in Thread]