On Tue, 3 Mar 2026 01:31:07 GMT, David Holmes <[email protected]> wrote:
> Please review these simple changes to some of the JNI functions:
>
> - JNI `AllocObject` should not throw `InstantiationException` for value types
> (and I've added a very simple test for that)
> - JNI `NewObject*` had leftover code to explicitly throw
> `InstantiationException` but that is already handled inside
> `allocate_instance`
>
> Also fixed some alignment/whitespace issues that had crept in.
>
> Thanks
src/hotspot/share/prims/jni.cpp line 2398:
> 2396: oop v = JNIHandles::resolve(value);
> 2397: if (a->is_within_bounds(index)) {
> 2398: Klass* ek = a->is_flatArray() ?
> FlatArrayKlass::cast(a->klass())->element_klass() :
> RefArrayKlass::cast(a->klass())->element_klass();
Suggestion:
assert(a->klass()->is_refined_objArray_klass(), "must be");
Klass* ek = ObjArrayKlass::cast(a->klass())->element_klass();
suggestion for further cleanup
-------------
PR Review Comment:
https://git.openjdk.org/valhalla/pull/2190#discussion_r2876426566