aboutsummaryrefslogtreecommitdiff
path: root/src/backends/neon
diff options
context:
space:
mode:
authorDavid Beck <david.beck@arm.com>2018-11-12 14:59:37 +0000
committerAron Virginas-Tar <aron.virginas-tar@arm.com>2018-11-12 16:02:51 +0000
commit111b5d94d7e854c21377f8d2c0b4234317a903f6 (patch)
tree68111e5d89b605c898b2327cb59b915e3ff64ce9 /src/backends/neon
parent4e1e136cce3fca73ba49b570cfcb620f4ec574da (diff)
downloadarmnn-111b5d94d7e854c21377f8d2c0b4234317a903f6.tar.gz
IVGCVSW-2125 : Consolidate backend registries into one
Change-Id: I56da4780f8f5fcef7ff01d232d5d61bf299364bf
Diffstat (limited to 'src/backends/neon')
-rw-r--r--src/backends/neon/NeonBackend.cpp9
-rw-r--r--src/backends/neon/NeonBackend.hpp1
-rw-r--r--src/backends/neon/NeonLayerSupport.cpp17
3 files changed, 10 insertions, 17 deletions
diff --git a/src/backends/neon/NeonBackend.cpp b/src/backends/neon/NeonBackend.cpp
index 9e079f38ce..4d57eda877 100644
--- a/src/backends/neon/NeonBackend.cpp
+++ b/src/backends/neon/NeonBackend.cpp
@@ -6,6 +6,7 @@
#include "NeonBackend.hpp"
#include "NeonBackendId.hpp"
#include "NeonWorkloadFactory.hpp"
+#include "NeonLayerSupport.hpp"
#include <backendsCommon/IBackendContext.hpp>
#include <backendsCommon/BackendRegistry.hpp>
@@ -19,7 +20,7 @@ namespace armnn
namespace
{
-static StaticRegistryInitializer<BackendRegistry> g_RegisterHelper
+static BackendRegistry::StaticRegistryInitializer g_RegisterHelper
{
BackendRegistryInstance(),
NeonBackend::GetIdStatic(),
@@ -52,4 +53,10 @@ IBackendInternal::Optimizations NeonBackend::GetOptimizations() const
return Optimizations{};
}
+IBackendInternal::ILayerSupportSharedPtr NeonBackend::GetLayerSupport() const
+{
+ static ILayerSupportSharedPtr layerSupport{new NeonLayerSupport};
+ return layerSupport;
+}
+
} // namespace armnn \ No newline at end of file
diff --git a/src/backends/neon/NeonBackend.hpp b/src/backends/neon/NeonBackend.hpp
index e0017d92c8..d83710d22c 100644
--- a/src/backends/neon/NeonBackend.hpp
+++ b/src/backends/neon/NeonBackend.hpp
@@ -21,6 +21,7 @@ public:
IWorkloadFactoryPtr CreateWorkloadFactory() const override;
IBackendInternal::IBackendContextPtr CreateBackendContext(const IRuntime::CreationOptions&) const override;
IBackendInternal::Optimizations GetOptimizations() const override;
+ IBackendInternal::ILayerSupportSharedPtr GetLayerSupport() const override;
};
} // namespace armnn \ No newline at end of file
diff --git a/src/backends/neon/NeonLayerSupport.cpp b/src/backends/neon/NeonLayerSupport.cpp
index a4a6b67c0b..165e0677b7 100644
--- a/src/backends/neon/NeonLayerSupport.cpp
+++ b/src/backends/neon/NeonLayerSupport.cpp
@@ -12,7 +12,7 @@
#include <armnn/Tensor.hpp>
#include <armnn/Types.hpp>
-#include <backendsCommon/LayerSupportRegistry.hpp>
+#include <backendsCommon/BackendRegistry.hpp>
#include <boost/core/ignore_unused.hpp>
@@ -40,21 +40,6 @@ namespace armnn
namespace
{
-ILayerSupportSharedPtr GetLayerSupportPointer()
-{
- static ILayerSupportSharedPtr instance{new NeonLayerSupport};
- return instance;
-}
-
-static StaticRegistryInitializer<LayerSupportRegistry> g_RegisterHelper{
- LayerSupportRegistryInstance(),
- NeonBackendId(),
- []()
- {
- return GetLayerSupportPointer();
- }
-};
-
bool IsNeonBackendSupported(Optional<std::string&> reasonIfUnsupported)
{
#if ARMCOMPUTENEON_ENABLED