aboutsummaryrefslogtreecommitdiff
path: root/src/backends/backendsCommon/WorkloadFactory.cpp
diff options
context:
space:
mode:
authorMatthew Bentham <matthew.bentham@arm.com>2021-06-29 15:18:32 +0100
committerMatthew Bentham <matthew.bentham@arm.com>2021-06-29 15:23:30 +0100
commit6f24b1aac9cbf5dfb3918cb59a7e903ddcec420e (patch)
treed2e5695e692807d8767206eb151f3e0378f0b16f /src/backends/backendsCommon/WorkloadFactory.cpp
parentb082ed076b489f17bad3663005801b251d642108 (diff)
downloadarmnn-6f24b1aac9cbf5dfb3918cb59a7e903ddcec420e.tar.gz
Fix segfault in IsLayerSupportedTests
DummyLayer<> was not implemented for QLstmLayer, so the default implementation was getting called. This caused null weights to be dereferenced in WorkloadFactory during IsLayerSupportedTests. While this would often not cause a crash, it could be reliably detected by running the UnitTests with Undefined Behavior Sanitizer. Change-Id: I7a49b18b8292632436b0aae52d6607e28fdd1839 Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Diffstat (limited to 'src/backends/backendsCommon/WorkloadFactory.cpp')
-rw-r--r--src/backends/backendsCommon/WorkloadFactory.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/backends/backendsCommon/WorkloadFactory.cpp b/src/backends/backendsCommon/WorkloadFactory.cpp
index 61ad20995b..dc70e6a9c2 100644
--- a/src/backends/backendsCommon/WorkloadFactory.cpp
+++ b/src/backends/backendsCommon/WorkloadFactory.cpp
@@ -834,6 +834,9 @@ bool IWorkloadFactory::IsLayerConfigurationSupported(const BackendId& backendId,
LstmInputParamsInfo paramsInfo;
// Basic parameters
+ ARMNN_ASSERT(cLayer->m_BasicParameters.m_InputToForgetWeights.get() != nullptr);
+ ARMNN_ASSERT(cLayer->m_BasicParameters.m_InputToCellWeights.get() != nullptr);
+ ARMNN_ASSERT(cLayer->m_BasicParameters.m_InputToOutputWeights.get() != nullptr);
paramsInfo.m_InputToForgetWeights = &cLayer->m_BasicParameters.m_InputToForgetWeights->GetTensorInfo();
paramsInfo.m_InputToCellWeights = &cLayer->m_BasicParameters.m_InputToCellWeights->GetTensorInfo();
paramsInfo.m_InputToOutputWeights = &cLayer->m_BasicParameters.m_InputToOutputWeights->GetTensorInfo();