On Sun, 15 Jun 2025 04:50:40 GMT, Luigi Montoya <d...@openjdk.org> wrote:

>> I agree with your general premise, that the devkit should be created for the 
>> platform the devkit script is run on.
>> 
>> When you say that you should produce "native" x64 libraries on aarch64, do 
>> you mean that they should be run using x64 emulation? Otherwise you can't 
>> really have native x64 on aarch64... And even if that works, would it not be 
>> better to have pure native aarch64 cross-compiling to x64 (given that 
>> Microsoft in fact ships such compilers).
>
> When you download the Visual Studio Build Tools on an ARM64 machine, it 
> downloads the native binaries for the `x64` architecture under `Hostx64` and 
> the native binaries for `arm64` under `Hostarm64`. This devkit script does 
> not generate any binaries; it simply copies the Build Tools from Visual 
> Studio.

I find this confusing, but that's probably since I don't understand what 
Microsoft is shipping and where.

There are 4 relevant compilers:
1) A compiler that runs on x64 and generates x64 code (x64 native compilation)
2) A compiler that runs on x64 and generates aarch64 code (aarch64 
cross-compilation on x64)
3) A compiler that runs on aarch64 and generates aarch64 code (aarch64 native 
compilation)
4) A compiler that runs on aarch64 and generates x64 code (x64 
cross-compilation on aarch64)

For a devkit targeting x64, 1) and 2) should be included. For a devkit 
targeting aarch64, 3) (and ideally 4) as well) should be included. 

Are you saying that if you download VS on aarch64, you will get all four 
compilers installed?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/25259#discussion_r2150037490

Reply via email to