Repository navigation
Conversation
xsimd 14.2.0 includes the MSVC-only <arm64_neon.h> whenever _WIN32 is defined, which breaks Windows aarch64 builds with mingw-w64 toolchains that don't provide that header. xsimd 14.3.0 restricts it to MSVC.
|
|
There was a problem hiding this comment.
Copilot review overview
🔵 Needs a closer look
No concrete defects were identified, but the archive checksum and Arrow build compatibility remain independently unverified.
Review effort: Balanced
Findings: None
What changed in this PR
Updates bundled xsimd to fix Windows ARM64 builds using mingw-w64 toolchains.
Changes:
- Bumps bundled xsimd from 14.2.0 to 14.3.0 and updates its SHA256 checksum.
- Leaves the minimum system xsimd version unchanged.
| File | Description |
|---|---|
| cpp/thirdparty/versions.txt | Updates the bundled xsimd version and checksum. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
@github-actions crossbow submit -g cpp wheel |
|
|
@github-actions crossbow submit -g cpp |
|
@github-actions crossbow submit -g wheel |
|
Revision: 7000911 Submitted crossbow builds: ursacomputing/crossbow @ actions-b43e13e6b0 |
|
Revision: 7000911 Submitted crossbow builds: ursacomputing/crossbow @ actions-d270b0339a |
Rationale for this change
xsimd 14.2.0 includes the MSVC-only
<arm64_neon.h>header whenever_WIN32and NEON64 are defined:_WIN32is also defined by mingw-w64 toolchains (e.g. MSYS2 clangarm64, llvm-mingw), which do not provide<arm64_neon.h>, so building Arrow C++ for Windows aarch64 with such a toolchain fails on the missing header. xsimd 14.3.0 narrows the condition todefined(_MSC_VER) && !defined(__clang__), so mingw-w64 builds use<arm_neon.h>.We currently work around this in the R Windows toolchain (https://github.com/r-windows/ucrt-libs) by patching
versions.txtto 14.3.0 before building Arrow.What changes are included in this PR?
Bump
ARROW_XSIMD_BUILD_VERSIONandARROW_XSIMD_BUILD_SHA256_CHECKSUMincpp/thirdparty/versions.txtto xsimd 14.3.0. I left the minimum required version for system xsimd (14.2.0inThirdpartyToolchain.cmake) unchanged, since the issue only affects the bundled build.Are these changes tested?
Not run locally; relying on CI to verify that Arrow still builds and passes tests against xsimd 14.3.0. The checksum was computed from
https://github.com/xtensor-stack/xsimd/archive/14.3.0.tar.gz.Are there any user-facing changes?
No.