Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/arch-consistency-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ concurrency:
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
steps:
- name: Checkout xsimd
uses: actions/checkout@v6
Expand Down
10 changes: 8 additions & 2 deletions .github/workflows/cross-arm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ concurrency:
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
runs-on: ${{ matrix.sys.runner || 'ubuntu-26.04' }}
name: '${{ matrix.target.arch }}, ${{ matrix.sys.compiler }} ${{ matrix.sys.version }}'
strategy:
matrix:
Expand All @@ -14,8 +14,14 @@ jobs:
- { arch: 'armv7-a', xsimd_arch: 'generic', dir: 'arm-linux-gnueabihf', flags: '-mfpu=vfpv3-d16', full: 'OFF' } # no neon
- { arch: 'armv8-a', xsimd_arch: 'neon64', dir: 'aarch64-linux-gnu', flags: '', full: 'ON' }
sys:
- { compiler: 'gcc', version: '10' }
- { compiler: 'gcc', version: '14' }
# gcc-10 is not shipped by Ubuntu 26.04
- { compiler: 'gcc', version: '10', runner: 'ubuntu-24.04' }
include:
- target: { arch: 'armv7-a', xsimd_arch: 'neon', dir: 'arm-linux-gnueabihf', flags: '-mfpu=neon', full: 'ON' }
sys: { compiler: 'gcc', version: '16' }
- target: { arch: 'armv8-a', xsimd_arch: 'neon64', dir: 'aarch64-linux-gnu', flags: '', full: 'ON' }
sys: { compiler: 'gcc', version: '16' }
steps:
- name: Checkout xsimd
uses: actions/checkout@v6
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/cross-ppc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ concurrency:

jobs:
build:
runs-on: ubuntu-latest
# ppc64 + clang 20 stays on 24.04: Ubuntu 26.04 clang defaults powerpc64 to IEEE long double, the gcc-12 cross sysroot is IBM (link error).
runs-on: ${{ (matrix.sys.compiler == 'clang' && matrix.target.platform == 'ppc64') && 'ubuntu-24.04' || 'ubuntu-26.04' }}
name: '${{ matrix.target.platform }}, ${{ matrix.sys.compiler }} ${{ matrix.sys.version }}'
strategy:
matrix:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/cross-rvv.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ concurrency:
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
name: 'RISC-V RVV${{ matrix.vector_bits }}'
strategy:
fail-fast: false
Expand Down
9 changes: 6 additions & 3 deletions .github/workflows/cross-sve.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,17 @@ concurrency:
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
name: 'Arm SVE${{ matrix.vector_bits }}'
runs-on: ${{ matrix.sys.runner }}
name: 'Arm SVE${{ matrix.vector_bits }}, gcc ${{ matrix.sys.version }}'
strategy:
matrix:
vector_bits:
- 128
- 256
- 512
sys:
- { version: '10', runner: 'ubuntu-24.04' }
- { version: '16', runner: 'ubuntu-26.04' }
steps:
- name: Checkout xsimd
uses: actions/checkout@v6
Expand All @@ -21,7 +24,7 @@ jobs:
uses: ./.github/actions/setup-cross-compiler-apt
with:
compiler: gcc
version: '10'
version: ${{ matrix.sys.version }}
target: aarch64-linux-gnu
qemu: 'true'
- name: Setup Ninja
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/emscripten.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ concurrency:
cancel-in-progress: true
jobs:
test:
runs-on: ubuntu-latest
runs-on: ubuntu-26.04

steps:
- name: Checkout
Expand All @@ -15,7 +15,7 @@ jobs:
with:
environment-name: xsimd
create-args: >-
microsoft::playwright=1.50.0
playwright-python=1.61.0
python
init-shell: bash

Expand Down
39 changes: 21 additions & 18 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,29 +9,32 @@ defaults:

