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
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_avx2_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ namespace xsimd
static constexpr bool supported() { return XSIMD_WITH_AVX2; }
static constexpr bool available() { return true; }
static constexpr unsigned version() { return generic::version(2, 2, 0); }
static constexpr char const* name() { return "avx2"; }
};

#if XSIMD_WITH_AVX2
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_avx512bw_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ namespace xsimd {
static constexpr bool supported() { return XSIMD_WITH_AVX512BW; }
static constexpr bool available() { return true; }
static constexpr unsigned version() { return generic::version(3, 4, 0); }
static constexpr char const* name() { return "avx512bw"; }
};

#if XSIMD_WITH_AVX512BW
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_avx512cd_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ namespace xsimd {
static constexpr bool supported() { return XSIMD_WITH_AVX512BW; }
static constexpr bool available() { return true; }
static constexpr unsigned version() { return generic::version(3, 2, 0); }
static constexpr char const* name() { return "avx512cd"; }
};

#if XSIMD_WITH_AVX512BW
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_avx512dq_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ namespace xsimd {
static constexpr bool supported() { return XSIMD_WITH_AVX512DQ; }
static constexpr bool available() { return true; }
static constexpr unsigned version() { return generic::version(3, 3, 0); }
static constexpr char const* name() { return "avx512dq"; }
};

#if XSIMD_WITH_AVX512DQ
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_avx512f_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ namespace xsimd {
static constexpr unsigned version() { return generic::version(3, 1, 0); }
static constexpr std::size_t alignment() { return 64; }
static constexpr bool requires_alignment() { return true; }
static constexpr char const* name() { return "avx512f"; }
};

#if XSIMD_WITH_AVX512F
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_avx_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ namespace xsimd {
static constexpr unsigned version() { return generic::version(2, 1, 0); }
static constexpr std::size_t alignment() { return 32; }
static constexpr bool requires_alignment() { return true; }
static constexpr char const* name() { return "avx"; }
};
}

Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_fma3_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ namespace xsimd {
static constexpr bool supported() { return XSIMD_WITH_FMA3; }
static constexpr bool available() { return true; }
static constexpr unsigned version() { return generic::version(1, 5, 0); }
static constexpr char const* name() { return "sse4.2+fma"; }
};

#if XSIMD_WITH_FMA3
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_fma5_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ namespace xsimd {
static constexpr bool supported() { return XSIMD_WITH_FMA5; }
static constexpr bool available() { return true; }
static constexpr unsigned version() { return generic::version(2, 3, 0); }
static constexpr char const* name() { return "avx2+fma"; }
};

#if XSIMD_WITH_FMA5
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_neon64_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ namespace xsimd
static constexpr bool requires_alignment() { return true; }
static constexpr std::size_t alignment() { return 16; }
static constexpr unsigned version() { return generic::version(8, 1, 0); }
static constexpr char const* name() { return "arm64+neon"; }
};

#if XSIMD_WITH_NEON64
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_neon_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ namespace xsimd
static constexpr bool requires_alignment() { return true; }
static constexpr std::size_t alignment() { return 16; }
static constexpr unsigned version() { return generic::version(7, 0, 0); }
static constexpr char const* name() { return "arm32+neon"; }
};

#if XSIMD_WITH_NEON
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_sse2_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ namespace xsimd
static constexpr bool requires_alignment() { return true; }
static constexpr unsigned version() { return generic::version(1, 2, 0); }
static constexpr std::size_t alignment() { return 16; }
static constexpr char const* name() { return "sse2"; }
};

#if XSIMD_WITH_SSE2
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_sse3_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ namespace xsimd
static constexpr bool supported() { return XSIMD_WITH_SSE3; }
static constexpr bool available() { return true; }
static constexpr unsigned version() { return generic::version(1, 3, 0); }
static constexpr char const* name() { return "sse3"; }
};

#if XSIMD_WITH_SSE3
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_sse4_1_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ namespace xsimd
static constexpr bool supported() { return XSIMD_WITH_SSE4_1; }
static constexpr bool available() { return true; }
static constexpr unsigned version() { return generic::version(1, 4, 1); }
static constexpr char const* name() { return "sse4.1"; }
};

#if XSIMD_WITH_SSE4_1
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_sse4_2_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ namespace xsimd
static constexpr bool supported() { return XSIMD_WITH_SSE4_2; }
static constexpr bool available() { return true; }
static constexpr unsigned version() { return generic::version(1, 4, 2); }
static constexpr char const* name() { return "sse4.2"; }
};

#if XSIMD_WITH_SSE4_2
Expand Down
1 change: 1 addition & 0 deletions include/xsimd/types/xsimd_ssse3_register.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ namespace xsimd
static constexpr bool supported() { return XSIMD_WITH_SSSE3; }
static constexpr bool available() { return true; }
static constexpr unsigned version() { return generic::version(1, 3, 1); }
static constexpr char const* name() { return "ssse3"; }
};

#if XSIMD_WITH_SSSE3
Expand Down
7 changes: 7 additions & 0 deletions test/test_arch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,13 @@ TEST(arch, supported)
xsimd::supported_architectures::for_each(check_supported{});
}

TEST(arch, name)
{
constexpr char const* name = xsimd::default_arch::name();
(void)name;
}


struct check_available {
template<class Arch>
void operator()(Arch) const {
Expand Down