On 12/10/2015 3:03 AM, serguei.spit...@oracle.com wrote:
Please, review this initial fix for the Jigsaw Bill milestone task:
https://bugs.openjdk.java.net/browse/JDK-8049365


Jdk webrev:
http://cr.openjdk.java.net/~sspitsyn/webrevs/2015/jdk/8049365-Jigsaw-jdk.0/

Hotspot webrev:
http://cr.openjdk.java.net/~sspitsyn/webrevs/2015/hotspot/8049365-Jigsaw-hs.0/


Summary:

It is expected that the JDI and JDWP update for modules will have several iterations.
  This is the initial one, and it introduces a very minimal functionality.
The main purpose of this preliminary review is to make sure the JDI and JDWP update
  for modules goes in a right direction and has nothing obviously wrong.

It does not include yet the API's for introspection of the ModuleDescriptor, Configuration and Layer.
  There are no convincing use cases for it yet.
It is still TBD to contact and get more feedback from the NetBeans and Eclipse debuggers teams.
  We also could give them our custom build to try.

This fix temporarily adds a VM support for the JDI allModules() as a JNI function GetAllModules(). Any feedback on the Hotspot webrev as to how to implement it better is welcome.

Hi Serguei,

This is definitely a good start for updating JDK and JDWP for modules. I did have a chance to look over the hotspot changes. I would really prefer not to introduce a new ModulesTable data structure (modules.c/hpp). The goal of the JVM support for jigsaw was to have one stop shopping with ModuleEntryTable and PackageEntryTable. Those data structures keep track and record the module definitions. As a matter of fact, last week Harold completely removed JDK 9's current PackageInfo Hashtable in the jake repo in favor of using the new PackageEntryTable. I can help by enhancing ModuleEntryTable to provide methods that Modules::get_all_modules() could call. Would you be okay with that?

Thanks,
Lois

The plan is (as suggested by Alan) to re-implement it on the JVMTI level.

  It is a part of another Jigsaw Bill milestone task:
https://bugs.openjdk.java.net/browse/JDK-8049364
Update JVM TI for modules

Thanks,
Serguei




Reply via email to