On Thu, 27 Feb 2025 14:17:27 GMT, Jorn Vernee <jver...@openjdk.org> wrote:
>> Well, the reason I removed the eager init is that their creation in clinit >> is super costly. Also I think one pair of getter + creator is better than 3 >> pairs. > >> ... their creation in clinit is super costly > > You mean because threads can not race to initialize? I'd think the extra > stack walks to create 3 lookups might offset that though... Another possible option -- if we don't like this, is to put the constants in an holder class. As @JornVernee says, most of the times the fields are used together. Re. initialization cost, I agree with @liach as I have observed the same thing -- these helper method handles lead to some bytecode spinning -- which is better to delay if not strictly needed? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/23720#discussion_r1975182862