diff options
Diffstat (limited to 'ModelToINetworkConverter.cpp')
-rw-r--r-- | ModelToINetworkConverter.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/ModelToINetworkConverter.cpp b/ModelToINetworkConverter.cpp index 41716b0f..2dc302ed 100644 --- a/ModelToINetworkConverter.cpp +++ b/ModelToINetworkConverter.cpp @@ -1,5 +1,5 @@ // -// Copyright © 2017 Arm Ltd. All rights reserved. +// Copyright © 2017 Arm Ltd and Contributors. All rights reserved. // SPDX-License-Identifier: MIT // @@ -35,7 +35,6 @@ ModelToINetworkConverter<HalPolicy>::ModelToINetworkConverter(const std::vector< { m_ConversionResult = ConversionResult::UnsupportedFeature; ALOGE("%s: Unexpected exception: %s", __func__, e.what()); - assert(false); } } @@ -95,7 +94,6 @@ void ModelToINetworkConverter<HalPolicy>::Convert() ALOGV("ModelToINetworkConverter::Convert(): getMainModel(m_Model).operands[inputIndex];"); const HalOperand& operand = getMainModel(m_Model).operands[inputIndex]; ALOGV("ModelToINetworkConverter::Convert(): GetTensorInfoForOperand(operand)"); - const armnn::TensorInfo& tensor = GetTensorInfoForOperand(operand); const std::string layerName = "Input_" + std::to_string(i); ALOGV("ModelToINetworkConverter::Convert(): m_Data.m_Network->AddInputLayer(i, layerName.c_str())"); armnn::IConnectableLayer* layer = m_Data.m_Network->AddInputLayer(i, layerName.c_str()); @@ -192,12 +190,15 @@ void ModelToINetworkConverter<HalPolicy>::Convert() { // outputs in android nn are represented by operands uint32_t outputIndex = getMainModel(m_Model).outputIndexes[i]; - const HalOperand& operand = getMainModel(m_Model).operands[outputIndex]; - const armnn::TensorInfo& tensor = GetTensorInfoForOperand(operand); const std::string layerName = "Output_" + std::to_string(i); armnn::IConnectableLayer* layer = m_Data.m_Network->AddOutputLayer(i, layerName.c_str()); - assert(m_Data.m_OutputSlotForOperand[outputIndex]); + if (!m_Data.m_OutputSlotForOperand[outputIndex]) + { + Fail("%s: OutputSlot %i does not exist", __func__, outputIndex); + m_ConversionResult = ConversionResult::UnsupportedFeature; + break; + } m_Data.m_OutputSlotForOperand[outputIndex]->Connect(layer->GetInputSlot(0)); } } @@ -213,7 +214,10 @@ template<typename HalPolicy> bool ModelToINetworkConverter<HalPolicy>::IsOperationSupported(uint32_t operationIndex) const { std::map<uint32_t, bool>::const_iterator it = m_OperationSupported.find(operationIndex); - assert(it != m_OperationSupported.end()); + if (it == m_OperationSupported.end()) + { + return Fail("%s: Unrecognised Operation Index: %i", __func__, operationIndex); + } return it->second; } |