[lworld] RFR: 8320437: [lworld] Adding internal null-restricted storage API points [v3]

Frederic Parain fparain at openjdk.org
Wed Nov 29 14:34:36 UTC 2023


On Fri, 24 Nov 2023 11:08:08 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:

>> Frederic Parain has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Field inheritance check should be limited to instance fields
>
> test/hotspot/jtreg/runtime/valhalla/inlinetypes/ClassInitializationFailuresTest.java line 134:
> 
>> 132:         Asserts.assertTrue(e.getClass() == NoClassDefFoundError.class, "Must be a NoClassDefFoundError");
>> 133:         Asserts.assertTrue(e.getCause().getClass() == ExceptionInInitializerError.class, "Must be an ExceptionInInitializerError");
>> 134:         // Transition model (annotations and array factory) doesn't permit multi-dimentional arrays tests
> 
> Shouldn't we support multi-dimensional arrays as well? Or are there any blockers?

The new API to create flat arrays only supports single-dimension arrays. But because multi-dimensional arrays are basically a set of reference arrays with only the last-dimension array being an array of the element type, it is possible to create manually multi-dimensional arrays on top of this API.
Those tests were checking the behavior of `multianewarray` but with the removal of Q-descriptors, this bytecode cannot be used to create multi-dimensional arrays with a flat last-dimension array.

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

PR Review Comment: https://git.openjdk.org/valhalla/pull/947#discussion_r1409372298



More information about the valhalla-dev mailing list