Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8012162

JSR-292: reference to MNT in InstanceKlass impacts a footprint

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Not an Issue
    • Icon: P4 P4
    • tbd
    • 9, 10
    • hotspot
    • generic
    • generic

      A reference to a MemberNameTable is going to be added to the InstanceKlass structure in the fix for:
        https://jbs.oracle.com/bugs/browse/JDK-8008511

      It adds 4 bytes to each class but most of the time it is empty.

      This is a email exchange on this topic:

      On Apr 2, 2013, at 2:09 PM, Coleen Phillimore <coleen.phillimore@oracle.com> wrote:

      >> Also, the decision how to represent the MNT depends on its future usage by the compiler team.
      >> As we agreed, the compiler team is going to adjust the MNT to their needs
      >> at some point when it is more convenient for them.
      >> So that, could we make a final decision when the whole picture is ready?
      >> It would be better to approach it in some steps.
      >> Currently, this bug blocks other work on the JVMTI support of jsr-292.
      >
      > I don't know what the jsr 292 team has in store for this field but it's still a footprint cost that's for only a special case. So this is okay if you file a bug so that we can remove it and reimplement this table to be global or a hashtable.

      FTR, I would prefer to reimplement it as an optional attribute of java.lang.Class, so that JDK code can access it. This will cut down on the number of native-to-Java transitions (JNI calls). By "optional attribute" I mean something like ReflectionData, or even a field of ReflectionData itself.

      — John

            Unassigned Unassigned
            sspitsyn Serguei Spitsyn
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: