On Thu, 25 Jul 2024 14:52:11 GMT, Shaojin Wen <d...@openjdk.org> wrote:
>> The current implementation of StringConcat is to mix the coder and length >> into a long. This operation will have some overhead for int/long/boolean >> types. We can separate the calculation of the coder from the calculation of >> the length, which can improve the performance in the scenario of concat >> int/long/boolean. >> >> This idea comes from the suggestion of @l4es in the discussion of PR >> https://github.com/openjdk/jdk/pull/20253#issuecomment-2240412866 > > Shaojin Wen has updated the pull request incrementally with two additional > commits since the last revision: > > - remove benchmark > - common simpleConcat Startup performance is better when simpleConcat works, so I use highArity and bytecode-spinning only when simpleConcat doesn't work. Should we add some simpleConcat implementations, such as: String simpleConcat(Object arg0, int arg1); String simpleConcat(Object arg0, long arg1) String simpleConcat(Object arg0, boolean arg1) String simpleConcat(int arg0, Object arg1) String simpleConcat(long arg0, Object arg1) String simpleConcat(boolean arg0, Object arg1) This will help with startup performance ------------- PR Comment: https://git.openjdk.org/jdk/pull/20273#issuecomment-2250787254