From 4ba3c847960b8ca132c2a8fbd3d68b6e197e1c80 Mon Sep 17 00:00:00 2001
From: green <green@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Sat, 2 Oct 1999 15:50:57 +0000
Subject: [PATCH] I am committing the following changes to enable the picojava
 port.  I will also forward them to Boehm.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@29767 138bc75d-0d04-0410-961f-82ee72b054a4
---
 boehm-gc/ChangeLog  |  5 +++++
 boehm-gc/config.h   | 11 +++++++++++
 boehm-gc/mach_dep.c |  9 ++++++++-
 3 files changed, 24 insertions(+), 1 deletion(-)

diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog
index 58ec68574be2..fcb5d49c7fc7 100644
--- a/boehm-gc/ChangeLog
+++ b/boehm-gc/ChangeLog
@@ -1,3 +1,8 @@
+1999-09-29  Steve Chamberlain  <sac@pobox.com>
+
+	* config.h: Added picoJava target.
+	* mach_dep.h (GC_push_regs):  New code for picoJava.
+
 1999-09-28  Tom Tromey  <tromey@cygnus.com>
 
 	* aclocal.m4, configure: Rebuilt.
diff --git a/boehm-gc/config.h b/boehm-gc/config.h
index 7791b6cacb98..d3370ba6c144 100644
--- a/boehm-gc/config.h
+++ b/boehm-gc/config.h
@@ -235,6 +235,10 @@
 #   endif
 #   define mach_type_known
 # endif
+# if defined(__pj__)
+#   define PJ
+#   define mach_type_known
+# endif
 
 /* Feel free to add more clauses here */
 
@@ -985,4 +989,11 @@
 				/* include assembly code to do it well.	*/
 # endif
 
+# if defined(PJ)
+#   define ALIGNMENT 4
+    extern int _etext;
+#   define DATASTART ((ptr_t)(&_etext))
+#   define HEURISTIC1
+# endif
+
 # endif
diff --git a/boehm-gc/mach_dep.c b/boehm-gc/mach_dep.c
index 09a79883fdf9..e39880b46ac5 100644
--- a/boehm-gc/mach_dep.c
+++ b/boehm-gc/mach_dep.c
@@ -327,12 +327,19 @@ void GC_push_regs()
 	    GC_push_all_stack((ptr_t)regs, lim);
 	}
 #     endif
+#     if defined(PJ)
+	{
+	    register int * sp asm ("optop");
+	    extern int *__libc_stack_end;
 
+	    GC_push_all_stack (sp, __libc_stack_end);
+        }
+#     endif
       /* other machines... */
 #       if !(defined M68K) && !(defined VAX) && !(defined RT) 
 #	if !(defined SPARC) && !(defined I386) && !(defined NS32K)
 #	if !defined(HP_PA) && !defined(M88K) && !defined(POWERPC)
-#	if !defined(UTS4)
+#	if !defined(UTS4) && !defined(PJ)
 	    --> bad news <--
 # 	endif
 #       endif
-- 
GitLab