How to access TemplateInterpreter::_active_table via SA in non-debug build?

David Griffiths david.griffiths at gmail.com
Thu Jul 26 15:28:32 UTC 2018


Hi, I would like to access _active_table in TemplateInterpreter using SA
code in a non-debug build. The problem is that that symbol is not exported
by the Hotspot type database. Are there any tricks I can do to get round
this? I can get the start addresses of each template codelet via
AbstractInterpreter::_code and at the moment I'm thinking of doing brute
search for the main entry point for a number of bytecodes until I find
something that looks like the _active_table (although if we are at a
safepoint it may point to the safepoint table? ugh) But is there a better
way? (Don't mind a little bit hacky as long as it works).

If I was to become a contributor, would adding a patch to include
TemplateInterpreter::_active_table in the type database likely be accepted?

Reason for doing such weird things: I want to be able to set a breakpoint
in gdb for a particular bytecode in the interpreter and I want to do this
with the non-debug build using only the symbols exported via
gHotSpotVMTypes.

Cheers,

David


More information about the hotspot-dev mailing list