On Thu, 12 Sep 2024 07:13:08 GMT, ExE Boss <d...@openjdk.org> wrote: >> Some type descriptors are validated against generic utf8 entries, such as >> field or method types; we can cache a type descriptor wrapping the content >> of the utf8 entry if this entry is ever used as a type descriptor. >> >> This patch is more of a code cleanup; it is performance neutral. > > src/java.base/share/classes/jdk/internal/classfile/impl/SplitConstantPool.java > line 507: > >> 505: public MethodTypeEntry methodTypeEntry(MethodTypeDesc descriptor) { >> 506: return methodTypeEntry(utf8Entry(descriptor)); >> 507: } > > This method body can be moved to > [`ConstantPoolBuilder::methodTypeEntry(MethodTypeDesc)`] and that method be > made `default` like [`ConstantPoolBuilder::classEntry(ClassDesc)`], > [`ConstantPoolBuilder::packageEntry(PackageDesc)`], and > [`ConstantPoolBuilder::moduleEntry(ModuleDesc)`]. > > [`ConstantPoolBuilder::methodTypeEntry(MethodTypeDesc)`]: > https://docs.oracle.com/en/java/javase/22/docs/api/java.base/java/lang/classfile/constantpool/ConstantPoolBuilder.html#methodTypeEntry(java.lang.constant.MethodTypeDesc) > [`ConstantPoolBuilder::classEntry(ClassDesc)`]: > https://docs.oracle.com/en/java/javase/22/docs/api/java.base/java/lang/classfile/constantpool/ConstantPoolBuilder.html#classEntry(java.lang.constant.ClassDesc) > [`ConstantPoolBuilder::packageEntry(PackageDesc)`]: > https://docs.oracle.com/en/java/javase/22/docs/api/java.base/java/lang/classfile/constantpool/ConstantPoolBuilder.html#packageEntry(java.lang.constant.PackageDesc) > [`ConstantPoolBuilder::moduleEntry(ModuleDesc)`]: > https://docs.oracle.com/en/java/javase/22/docs/api/java.base/java/lang/classfile/constantpool/ConstantPoolBuilder.html#moduleEntry(java.lang.constant.ModuleDesc)
too lazy to file a csr... ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/20957#discussion_r1756749044