RFR: 8345169: Implement JEP 503: Remove the 32-bit x86 Port [v2]

David Holmes dholmes at openjdk.org
Mon Mar 17 05:39:02 UTC 2025


On Mon, 10 Mar 2025 09:49:44 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> This PR implements JEP 503: Remove the 32-bit x86 Port.
>> 
>> The JEP is proposed to target 25, we would not integrate until JEP is ready. Reviews are appreciated meanwhile.
>> 
>> This is only the removal of obvious 32-bit x86 parts, mostly files with `x86_32` in their name.  Those are only built when build system knows we are compiling for x86_32. There is therefore no impact on x86_64. The approach for removing x86_32 files only also makes this PR borderline trivial, and requires no additional testing beyond normal pre-integration checks.
>> 
>> The rest of the code is quite heavily intertwined with x86_64 and/or Zero, and would require accurate untangling. It would be much easier to review and test once we purge the free-standing parts of 32-bit x86 port, which is also a bulk of the port. The tangling with 32-bit x86 Zero is also why I did not touch most of the build system paths that handle x86. There is [JDK-8351148](https://bugs.openjdk.org/browse/JDK-8351148) umbrella that tracks further cleanup work. One can peek the final state that can be reached with all the cleanups in my earlier exploratory https://github.com/openjdk/jdk/pull/22567.
>> 
>> Additional testing:
>>  - [x] Linux x86_32 Server fastdebug, `make bootcycle-images` (now fails configure)
>>  - [x] Linux x86_64 Server fastdebug, `make bootcycle-images` (still works)
>>  - [x] Linux x86_32 Zero fastdebug, `make bootcycle-images` (still works)
>>  - [x] Linux x86_64 Zero fastdebug, `make bootcycle-images` (still works)
>
> 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 four additional commits since the last revision:
> 
>  - Drop commented out block from deprecations
>  - Merge branch 'master' into JDK-8345169-32bit-x86-be-gone
>  - Generic 32-bit x86 configure error supercedes Windows 32-bit x86
>  - 8345169: Implement JEP 503: Remove the 32-bit x86 Port

Apologies for the silence but I was out-of-action for several days and am still trying to catch up.

Obviously different JEPs have modeled things differently and there is no one-right-way. A lot of follow-up tasks have been identified and no doubt there will be even more after that. I personally would have liked to see more of the known tasks counted as part of the JEP. Hopefully a bunch of them may be ready by the time the JEP is ready anyway.

Hitting the Approve button to show "general consensus".

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

Marked as reviewed by dholmes (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/23906#pullrequestreview-2689161146


More information about the shenandoah-dev mailing list