configure.in: Update boehm-gc include dir for new GC version.
* configure.in: Update boehm-gc include dir for new GC version. * configure: Rebuilt. * exception.cc: Only include <gc.h>. Remove TRUE/FALSE hacks and extern "C" wrapper. * boehm.cc: Update includes for new GC version. MAKE_PROC is now GC_MAKE_PROC. mark_proc is now GC_mark_proc. * posix-threads.cc: Only include <gc.h>. Don't need to wrap with extern "C". From-SVN: r42380
This commit is contained in:
parent
9110a741e3
commit
1f4eb17d51
9 changed files with 313 additions and 324 deletions
|
@ -1,3 +1,14 @@
|
||||||
|
2001-05-21 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
|
||||||
|
|
||||||
|
* configure.in: Update boehm-gc include dir for new GC version.
|
||||||
|
* configure: Rebuilt.
|
||||||
|
* exception.cc: Only include <gc.h>. Remove TRUE/FALSE hacks and
|
||||||
|
extern "C" wrapper.
|
||||||
|
* boehm.cc: Update includes for new GC version. MAKE_PROC is now
|
||||||
|
GC_MAKE_PROC. mark_proc is now GC_mark_proc.
|
||||||
|
* posix-threads.cc: Only include <gc.h>. Don't need to wrap with
|
||||||
|
extern "C".
|
||||||
|
|
||||||
2001-05-18 Alexandre Petit-Bianco <apbianco@redhat.com>
|
2001-05-18 Alexandre Petit-Bianco <apbianco@redhat.com>
|
||||||
|
|
||||||
* include/posix-threads.h (_Jv_CondInit): `0' used in place of `NULL.'
|
* include/posix-threads.h (_Jv_CondInit): `0' used in place of `NULL.'
|
||||||
|
|
|
@ -26,9 +26,9 @@ details. */
|
||||||
|
|
||||||
extern "C"
|
extern "C"
|
||||||
{
|
{
|
||||||
#include <gc_priv.h>
|
#include <private/gc_priv.h>
|
||||||
#include <gc_mark.h>
|
#include <private/gc_pmark.h>
|
||||||
#include <include/gc_gcj.h>
|
#include <gc_gcj.h>
|
||||||
|
|
||||||
// These aren't declared in any Boehm GC header.
|
// These aren't declared in any Boehm GC header.
|
||||||
void GC_finalize_all (void);
|
void GC_finalize_all (void);
|
||||||
|
@ -324,7 +324,7 @@ _Jv_MarkArray (void *addr, void *msp, void *msl, void * /*env*/)
|
||||||
// We assume that the gcj mark proc has index 0. This is a dubious assumption,
|
// We assume that the gcj mark proc has index 0. This is a dubious assumption,
|
||||||
// since another one could be registered first. But the compiler also
|
// since another one could be registered first. But the compiler also
|
||||||
// knows this, so in that case everything else will break, too.
|
// knows this, so in that case everything else will break, too.
|
||||||
#define GCJ_DEFAULT_DESCR MAKE_PROC(GCJ_RESERVED_MARK_PROC_INDEX,0)
|
#define GCJ_DEFAULT_DESCR GC_MAKE_PROC(GC_GCJ_RESERVED_MARK_PROC_INDEX,0)
|
||||||
void *
|
void *
|
||||||
_Jv_BuildGCDescr(jclass klass)
|
_Jv_BuildGCDescr(jclass klass)
|
||||||
{
|
{
|
||||||
|
@ -496,12 +496,12 @@ _Jv_InitGC (void)
|
||||||
memset (array_free_list, 0, (MAXOBJSZ + 1) * sizeof (ptr_t));
|
memset (array_free_list, 0, (MAXOBJSZ + 1) * sizeof (ptr_t));
|
||||||
|
|
||||||
proc = GC_n_mark_procs++;
|
proc = GC_n_mark_procs++;
|
||||||
GC_mark_procs[proc] = (mark_proc) _Jv_MarkArray;
|
GC_mark_procs[proc] = (GC_mark_proc) _Jv_MarkArray;
|
||||||
|
|
||||||
array_kind_x = GC_n_kinds++;
|
array_kind_x = GC_n_kinds++;
|
||||||
GC_obj_kinds[array_kind_x].ok_freelist = array_free_list;
|
GC_obj_kinds[array_kind_x].ok_freelist = array_free_list;
|
||||||
GC_obj_kinds[array_kind_x].ok_reclaim_list = 0;
|
GC_obj_kinds[array_kind_x].ok_reclaim_list = 0;
|
||||||
GC_obj_kinds[array_kind_x].ok_descriptor = MAKE_PROC (proc, 0);
|
GC_obj_kinds[array_kind_x].ok_descriptor = GC_MAKE_PROC (proc, 0);
|
||||||
GC_obj_kinds[array_kind_x].ok_relocate_descr = FALSE;
|
GC_obj_kinds[array_kind_x].ok_relocate_descr = FALSE;
|
||||||
GC_obj_kinds[array_kind_x].ok_init = TRUE;
|
GC_obj_kinds[array_kind_x].ok_init = TRUE;
|
||||||
|
|
||||||
|
@ -538,12 +538,12 @@ _Jv_InitGC (void)
|
||||||
memset (obj_free_list, 0, (MAXOBJSZ + 1) * sizeof (ptr_t));
|
memset (obj_free_list, 0, (MAXOBJSZ + 1) * sizeof (ptr_t));
|
||||||
|
|
||||||
proc = GC_n_mark_procs++;
|
proc = GC_n_mark_procs++;
|
||||||
GC_mark_procs[proc] = (mark_proc) _Jv_MarkObj;
|
GC_mark_procs[proc] = (GC_mark_proc) _Jv_MarkObj;
|
||||||
|
|
||||||
obj_kind_x = GC_n_kinds++;
|
obj_kind_x = GC_n_kinds++;
|
||||||
GC_obj_kinds[obj_kind_x].ok_freelist = obj_free_list;
|
GC_obj_kinds[obj_kind_x].ok_freelist = obj_free_list;
|
||||||
GC_obj_kinds[obj_kind_x].ok_reclaim_list = 0;
|
GC_obj_kinds[obj_kind_x].ok_reclaim_list = 0;
|
||||||
GC_obj_kinds[obj_kind_x].ok_descriptor = MAKE_PROC (proc, 0);
|
GC_obj_kinds[obj_kind_x].ok_descriptor = GC_MAKE_PROC (proc, 0);
|
||||||
GC_obj_kinds[obj_kind_x].ok_relocate_descr = FALSE;
|
GC_obj_kinds[obj_kind_x].ok_relocate_descr = FALSE;
|
||||||
GC_obj_kinds[obj_kind_x].ok_init = TRUE;
|
GC_obj_kinds[obj_kind_x].ok_init = TRUE;
|
||||||
|
|
||||||
|
@ -555,12 +555,12 @@ _Jv_InitGC (void)
|
||||||
memset (array_free_list, 0, (MAXOBJSZ + 1) * sizeof (ptr_t));
|
memset (array_free_list, 0, (MAXOBJSZ + 1) * sizeof (ptr_t));
|
||||||
|
|
||||||
proc = GC_n_mark_procs++;
|
proc = GC_n_mark_procs++;
|
||||||
GC_mark_procs[proc] = (mark_proc) _Jv_MarkArray;
|
GC_mark_procs[proc] = (GC_mark_proc) _Jv_MarkArray;
|
||||||
|
|
||||||
array_kind_x = GC_n_kinds++;
|
array_kind_x = GC_n_kinds++;
|
||||||
GC_obj_kinds[array_kind_x].ok_freelist = array_free_list;
|
GC_obj_kinds[array_kind_x].ok_freelist = array_free_list;
|
||||||
GC_obj_kinds[array_kind_x].ok_reclaim_list = 0;
|
GC_obj_kinds[array_kind_x].ok_reclaim_list = 0;
|
||||||
GC_obj_kinds[array_kind_x].ok_descriptor = MAKE_PROC (proc, 0);
|
GC_obj_kinds[array_kind_x].ok_descriptor = GC_MAKE_PROC (proc, 0);
|
||||||
GC_obj_kinds[array_kind_x].ok_relocate_descr = FALSE;
|
GC_obj_kinds[array_kind_x].ok_relocate_descr = FALSE;
|
||||||
GC_obj_kinds[array_kind_x].ok_init = TRUE;
|
GC_obj_kinds[array_kind_x].ok_init = TRUE;
|
||||||
|
|
||||||
|
|
567
libjava/configure
vendored
567
libjava/configure
vendored
File diff suppressed because it is too large
Load diff
|
@ -248,7 +248,7 @@ case "$GC" in
|
||||||
# We include the path to the boehm-gc build directory.
|
# We include the path to the boehm-gc build directory.
|
||||||
# See Makefile.am to understand why.
|
# See Makefile.am to understand why.
|
||||||
GCLIBS="$GCDEPS -L\$(here)/../boehm-gc/$libsubdir"
|
GCLIBS="$GCDEPS -L\$(here)/../boehm-gc/$libsubdir"
|
||||||
GCINCS='-I$(top_srcdir)/../boehm-gc -I$(top_builddir)/../boehm-gc'
|
GCINCS='-I$(top_srcdir)/../boehm-gc/include'
|
||||||
GCSPEC='-lgcjgc'
|
GCSPEC='-lgcjgc'
|
||||||
JC1GCSPEC='-fuse-boehm-gc'
|
JC1GCSPEC='-fuse-boehm-gc'
|
||||||
GCTESTSPEC="-L`pwd`/../boehm-gc/.libs -rpath `pwd`/../boehm-gc/.libs"
|
GCTESTSPEC="-L`pwd`/../boehm-gc/.libs -rpath `pwd`/../boehm-gc/.libs"
|
||||||
|
|
|
@ -20,18 +20,7 @@ details. */
|
||||||
|
|
||||||
#include "unwind.h"
|
#include "unwind.h"
|
||||||
|
|
||||||
|
#include <gc.h>
|
||||||
// More nastiness: the GC wants to define TRUE and FALSE. We don't
|
|
||||||
// need the Java definitions (themselves a hack), so we undefine them.
|
|
||||||
#undef TRUE
|
|
||||||
#undef FALSE
|
|
||||||
|
|
||||||
extern "C"
|
|
||||||
{
|
|
||||||
#include <gc_priv.h>
|
|
||||||
#include <gc_mark.h>
|
|
||||||
#include <include/gc_gcj.h>
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
struct alignment_test_struct
|
struct alignment_test_struct
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2001-05-21 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
|
||||||
|
|
||||||
|
* configure.in: Use correct include dir for new Boehm GC.
|
||||||
|
* configure: Rebuilt.
|
||||||
|
|
||||||
2000-09-10 Alexandre Oliva <aoliva@redhat.com>
|
2000-09-10 Alexandre Oliva <aoliva@redhat.com>
|
||||||
|
|
||||||
* Updated from libtool multi-language branch.
|
* Updated from libtool multi-language branch.
|
||||||
|
|
2
libjava/libltdl/configure
vendored
2
libjava/libltdl/configure
vendored
|
@ -2492,7 +2492,7 @@ fi
|
||||||
|
|
||||||
GCINCS=
|
GCINCS=
|
||||||
if test "$GC" = "boehm"; then
|
if test "$GC" = "boehm"; then
|
||||||
GCINCS='-I$(top_srcdir)/../../boehm-gc -I$(top_builddir)/../../boehm-gc'
|
GCINCS='-I$(top_srcdir)/../../boehm-gc/include'
|
||||||
GCINCS="$GCINCS `cat ../../boehm-gc/boehm-cflags`"
|
GCINCS="$GCINCS `cat ../../boehm-gc/boehm-cflags`"
|
||||||
cat >> confdefs.h <<\EOF
|
cat >> confdefs.h <<\EOF
|
||||||
#define HAVE_BOEHM_GC 1
|
#define HAVE_BOEHM_GC 1
|
||||||
|
|
|
@ -43,7 +43,7 @@ changequote([,])
|
||||||
|
|
||||||
GCINCS=
|
GCINCS=
|
||||||
if test "$GC" = "boehm"; then
|
if test "$GC" = "boehm"; then
|
||||||
GCINCS='-I$(top_srcdir)/../../boehm-gc -I$(top_builddir)/../../boehm-gc'
|
GCINCS='-I$(top_srcdir)/../../boehm-gc/include'
|
||||||
GCINCS="$GCINCS `cat ../../boehm-gc/boehm-cflags`"
|
GCINCS="$GCINCS `cat ../../boehm-gc/boehm-cflags`"
|
||||||
AC_DEFINE(HAVE_BOEHM_GC)
|
AC_DEFINE(HAVE_BOEHM_GC)
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -16,11 +16,7 @@ details. */
|
||||||
// If we're using the Boehm GC, then we need to override some of the
|
// If we're using the Boehm GC, then we need to override some of the
|
||||||
// thread primitives. This is fairly gross.
|
// thread primitives. This is fairly gross.
|
||||||
#ifdef HAVE_BOEHM_GC
|
#ifdef HAVE_BOEHM_GC
|
||||||
extern "C"
|
|
||||||
{
|
|
||||||
#include <gcconfig.h>
|
|
||||||
#include <gc.h>
|
#include <gc.h>
|
||||||
};
|
|
||||||
#endif /* HAVE_BOEHM_GC */
|
#endif /* HAVE_BOEHM_GC */
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
@ -378,7 +374,6 @@ _Jv_ThreadStart (java::lang::Thread *thread, _Jv_Thread_t *data,
|
||||||
pthread_attr_setschedparam (&attr, ¶m);
|
pthread_attr_setschedparam (&attr, ¶m);
|
||||||
pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED);
|
pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED);
|
||||||
|
|
||||||
// FIXME: handle marking the info object for GC.
|
|
||||||
info = (struct starter *) _Jv_AllocBytes (sizeof (struct starter));
|
info = (struct starter *) _Jv_AllocBytes (sizeof (struct starter));
|
||||||
info->method = meth;
|
info->method = meth;
|
||||||
info->data = data;
|
info->data = data;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue