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

move MemberNameTable from native code to Java heap, use to intern MemberNames

    Details

      Backports

        Description

        The JSR 292 Lookup API makes native calls to obtain MemberNames which underly direct method handles. To simplify MemberName lookup and reduce duplicate creation of MemberName, we will move the MemberName table created by JDK-8008511 into the Java heap, so that Lookup queries can refer to that.

        See comments on JDK-8005232 for a related ReflectionData structure. This structure would be extended to include the content of the MemberNameTable. Because a SoftReference is used to make the ReflectionData structure droppable, we would place the new data fields in the SoftReference (making it into a ClassData subclass) rather adding them to ReflectionData.

        Also, certain other fields in Class (such as those holding annotations) could be moved at the same time into the ClassData, for a net reduction of application footprint.

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  Unassigned
                  Reporter:
                  jrose John Rose
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  14 Start watching this issue

                  Dates

                  • Created:
                    Updated: