summaryrefslogtreecommitdiff
path: root/editors/emacs/patches/patch-bl
diff options
context:
space:
mode:
Diffstat (limited to 'editors/emacs/patches/patch-bl')
-rw-r--r--editors/emacs/patches/patch-bl40
1 files changed, 40 insertions, 0 deletions
diff --git a/editors/emacs/patches/patch-bl b/editors/emacs/patches/patch-bl
new file mode 100644
index 00000000000..e5e11f581d5
--- /dev/null
+++ b/editors/emacs/patches/patch-bl
@@ -0,0 +1,40 @@
+$NetBSD: patch-bl,v 1.1 2000/09/26 21:42:36 eeh Exp $
+
+--- ./src/m/sparc.h.orig Sat Sep 6 11:51:04 1997
++++ ./src/m/sparc.h Tue Sep 26 12:36:05 2000
+@@ -117,3 +117,35 @@
+ #define A_TEXT_SEEK(HDR) (N_TXTOFF (hdr) + sizeof (hdr))
+
+ #endif /* not __NetBSD__ and not __linux__ and not __OpenBSD__ */
++
++#ifdef __arch64__ /* GCC, 64-bit ABI. */
++#define EMACS_INT long
++#define BITS_PER_LONG 64
++#define BITS_PER_EMACS_INT BITS_PER_LONG
++#define EMACS_UINT unsigned long
++#define SPECIAL_EMACS_INT
++
++/* On the 64 bit architecture, we can use 60 bits for addresses */
++
++#define VALBITS 60
++
++/* This definition of MARKBIT is necessary because of the comparison of
++ ARRAY_MARK_FLAG and MARKBIT in an #if in lisp.h, which cpp doesn't like. */
++
++#define MARKBIT 0x8000000000000000L
++
++/* Define XINT and XUINT so that they can take arguments of type int */
++
++#define XINT(a) (((long) (a) << (BITS_PER_LONG - VALBITS)) >> (BITS_PER_LONG - VALBITS))
++#define XUINT(a) ((long) (a) & VALMASK)
++
++/* Define XPNTR to avoid or'ing with DATA_SEG_BITS */
++
++#define XPNTR(a) XUINT (a)
++
++#define PNTR_COMPARISON_TYPE unsigned long
++#ifndef _LP64
++#define _LP64 /* Done on Alpha -- not sure if it
++ should be here. -- fx */
++#endif
++#endif