diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/armnn/Network.cpp | 6 | ||||
-rw-r--r-- | src/backends/neon/NeonTensorHandleFactory.cpp | 2 | ||||
-rw-r--r-- | src/backends/neon/test/NeonEndToEndTests.cpp | 10 |
3 files changed, 12 insertions, 6 deletions
diff --git a/src/armnn/Network.cpp b/src/armnn/Network.cpp index f4bfc7a88e..b1cb5a871a 100644 --- a/src/armnn/Network.cpp +++ b/src/armnn/Network.cpp @@ -699,6 +699,12 @@ EdgeStrategy CalculateEdgeStrategy(BackendsMap& backends, for (auto&& pref : dstPrefs) { ITensorHandleFactory* dstFactory = registry.GetFactory(pref); + + // Handles some cases where dstFactory is null when Neon memory import is disabled + if (!dstFactory) { + return EdgeStrategy::CopyToTarget; + } + if ((dstFactory->GetImportFlags() & srcFactory->GetExportFlags()) != 0) { return EdgeStrategy::ExportToTarget; diff --git a/src/backends/neon/NeonTensorHandleFactory.cpp b/src/backends/neon/NeonTensorHandleFactory.cpp index 80f46d2237..d5fef4ea95 100644 --- a/src/backends/neon/NeonTensorHandleFactory.cpp +++ b/src/backends/neon/NeonTensorHandleFactory.cpp @@ -104,7 +104,7 @@ MemorySourceFlags NeonTensorHandleFactory::GetExportFlags() const MemorySourceFlags NeonTensorHandleFactory::GetImportFlags() const { - return static_cast<MemorySourceFlags>(MemorySource::Malloc); + return 0; } } // namespace armnn diff --git a/src/backends/neon/test/NeonEndToEndTests.cpp b/src/backends/neon/test/NeonEndToEndTests.cpp index 5146a598c7..26c06758a4 100644 --- a/src/backends/neon/test/NeonEndToEndTests.cpp +++ b/src/backends/neon/test/NeonEndToEndTests.cpp @@ -366,27 +366,27 @@ BOOST_AUTO_TEST_CASE(NeonExportNonAlignedOutputPointerTest) ExportNonAlignedOutputPointerTest(defaultBackends); } -BOOST_AUTO_TEST_CASE(NeonImportAlignedPointerTest) +BOOST_AUTO_TEST_CASE(NeonImportAlignedPointerTest, * boost::unit_test::disabled()) { ImportAlignedPointerTest(defaultBackends); } -BOOST_AUTO_TEST_CASE(NeonImportOnlyWorkload) +BOOST_AUTO_TEST_CASE(NeonImportOnlyWorkload, * boost::unit_test::disabled()) { ImportOnlyWorkload(defaultBackends); } -BOOST_AUTO_TEST_CASE(NeonExportOnlyWorkload) +BOOST_AUTO_TEST_CASE(NeonExportOnlyWorkload, * boost::unit_test::disabled()) { ExportOnlyWorkload(defaultBackends); } -BOOST_AUTO_TEST_CASE(NeonImportAndExportWorkload) +BOOST_AUTO_TEST_CASE(NeonImportAndExportWorkload, * boost::unit_test::disabled()) { ImportAndExportWorkload(defaultBackends); } -BOOST_AUTO_TEST_CASE(NeonExportOutputWithSeveralOutputSlotConnectionsTest) +BOOST_AUTO_TEST_CASE(NeonExportOutputWithSeveralOutputSlotConnectionsTest, * boost::unit_test::disabled()) { ExportOutputWithSeveralOutputSlotConnectionsTest(defaultBackends); } |