[kaffe] JVMPI status?

Jon Nall nall@themountaingoats.net
Thu Mar 11 11:38:03 2004


This is a multi-part message in MIME format.
--------------060702090204040000020806
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit


> since there is no way to guarantee that the external argz_create_sep() 
> will use malloc/free (afaik), it may be better to do 1, in my opinion. 
> And since it's a bug in libtool, please send a bug report upstream to 
> the libtool developers, as well.


dalibor,
i don't think this is a libtool bug. i think the solution is to remove 
it from libltdl/acinclude.m4:6372. i don't have up to date 
autoconf/automake, so i can't test it, but manually removing it from 
libltdl/configure:21057 worked.

i'm attaching a patch that should resolve both the malloc issue and the 
assert i mentioned in my previous email.

current status is that i can get EJP to load and run successfully on 
small programs. i tried it on a larger program and got an internal error 
in EJP (an error that doesn't show up when i run against the sun JDK). 
so i'll debug that one next.


nall.

--------------060702090204040000020806
Content-Type: text/plain;
 name="kaffe-jvmpi-malloc_and_req_event.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="kaffe-jvmpi-malloc_and_req_event.patch"

Index: kaffe/kaffe/jvmpi/jvmpi_kaffe.c
===================================================================
RCS file: /cvs/kaffe/kaffe/kaffe/jvmpi/jvmpi_kaffe.c,v
retrieving revision 1.4
diff -u -r1.4 jvmpi_kaffe.c
--- kaffe/kaffe/jvmpi/jvmpi_kaffe.c	11 Mar 2004 16:00:08 -0000	1.4
+++ kaffe/kaffe/jvmpi/jvmpi_kaffe.c	11 Mar 2004 19:35:30 -0000
@@ -52,7 +52,7 @@
 {
 	assert(ev != NULL);
 	assert(ev->event_type >= 0);
-	assert(ev->event_type < JVMPI_EVENT_COUNT);
+	assert((ev->event_type & ~JVMPI_REQUESTED_EVENT) < JVMPI_EVENT_COUNT);
 
 	ev->env_id = THREAD_JNIENV();
 	switch( ev->event_type )
Index: kaffe/libltdl/acinclude.m4
===================================================================
RCS file: /cvs/kaffe/kaffe/libltdl/acinclude.m4,v
retrieving revision 1.25
diff -u -r1.25 acinclude.m4
--- kaffe/libltdl/acinclude.m4	27 Jan 2004 11:08:43 -0000	1.25
+++ kaffe/libltdl/acinclude.m4	11 Mar 2004 19:35:32 -0000
@@ -6369,5 +6369,5 @@
 #  include <argz.h>
 #endif])
 
-AC_CHECK_FUNCS([argz_append argz_create_sep argz_insert argz_next argz_stringify])
+AC_CHECK_FUNCS([argz_append argz_insert argz_next argz_stringify])
 ])# AC_LTDL_FUNC_ARGZ
Index: kaffe/libltdl/configure
===================================================================
RCS file: /cvs/kaffe/kaffe/libltdl/configure,v
retrieving revision 1.54
diff -u -r1.54 configure
--- kaffe/libltdl/configure	11 Mar 2004 11:56:48 -0000	1.54
+++ kaffe/libltdl/configure	11 Mar 2004 19:35:38 -0000
@@ -21054,7 +21054,7 @@
 
 
 
-for ac_func in argz_append argz_create_sep argz_insert argz_next argz_stringify
+for ac_func in argz_append argz_insert argz_next argz_stringify
 do
 as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
 echo "$as_me:$LINENO: checking for $ac_func" >&5

--------------060702090204040000020806--