aboutsummaryrefslogtreecommitdiff
path: root/src/backends/tosaCommon/operatorMappings/ElementwiseBinaryOperator.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/backends/tosaCommon/operatorMappings/ElementwiseBinaryOperator.cpp')
-rw-r--r--src/backends/tosaCommon/operatorMappings/ElementwiseBinaryOperator.cpp24
1 files changed, 22 insertions, 2 deletions
diff --git a/src/backends/tosaCommon/operatorMappings/ElementwiseBinaryOperator.cpp b/src/backends/tosaCommon/operatorMappings/ElementwiseBinaryOperator.cpp
index 28e7ec8231..6c2b31437b 100644
--- a/src/backends/tosaCommon/operatorMappings/ElementwiseBinaryOperator.cpp
+++ b/src/backends/tosaCommon/operatorMappings/ElementwiseBinaryOperator.cpp
@@ -1,5 +1,5 @@
//
-// Copyright © 2022 Arm Ltd and Contributors. All rights reserved.
+// Copyright © 2022-2023 Arm Ltd and Contributors. All rights reserved.
// SPDX-License-Identifier: MIT
//
@@ -8,7 +8,8 @@
TosaSerializationBasicBlock* ConvertElementwiseBinaryToTosaOperator(const Layer* layer,
const LayerType type,
const std::vector<const TensorInfo*>& inputs,
- const std::vector<const TensorInfo*>& outputs)
+ const std::vector<const TensorInfo*>& outputs,
+ const ElementwiseBinaryDescriptor* descriptor)
{
std::string input0Name = std::string("input0_");
std::string input1Name = std::string("input1_");
@@ -43,6 +44,25 @@ TosaSerializationBasicBlock* ConvertElementwiseBinaryToTosaOperator(const Layer*
blockName = std::string("Op_ADD_block_") + GetUniqueTosaMappingID();
break;
}
+ case LayerType::ElementwiseBinary:
+ {
+ switch (descriptor->m_Operation)
+ {
+ case armnn::BinaryOperation::Maximum:
+ {
+ op = new TosaSerializationOperator(Op_MAXIMUM,
+ Attribute_NONE,
+ nullptr,
+ {input0Name, input1Name},
+ {outputName});
+ blockName = std::string("Op_MAXIMUM_block_") + GetUniqueTosaMappingID();
+ break;
+ }
+ default:
+ throw armnn::Exception("ConvertElementwiseBinaryToTosaOperator: Unsupported layer type.");
+ }
+ break;
+ }
case LayerType::Multiplication:
{
int32_t shift = 0;