diff options
Diffstat (limited to 'src/backends/tosaCommon/operatorMappings/ElementwiseBinaryOperator.cpp')
-rw-r--r-- | src/backends/tosaCommon/operatorMappings/ElementwiseBinaryOperator.cpp | 24 |
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; |