aboutsummaryrefslogtreecommitdiff
path: root/src/cpu/kernels/CpuElementwiseUnaryKernel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu/kernels/CpuElementwiseUnaryKernel.cpp')
-rw-r--r--src/cpu/kernels/CpuElementwiseUnaryKernel.cpp30
1 files changed, 18 insertions, 12 deletions
diff --git a/src/cpu/kernels/CpuElementwiseUnaryKernel.cpp b/src/cpu/kernels/CpuElementwiseUnaryKernel.cpp
index e8211fe93e..335de78aca 100644
--- a/src/cpu/kernels/CpuElementwiseUnaryKernel.cpp
+++ b/src/cpu/kernels/CpuElementwiseUnaryKernel.cpp
@@ -44,12 +44,11 @@ namespace
{
static const std::vector<CpuElementwiseUnaryKernel::ElementwiseUnaryKernel> available_kernels =
{
-#if defined(ARM_COMPUTE_ENABLE_SVE)
{
"sve_fp32_elementwise_unary",
[](const DataTypeISASelectorData & data)
{
- return data.dt == DataType::F32 && data.isa.sve;
+ return (data.dt == DataType::F32 && data.isa.sve);
},
REGISTER_FP32_SVE(sve_fp32_elementwise_unary)
},
@@ -57,35 +56,42 @@ static const std::vector<CpuElementwiseUnaryKernel::ElementwiseUnaryKernel> avai
"sve_fp16_elementwise_unary",
[](const DataTypeISASelectorData & data)
{
- return (data.dt == DataType::F16) && data.isa.sve;
+ return (data.dt == DataType::F16 && data.isa.sve && data.isa.fp16);
},
REGISTER_FP16_SVE(sve_fp16_elementwise_unary),
},
{
"sve_s32_elementwise_unary",
- [](const DataTypeISASelectorData & data) { return data.dt == DataType::S32 && data.isa.sve; },
+ [](const DataTypeISASelectorData & data)
+ {
+ return (data.dt == DataType::S32 && data.isa.sve);
+ },
REGISTER_INTEGER_SVE(sve_s32_elementwise_unary),
},
-#endif // defined(ARM_COMPUTE_ENABLE_SVE)
-#if defined(ARM_COMPUTE_ENABLE_NEON)
{
"neon_fp32_elementwise_unary",
- [](const DataTypeISASelectorData & data) { return data.dt == DataType::F32; },
+ [](const DataTypeISASelectorData & data)
+ {
+ return data.dt == DataType::F32;
+ },
REGISTER_FP32_NEON(neon_fp32_elementwise_unary),
},
-#if defined(__ARM_FEATURE_FP16_VECTOR_ARITHMETIC)
{
"neon_fp16_elementwise_unary",
- [](const DataTypeISASelectorData & data) { return data.dt == DataType::F16 && data.isa.fp16; },
+ [](const DataTypeISASelectorData & data)
+ {
+ return data.dt == DataType::F16 && data.isa.fp16;
+ },
REGISTER_FP16_NEON(neon_fp16_elementwise_unary),
},
-#endif // defined(__ARM_FEATURE_FP16_VECTOR_ARITHMETIC)
{
"neon_s32_elementwise_unary",
- [](const DataTypeISASelectorData & data) { return data.dt == DataType::S32; },
+ [](const DataTypeISASelectorData & data)
+ {
+ return data.dt == DataType::S32;
+ },
REGISTER_INTEGER_NEON(neon_s32_elementwise_unary),
},
-#endif // defined(ARM_COMPUTE_ENABLE_NEON)
};
} // namespace