On Mon, 25 Jan 2021 14:25:59 GMT, Hannes Wallnöfer <[email protected]> wrote:
>> I have narrowed down the performance regression to the modularity check
>> introduced in JDK-8240169. Since this check is not necessary if we know that
>> the element list's modularity matches that of the library we can omit the
>> modularity check when linking to platform libraries using our own element
>> lists.
>>
>> Unfortunately, while recent element lists match the modular JDK libraries,
>> the ones for JDK 9 and 10 do not. The patch therefore adds module tags to
>> the lists for these two versions. For JDK 10, this is a relatively simple
>> change because the packages were already ordered by module. For JDK 9 the
>> change unfortunately requires changing the order of packages. I've written a
>> small utility program to convert the list and have double-checked its
>> content matches the old list.
>>
>> Performance should be very close to where it was before the regression. I
>> haven't run the benchmarks on the final version because I currently have
>> some background tasks running, but I will do so eventually before
>> integration.
>
> Hannes Wallnöfer has updated the pull request incrementally with one
> additional commit since the last revision:
>
> Fix incorrect condition for JDK 9 and 10
src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Extern.java
line 531:
> 529: DocPath pkgPath =
> DocPath.create(elemname.replace('.', '/'));
> 530: // Although being modular, JDKs 9 and 10 do not
> use module names in javadoc URL paths.
> 531: if (moduleName != null && platformVersion != 9
> && platformVersion != 10) {
I know first version was fine, blame it on a lack of coffee :)
-------------
PR: https://git.openjdk.java.net/jdk/pull/2221