Commit 882cf227 authored by Glenn Morris's avatar Glenn Morris

Move DATA_START, DATA_SEG_BITS from src/s to configure

* configure.ac (DATA_START, DATA_SEG_BITS): Move here from src/s.

* src/s/irix6-5.h (DATA_START, DATA_SEG_BITS):
* src/s/hpux10-20.h (DATA_SEG_BITS, DATA_START):
* src/s/gnu.h (DATA_START): Move definitions to configure.
parent c293e30c
2012-07-10 Glenn Morris <rgm@gnu.org>
* configure.ac (DATA_START, DATA_SEG_BITS): Move here from src/s.
2012-07-09 Andreas Schwab <schwab@linux-m68k.org> 2012-07-09 Andreas Schwab <schwab@linux-m68k.org>
* configure.ac (PNG_DEPSTRUCT): Define this instead of * configure.ac (PNG_DEPSTRUCT): Define this instead of
......
...@@ -3145,6 +3145,32 @@ case $opsys in ...@@ -3145,6 +3145,32 @@ case $opsys in
;; ;;
esac esac
dnl Used in vm-limit.c
AH_TEMPLATE(DATA_START, [Address of the start of the data segment.])
dnl Used in lisp.h, emacs.c, mem-limits.h
dnl NEWS.18 describes this as "a number which contains
dnl the high bits to be inclusive or'ed with pointers that are unpacked."
AH_TEMPLATE(DATA_SEG_BITS, [Extra bits to be or'd in with any pointers
stored in a Lisp_Object.])
dnl if Emacs uses fewer than 32 bits for the value field of a LISP_OBJECT.
case $opsys in
gnu)
dnl libc defines data_start.
AC_DEFINE(DATA_START, [({ extern int data_start; (char *) &data_start; })])
;;
hpux*)
dnl The data segment on this machine always starts at address 0x40000000.
AC_DEFINE(DATA_START, [0x40000000])
AC_DEFINE(DATA_SEG_BITS, [0x40000000])
;;
irix6-5)
AC_DEFINE(DATA_START, [0x10000000])
AC_DEFINE(DATA_SEG_BITS, [0x10000000])
;;
esac
case $opsys in case $opsys in
gnu-kfreebsd) opsysfile="s/gnu-linux.h" ;; gnu-kfreebsd) opsysfile="s/gnu-linux.h" ;;
......
...@@ -11,6 +11,10 @@ ...@@ -11,6 +11,10 @@
2012-07-10 Glenn Morris <rgm@gnu.org> 2012-07-10 Glenn Morris <rgm@gnu.org>
* s/irix6-5.h (DATA_START, DATA_SEG_BITS):
* s/hpux10-20.h (DATA_SEG_BITS, DATA_START):
* s/gnu.h (DATA_START): Move definitions to configure.
* s/irix6-5.h (SETUP_SLAVE_PTY, PTY_NAME_SPRINTF): Drop ifdef guards. * s/irix6-5.h (SETUP_SLAVE_PTY, PTY_NAME_SPRINTF): Drop ifdef guards.
We include usg5-4-common.h, which defines them both. We include usg5-4-common.h, which defines them both.
......
...@@ -21,9 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -21,9 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Get most of the stuff from bsd-common */ /* Get most of the stuff from bsd-common */
#include "bsd-common.h" #include "bsd-common.h"
/* libc defines data_start. */
#define DATA_START ({ extern int data_start; (char *) &data_start; })
/* It would be harmless to drop the ifdef emacs test. */ /* It would be harmless to drop the ifdef emacs test. */
#ifdef emacs #ifdef emacs
#include <stdio.h> /* Get the definition of _IO_STDIO_H. */ #include <stdio.h> /* Get the definition of _IO_STDIO_H. */
......
...@@ -79,8 +79,3 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -79,8 +79,3 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Conservative garbage collection has not been tested, so for now /* Conservative garbage collection has not been tested, so for now
play it safe and stick with the old-fashioned way of marking. */ play it safe and stick with the old-fashioned way of marking. */
#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE #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
#define DATA_START 0x40000000
...@@ -82,10 +82,3 @@ char *_getpty(); ...@@ -82,10 +82,3 @@ char *_getpty();
/* Tested on Irix 6.5. SCM worked on earlier versions. */ /* Tested on Irix 6.5. SCM worked on earlier versions. */
#define GC_SETJMP_WORKS 1 #define GC_SETJMP_WORKS 1
/* DATA_SEG_BITS forces extra bits to be or'd in with any pointers which
were stored in a Lisp_Object (as Emacs uses fewer than 32 bits for
the value field of a LISP_OBJECT). */
#define DATA_START 0x10000000
#define DATA_SEG_BITS 0x10000000
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment