From 908148472f7467e3805ffc91dbd5a0169a4b31ec Mon Sep 17 00:00:00 2001 From: AntoinePrv Date: Fri, 11 Sep 2026 10:35:55 +0200 Subject: [PATCH 1/2] Update CI --- .github/workflows/linux.yml | 27 ++++++++++++--------------- .github/workflows/osx.yml | 4 ++-- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 5df542f..0df76c2 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -14,7 +14,7 @@ jobs: matrix: sys: - { compiler: 'gcc', version: '12', flags: 'force_no_instr_set' } - - { compiler: 'gcc', version: '13', flags: 'enable_xtl_complex' } + - { compiler: 'gcc', version: '13', flags: 'default' } - { compiler: 'gcc', version: '14', flags: 'avx' } - { compiler: 'gcc', version: '13', flags: 'avx512' } - { compiler: 'gcc', version: '12', flags: 'i386' } @@ -23,7 +23,7 @@ jobs: - { compiler: 'gcc', version: '14', flags: 'avx512vbmi2' } - { compiler: 'gcc', version: '13', flags: 'avx512vnni' } - { compiler: 'clang', version: '16', flags: 'force_no_instr_set' } - - { compiler: 'clang', version: '16', flags: 'enable_xtl_complex' } + - { compiler: 'clang', version: '16', flags: 'default' } - { compiler: 'clang', version: '17', flags: 'avx' } - { compiler: 'clang', version: '17', flags: 'sse3' } - { compiler: 'clang', version: '18', flags: 'avx512' } @@ -55,9 +55,9 @@ jobs: CXX=clang++-$LLVM_VERSION echo "CXX=$CXX" >> $GITHUB_ENV - name: Checkout xsimd-algorithm - uses: actions/checkout@v3 + uses: actions/checkout@v7 - name: Set conda environment - uses: mamba-org/setup-micromamba@main + uses: mamba-org/setup-micromamba@v2 with: environment-name: myenv environment-file: environment-dev.yml @@ -71,29 +71,26 @@ jobs: CC: ${{ env.CC }} CXX: ${{ env.CXX }} run: | - if [[ '${{ matrix.sys.flags }}' == 'enable_xtl_complex' ]]; then - CMAKE_EXTRA_ARGS="$CMAKE_EXTRA_ARGS -DENABLE_XTL_COMPLEX=ON" - fi if [[ '${{ matrix.sys.flags }}' == 'avx' ]]; then - CMAKE_EXTRA_ARGS="$CMAKE_EXTRA_ARGS -DTARGET_ARCH=sandybridge" + CXX_FLAGS="$CXX_FLAGS -march=sandybridge" fi if [[ '${{ matrix.sys.flags }}' == 'sse3' ]]; then - CMAKE_EXTRA_ARGS="$CMAKE_EXTRA_ARGS -DTARGET_ARCH=nocona" + CXX_FLAGS="$CXX_FLAGS -march=nocona" fi if [[ '${{ matrix.sys.flags }}' == 'avx512' ]]; then - CMAKE_EXTRA_ARGS="$CMAKE_EXTRA_ARGS -DTARGET_ARCH=skylake-avx512" + CXX_FLAGS="$CXX_FLAGS -march=skylake-avx512" fi if [[ '${{ matrix.sys.flags }}' == 'avx512pf' ]]; then - CMAKE_EXTRA_ARGS="$CMAKE_EXTRA_ARGS -DTARGET_ARCH=knl" + CXX_FLAGS="$CXX_FLAGS -march=knl" fi if [[ '${{ matrix.sys.flags }}' == 'avx512vbmi' ]]; then - CMAKE_EXTRA_ARGS="$CMAKE_EXTRA_ARGS -DTARGET_ARCH=cannonlake" + CXX_FLAGS="$CXX_FLAGS -march=cannonlake" fi if [[ '${{ matrix.sys.flags }}' == 'avx512vbmi2' ]]; then - CMAKE_EXTRA_ARGS="$CMAKE_EXTRA_ARGS -DTARGET_ARCH=icelake-server" + CXX_FLAGS="$CXX_FLAGS -march=icelake-server" fi if [[ '${{ matrix.sys.flags }}' == 'avx512vnni' ]]; then - CMAKE_EXTRA_ARGS="$CMAKE_EXTRA_ARGS -DTARGET_ARCH=knm" + CXX_FLAGS="$CXX_FLAGS -march=knm" fi if [[ '${{ matrix.sys.flags }}' == 'i386' ]]; then CXX_FLAGS="$CXX_FLAGS -m32" @@ -114,7 +111,7 @@ jobs: -DCMAKE_C_COMPILER=$CC \ -DCMAKE_CXX_COMPILER=$CXX \ $CMAKE_EXTRA_ARGS \ - -DCMAKE_CXX_FLAGS='$CXX_FLAGS' \ + -DCMAKE_CXX_FLAGS="$CXX_FLAGS" \ -G Ninja - name: Build run: ninja -C _build diff --git a/.github/workflows/osx.yml b/.github/workflows/osx.yml index af3e380..f86bead 100644 --- a/.github/workflows/osx.yml +++ b/.github/workflows/osx.yml @@ -20,10 +20,10 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Set conda environment - uses: mamba-org/setup-micromamba@main + uses: mamba-org/setup-micromamba@v2 with: environment-name: myenv environment-file: environment-dev.yml From fd6c4bfdab5bf89cae59ddee7d0d5cd585215e1a Mon Sep 17 00:00:00 2001 From: AntoinePrv Date: Fri, 11 Sep 2026 10:43:45 +0200 Subject: [PATCH 2/2] Fix store_aligned --- include/xsimd_algorithm/stl/reduce.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/xsimd_algorithm/stl/reduce.hpp b/include/xsimd_algorithm/stl/reduce.hpp index 1a42913..9116483 100644 --- a/include/xsimd_algorithm/stl/reduce.hpp +++ b/include/xsimd_algorithm/stl/reduce.hpp @@ -72,7 +72,7 @@ namespace xsimd // reduce across batch alignas(batch_type) std::array arr; - xsimd::store_aligned(arr.data(), batch_init); + batch_init.store_aligned(arr.data()); for (auto x : arr) init = binfun(init, x);