aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/backends/RefWorkloads
diff options
context:
space:
mode:
Diffstat (limited to 'src/armnn/backends/RefWorkloads')
-rw-r--r--src/armnn/backends/RefWorkloads/ConvImpl.hpp7
-rw-r--r--src/armnn/backends/RefWorkloads/Merger.hpp2
-rw-r--r--src/armnn/backends/RefWorkloads/Splitter.hpp2
3 files changed, 7 insertions, 4 deletions
diff --git a/src/armnn/backends/RefWorkloads/ConvImpl.hpp b/src/armnn/backends/RefWorkloads/ConvImpl.hpp
index ecc5b14687..8b66b0b7d2 100644
--- a/src/armnn/backends/RefWorkloads/ConvImpl.hpp
+++ b/src/armnn/backends/RefWorkloads/ConvImpl.hpp
@@ -57,6 +57,11 @@ static void ConvImpl(ConvData data,
int32_t outputOffset,
bool depthwise = false)
{
+ if (data.m_Parameters.m_BiasEnabled && !biasData)
+ {
+ throw InvalidArgumentException("Bias is enabled but the bias data is invalid");
+ }
+
const TensorInfo& inputInfo0 = GetTensorInfo(data.m_Inputs[0]);
const TensorInfo& outputInfo0 = GetTensorInfo(data.m_Outputs[0]);
const TensorInfo& filterInfo = data.m_Weight->GetTensorInfo();
@@ -65,8 +70,6 @@ static void ConvImpl(ConvData data,
unsigned int channelsInput = filterInfo.GetShape()[1];
unsigned int channelsOutput = depthwise ? channelsInput * depthMult : filterInfo.GetShape()[0];
- BOOST_ASSERT(data.m_Parameters.m_BiasEnabled == false || biasData != nullptr);
-
unsigned int batchSize = outputInfo0.GetShape()[0];
unsigned int heightOutput = outputInfo0.GetShape()[2];
unsigned int widthOutput = outputInfo0.GetShape()[3];
diff --git a/src/armnn/backends/RefWorkloads/Merger.hpp b/src/armnn/backends/RefWorkloads/Merger.hpp
index 476ced76be..7d1bfab557 100644
--- a/src/armnn/backends/RefWorkloads/Merger.hpp
+++ b/src/armnn/backends/RefWorkloads/Merger.hpp
@@ -21,7 +21,7 @@ void Merger(const MergerQueueDescriptor& data)
for (unsigned int index = 0 ; index < outputInfo0.GetNumElements(); ++index)
{
- unsigned int indices[MaxNumOfTensorDimensions];
+ unsigned int indices[MaxNumOfTensorDimensions] = { 0 };
unsigned int indexRemainder = index;
unsigned int dimensionStride = outputInfo0.GetNumElements();
diff --git a/src/armnn/backends/RefWorkloads/Splitter.hpp b/src/armnn/backends/RefWorkloads/Splitter.hpp
index 74c4cb4e18..bd5da6cfe2 100644
--- a/src/armnn/backends/RefWorkloads/Splitter.hpp
+++ b/src/armnn/backends/RefWorkloads/Splitter.hpp
@@ -23,7 +23,7 @@ void Splitter(const SplitterQueueDescriptor& data)
for (unsigned int index = 0; index < inputInfo0.GetNumElements(); ++index)
{
- unsigned int indices[MaxNumOfTensorDimensions];
+ unsigned int indices[MaxNumOfTensorDimensions] = { 0 };
unsigned int indexRemainder = index;
unsigned int dimensionStride = inputInfo0.GetNumElements();