// // Copyright © 2017 Arm Ltd. All rights reserved. // SPDX-License-Identifier: MIT // #pragma once #include #include #include #include "Maximum.hpp" #include "Minimum.hpp" #include "StringMapping.hpp" namespace armnn { template class RefElementwiseWorkload : public TypedWorkload { public: using TypedWorkload::m_Data; using TypedWorkload::TypedWorkload; void Execute() const override; }; using RefAdditionFloat32Workload = RefElementwiseWorkload, DataType::Float32, AdditionQueueDescriptor, StringMapping::RefAdditionWorkload_Execute>; using RefAdditionUint8Workload = RefElementwiseWorkload, DataType::QuantisedAsymm8, AdditionQueueDescriptor, StringMapping::RefAdditionWorkload_Execute>; using RefSubtractionFloat32Workload = RefElementwiseWorkload, DataType::Float32, SubtractionQueueDescriptor, StringMapping::RefSubtractionWorkload_Execute>; using RefSubtractionUint8Workload = RefElementwiseWorkload, DataType::QuantisedAsymm8, SubtractionQueueDescriptor, StringMapping::RefSubtractionWorkload_Execute>; using RefMultiplicationFloat32Workload = RefElementwiseWorkload, DataType::Float32, MultiplicationQueueDescriptor, StringMapping::RefMultiplicationWorkload_Execute>; using RefMultiplicationUint8Workload = RefElementwiseWorkload, DataType::QuantisedAsymm8, MultiplicationQueueDescriptor, StringMapping::RefMultiplicationWorkload_Execute>; using RefDivisionFloat32Workload = RefElementwiseWorkload, DataType::Float32, DivisionQueueDescriptor, StringMapping::RefDivisionWorkload_Execute>; using RefDivisionUint8Workload = RefElementwiseWorkload, DataType::QuantisedAsymm8, DivisionQueueDescriptor, StringMapping::RefDivisionWorkload_Execute>; using RefMaximumFloat32Workload = RefElementwiseWorkload, DataType::Float32, MaximumQueueDescriptor, StringMapping::RefMaximumWorkload_Execute>; using RefMaximumUint8Workload = RefElementwiseWorkload, DataType::QuantisedAsymm8, MaximumQueueDescriptor, StringMapping::RefMaximumWorkload_Execute>; using RefMinimumFloat32Workload = RefElementwiseWorkload, DataType::Float32, MinimumQueueDescriptor, StringMapping::RefMinimumWorkload_Execute>; using RefMinimumUint8Workload = RefElementwiseWorkload, DataType::QuantisedAsymm8, MinimumQueueDescriptor, StringMapping::RefMinimumWorkload_Execute>; } // armnn