ARM Interpreter
Gary Benson
gbenson at redhat.com
Wed Aug 12 08:25:33 PDT 2009
Andrew Haley wrote:
> Gary Benson wrote:
> > Edward Nevill wrote:
> > > > Matthias Klose wrote:
> > > > > +#if defined(PRODUCT) && defined(HOTSPOT_ASM)
> > > >
> > > > So my first question is why is everything conditionalized on
> > > > PRODUCT? Not being able to build not-PRODUCT means no
> > > > assertions, no debug helpers and no diagnostic options. I'd
> > > > like to see all these conditionals replaced with "#ifdef
> > > > HOTSPOT_ASM".
> > >
> > > The reason everything is conditionalised on PRODUCT is that the
> > > Asm loop will not work with a non product build. This is because
> > > all the offsets in the structures change on a non product build
> > > because of the addition of debug info into the structures.
> >
> > That's really likely to break. Would it be possible to have a
> > table of all the constants you use, and fill it in at VM startup?
> > The C++ interpreter's init code (bytecodeInterpreter.cpp, around
> > line 560) would be a nice place. I saw you inlined
> > ZeroFrame::SHARK_FRAME too, that sort of thing could go there as
> > well.
>
> I think that such a table can be generated automatically, and I
> think I know how to do it.
>
> Can I suggest that this be treated as a future change, so that the
> patch can be checked in soon? That'll make it much easier for me
> and others to work on it.
Sure.
Cheers,
Gary
--
http://gbenson.net/
More information about the distro-pkg-dev
mailing list