On Wed, 8 Jun 2022 10:20:37 GMT, Claes Redestad <redes...@openjdk.org> wrote:

> To take optimal advantage of the pre-existing optimization for repeated 
> filters we could split the application of different types of stringifiers.
> 
> The resulting difference in order of evaluation is not observable by 
> conventional means since all reference type share the same object 
> stringifier, and the others are filtering primitives (floats and doubles) 
> which have been passed by value already. 
> 
> This change neutral on many concatenation expression shapes, but for any 
> complex expressions with interleaving float/double and reference parameters 
> it brings a straightforward reduction in rebinds and underlying LFs 
> generated. For example on the 
> [MixedStringCombinations.java](https://urldefense.com/v3/__https://gist.github.com/cl4es/08fb581dece3a73e89bfa52337bc4248__;!!ACWV5N9M2RV99hQ!N8f88zl1gqIUZjyrdSYuxItI-Tx-H8jXe5t5lUWldrNkmotWJ-mSsapozJWvv7yUDLomQy451gUTYnBRpKQ-TA9WAg$
>  ) test there's a modest 2% reduction in total classes loaded with this 
> change (from 16209 to 15872)

This pull request has now been integrated.

Changeset: 5cdb4b19
Author:    Claes Redestad <redes...@openjdk.org>
URL:       
https://git.openjdk.org/jdk/commit/5cdb4b196047d4f2d69df0fc73102c102bf042f7
Stats:     38 lines in 1 file changed: 23 ins; 5 del; 10 mod

8288011: StringConcatFactory: Split application of stringifiers

Reviewed-by: jvernee, mchung

-------------

PR: https://git.openjdk.org/jdk/pull/9082

Reply via email to