RFR: 8339783: Implement JEP 479: Remove the Windows 32-bit x86 Port [v17]
Magnus Ihse Bursie
ihse at openjdk.org
Mon Nov 4 16:06:41 UTC 2024
On Fri, 1 Nov 2024 18:11:13 GMT, Vladimir Kozlov <kvn at openjdk.org> wrote:
>> Magnus Ihse Bursie has updated the pull request incrementally with two additional commits since the last revision:
>>
>> - Remove superfluous check for 64-bit on Windows in MacroAssembler::call_clobbered_xmm_registers
>> - Remove windows-32-bit code in CompilerConfig::ergo_initialize
>
> Okay, I am confuse about `_WIN32` vs `WIN32`.
>
> You are saying that "_WIN32 is still defined on 64-bit Windows" but you are removing code guarded by `#ifdef _WIN32`
> And our make files defines `WIN32` for all Windows OSs: https://github.com/openjdk/jdk/blob/master/make/autoconf/flags-cflags.m4#L470
@vnkozlov
> * There is use of `WIN32` instead of `_WIN32`.
>
> * There are comments referencing `Win32` which we need to rename to `Windows` to avoid confusion.
>
> * There is `class os::win32` in `os_windows.hpp` which is batter to rename to avoid confusion. Could be done in separate RFE.
>
> * "Note that, oddly enough, _WIN32 is still defined on 64-bit Windows". If it is really true, I would still suggest to use our variable `_WINDOWS` for that.
Ok. Let's start with being on the same page about the meaning of "win32". This is what Microsoft has to say about it:
"The Win32 API (also called the Windows API) is the native platform for Windows apps. [T]he same functions are generally supported on 32-bit and 64-bit Windows."
https://learn.microsoft.com/en-us/windows/win32/apiindex/api-index-portal#win32-windows-api
I'd say that they are the authoritative source on the subject. :-)
So technically there is nothing **wrong** with stuff targeting Windows being called "win32", even if we only support 64-bit Windows going forward.
With that said, it is sure as heck confusing! Which also apparently Microsoft acknowledges by phasing in the term "Windows API". So I agree that we should try to rename everything currently called "win32" into "windows". But I'd rather see such a global rename refactoring, that will also affect the 64-bit Windows platforms, to be done as a separate, follow-up PR. Are you okay with that?
I will, however, do an additional round of checking all the grep hits on "win32" left to double-and-triple check that they indeed are not 32-bit specific.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/21744#issuecomment-2455104589
More information about the build-dev
mailing list