Thanks you guys. I will try not to run junk into channel and you guys promise to stay well run. Ok.
Get Outlook for Android<https://aka.ms/ghei36> ________________________________ From: Kim Barrett <[email protected]> Sent: Saturday, August 25, 2018 11:47:41 PM To: mr rupplin Cc: [email protected] Subject: Re: JVM Interpreter > On Aug 25, 2018, at 2:39 PM, mr rupplin <[email protected]> wrote: > > I am presuming the JVM interpreter is defined/implemented in the the hotspot > module since this is a JVM implementation. This is probably more of a hotspot-dev or hotspot-runtime-dev kind of question, rather than core-libs. > I cannot seem to find *any* instruction in it that gets called by a simple > "./java -ea Class" call. We are stumped. > > > For instance there are methods for local set and reference: > > > void BytecodeInterpreter::set_stack_slot(intptr_t *tos, address value, int > offset) { > > *((address *)&tos[Interpreter::expr_index_at(-offset)]) = value; > } > > void BytecodeInterpreter::set_stack_object(intptr_t *tos, oop value, int > offset) { > > *((oop *)&tos[Interpreter::expr_index_at(-offset)]) = value; > } > > These (and similar in same file) are not being called at all during the JVM > interpreter phase (simple java program as reference). My program creates an > object and calls a test method with a single object as reference. > > What could be the hang up? No printf statement seems to work. I think BytecodeInterpreter is part of CppInterpreter, which I think is only used by Zero platforms, with the TemplateInterpreter used by all other platforms. So unless you are running on a platform that uses Zero, or specifically built for Zero, I think BytecodeInterpreter won't be used (and might not even be compiled in?). > Thanks. > > Max Rupplin > > Software Engineer
