blob: 291b308b365781db58f58e8f2e3a8cf1842e50f7 [file] [log] [blame]
David Beckbc392452018-09-10 14:47:28 +01001//
Teresa Charlin588cbdf2022-01-19 15:55:37 +00002// Copyright © 2017 Arm Ltd and Contributors. All rights reserved.
David Beckbc392452018-09-10 14:47:28 +01003// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
Teresa Charlin588cbdf2022-01-19 15:55:37 +00008#include "NeonBaseWorkload.hpp"
Matthew Benthamd80a7122019-01-08 17:52:37 +00009
10#include <arm_compute/core/Error.h>
Mike Kelly07810fc2020-11-12 10:58:48 +000011#include <arm_compute/core/Types.h>
Matthew Benthamd80a7122019-01-08 17:52:37 +000012#include <arm_compute/runtime/IFunction.h>
13
14#include <memory>
David Beckbc392452018-09-10 14:47:28 +010015
16namespace armnn
17{
18
19arm_compute::Status NeonSubtractionWorkloadValidate(const TensorInfo& input0,
20 const TensorInfo& input1,
Mike Kelly07810fc2020-11-12 10:58:48 +000021 const TensorInfo& output,
22 const ActivationDescriptor* activationDescriptor = nullptr);
David Beckbc392452018-09-10 14:47:28 +010023
Teresa Charlin588cbdf2022-01-19 15:55:37 +000024class NeonSubtractionWorkload : public NeonBaseWorkload<SubtractionQueueDescriptor>
David Beckbc392452018-09-10 14:47:28 +010025{
26public:
Conor Kennedyb99480b2019-03-08 08:24:41 +000027 NeonSubtractionWorkload(const SubtractionQueueDescriptor& descriptor, const WorkloadInfo& info);
David Beckbc392452018-09-10 14:47:28 +010028 virtual void Execute() const override;
29
30private:
Matthew Benthamd80a7122019-01-08 17:52:37 +000031 std::unique_ptr<arm_compute::IFunction> m_SubLayer;
David Beckbc392452018-09-10 14:47:28 +010032};
33
34} //namespace armnn