RFR: 8344352: 32-bit builds crash after JDK-8305895 [v2]
Aleksey Shipilev
shade at openjdk.org
Mon Nov 18 13:33:11 UTC 2024
On Mon, 18 Nov 2024 11:14:02 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
>> The underlying reason is that newly added `ObjLayout::initialize` is set up in `LP64` block, so 32-bit platforms miss it. I moved the initialization closer to VM init sequence, as it _is_ the essential part of VM init, not just argument parsing. This is the same thing I did in my POC patch in [JDK-8343648](https://bugs.openjdk.org/browse/JDK-8343648).
>>
>> Additional testing:
>> - [x] Linux x86_32 fastdebug cross-build (now able to run simple things)
>> - [x] Linux arm32 fastdebug cross-build (now able to run simple things)
>>
>> Both builds are still broken at build-time CDS creation steps due to CDS bug ([JDK-8344389](https://bugs.openjdk.org/browse/JDK-8344389)), but they do not fail with ObjLayout bug anymore.
>
> Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains two additional commits since the last revision:
>
> - Merge branch 'master' into JDK-8344352-32bit-fail-objlayout
> - Fix
Please take a look where I put the `ObjLayout::initialize()` -- I think it is correct, but given it touches the VM init sequence, I would like to be extra careful.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/22196#issuecomment-2483050390
More information about the hotspot-runtime-dev
mailing list