-
Notifications
You must be signed in to change notification settings - Fork 257
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Provide modeling and runtime detection of imm8 arm extension
Some extra thoughts could be done on the way we model instruction set extensions, I'm not happy with the way it's currently done.
- Loading branch information
1 parent
ead0742
commit 490d0f4
Showing
7 changed files
with
90 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
/*************************************************************************** | ||
* Copyright (c) Johan Mabille, Sylvain Corlay, Wolf Vollprecht and * | ||
* Martin Renou * | ||
* Copyright (c) QuantStack * | ||
* Copyright (c) Serge Guelton * | ||
* * | ||
* Distributed under the terms of the BSD 3-Clause License. * | ||
* * | ||
* The full license is in the file LICENSE, distributed with this software. * | ||
****************************************************************************/ | ||
|
||
#ifndef XSIMD_I8MM_NEON64_HPP | ||
#define XSIMD_I8MM_NEON64_HPP | ||
|
||
#include "../types/xsimd_i8mm_neon64_register.hpp" | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
/*************************************************************************** | ||
* Copyright (c) Johan Mabille, Sylvain Corlay, Wolf Vollprecht and * | ||
* Martin Renou * | ||
* Copyright (c) QuantStack * | ||
* Copyright (c) Serge Guelton * | ||
* * | ||
* Distributed under the terms of the BSD 3-Clause License. * | ||
* * | ||
* The full license is in the file LICENSE, distributed with this software. * | ||
****************************************************************************/ | ||
|
||
#ifndef XSIMD_I8MM_NEON64_REGISTER_HPP | ||
#define XSIMD_I8MM_NEON64_REGISTER_HPP | ||
|
||
#include "./xsimd_neon64_register.hpp" | ||
|
||
namespace xsimd | ||
{ | ||
template <typename arch> | ||
struct i8mm; | ||
|
||
/** | ||
* @ingroup architectures | ||
* | ||
* Neon64 + i8mm instructions | ||
*/ | ||
template <> | ||
struct i8mm<neon64> : neon64 | ||
{ | ||
static constexpr bool supported() noexcept { return XSIMD_WITH_I8MM_NEON64; } | ||
static constexpr bool available() noexcept { return true; } | ||
static constexpr unsigned version() noexcept { return generic::version(8, 2, 0); } | ||
static constexpr char const* name() noexcept { return "i8mm+neon64"; } | ||
}; | ||
|
||
#if XSIMD_WITH_I8MM_NEON64 | ||
namespace types | ||
{ | ||
|
||
XSIMD_DECLARE_SIMD_REGISTER_ALIAS(i8mm<neon64>, neon64); | ||
|
||
} | ||
#endif | ||
|
||
} | ||
#endif |