Questions about jvmti.h header

View: New views
2 Messages — Rating Filter:   Alert me  

Questions about jvmti.h header

by Michael Starzinger :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello!

I am currently experimenting with JVMTI support in Cacao. My goal is  
to have the implementation compile equally against both GNU Classpath  
and OpenJDK headers. That's why I stumbled upon some questions about  
the JVMTI header included in the GNU Classpath source.

* Are there any plans to install the jvmti.h file (just like it is  
done with jni.h) or are there circumstances preventing such an  
installation?

* Why does the mentioned header include jvmti_md.h? All machine-
dependent definitions should have already been covered by jni_md.h.  
Should the missing jvmti_md.h file be provided by the VM?

I also stumbled upon a mailing list post[1] dealing with this topic.  
But it seems to me that only a small part[2] actually made it into the  
GNU Classpath source, the rest remained in the GCJ source.

References:
[1] http://gcc.gnu.org/ml/java-patches/2006-q3/msg00368.html
[2] http://developer.classpath.org/pipermail/classpath-patches/2006-August/004013.html

Thanks for your help,
-michi





Re: Questions about jvmti.h header

by Keith Seitz :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 11/03/2009 04:27 AM, Michael Starzinger wrote:

> * Are there any plans to install the jvmti.h file (just like it is done
> with jni.h) or are there circumstances preventing such an installation?

That is probably just an oversight.

> * Why does the mentioned header include jvmti_md.h? All
> machine-dependent definitions should have already been covered by
> jni_md.h. Should the missing jvmti_md.h file be provided by the VM?

A VM may need to specialize some behavior in jvmti.h. Gcj did this, and
it provides the missing jvmti_md.h. If jni_md.h supplies everything
necessary, a "blank"/nop jvmti_md.h will suffice.

> I also stumbled upon a mailing list post[1] dealing with this topic. But
> it seems to me that only a small part[2] actually made it into the GNU
> Classpath source, the rest remained in the GCJ source.

I think this is self-explanatory now: jvmti_md.h is VM-dependent and
should be supplied by the VM vendor. That's why that file never made it
into classpath. It wouldn't help any other VM.

Keith