aboutsummaryrefslogtreecommitdiff
path: root/src/backends/reference
diff options
context:
space:
mode:
Diffstat (limited to 'src/backends/reference')
-rw-r--r--src/backends/reference/RefBackend.cpp10
-rw-r--r--src/backends/reference/RefBackend.hpp1
-rw-r--r--src/backends/reference/RefLayerSupport.cpp17
3 files changed, 11 insertions, 17 deletions
diff --git a/src/backends/reference/RefBackend.cpp b/src/backends/reference/RefBackend.cpp
index 2f5ec8032c..7c9240479b 100644
--- a/src/backends/reference/RefBackend.cpp
+++ b/src/backends/reference/RefBackend.cpp
@@ -6,9 +6,11 @@
#include "RefBackend.hpp"
#include "RefBackendId.hpp"
#include "RefWorkloadFactory.hpp"
+#include "RefLayerSupport.hpp"
#include <backendsCommon/IBackendContext.hpp>
#include <backendsCommon/BackendRegistry.hpp>
+
#include <Optimizer.hpp>
#include <boost/cast.hpp>
@@ -19,7 +21,7 @@ namespace armnn
namespace
{
-static StaticRegistryInitializer<BackendRegistry> g_RegisterHelper
+static BackendRegistry::StaticRegistryInitializer g_RegisterHelper
{
BackendRegistryInstance(),
RefBackend::GetIdStatic(),
@@ -52,4 +54,10 @@ IBackendInternal::Optimizations RefBackend::GetOptimizations() const
return Optimizations{};
}
+IBackendInternal::ILayerSupportSharedPtr RefBackend::GetLayerSupport() const
+{
+ static ILayerSupportSharedPtr layerSupport{new RefLayerSupport};
+ return layerSupport;
+}
+
} // namespace armnn \ No newline at end of file
diff --git a/src/backends/reference/RefBackend.hpp b/src/backends/reference/RefBackend.hpp
index be71f356f3..12d56ffab4 100644
--- a/src/backends/reference/RefBackend.hpp
+++ b/src/backends/reference/RefBackend.hpp
@@ -21,6 +21,7 @@ public:
IBackendInternal::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/reference/RefLayerSupport.cpp b/src/backends/reference/RefLayerSupport.cpp
index b057370459..d6c1e66626 100644
--- a/src/backends/reference/RefLayerSupport.cpp
+++ b/src/backends/reference/RefLayerSupport.cpp
@@ -10,7 +10,7 @@
#include <LayerSupportCommon.hpp>
#include <armnn/Types.hpp>
-#include <backendsCommon/LayerSupportRegistry.hpp>
+#include <backendsCommon/BackendRegistry.hpp>
#include <boost/core/ignore_unused.hpp>
@@ -22,21 +22,6 @@ namespace armnn
namespace
{
-ILayerSupportSharedPtr GetLayerSupportPointer()
-{
- static ILayerSupportSharedPtr instance{new RefLayerSupport};
- return instance;
-}
-
-static StaticRegistryInitializer<LayerSupportRegistry> g_RegisterHelper{
- LayerSupportRegistryInstance(),
- RefBackendId(),
- []()
- {
- return GetLayerSupportPointer();
- }
-};
-
template<typename Float32Func, typename Uint8Func, typename ... Params>
bool IsSupportedForDataTypeRef(Optional<std::string&> reasonIfUnsupported,
DataType dataType,