summaryrefslogtreecommitdiff
path: root/boehm-gc/include
diff options
context:
space:
mode:
authorAndreas Tobler <a.tobler@schweiz.ch>2005-06-15 23:25:54 +0200
committerAndreas Tobler <andreast@gcc.gnu.org>2005-06-15 23:25:54 +0200
commit9af9e7faa255951a15773cd3024caf98f3bcb745 (patch)
tree910e51d1bc5ce69126d0ea26f17ffb936cef7e59 /boehm-gc/include
parent2decfada04c98ab3b9764fd39120bad1325443d2 (diff)
downloadgcc-9af9e7faa255951a15773cd3024caf98f3bcb745.tar.gz
os_dep.c: Add FreeBSD/PowerPC bits.
2005-06-15 Andreas Tobler <a.tobler@schweiz.ch> * os_dep.c: Add FreeBSD/PowerPC bits. (GC_SysVGetDataStart): Likewise. * include/private/gcconfig.h: Likewise. From-SVN: r100997
Diffstat (limited to 'boehm-gc/include')
-rw-r--r--boehm-gc/include/private/gcconfig.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/boehm-gc/include/private/gcconfig.h b/boehm-gc/include/private/gcconfig.h
index 05b3832c176..c5077e6076f 100644
--- a/boehm-gc/include/private/gcconfig.h
+++ b/boehm-gc/include/private/gcconfig.h
@@ -239,6 +239,10 @@
# define POWERPC
# define mach_type_known
# endif
+# if defined(FREEBSD) && (defined(powerpc) || defined(__powerpc__))
+# define POWERPC
+# define mach_type_known
+# endif
# if defined(LINUX) && defined(__mc68000__)
# define M68K
# define mach_type_known
@@ -798,6 +802,22 @@
should be looked into some more */
# define NO_PTHREAD_TRYLOCK
# endif
+# ifdef FREEBSD
+# define ALIGNMENT 4
+# define OS_TYPE "FREEBSD"
+# ifndef GC_FREEBSD_THREADS
+# define MPROTECT_VDB
+# endif
+# define SIG_SUSPEND SIGUSR1
+# define SIG_THR_RESTART SIGUSR2
+# define FREEBSD_STACKBOTTOM
+# ifdef __ELF__
+# define DYNAMIC_LOADING
+# endif
+ extern char etext[];
+ extern char * GC_FreeBSDGetDataStart();
+# define DATASTART GC_FreeBSDGetDataStart(0x1000, &etext)
+# endif
# ifdef NETBSD
# define ALIGNMENT 4
# define OS_TYPE "NETBSD"