aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/layers/SubtractionLayer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/armnn/layers/SubtractionLayer.cpp')
-rw-r--r--src/armnn/layers/SubtractionLayer.cpp33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/armnn/layers/SubtractionLayer.cpp b/src/armnn/layers/SubtractionLayer.cpp
new file mode 100644
index 0000000000..6239868b11
--- /dev/null
+++ b/src/armnn/layers/SubtractionLayer.cpp
@@ -0,0 +1,33 @@
+//
+// Copyright © 2017 Arm Ltd. All rights reserved.
+// SPDX-License-Identifier: MIT
+//
+#include "SubtractionLayer.hpp"
+
+#include "LayerCloneBase.hpp"
+
+#include <armnn/TypesUtils.hpp>
+#include <backends/WorkloadData.hpp>
+#include <backends/WorkloadFactory.hpp>
+
+namespace armnn
+{
+
+SubtractionLayer::SubtractionLayer(const char* name)
+ : ArithmeticBaseLayer(2, 1, LayerType::Subtraction, name)
+{
+}
+
+std::unique_ptr<IWorkload> SubtractionLayer::CreateWorkload(const Graph& graph,
+ const IWorkloadFactory& factory) const
+{
+ SubtractionQueueDescriptor descriptor;
+ return factory.CreateSubtraction(descriptor, PrepInfoAndDesc(descriptor, graph));
+}
+
+SubtractionLayer* SubtractionLayer::Clone(Graph& graph) const
+{
+ return CloneBase<SubtractionLayer>(graph, GetName());
+}
+
+} // namespace armnn