• Icon: Sub-task Sub-task
    • Resolution: Fixed
    • Icon: P4 P4
    • 24
    • 24
    • core-libs
    • None

      Currently, raw bytecode access goes through multiple wrappers, include one from ClassFile API and another ByteBuffer for merged big endian value reads. We can merge the ByteBuffer into the ClassFile API one (RawBytecodeHelper) for safer access.

      RawBytecodeHelper is also restructured so we avoid allocating it on the heap. Large rawNext method is now also inlined into the smaller next method.

      Current benchmark results show this significantly speeds up jdk.classfile.Write and some degree of speedup for simple lambda startup. The impact on general application workloads is minuscule, but this doesn't seem to bring any regression.

            liach Chen Liang
            liach Chen Liang
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: