IVGCVSW-7676 Audit the use of ARMNN_ASSERT

 * Replace most ARMNN_ASSERT's from tflite parser
 * Replace most ARMNN_ASSERT's from onnx parser
 * Replace some ARMNN_ASSERT's from tflite delegate
 * Replace some ARMNN_ASSERT;s from include files

Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: Ie052e0180060203f28f64ebf54acad298f431caf
diff --git a/delegate/opaque/src/Split.hpp b/delegate/opaque/src/Split.hpp
index aec0fb6..2dbfa60 100644
--- a/delegate/opaque/src/Split.hpp
+++ b/delegate/opaque/src/Split.hpp
@@ -68,7 +68,11 @@
 
     const armnn::TensorInfo& inputTensorInfo = GetTensorInfoForTfLiteOpaqueTensor(tfLiteInputTensor);
 
-    ARMNN_ASSERT(GetTensorInfoForTfLiteOpaqueTensor(tfLiteAxisTensor).GetNumElements() == 1);
+    if (GetTensorInfoForTfLiteOpaqueTensor(tfLiteAxisTensor).GetNumElements() != 1)
+    {
+        return kTfLiteError;
+    }
+
     auto* axisTensorDataPtr = static_cast<uint32_t*>(TfLiteOpaqueTensorData(tfLiteAxisTensor));
     std::vector<int32_t> axisTensorData(axisTensorDataPtr, axisTensorDataPtr + 1);
     int32_t axis = axisTensorData[0];
@@ -230,8 +234,16 @@
 
     const armnn::TensorInfo& inputTensorInfo = GetTensorInfoForTfLiteOpaqueTensor(tfLiteInputTensor);
     const armnn::TensorInfo& splitsTensorInfo = GetTensorInfoForTfLiteOpaqueTensor(tfLiteSplitsTensor);
-    ARMNN_ASSERT(splitsTensorInfo.GetNumDimensions() == 1);
-    ARMNN_ASSERT(GetTensorInfoForTfLiteOpaqueTensor(tfLiteAxisTensor).GetNumElements() == 1);
+
+    if (splitsTensorInfo.GetNumDimensions() != 1)
+    {
+        return kTfLiteError;
+    }
+
+    if (GetTensorInfoForTfLiteOpaqueTensor(tfLiteAxisTensor).GetNumElements() != 1)
+    {
+        return kTfLiteError;
+    }
 
     auto* axisTensorDataPtr = static_cast<uint32_t*>(TfLiteOpaqueTensorData(tfLiteAxisTensor));
     std::vector<int32_t> axisTensorData(axisTensorDataPtr, axisTensorDataPtr + 1);
diff --git a/delegate/opaque/src/Transpose.hpp b/delegate/opaque/src/Transpose.hpp
index 5af03b3..4b2bdf3 100644
--- a/delegate/opaque/src/Transpose.hpp
+++ b/delegate/opaque/src/Transpose.hpp
@@ -65,9 +65,16 @@
     auto* permTensorDataPtr = static_cast<int32_t*>(TfLiteOpaqueTensorData(tfLiteInputTensor1));
     unsigned int numEl = TfLiteOpaqueTensorDim(tfLiteInputTensor1, 0);
 
-    ARMNN_ASSERT( numEl <= static_cast<int>(armnn::MaxNumOfTensorDimensions) );
+    if ( numEl > static_cast<int>(armnn::MaxNumOfTensorDimensions) )
+    {
+        return kTfLiteError;
+    }
+
     // Ensure only single dimension to the permutation tensor
-    ARMNN_ASSERT( TfLiteOpaqueTensorNumDims(tfLiteInputTensor1) == 1 );
+    if ( TfLiteOpaqueTensorNumDims(tfLiteInputTensor1) != 1 )
+    {
+        return kTfLiteError;
+    }
 
     armnn::TransposeDescriptor descriptor(armnn::PermutationVector(
             reinterpret_cast<const armnn::PermutationVector::ValueType *> (permTensorDataPtr),
@@ -99,7 +106,10 @@
     transposeLayer->SetBackendId(setBackend);
     ARMNN_ASSERT(transposeLayer != nullptr);
     // Permutation vector given to descriptor object
-    ARMNN_ASSERT(transposeLayer->GetNumInputSlots() == 1);
+    if (transposeLayer->GetNumInputSlots() != 1)
+    {
+        return kTfLiteError;
+    }
 
     armnn::IOutputSlot& outputSlot = transposeLayer->GetOutputSlot(0);
     outputSlot.SetTensorInfo(outputTensorInfo);
diff --git a/delegate/opaque/src/armnn_delegate.cpp b/delegate/opaque/src/armnn_delegate.cpp
index 60da293..bad1aba 100644
--- a/delegate/opaque/src/armnn_delegate.cpp
+++ b/delegate/opaque/src/armnn_delegate.cpp
@@ -368,7 +368,12 @@
         armnn::IConnectableLayer* layer = delegateData.m_Network->AddOutputLayer(bindingId);
 
         auto tensorInfo = GetTensorInfoForTfLiteOpaqueTensor(tensor);
-        ARMNN_ASSERT(delegateData.m_OutputSlotForNode[static_cast<unsigned long>(tensorId)] != nullptr);
+
+        if (delegateData.m_OutputSlotForNode[static_cast<unsigned long>(tensorId)] == nullptr)
+        {
+            return kTfLiteError;
+        }
+
         delegateData.m_OutputSlotForNode[static_cast<unsigned long>(tensorId)]->Connect(layer->GetInputSlot(0));
         outputBindings.push_back(std::make_pair(bindingId, tensorInfo));
     }