aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/Graph.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/armnn/Graph.cpp')
-rw-r--r--src/armnn/Graph.cpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/src/armnn/Graph.cpp b/src/armnn/Graph.cpp
index 6212c49eba..f0ef0e18f7 100644
--- a/src/armnn/Graph.cpp
+++ b/src/armnn/Graph.cpp
@@ -344,17 +344,24 @@ void Graph::AddCompatibilityLayers(std::map<BackendId, std::unique_ptr<IBackendI
{
auto srcPref = srcOutputSlot.GetTensorHandleFactoryId();
auto srcFactory = registry.GetFactory(srcPref);
- bool canExportImport = (factory->GetImportFlags() & srcFactory->GetExportFlags()) != 0;
- if (factory->SupportsMapUnmap() || canExportImport)
+ if (srcFactory)
{
- compOutputSlot.SetTensorHandleFactory(preference);
- found = true;
- break;
+ bool canExportImport =
+ (factory->GetImportFlags() & srcFactory->GetExportFlags()) != 0;
+ if (factory->SupportsMapUnmap() || canExportImport)
+ {
+ compOutputSlot.SetTensorHandleFactory(preference);
+ found = true;
+ break;
+ }
}
}
}
- BOOST_ASSERT_MSG(found, "Could not find a valid TensorHandle for compatibilty layer");
+ if (!found)
+ {
+ compOutputSlot.SetTensorHandleFactory(ITensorHandleFactory::LegacyFactoryId);
+ }
}
else
{