On Mon, 25 Jan 2021 14:25:59 GMT, Hannes Wallnöfer <hann...@openjdk.org> 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