IVGCVSW-5007 Implement an Int32 reference Elementwise workload
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I6592169b74ac4294bc09647879aec0718c641f91
diff --git a/src/backends/reference/workloads/RefElementwiseWorkload.hpp b/src/backends/reference/workloads/RefElementwiseWorkload.hpp
index 264ddce..03683b1 100644
--- a/src/backends/reference/workloads/RefElementwiseWorkload.hpp
+++ b/src/backends/reference/workloads/RefElementwiseWorkload.hpp
@@ -35,33 +35,39 @@
std::unique_ptr<Encoder<OutType>> m_Output;
};
+template <typename DataType = float>
using RefAdditionWorkload =
- RefElementwiseWorkload<std::plus<float>,
+ RefElementwiseWorkload<std::plus<DataType>,
AdditionQueueDescriptor,
StringMapping::RefAdditionWorkload_Execute>;
+template <typename DataType = float>
using RefSubtractionWorkload =
- RefElementwiseWorkload<std::minus<float>,
+ RefElementwiseWorkload<std::minus<DataType>,
SubtractionQueueDescriptor,
StringMapping::RefSubtractionWorkload_Execute>;
+template <typename DataType = float>
using RefMultiplicationWorkload =
- RefElementwiseWorkload<std::multiplies<float>,
+ RefElementwiseWorkload<std::multiplies<DataType>,
MultiplicationQueueDescriptor,
StringMapping::RefMultiplicationWorkload_Execute>;
+template <typename DataType = float>
using RefDivisionWorkload =
- RefElementwiseWorkload<std::divides<float>,
+ RefElementwiseWorkload<std::divides<DataType>,
DivisionQueueDescriptor,
StringMapping::RefDivisionWorkload_Execute>;
+template <typename DataType = float>
using RefMaximumWorkload =
- RefElementwiseWorkload<armnn::maximum<float>,
+ RefElementwiseWorkload<armnn::maximum<DataType>,
MaximumQueueDescriptor,
StringMapping::RefMaximumWorkload_Execute>;
+template <typename DataType = float>
using RefMinimumWorkload =
- RefElementwiseWorkload<armnn::minimum<float>,
+ RefElementwiseWorkload<armnn::minimum<DataType>,
MinimumQueueDescriptor,
StringMapping::RefMinimumWorkload_Execute>;