On Tue, 6 Aug 2024 18:07:16 GMT, Shaojin Wen <d...@openjdk.org> wrote:
>> This PR implements the same algorithm as the current generateMHInlineCopy >> based on bytecode to improve startup performance. > > Shaojin Wen has updated the pull request incrementally with two additional > commits since the last revision: > > - copyright > - remove unused import Yes, I'd suggest: - Rename `SimpleStringBuilderStrategy` to something like `InlineHiddenClassStrategy`. - Change the default value of `highArity` to 0 - Adding a `inlineThreshold` parameter to control the now hard-coded inlining threshold The only thing I'd really like to see after that is a test to verify that unloading of the hidden concat classes works. We should probably keep the existing strategy around for a while. At least until the new strategy has gone through extensive testing. Looking forward to the code cleanup removing it will entail, though. On a review side note I see some opportunity to fine-tune the code a bit. For example: - we could prefer generating and passing around `MethodTypeDesc` instead of `MethodType` to reduce transforms - refactor to not generate `coderArgs` unless needed - use more idiomatic class-file API code: `cb.parameterSlot(int)` instead of allocating `int[] paramSlots` arrays and calculating slows, use `cb.allocateLocal` etc.. Such micro-optimization/cleanup work probably isn't going to significantly change characteristics and could be deferred to a follow-up. ------------- PR Comment: https://git.openjdk.org/jdk/pull/20273#issuecomment-2272211492