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, with `-XX:-DoEscapeAnalysis 
-XX:-EliminateAutoBox`

Thank you for reviewing!

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

Commit messages:
 - Rematerialization should take place even if EA is disabled

Changes: https://git.openjdk.org/valhalla/pull/2240/files
  Webrev: https://webrevs.openjdk.org/?repo=valhalla&pr=2240&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8379863
  Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod
  Patch: https://git.openjdk.org/valhalla/pull/2240.diff
  Fetch: git fetch https://git.openjdk.org/valhalla.git pull/2240/head:pull/2240

PR: https://git.openjdk.org/valhalla/pull/2240

Reply via email to