Commit 6e5cb96f authored by Dan Nicolaescu's avatar Dan Nicolaescu
Browse files

* lisp.h:

* w32heap.c:
* emacs.c:
* alloc.c: Replace all references of NO_UNION_TYPE with
USE_LISP_UNION_TYPE.

* m/xtensa.h (NO_UNION_TYPE):
* m/vax.h (NO_UNION_TYPE):
* m/template.h (NO_UNION_TYPE):
* m/sparc.h (NO_UNION_TYPE):
* m/mips.h (NO_UNION_TYPE):
* m/macppc.h (NO_UNION_TYPE):
* m/m68k.h (NO_UNION_TYPE):
* m/iris4d.h (NO_UNION_TYPE):
* m/intel386.h (NO_UNION_TYPE):
* m/ibms390x.h (NO_UNION_TYPE):
* m/ibms390.h (NO_UNION_TYPE):
* m/ibmrs6000.h (NO_UNION_TYPE):
* m/ia64.h (NO_UNION_TYPE):
* m/hp800.h (NO_UNION_TYPE):
* m/arm.h (NO_UNION_TYPE):
* m/amdx86-64.h (NO_UNION_TYPE):
* m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
defining it the same.
parent f4f745d9
...@@ -18,6 +18,7 @@ WINDOWSNT Compiling the native MS-Windows (W32) port. ...@@ -18,6 +18,7 @@ WINDOWSNT Compiling the native MS-Windows (W32) port.
__MINGW32__ Compiling the W32 port with the MinGW port of GCC. __MINGW32__ Compiling the W32 port with the MinGW port of GCC.
_MSC_VER Compiling the W32 port with the Microsoft C compiler. _MSC_VER Compiling the W32 port with the Microsoft C compiler.
IRIX6_5 Compiling on Irix-6.5 IRIX6_5 Compiling on Irix-6.5
USE_LISP_UNION_TYPE Define it in lisp.h to make Lisp_Object be a union type instead of the default int.
** Distinguishing GUIs ** ** Distinguishing GUIs **
...@@ -281,7 +282,6 @@ NO_SHARED_LIBS ...@@ -281,7 +282,6 @@ NO_SHARED_LIBS
NO_SIOCTL_H NO_SIOCTL_H
NO_SOCK_SIGIO NO_SOCK_SIGIO
NO_TERMIO NO_TERMIO
NO_UNION_TYPE
NSIG NSIG
NSIG_MINIMUM NSIG_MINIMUM
NULL NULL
......
...@@ -3757,8 +3757,8 @@ If the code is incorrect, your compiler has this problem. ...@@ -3757,8 +3757,8 @@ If the code is incorrect, your compiler has this problem.
In the XCONS, etc., macros in lisp.h you must replace (a).u.val with In the XCONS, etc., macros in lisp.h you must replace (a).u.val with
((a).u.val + coercedummy) where coercedummy is declared as int. ((a).u.val + coercedummy) where coercedummy is declared as int.
This problem will not happen if the m-...h file for your type This problem will only happen if USE_LISP_UNION_TYPE is manually
of machine defines NO_UNION_TYPE. That is the recommended setting now. defined in lisp.h.
*** C compilers lose on returning unions. *** C compilers lose on returning unions.
...@@ -3766,8 +3766,8 @@ I hear that some C compilers cannot handle returning a union type. ...@@ -3766,8 +3766,8 @@ I hear that some C compilers cannot handle returning a union type.
Most of the functions in GNU Emacs return type Lisp_Object, which is Most of the functions in GNU Emacs return type Lisp_Object, which is
defined as a union on some rare architectures. defined as a union on some rare architectures.
This problem will not happen if the m-...h file for your type This problem will only happen if USE_LISP_UNION_TYPE is manually
of machine defines NO_UNION_TYPE. defined in lisp.h.
This file is part of GNU Emacs. This file is part of GNU Emacs.
......
2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
* lisp.h:
* w32heap.c:
* emacs.c:
* alloc.c: Replace all references of NO_UNION_TYPE with
USE_LISP_UNION_TYPE.
* m/xtensa.h (NO_UNION_TYPE):
* m/vax.h (NO_UNION_TYPE):
* m/template.h (NO_UNION_TYPE):
* m/sparc.h (NO_UNION_TYPE):
* m/mips.h (NO_UNION_TYPE):
* m/macppc.h (NO_UNION_TYPE):
* m/m68k.h (NO_UNION_TYPE):
* m/iris4d.h (NO_UNION_TYPE):
* m/intel386.h (NO_UNION_TYPE):
* m/ibms390x.h (NO_UNION_TYPE):
* m/ibms390.h (NO_UNION_TYPE):
* m/ibmrs6000.h (NO_UNION_TYPE):
* m/ia64.h (NO_UNION_TYPE):
* m/hp800.h (NO_UNION_TYPE):
* m/arm.h (NO_UNION_TYPE):
* m/amdx86-64.h (NO_UNION_TYPE):
* m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
defining it the same.
2008-07-10 Chong Yidong <cyd@stupidchicken.com> 2008-07-10 Chong Yidong <cyd@stupidchicken.com>
* xdisp.c (move_it_to): Backtrack if past the edge of a wrapped * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped
......
...@@ -1541,7 +1541,7 @@ mark_interval_tree (tree) ...@@ -1541,7 +1541,7 @@ mark_interval_tree (tree)
} while (0) } while (0)
/* Number support. If NO_UNION_TYPE isn't in effect, we /* Number support. If USE_LISP_UNION_TYPE is in effect, we
can't create number objects in macros. */ can't create number objects in macros. */
#ifndef make_number #ifndef make_number
Lisp_Object Lisp_Object
......
...@@ -98,7 +98,7 @@ int gdb_use_lsb = 1; ...@@ -98,7 +98,7 @@ int gdb_use_lsb = 1;
#else #else
int gdb_use_lsb = 0; int gdb_use_lsb = 0;
#endif #endif
#ifdef NO_UNION_TYPE #ifndef USE_LISP_UNION_TYPE
int gdb_use_union = 0; int gdb_use_union = 0;
#else #else
int gdb_use_union = 1; int gdb_use_union = 1;
......
...@@ -129,8 +129,8 @@ extern void die P_((const char *, const char *, int)) NO_RETURN; ...@@ -129,8 +129,8 @@ extern void die P_((const char *, const char *, int)) NO_RETURN;
/***** Select the tagging scheme. *****/ /***** Select the tagging scheme. *****/
/* There are basically two options that control the tagging scheme: /* There are basically two options that control the tagging scheme:
- NO_UNION_TYPE says that Lisp_Object should be an integer instead - USE_LISP_UNION_TYPE says that Lisp_Object should be a union instead
of a union. of an integer.
- USE_LSB_TAG means that we can assume the least 3 bits of pointers are - USE_LSB_TAG means that we can assume the least 3 bits of pointers are
always 0, and we can thus use them to hold tag bits, without always 0, and we can thus use them to hold tag bits, without
restricting our addressing space. restricting our addressing space.
...@@ -163,7 +163,7 @@ extern void die P_((const char *, const char *, int)) NO_RETURN; ...@@ -163,7 +163,7 @@ extern void die P_((const char *, const char *, int)) NO_RETURN;
/* We also need to be able to specify mult-of-8 alignment on static vars. */ /* We also need to be able to specify mult-of-8 alignment on static vars. */
# if defined DECL_ALIGN # if defined DECL_ALIGN
/* We currently do not support USE_LSB_TAG with a union Lisp_Object. */ /* We currently do not support USE_LSB_TAG with a union Lisp_Object. */
# if defined NO_UNION_TYPE # if defined USE_LISP_UNION_TYPE
# define USE_LSB_TAG # define USE_LSB_TAG
# endif # endif
# endif # endif
...@@ -246,7 +246,7 @@ enum Lisp_Misc_Type ...@@ -246,7 +246,7 @@ enum Lisp_Misc_Type
#define VALBITS (BITS_PER_EMACS_INT - GCTYPEBITS) #define VALBITS (BITS_PER_EMACS_INT - GCTYPEBITS)
#endif #endif
#ifndef NO_UNION_TYPE #ifdef USE_LISP_UNION_TYPE
#ifndef WORDS_BIG_ENDIAN #ifndef WORDS_BIG_ENDIAN
...@@ -310,13 +310,13 @@ LISP_MAKE_RVALUE (Lisp_Object o) ...@@ -310,13 +310,13 @@ LISP_MAKE_RVALUE (Lisp_Object o)
#define LISP_MAKE_RVALUE(o) (o) #define LISP_MAKE_RVALUE(o) (o)
#endif #endif
#else /* NO_UNION_TYPE */ #else /* USE_LISP_UNION_TYPE */
/* If union type is not wanted, define Lisp_Object as just a number. */ /* If union type is not wanted, define Lisp_Object as just a number. */
typedef EMACS_INT Lisp_Object; typedef EMACS_INT Lisp_Object;
#define LISP_MAKE_RVALUE(o) (0+(o)) #define LISP_MAKE_RVALUE(o) (0+(o))
#endif /* NO_UNION_TYPE */ #endif /* USE_LISP_UNION_TYPE */
/* In the size word of a vector, this bit means the vector has been marked. */ /* In the size word of a vector, this bit means the vector has been marked. */
...@@ -374,7 +374,7 @@ enum pvec_type ...@@ -374,7 +374,7 @@ enum pvec_type
For example, if tem is a Lisp_Object whose type is Lisp_Cons, For example, if tem is a Lisp_Object whose type is Lisp_Cons,
XCONS (tem) is the struct Lisp_Cons * pointing to the memory for that cons. */ XCONS (tem) is the struct Lisp_Cons * pointing to the memory for that cons. */
#ifdef NO_UNION_TYPE #ifndef USE_LISP_UNION_TYPE
/* Return a perfect hash of the Lisp_Object representation. */ /* Return a perfect hash of the Lisp_Object representation. */
#define XHASH(a) (a) #define XHASH(a) (a)
...@@ -440,7 +440,7 @@ enum pvec_type ...@@ -440,7 +440,7 @@ enum pvec_type
#endif /* not USE_LSB_TAG */ #endif /* not USE_LSB_TAG */
#else /* not NO_UNION_TYPE */ #else /* USE_LISP_UNION_TYPE */
#define XHASH(a) ((a).i) #define XHASH(a) ((a).i)
...@@ -472,7 +472,7 @@ enum pvec_type ...@@ -472,7 +472,7 @@ enum pvec_type
extern Lisp_Object make_number P_ ((EMACS_INT)); extern Lisp_Object make_number P_ ((EMACS_INT));
#endif #endif
#endif /* NO_UNION_TYPE */ #endif /* USE_LISP_UNION_TYPE */
#define EQ(x, y) (XHASH (x) == XHASH (y)) #define EQ(x, y) (XHASH (x) == XHASH (y))
......
...@@ -51,15 +51,11 @@ NOTE-END ...@@ -51,15 +51,11 @@ NOTE-END
/* __alpha defined automatically */ /* __alpha defined automatically */
/* Use type EMACS_INT rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the 24-bit bit field into an int. In other words, if bit fields the 24-bit bit field into an int. In other words, if bit fields
are always unsigned. are always unsigned.
If you use NO_UNION_TYPE, this flag does not matter. */ This flag only matters if you use USE_LISP_UNION_TYPE. */
#define EXPLICIT_SIGN_EXTEND #define EXPLICIT_SIGN_EXTEND
......
...@@ -49,11 +49,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -49,11 +49,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
orion, tahoe, APOLLO and many others */ orion, tahoe, APOLLO and many others */
/* __x86_64 defined automatically. */ /* __x86_64 defined automatically. */
/* Use type int rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define the type to use. */ /* Define the type to use. */
#define EMACS_INT long #define EMACS_INT long
#define EMACS_UINT unsigned long #define EMACS_UINT unsigned long
...@@ -63,7 +58,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -63,7 +58,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
the 24-bit bit field into an int. In other words, if bit fields the 24-bit bit field into an int. In other words, if bit fields
are always unsigned. are always unsigned.
If you use NO_UNION_TYPE, this flag does not matter. */ This flag only matters if you use USE_LISP_UNION_TYPE. */
#define EXPLICIT_SIGN_EXTEND #define EXPLICIT_SIGN_EXTEND
......
...@@ -39,8 +39,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -39,8 +39,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define SIGN_EXTEND_CHAR(c) (((int)(c) << 24) >> 24) #define SIGN_EXTEND_CHAR(c) (((int)(c) << 24) >> 24)
#define NO_UNION_TYPE
#define NO_REMAP #define NO_REMAP
/* arch-tag: 07856f0c-f0c8-4bd8-99af-0b7fa1e5ee42 /* arch-tag: 07856f0c-f0c8-4bd8-99af-0b7fa1e5ee42
......
...@@ -32,16 +32,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -32,16 +32,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define NO_ARG_ARRAY #define NO_ARG_ARRAY
/* Use type int rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the bit field into an int. In other words, if bit fields the bit field into an int. In other words, if bit fields
are always unsigned. are always unsigned.
If you use NO_UNION_TYPE, this flag does not matter. */ This flag only matters if you use USE_LISP_UNION_TYPE. */
#define EXPLICIT_SIGN_EXTEND #define EXPLICIT_SIGN_EXTEND
......
...@@ -39,11 +39,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -39,11 +39,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* __ia64__ defined automatically */ /* __ia64__ defined automatically */
/* Use type EMACS_INT rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define the type to use. */ /* Define the type to use. */
#define EMACS_INT long #define EMACS_INT long
#define EMACS_UINT unsigned long #define EMACS_UINT unsigned long
...@@ -53,7 +48,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -53,7 +48,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
the 24-bit bit field into an int. In other words, if bit fields the 24-bit bit field into an int. In other words, if bit fields
are always unsigned. are always unsigned.
If you use NO_UNION_TYPE, this flag does not matter. */ This flag only matters if you use USE_LISP_UNION_TYPE. */
#define EXPLICIT_SIGN_EXTEND #define EXPLICIT_SIGN_EXTEND
......
...@@ -41,11 +41,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -41,11 +41,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define IBMR2AIX #define IBMR2AIX
/* Use type int rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define CANNOT_DUMP on machines where unexec does not work. /* Define CANNOT_DUMP on machines where unexec does not work.
Then the function dump-emacs will not be defined Then the function dump-emacs will not be defined
and temacs will do (load "loadup") automatically unless told otherwise. */ and temacs will do (load "loadup") automatically unless told otherwise. */
......
...@@ -32,16 +32,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -32,16 +32,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define NO_ARG_ARRAY #define NO_ARG_ARRAY
/* Use type int rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the 24-bit bit field into an int. In other words, if bit fields the 24-bit bit field into an int. In other words, if bit fields
are always unsigned. are always unsigned.
If you use NO_UNION_TYPE, this flag does not matter. */ This flag only matters if you use USE_LISP_UNION_TYPE. */
#define EXPLICIT_SIGN_EXTEND #define EXPLICIT_SIGN_EXTEND
......
...@@ -45,16 +45,6 @@ NOTE-END */ ...@@ -45,16 +45,6 @@ NOTE-END */
#define NO_ARG_ARRAY #define NO_ARG_ARRAY
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically:
Ones defined so far include vax, m68000, ns16000, pyramid,
orion, tahoe, APOLLO and many others */
/* Use type int rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define the type to use. */ /* Define the type to use. */
#define EMACS_INT long #define EMACS_INT long
#define EMACS_UINT unsigned long #define EMACS_UINT unsigned long
...@@ -64,7 +54,7 @@ NOTE-END */ ...@@ -64,7 +54,7 @@ NOTE-END */
the 24-bit bit field into an int. In other words, if bit fields the 24-bit bit field into an int. In other words, if bit fields
are always unsigned. are always unsigned.
If you use NO_UNION_TYPE, this flag does not matter. */ This flag only matters if you use USE_LISP_UNION_TYPE. */
#undef EXPLICIT_SIGN_EXTEND #undef EXPLICIT_SIGN_EXTEND
......
...@@ -57,10 +57,6 @@ NOTE-END */ ...@@ -57,10 +57,6 @@ NOTE-END */
/* #define NO_ARG_ARRAY */ /* #define NO_ARG_ARRAY */
/* Use type int rather than a union, to represent Lisp_Object */
#define NO_UNION_TYPE
/* crt0.c, if it is used, should use the i386-bsd style of entry. /* crt0.c, if it is used, should use the i386-bsd style of entry.
with no extra dummy args. On USG and XENIX, with no extra dummy args. On USG and XENIX,
NO_REMAP says this isn't used. */ NO_REMAP says this isn't used. */
......
...@@ -41,16 +41,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -41,16 +41,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define IRIS_4D #define IRIS_4D
#endif #endif
/* Use type int rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the bit field into an int. In other words, if bit fields the bit field into an int. In other words, if bit fields
are always unsigned. are always unsigned.
If you use NO_UNION_TYPE, this flag does not matter. */ This flag only matters if you use USE_LISP_UNION_TYPE. */
#define EXPLICIT_SIGN_EXTEND #define EXPLICIT_SIGN_EXTEND
......
...@@ -39,16 +39,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -39,16 +39,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define m68k #define m68k
#endif #endif
/* Use type int rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the 24-bit bit field into an int. In other words, if bit fields the 24-bit bit field into an int. In other words, if bit fields
are always unsigned. are always unsigned.
If you use NO_UNION_TYPE, this flag does not matter. */ This flag only matters if you use USE_LISP_UNION_TYPE. */
#define EXPLICIT_SIGN_EXTEND #define EXPLICIT_SIGN_EXTEND
......
...@@ -32,11 +32,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -32,11 +32,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
Ones defined so far include vax, m68000, ns16000, pyramid, Ones defined so far include vax, m68000, ns16000, pyramid,
orion, tahoe, APOLLO and many others */ orion, tahoe, APOLLO and many others */
/* Use type EMACS_INT rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Data type of load average, as read out of kmem. */ /* Data type of load average, as read out of kmem. */
#define LOAD_AVE_TYPE long #define LOAD_AVE_TYPE long
......
...@@ -52,16 +52,11 @@ NOTE-END */ ...@@ -52,16 +52,11 @@ NOTE-END */
# define mips # define mips
#endif #endif
/* Use type int rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the 24-bit bit field into an int. In other words, if bit fields the 24-bit bit field into an int. In other words, if bit fields
are always unsigned. are always unsigned.
If you use NO_UNION_TYPE, this flag does not matter. */ This flag only matters if you use USE_LISP_UNION_TYPE. */
#define EXPLICIT_SIGN_EXTEND #define EXPLICIT_SIGN_EXTEND
......
...@@ -38,11 +38,8 @@ NOTE-END */ ...@@ -38,11 +38,8 @@ NOTE-END */
/* __sparc__ is defined by the compiler by default. */ /* __sparc__ is defined by the compiler by default. */
/* Use type int rather than a union, to represent Lisp_Object */ /* XINT must explicitly sign-extend
This flag only matters if you use USE_LISP_UNION_TYPE. */
#define NO_UNION_TYPE
/* XINT must explicitly sign-extend */
#define EXPLICIT_SIGN_EXTEND #define EXPLICIT_SIGN_EXTEND
......
...@@ -36,16 +36,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -36,16 +36,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
does not define it automatically. does not define it automatically.
Ones defined so far include m68k and many others */ Ones defined so far include m68k and many others */
/* Use type int rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the 24-bit bit field into an int. In other words, if bit fields the 24-bit bit field into an int. In other words, if bit fields
are always unsigned. are always unsigned.
If you use NO_UNION_TYPE, this flag does not matter. */ This flag only matters if you use USE_LISP_UNION_TYPE. */
#define EXPLICIT_SIGN_EXTEND #define EXPLICIT_SIGN_EXTEND
......
...@@ -57,10 +57,6 @@ NOTE-END */ ...@@ -57,10 +57,6 @@ NOTE-END */
/* #define vax -- appears to be done automatically */ /* #define vax -- appears to be done automatically */
/* Use type int rather than a union, to represent Lisp_Object */
#define NO_UNION_TYPE
/* crt0.c should use the vax-bsd style of entry, with no dummy args. */ /* crt0.c should use the vax-bsd style of entry, with no dummy args. */
#define CRT0_DUMMIES #define CRT0_DUMMIES
......
...@@ -3,7 +3,6 @@ ...@@ -3,7 +3,6 @@
Add a license notice if this grows to > 10 lines of code. */ Add a license notice if this grows to > 10 lines of code. */
#define NO_ARG_ARRAY #define NO_ARG_ARRAY
#define NO_UNION_TYPE
#ifdef __LITTLE_ENDIAN #ifdef __LITTLE_ENDIAN
#undef WORDS_BIG_ENDIAN #undef WORDS_BIG_ENDIAN
......
...@@ -240,7 +240,7 @@ init_heap () ...@@ -240,7 +240,7 @@ init_heap ()
exit (1); exit (1);
} }
#if defined (NO_UNION_TYPE) && !defined (USE_LSB_TAG) #if !defined (USE_LISP_UNION_TYPE) && !defined (USE_LSB_TAG)
/* Ensure that the addresses don't use the upper tag bits since /* Ensure that the addresses don't use the upper tag bits since
the Lisp type goes there. */ the Lisp type goes there. */
if (((unsigned long) data_region_base & ~VALMASK) != 0) if (((unsigned long) data_region_base & ~VALMASK) != 0)
......
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