On Mon, 28 Oct 2024 18:09:41 GMT, Magnus Ihse Bursie <i...@openjdk.org> wrote:
> This is the implementation of [JEP 479: _Remove the Windows 32-bit x86 > Port_](https://openjdk.org/jeps/479). > > This is the summary of JEP 479: >> Remove the source code and build support for the Windows 32-bit x86 port. >> This port was [deprecated for removal in JDK >> 21](https://openjdk.org/jeps/449) with the express intent to remove it in a >> future release. For this patch, I have removed the parts of the build that I knew of that were related to 32-bit Windows. Furthermore, I have searched for all defines across the code base that are related to 32-bit Windows, and removed the parts of the code that is no longer relevant. I have also made a cross-codebase search for terms like "win" and "32" and glanced through the results (that was a huge list) to see if I could spot anything that might need attention. There might of course still be special code that was developed to take care of Windows 32-bit that is no longer needed, but that is hard to find automatically. If anyone knows about some particular code, please let me know! Most of the code was trivial to handle, but there are a few instances where I'd like some input from code owners. I've marked these with `FIXME` in the patch. src/hotspot/cpu/x86/interpreterRT_x86_32.cpp line 47: > 45: #ifdef AMD64 > 46: #ifdef _WIN64 > 47: // FIXME: This is weird. How can we ever have _WIN64 for 32-bit code? > I wonder what was meant. /ihse I think this piece of code will never get compiled and should be removed, and just the `#else` clause kept, but I guess some code archaeology is in place to figure out how and why this was added in the first place. src/hotspot/cpu/x86/sharedRuntime_x86_32.cpp line 1478: > 1476: int frame_complete = ((intptr_t)__ pc()) - start; > 1477: > 1478: // FIXME: The logic below do not apply anymore. Should we change > anything? /ihse This file is now Linux only, so we should be able to remove any Windows special code. Someone with better knowledge about the product needs to confirm that the comment is indeed correct, and that this was only needed on Windows. src/hotspot/cpu/x86/sharedRuntime_x86_32.cpp line 1714: > 1712: __ restore_cpu_control_state_after_jni(noreg); > 1713: > 1714: // FIXME: The logic below do not apply anymore. Should we change > anything? /ihse Same here as above. src/hotspot/cpu/x86/x86_32.ad line 3715: > 3713: %} > 3714: > 3715: // FIXME: The logic below do not apply anymore. Should we change > anything? /ihse Here too we don't need Windows-specific support, since this is Linux only. But I need confirmation that the comment is correct so this code is really just Windows-specific. ------------- PR Comment: https://git.openjdk.org/jdk/pull/21744#issuecomment-2442297077 PR Review Comment: https://git.openjdk.org/jdk/pull/21744#discussion_r1819532224 PR Review Comment: https://git.openjdk.org/jdk/pull/21744#discussion_r1819533829 PR Review Comment: https://git.openjdk.org/jdk/pull/21744#discussion_r1819533988 PR Review Comment: https://git.openjdk.org/jdk/pull/21744#discussion_r1819535092