Skip to content

Commit

Permalink
WIP
Browse files Browse the repository at this point in the history
  • Loading branch information
serge-sans-paille committed Feb 26, 2024
1 parent 75742bc commit bfec1ca
Show file tree
Hide file tree
Showing 4 changed files with 43 additions and 63 deletions.
39 changes: 17 additions & 22 deletions .github/workflows/benchmark.yml
Original file line number Diff line number Diff line change
@@ -1,22 +1,17 @@
name: benchmark & examples
on: [push, pull_request]
concurrency:
group: ${{ github.workflow }}-${{ github.job }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: |
sudo apt install g++
- name: Setup
run: |
mkdir _build
cd _build && cmake .. -DBUILD_BENCHMARK=ON -DBUILD_EXAMPLES=ON -DCMAKE_BUILD_TYPE=Release
- name: Build
run: cmake --build _build
- name: Testing sequential
run: cmake --build _build --target xbenchmark

name : benchmark& examples
on : [ push, pull_request ] concurrency : group : $ { { github.workflow } }
- $ { { github.job } }
- $
{
{
github.ref
}
}
cancel - in - progress : true jobs : build : runs - on : ubuntu - latest steps : -uses : actions / checkout @v3
- name : Install dependencies
run : | sudo apt install g++ - name : Setup run : | mkdir _build cd _build&& cmake..- DBUILD_BENCHMARK
= ON - DBUILD_EXAMPLES = ON - DCMAKE_BUILD_TYPE = Release
- name : Build
run : cmake-- build _build
- name : Testing sequential
run : cmake-- build _build-- target xbenchmark
23 changes: 6 additions & 17 deletions .github/workflows/cxx-no-exceptions.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,6 @@
name: C++ -fno-except compatibility
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: |
sudo apt install g++
- name: Setup
run: |
mkdir _build
cd _build && cmake .. -DBUILD_TESTS=ON -DDOWNLOAD_DOCTEST=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-fno-exceptions
- name: Build
run: cmake --build _build

name : C++ - fno - except compatibility on : [ push, pull_request ] jobs : build : runs - on : ubuntu - latest steps : -uses : actions / checkout @v3
- name : Install dependencies
run : | sudo apt install g++ - name : Setup run : | mkdir _build cd _build&& cmake..- DBUILD_TESTS
= ON - DDOWNLOAD_DOCTEST = ON - DCMAKE_BUILD_TYPE = Release - DCMAKE_CXX_FLAGS = -fno - exceptions
- name : Build
run : cmake-- build _build
38 changes: 15 additions & 23 deletions .github/workflows/cxx-versions.yml
Original file line number Diff line number Diff line change
@@ -1,23 +1,15 @@
name: C++ compatibility build
on: [push, pull_request]
concurrency:
group: ${{ github.workflow }}-${{ github.job }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
cxx-version: [11, 14, 17, 20]
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: |
sudo apt install g++
- name: Setup
run: |
mkdir _build
cd _build && cmake .. -DBUILD_TESTS=ON -DDOWNLOAD_DOCTEST=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=${{matrix.cxx-version}}
- name: Build
run: cmake --build _build

name : C++ compatibility build
on : [ push, pull_request ] concurrency : group : $ { { github.workflow } }
- $ { { github.job } }
- $
{
{
github.ref
}
}
cancel - in - progress : true jobs : build : runs - on : ubuntu - latest strategy : matrix : cxx - version : [ 11, 14, 17, 20 ] steps : -uses : actions / checkout @v3
- name : Install dependencies
run : | sudo apt install g++ - name : Setup run : | mkdir _build cd _build&& cmake..- DBUILD_TESTS
= ON - DDOWNLOAD_DOCTEST = ON - DCMAKE_BUILD_TYPE = Release - DCMAKE_CXX_STANDARD = $ { { matrix.cxx - version } }
- name : Build
run : cmake-- build _build
6 changes: 5 additions & 1 deletion include/xsimd/arch/xsimd_neon.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -204,6 +204,10 @@ namespace xsimd
uint32x4_t, int32x4_t,
float32x4_t>;

using excluding_int64f32_dispatcher = neon_dispatcher_impl<uint8x16_t, int8x16_t,
uint16x8_t, int16x8_t,
uint32x4_t, int32x4_t>;

/**************************
* comparison dispatchers *
**************************/
Expand Down Expand Up @@ -754,7 +758,7 @@ namespace xsimd
inline batch<T, A> avg(batch<T, A> const& lhs, batch<T, A> const& rhs, requires_arch<neon>) noexcept
{
using register_type = typename batch<T, A>::register_type;
const detail::neon_dispatcher::binary dispatcher = {
const detail::excluding_int64f32_dispatcher::binary dispatcher = {
std::make_tuple(wrap::vrhaddq_u8, wrap::vrhaddq_s8, wrap::vrhaddq_u16, wrap::vrhaddq_s16,
wrap::vrhaddq_u32, wrap::vrhaddq_s32)
};
Expand Down

0 comments on commit bfec1ca

Please sign in to comment.