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

Coleen Phillimore coleenp at openjdk.org
Mon Mar 10 12:30:59 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

Marked as reviewed by coleenp (Reviewer).

I do have a strong opinion on this.  The security manager removal is a good model to follow. Since this change removes the capability and 50K LOC, I think it's sufficient to say it implements the JEP.  The other removals are cleanups and don't need to have to be tied up in the process, and can happen when they're ready and reviewed.  There's no technical or practical reason to make this more difficult.

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

PR Review: https://git.openjdk.org/jdk/pull/23906#pullrequestreview-2670782075
PR Comment: https://git.openjdk.org/jdk/pull/23906#issuecomment-2710418458


More information about the build-dev mailing list