[lworld] RFR: 8370880: [lworld] Split ciObjArrayKlass into ciRefArrayKlass and ciFlatArrayKlass [v3]

Tobias Hartmann thartmann at openjdk.org
Mon Jan 5 14:02:53 UTC 2026


On Fri, 19 Dec 2025 03:10:43 GMT, Quan Anh Mai <qamai at openjdk.org> wrote:

>> Hi,
>> 
>> This PR splits `ciObjArrayKlass` into `ciRefArrayKlass` and `ciFlatArrayKlass`, aligns the hierarchy with the corresponding types of the VM.
>> 
>> Please kindly review, thanks a lot.
>
> Quan Anh Mai has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains six commits:
> 
>  - wrong value is passed as flat
>  - remove redundant changes
>  - Merge branch 'lworld' into ciRefArray
>  - Revert "can only infer klass if exact"
>    
>    This reverts commit be6143624d30c9ebfa560dd8161aa70270c68d24.
>  - can only infer klass if exact
>  - Refactor ciObjArrayKlass to align with the VM type

Looks good to me otherwise. Thanks!

src/hotspot/share/opto/type.cpp line 3700:

> 3698:         _is_ptr_to_narrowoop = UseCompressedOops && ::is_reference_type(field_bt);
> 3699:       } else if (klass()->is_obj_array_klass()) {
> 3700:         _is_ptr_to_narrowoop = UseCompressedOops;

`UseCompressedOops` is always true here, right? It's checked in line 3685. Also above.

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

Marked as reviewed by thartmann (Committer).

PR Review: https://git.openjdk.org/valhalla/pull/1739#pullrequestreview-3626791751
PR Review Comment: https://git.openjdk.org/valhalla/pull/1739#discussion_r2661457384


More information about the valhalla-dev mailing list