Skip to content

Fix windows on Neon #4289

Fix windows on Neon

Fix windows on Neon #4289

Workflow file for this run

name: Windows build
on: [push, pull_request]
jobs:
build-windows-arm64:
name: 'MSVC arm64'
defaults:
run:
shell: bash {0}
runs-on: windows-11-arm
steps:
- name: Setup compiler
uses: ilammy/msvc-dev-cmd@v1
with:
arch: arm64
- name: Setup Ninja
run: |
python3 -m pip install --upgrade pip setuptools wheel
python3 -m pip install ninja
- name: Checkout xsimd
uses: actions/checkout@v6
- name: Sanity check NEON intrinsics
shell: cmd
run: |
echo #include ^<arm_neon.h^> > sanity_neon.cpp
echo int main() { >> sanity_neon.cpp
echo uint8x16_t a = vdupq_n_u8(1); >> sanity_neon.cpp
echo uint8x16_t b = vdupq_n_u8(2); >> sanity_neon.cpp
echo uint8x16_t c = vaddq_u8(a, b); >> sanity_neon.cpp
echo (void)c; >> sanity_neon.cpp
echo return 0; >> sanity_neon.cpp
echo } >> sanity_neon.cpp
cl /nologo /EHsc sanity_neon.cpp /Fe:sanity_neon.exe
sanity_neon.exe
- name: Setup
run: cmake -B _build -DBUILD_TESTS=ON -DDOWNLOAD_DOCTEST=ON -DBUILD_BENCHMARK=ON -DBUILD_EXAMPLES=ON -DCMAKE_BUILD_TYPE=Release -G Ninja
- name: Build
run: cmake --build _build
- name: Testing xsimd
run: ./_build/test/test_xsimd