jobs:
build:
runs-on: ubuntu-latest
runs-on: ${{ matrix.sys.os || 'ubuntu-26.04' }}
name: '${{ matrix.sys.compiler }} ${{ matrix.sys.version }} - ${{ matrix.sys.arch }} ${{ join(matrix.sys.flags, '' '') }}'
strategy:
matrix:
sys:
- { compiler: 'gcc', version: '13', arch: 'native', flags: ['xtl-complex'] }
- { compiler: 'gcc', version: '14', arch: 'avx', flags: [] }
- { compiler: 'gcc', version: '14', arch: 'avx2', flags: [] }
- { compiler: 'gcc', version: '13', arch: 'avx512bw', flags: [] }
- { compiler: 'gcc', version: '10', arch: 'avx512bw', flags: [] }
- { compiler: 'gcc', version: '14', arch: 'avx' }
- { compiler: 'gcc', version: '14', arch: 'avx2' }
- { compiler: 'gcc', version: '13', arch: 'avx512bw' }
- { compiler: 'gcc', version: '12', arch: 'native', flags: ['32bits'] }
- { compiler: 'gcc', version: '13', arch: 'avx512pf', flags: [] }
- { compiler: 'gcc', version: '13', arch: 'avx512vbmi', flags: [] }
- { compiler: 'gcc', version: '14', arch: 'avx512vbmi2', flags: [] }
- { compiler: 'gcc', version: '13', arch: 'avx512vnni_avx512bw', flags: [] }
- { compiler: 'clang', version: '16', arch: 'native', flags: ['xtl-complex'] }
- { compiler: 'clang', version: '17', arch: 'avx', flags: [] }
- { compiler: 'clang', version: '17', arch: 'sse3', flags: [] }
- { compiler: 'clang', version: '18', arch: 'avx512bw', flags: [] }
- { compiler: 'clang', version: '18', arch: 'avx_128', flags: [] }
- { compiler: 'clang', version: '18', arch: 'avx2_128', flags: [] }
- { compiler: 'clang', version: '18', arch: 'avx512vl_128', flags: [] }
- { compiler: 'clang', version: '18', arch: 'avx512vl_256', flags: [] }
- { compiler: 'gcc', version: '13', arch: 'avx512pf' }
- { compiler: 'gcc', version: '13', arch: 'avx512vbmi' }
- { compiler: 'gcc', version: '14', arch: 'avx512vbmi2' }
- { compiler: 'gcc', version: '13', arch: 'avx512vnni_avx512bw' }
- { compiler: 'gcc', version: '16', arch: 'avx2' }
- { compiler: 'clang', version: '17', arch: 'avx' }
- { compiler: 'clang', version: '17', arch: 'sse3' }
- { compiler: 'clang', version: '18', arch: 'avx512bw' }
- { compiler: 'clang', version: '18', arch: 'avx_128' }
- { compiler: 'clang', version: '18', arch: 'avx2_128' }
- { compiler: 'clang', version: '18', arch: 'avx512vl_128' }
- { compiler: 'clang', version: '18', arch: 'avx512vl_256' }
- { compiler: 'clang', version: '22', arch: 'avx2' }
# g++-10 and clang-16 are not shipped by Ubuntu 26.04
- { compiler: 'gcc', version: '10', arch: 'avx512bw', os: 'ubuntu-24.04' }
- { compiler: 'clang', version: '16', arch: 'native', flags: ['xtl-complex'], os: 'ubuntu-24.04' }
steps:
- name: Checkout xsimd
uses: actions/checkout@v6
Expand Down Expand Up @@ -95,7 +98,7 @@ jobs:
fi
build-extra:
runs-on: ubuntu-latest
runs-on: ubuntu-26.04
name: 'clang 18 - architectures and benchmark'
steps:
- name: Checkout xsimd
Expand Down
16 changes: 10 additions & 6 deletions .github/workflows/sanitizer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,26 +8,30 @@ defaults:
shell: bash -l {0}
jobs:
build:
runs-on: ubuntu-latest
name: 'sanitizer - ${{ matrix.flags }}'
runs-on: ${{ matrix.llvm.os }}
name: 'sanitizer - ${{ matrix.flags }} - llvm-${{ matrix.llvm.version }}'
strategy:
matrix:
flags:
- sanitize=address
- sanitize=undefined
- fast-math -fsanitize=undefined
llvm-version: [20]
llvm:
- version: 20
os: ubuntu-24.04
- version: 22
os: ubuntu-26.04
env:
CC: clang-${{ matrix.llvm-version }}
CXX: clang++-${{ matrix.llvm-version }}
CC: clang-${{ matrix.llvm.version }}
CXX: clang++-${{ matrix.llvm.version }}
steps:
- name: Checkout xsimd
uses: actions/checkout@v6
- name: Setup compiler
run: |
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh ${{ matrix.llvm-version }}
sudo ./llvm.sh ${{ matrix.llvm.version }}
- name: Configure build
run: |
cmake -B_build \
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/style-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ concurrency:
jobs:
formatting-check:
name: Format check
runs-on: ubuntu-latest
runs-on: ubuntu-26.04
steps:
- uses: actions/checkout@v6
- run: sudo apt install clang-format
Expand All @@ -16,15 +16,15 @@ jobs:
! grep -q '^diff ' diff.patch
inlining-check:
runs-on: ubuntu-latest
runs-on: ubuntu-26.04
name: Check inline keyword usage
steps:
- uses: actions/checkout@v6
- run: sudo apt install clang-tools
- run: sh ./test/check_inline_specifier.sh .

include-check:
runs-on: ubuntu-latest
runs-on: ubuntu-26.04
name: Check unused standard includes
steps:
- uses: actions/checkout@v6
Expand All @@ -33,7 +33,7 @@ jobs:

clang-tidy-check:
name: Clang-tidy check (x86_64)
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- run: sudo apt install clang-tidy
Expand Down
Loading