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


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

Re: Java name-mangling


>>>>> "Martin" == Martin v Loewis <martin@loewis.home.cs.tu-berlin.de> writes:

    Martin> In the new ABI, you don't have vbase pointers; you still
    Martin> have to adjust the this pointer, which is done in thunks
    Martin> (ideally a kind of thunks that immediately precedes the
    Martin> function being called, i.e. it is an alternate entry
    Martin> point).

Yup.  There are other complexities with virtual bases as well (which
it sound like Java does use for interfaces).  There need to be "vcall
offsets" in the vtables to deal with virtual function calls given a
pointer to the interface type.  This code, more than the mangling
code, will be difficult to share; I think the Java folks will most
likely have to recode it.  However, I don't think it will be too hard
to get right, especially given the C++ front-end as a model.

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com

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