On Wed, 7 May 2025 09:23:45 GMT, Per Minborg <pminb...@openjdk.org> wrote:
>> This sketch shows how "Stable Updaters" can be used to create stable >> computations of `@Stable` fields. Only one updater is needed per class, >> similar to `AtomicIntegerFieldUpdater`. > > Per Minborg has updated the pull request incrementally with two additional > commits since the last revision: > > - Reformat > - Revert changes in public classes The MH+VH form should be much more lightweight: MH and VH are just MemberName references. I wonder if we can advertise the MH+VH version as an indy BSM: public static CallSite lazyAccessor(Lookup lookup, String unused, MethodType callType, VarHandle field, MethodHandle computer) The CallSite would be constant, with `StableIntFieldUpdaterVarHandle.applyAsInt` bound to the specific updater. This way, we can even defer the creation of the updater. ------------- PR Comment: https://git.openjdk.org/jdk/pull/25040#issuecomment-2858487803