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