Jackalope / simdcpp (public) (License: GPLv3 or later version) (since 2020-04-21) (hash sha1)
SIMD template library for C++.
Some wrapper types for simd intrisics headers.

Goals: make functions with SIMD optimizations easier,
write single template function for several SIMD levels
with possibility to select supported levels in runtime.

The library is incomplete, see TODO for details.

Compiled with clang-10.0.0, c++17.

To include to existing cmake project:

add_subdirectory(libs/simd)
target_include_directories(EXAMPLE PUBLIC ${SIMD_INCLUDE_DIRS})
target_link_libraries(EXAMPLE SIMD)
List of commits:
Subject Hash Author Date (UTC)
Changed cmake library interface e5efd7bd26b57e33add596482c2c124e86d03872 Jackalope 2020-05-12 07:00:42
changed constructor zero-initializer to default 9b4c900353e5d043c5608b28d40f962767f59c0a Jackalope 2020-05-08 19:52:04
changed include directory and cmake variables from simd to simdcpp 4b5f4d1c1dd6f0b73239b162ef90210dd0d162a3 Jackalope 2020-04-21 23:02:50
README library info 512c9def06c358c2ec64adadbfa47bce720555e4 Jackalope 2020-04-21 22:56:06
initial commit ddc2bf543cb03cd5248a0949dfa0cbd90df04202 Jackalope 2020-04-21 22:07:23
Commit e5efd7bd26b57e33add596482c2c124e86d03872 - Changed cmake library interface
Author: Jackalope
Author date (UTC): 2020-05-12 07:00
Committer name: Jackalope
Committer date (UTC): 2020-05-12 07:00
Parent(s): 9b4c900353e5d043c5608b28d40f962767f59c0a
Signing key:
Tree: 8511833e332796d44acaf48942829ca6f408a995
File Lines added Lines deleted
CMakeLists.txt 4 3
File CMakeLists.txt changed (mode: 100644) (index 6def166..7f33df8)
1 1 cmake_minimum_required(VERSION 3.5) cmake_minimum_required(VERSION 3.5)
2 set(SIMDCPP_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/include PARENT_SCOPE)
3 add_library(SIMDCPP STATIC
4 src/simd.cpp
2 add_library(SIMDCPP STATIC src/simd.cpp)
3 target_include_directories(SIMDCPP INTERFACE
4 ${CMAKE_CURRENT_SOURCE_DIR}/include
5 5 ) )
6 target_compile_features(SIMDCPP PUBLIC cxx_std_17)
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/Jackalope/simdcpp

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/Jackalope/simdcpp

Clone this repository using git:
git clone git://git.rocketgit.com/user/Jackalope/simdcpp

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main