From 3a8da0244a2acc9138f1527df0e7863e02d2a751 Mon Sep 17 00:00:00 2001 From: Hans Boehm Date: Mon, 15 Oct 2001 22:42:42 +0000 Subject: natObject.cc (heavy_lock): Moved fields old_client_data, old_finalization_proc near beginning. 2001-10-15 Hans Boehm * java/lang/natObject.cc (heavy_lock): Moved fields old_client_data, old_finalization_proc near beginning. (heavy_lock_finalization_proc): Now inline; changed type of argument. (JV_SYNC_TABLE_SZ): Now 2048. (mp): New global. (spin): `mp' now global. (heavy_lock_obj_finalization_proc): Updated to correctly handle heavy lock finalization. (remove_all_heavy): New function. (maybe_remove_all_heavy): Likewise. (_Jv_MonitorEnter): Throw exception if object is NULL. (_Jv_MonitorExit): Likewise. Also, clear long lists of unlocked heavy locks. * include/jvm.h (_Jv_AllocTraceTwo): Declare. * nogc.cc (_Jv_AllocTraceTwo): New function. * boehm.cc (trace_two_vtable): New global. (_Jv_AllocTraceTwo): New function. From-SVN: r46271 --- libjava/include/jvm.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'libjava/include/jvm.h') diff --git a/libjava/include/jvm.h b/libjava/include/jvm.h index b4fceac..27a1c6f 100644 --- a/libjava/include/jvm.h +++ b/libjava/include/jvm.h @@ -144,6 +144,8 @@ void _Jv_ThrowNoMemory() __attribute__((__noreturn__)); /* Allocate an object with a single pointer. The first word is reserved for the GC, and the second word is the traced pointer. */ void *_Jv_AllocTraceOne (jsize size /* incl. reserved slot */); +/* Ditto, but for two traced pointers. */ +void *_Jv_AllocTraceTwo (jsize size /* incl. reserved slot */); /* Initialize the GC. */ void _Jv_InitGC (void); /* Register a finalizer. */ -- cgit v1.1