This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Mixing native code and bytecode


My comments are a very minor, and possibly incorrect, suggestion.

The pdf referenced  in the following email chain is found under
summit/2004.  I have not looked, so my recommendation could
already be implemented, but such documents need to be
centrally organized around an obvious 'Doc' button or link
from a home page.

Please don't get offended if this is already in place.   Just
a suggestion re web site organization.   Minor, minor suggestion.

Jerome Roussel writes:
> > I am looking for information about the way GCJ mix native code and
> bytecode. I know that the bytecode is interpreted so now I am trying to
> understand the interface used to "switch" from native to bytecode and
> from bytecode to native. > > For instance, when -findirect-dispatch is used, a vtable needs to be
> filled for each native class, but what happens if one method is
> inherited from a parent class which is in bytecode form. This is the
> kind of question I am trying to understand about the implementation
> internals.


The part you perhaps don't know about is the libffi invocation
interface.  This is the "magic bullet" that allows you to construct on
the fly a native code thunk to interpreted code.  More explanation at
ftp://gcc.gnu.org/pub/gcc/summit/2004/GCJ%20New%20ABI.pdf

> The possibility to mix native code and bytecode is very powerful so
> I thought that some papers would explain the mechanism but I
> haven't found anything on that matter. If you have a link to such a
> paper, a documentation or to some specific source files in GCC to
> look at, I would be very grateful.

Let us know if there's anything more you need.

Andrew.





Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]