On Wed, 18 Mar 2026 14:42:07 GMT, Benoît Maillard <[email protected]> wrote:
> This PR prevents hitting an assert in `vframeArrayElement::fill_in` when > escape analysis and autobox elimination are disabled. > > With value classes, scalarization can take place independently of escape > analysis. When deoptimizing, this implies that we must always rematerialize > objects when `EliminateAllocations` is true, even if escape analysis is > disabled. > Prior to this change, we hit an assert in `vframeArrayElement::fill_in` > because it is expected that scalarized objects are already reallocated there. > We have to make sure that `rematerialize_objects` is run before that. > > ### Testing > - [x] tier1-3, plus some internal testing > > Thank you for reviewing! This pull request has now been integrated. Changeset: 19fe8ba0 Author: Benoît Maillard <[email protected]> Committer: Tobias Hartmann <[email protected]> URL: https://git.openjdk.org/valhalla/commit/19fe8ba0a743eb1927ffb86c6f766ed4e18fd8e5 Stats: 55 lines in 2 files changed: 52 ins; 0 del; 3 mod 8379863: [lworld] C2: assert(!value->obj_is_scalar_replaced() || realloc_failures) failed: object should be reallocated already Reviewed-by: mchevalier, thartmann ------------- PR: https://git.openjdk.org/valhalla/pull/2240
