On Mon, 12 Jun 2023 14:25:42 GMT, Per Minborg <pminb...@openjdk.org> wrote:

> This PR proposes adding `@Stable` to certain wrapper classes' cache arrays 
> (e.g. `Integer` and `Long`).
> 
> Comments are welcome as to how to improve the VM's handling now that the 
> backing cache array is `@Stable`. Are there simplifications to be made or are 
> there other optimizations we might add?

The benchmarks I provided above does not involve constant folding so here is 
another set of benchmarks (Thanks @cl4es):

Before

Benchmark                     (size)  Mode  Cnt  Score   Error  Units
Integers.constantFoldInteger     500  avgt   15  0.568 ± 0.013  ns/op
Integers.constantFoldInts        500  avgt   15  0.564 ± 0.005  ns/op


After

Benchmark                     (size)  Mode  Cnt  Score   Error  Units
Integers.constantFoldInteger     500  avgt   15  0.558 ± 0.001  ns/op
Integers.constantFoldInts        500  avgt   15  0.559 ± 0.001  ns/op



    @Benchmark
    public int constantFoldInteger() {
        return Integer.valueOf(64) * Integer.valueOf(32);
    }

    @Benchmark
    public int constantFoldInts() {
        return 64 * 32;
    }

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

PR Comment: https://git.openjdk.org/jdk/pull/14418#issuecomment-1588823240

Reply via email to