diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2012-04-13 23:18:49 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2012-04-13 23:18:49 -0700 |
commit | b948ce8b0244181c9e08d6bfc635ead24b4e9742 (patch) | |
tree | 5f8b392f53b88dc2759cb29af6189910d6660e9a /src/s | |
parent | 5ae255c7e9a2bd1ac594afe99fb24e9a0091d414 (diff) | |
download | emacs-b948ce8b0244181c9e08d6bfc635ead24b4e9742.tar.gz |
Make GC_MAKE_GCPROS_NOOPS the default (Bug#9926).
* lisp.h (GC_MARK_STACK): Default to GC_MAKE_GCPROS_NOOPS.
* s/cygwin.h, s/darwin.h, s/freebsd.h, s/gnu.h, s/irix6-5.h, s/msdos.h:
* s/netbsd.h, s/sol2-6.h:
Remove definition of GC_MARK_STACK, since the default now works.
* s/aix4-2.h, s/hpux10-20.h, s/unixware.h:
Define GC_MARK_STACK to GC_USE_GCPROS_AS_BEFORE, since that's
no longer the default.
* s/gnu-linux.h (GC_MARK_STACK): Adjust to change in default.
Diffstat (limited to 'src/s')
-rw-r--r-- | src/s/aix4-2.h | 4 | ||||
-rw-r--r-- | src/s/cygwin.h | 6 | ||||
-rw-r--r-- | src/s/darwin.h | 3 | ||||
-rw-r--r-- | src/s/freebsd.h | 3 | ||||
-rw-r--r-- | src/s/gnu-linux.h | 3 | ||||
-rw-r--r-- | src/s/gnu.h | 3 | ||||
-rw-r--r-- | src/s/hpux10-20.h | 4 | ||||
-rw-r--r-- | src/s/irix6-5.h | 1 | ||||
-rw-r--r-- | src/s/msdos.h | 1 | ||||
-rw-r--r-- | src/s/netbsd.h | 3 | ||||
-rw-r--r-- | src/s/sol2-6.h | 1 | ||||
-rw-r--r-- | src/s/unixware.h | 4 |
12 files changed, 14 insertions, 22 deletions
diff --git a/src/s/aix4-2.h b/src/s/aix4-2.h index 37b041396f9..354ffda0988 100644 --- a/src/s/aix4-2.h +++ b/src/s/aix4-2.h @@ -75,3 +75,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ Emacs currently calls xrealloc on the results of get_current_dir name, to avoid a crash just use the Emacs implementation for that function. */ #define BROKEN_GET_CURRENT_DIR_NAME 1 + +/* Conservative garbage collection has not been tested, so for now + play it safe and stick with the old-fashioned way of marking. */ +#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE diff --git a/src/s/cygwin.h b/src/s/cygwin.h index f8c656e8ebc..9310890351e 100644 --- a/src/s/cygwin.h +++ b/src/s/cygwin.h @@ -82,12 +82,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define HAVE_SOCKETS -/* This should work (at least when compiling with gcc). But I have no way - or intention to verify or even test it. If you encounter a problem with - it, feel free to change this setting, but please add a comment here about - why it needed to be changed. */ -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS - /* Emacs supplies its own malloc, but glib (part of Gtk+) calls memalign and on Cygwin, that becomes the Cygwin-supplied memalign. As malloc is not the Cygwin malloc, the Cygwin memalign always diff --git a/src/s/darwin.h b/src/s/darwin.h index 9ac9e91fd9d..7c8e26f46cc 100644 --- a/src/s/darwin.h +++ b/src/s/darwin.h @@ -145,6 +145,3 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ It is already a controlling terminal of subprocess, because we did ioctl TIOCSCTTY. */ #define DONT_REOPEN_PTY - -/* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method for marking the stack. */ -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS diff --git a/src/s/freebsd.h b/src/s/freebsd.h index c74605fe366..05be07695cb 100644 --- a/src/s/freebsd.h +++ b/src/s/freebsd.h @@ -58,6 +58,3 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ /* Tell that garbage collector that setjmp is known to save all registers relevant for conservative garbage collection in the jmp_buf. */ #define GC_SETJMP_WORKS 1 - -/* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method for marking the stack. */ -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS diff --git a/src/s/gnu-linux.h b/src/s/gnu-linux.h index c1233c0e6ce..d04ea33068a 100644 --- a/src/s/gnu-linux.h +++ b/src/s/gnu-linux.h @@ -145,7 +145,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ || defined __arm__ || defined __powerpc__ || defined __amd64__ \ || defined __ia64__ || defined __sh__ #define GC_SETJMP_WORKS 1 -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS #ifdef __ia64__ #define GC_MARK_SECONDARY_STACK() \ do { \ @@ -155,4 +154,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ __builtin_ia64_bsp ()); \ } while (0) #endif +#else +#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE #endif diff --git a/src/s/gnu.h b/src/s/gnu.h index 37aaa1357cc..a09e0e824c9 100644 --- a/src/s/gnu.h +++ b/src/s/gnu.h @@ -45,6 +45,3 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #endif /* emacs */ #define POSIX_SIGNALS 1 - -/* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method for marking the stack. */ -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS diff --git a/src/s/hpux10-20.h b/src/s/hpux10-20.h index becb5d3464e..3e25b1bd0d9 100644 --- a/src/s/hpux10-20.h +++ b/src/s/hpux10-20.h @@ -100,6 +100,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ header sections which lose when `static' is defined away, as it is on HP-UX. (You get duplicate symbol errors on linking). */ #undef _FILE_OFFSET_BITS + +/* Conservative garbage collection has not been tested, so for now + play it safe and stick with the old-fashioned way of marking. */ +#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE /* The data segment on this machine always starts at address 0x40000000. */ #define DATA_SEG_BITS 0x40000000 diff --git a/src/s/irix6-5.h b/src/s/irix6-5.h index 32374498fe7..e5d90c1bd5d 100644 --- a/src/s/irix6-5.h +++ b/src/s/irix6-5.h @@ -95,7 +95,6 @@ char *_getpty(); /* Tested on Irix 6.5. SCM worked on earlier versions. */ #define GC_SETJMP_WORKS 1 -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS /* DATA_SEG_BITS forces extra bits to be or'd in with any pointers which diff --git a/src/s/msdos.h b/src/s/msdos.h index cde24147c57..add2902d5f3 100644 --- a/src/s/msdos.h +++ b/src/s/msdos.h @@ -137,4 +137,3 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */ /* Tell the garbage collector that setjmp is known to save all registers relevant for conservative garbage collection in the jmp_buf. */ #define GC_SETJMP_WORKS 1 -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS diff --git a/src/s/netbsd.h b/src/s/netbsd.h index f25023fb615..ce3b2afa1bb 100644 --- a/src/s/netbsd.h +++ b/src/s/netbsd.h @@ -38,6 +38,3 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ /* Tell that garbage collector that setjmp is known to save all registers relevant for conservative garbage collection in the jmp_buf. */ #define GC_SETJMP_WORKS 1 - -/* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method. */ -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS diff --git a/src/s/sol2-6.h b/src/s/sol2-6.h index a9fefcb1992..bb7a9859b7d 100644 --- a/src/s/sol2-6.h +++ b/src/s/sol2-6.h @@ -59,4 +59,3 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ } #define GC_SETJMP_WORKS 1 -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS diff --git a/src/s/unixware.h b/src/s/unixware.h index 22c396a060e..63c36ee40c2 100644 --- a/src/s/unixware.h +++ b/src/s/unixware.h @@ -50,3 +50,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ } #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->__ptr - (FILE)->__base) + +/* Conservative garbage collection has not been tested, so for now + play it safe and stick with the old-fashioned way of marking. */ +#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE |