-
Notifications
You must be signed in to change notification settings - Fork 301
40 lines (39 loc) · 1.3 KB
/
windows.yml
File metadata and controls
40 lines (39 loc) · 1.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
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