summaryrefslogtreecommitdiff
path: root/lang/guile/patches/patch-ae
diff options
context:
space:
mode:
Diffstat (limited to 'lang/guile/patches/patch-ae')
-rw-r--r--lang/guile/patches/patch-ae54
1 files changed, 52 insertions, 2 deletions
diff --git a/lang/guile/patches/patch-ae b/lang/guile/patches/patch-ae
index 1d96f6d9060..7186b5f627a 100644
--- a/lang/guile/patches/patch-ae
+++ b/lang/guile/patches/patch-ae
@@ -1,6 +1,6 @@
-$NetBSD: patch-ae,v 1.8 2003/12/14 17:14:40 wiz Exp $
+$NetBSD: patch-ae,v 1.9 2004/03/16 00:46:39 dmcmahill Exp $
---- libguile/gc_os_dep.c.orig 2003-04-16 22:16:21.000000000 +0200
+--- libguile/gc_os_dep.c.orig Wed Apr 16 20:16:21 2003
+++ libguile/gc_os_dep.c
@@ -98,12 +98,27 @@ typedef int GC_bool;
# define NETBSD
@@ -41,3 +41,53 @@ $NetBSD: patch-ae,v 1.8 2003/12/14 17:14:40 wiz Exp $
# define OSF1 /* a.k.a Digital Unix */
# endif
# define mach_type_known
+@@ -279,6 +294,11 @@ typedef int GC_bool;
+ # define NETBSD
+ # define mach_type_known
+ # endif
++# if defined(__NetBSD__) && defined(__x86_64__)
++# define X86_64
++# define NETBSD
++# define mach_type_known
++# endif
+ # if defined(bsdi) && defined(i386)
+ # define I386
+ # define BSDI
+@@ -412,12 +432,12 @@ typedef int GC_bool;
+ /*
+ * For each architecture and OS, the following need to be defined:
+ *
+- * CPP_WORD_SZ is a simple integer constant representing the word size.
++ * CPP_WORDSZ is a simple integer constant representing the word size.
+ * in bits. We assume byte addressibility, where a byte has 8 bits.
+- * We also assume CPP_WORD_SZ is either 32 or 64.
++ * We also assume CPP_WORDSZ is either 32 or 64.
+ * (We care about the length of pointers, not hardware
+ * bus widths. Thus a 64 bit processor with a C compiler that uses
+- * 32 bit pointers should use CPP_WORD_SZ of 32, not 64. Default is 32.)
++ * 32 bit pointers should use CPP_WORDSZ of 32, not 64. Default is 32.)
+ *
+ * MACH_TYPE is a string representation of the machine type.
+ * OS_TYPE is analogous for the OS.
+@@ -961,6 +981,21 @@ typedef int GC_bool;
+ # define OS_TYPE "GNU"
+ # endif
+ # endif
++
++# ifdef X86_64
++# define MACH_TYPE "X86_64"
++# define ALIGNMENT 8
++# define ALIGN_DOUBLE
++# define CPP_WORDSZ 64
++# ifdef NETBSD
++# define OS_TYPE "NETBSD"
++# endif
++# if defined(NETBSD)
++# define HEURISTIC2
++ extern char etext;
++# define DATASTART ((ptr_t)(&etext))
++# endif
++# endif
+
+ # ifdef NS32K
+ # define MACH_TYPE "NS32K"