How to trace the hotspot bytecode interpreter
Gary Benson
gbenson at redhat.com
Thu Feb 19 07:52:50 PST 2009
For x86 you need the template interpreter. The code that executes
bytecodes exists as fragments of assembly language, generated by code
in hotspot/src/cpu/x86/vm/templateInterpreter_x86_32.cpp or
hotspot/src/cpu/x86/vm/templateInterpreter_x86_64.cpp.
Cheers,
Gary
Colin(Du Li) wrote:
> Hi Gary,
>
> I use x86. You mean bytecodeInterpreter is useless?
> Then where is the bytecode interpreter codes in Hotspot?
> e.g. where is the instruction, such as "getField", been interpreted
> and executed?
>
> Thanks a lot!
>
> Colin
>
> Gary Benson wrote:
> > Hi Colin,
> >
> > What platform are you using? If you are on x86, x86_64 or sparc (and
> > you haven't messed with the build to enable the C++ interpreter) then
> > nothing in bytecodeInterpreter.cpp is ever used.
> >
> > Cheers,
> > Gary
> >
> > Colin(Du Li) wrote:
> > > I know the byte interpreter implementation is mainly in
> > > bytecodeInterpreter.cpp, but it doesn't allow me set break point in
> > > this file. I wanna trace the bytecode interpreter. Where can I put
> > > break pointer? Where is the entrance to bytecodeInterpreter.cpp,
> > > that is, in Hotpot, which classes will call the methods in
> > > bytecodeInterpreter.cpp?
> > > Thanks.
--
http://gbenson.net/
More information about the hotspot-dev
mailing list