diff options
Diffstat (limited to 'src/backends/reference')
-rw-r--r-- | src/backends/reference/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/backends/reference/RefBackend.cpp | 29 | ||||
-rw-r--r-- | src/backends/reference/RefBackend.hpp | 33 | ||||
-rw-r--r-- | src/backends/reference/RefLayerSupport.hpp | 5 | ||||
-rw-r--r-- | src/backends/reference/backend.mk | 1 |
5 files changed, 70 insertions, 0 deletions
diff --git a/src/backends/reference/CMakeLists.txt b/src/backends/reference/CMakeLists.txt index 526baaa1a8..9810cf86e2 100644 --- a/src/backends/reference/CMakeLists.txt +++ b/src/backends/reference/CMakeLists.txt @@ -4,6 +4,8 @@ # list(APPEND armnnRefBackend_sources + RefBackend.cpp + RefBackend.hpp RefLayerSupport.cpp RefLayerSupport.hpp RefWorkloadFactory.cpp diff --git a/src/backends/reference/RefBackend.cpp b/src/backends/reference/RefBackend.cpp new file mode 100644 index 0000000000..1799abfc33 --- /dev/null +++ b/src/backends/reference/RefBackend.cpp @@ -0,0 +1,29 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// + +#include "RefBackend.hpp" + +namespace armnn +{ + +const std::string RefBackend::s_Id = "arm_reference"; + +const std::string& RefBackend::GetId() const +{ + return s_Id; +} + +const ILayerSupport& RefBackend::GetLayerSupport() const +{ + return m_LayerSupport; +} + +std::unique_ptr<IWorkloadFactory> RefBackend::CreateWorkloadFactory() const +{ + // TODO implement + return nullptr; +} + +} // namespace armnn
\ No newline at end of file diff --git a/src/backends/reference/RefBackend.hpp b/src/backends/reference/RefBackend.hpp new file mode 100644 index 0000000000..c3797158a6 --- /dev/null +++ b/src/backends/reference/RefBackend.hpp @@ -0,0 +1,33 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// +#pragma once + +#include "backends/IBackendInternal.hpp" + +#include "RefLayerSupport.hpp" + +namespace armnn +{ + +class RefBackend : public IBackendInternal +{ +public: + RefBackend() = default; + ~RefBackend() = default; + + const std::string& GetId() const override; + + const ILayerSupport& GetLayerSupport() const override; + + std::unique_ptr<IWorkloadFactory> CreateWorkloadFactory() const override; + +private: + static const std::string s_Id; + + // TODO initialize + RefLayerSupport m_LayerSupport; +}; + +} // namespace armnn
\ No newline at end of file diff --git a/src/backends/reference/RefLayerSupport.hpp b/src/backends/reference/RefLayerSupport.hpp index d29e95645f..e819b6665a 100644 --- a/src/backends/reference/RefLayerSupport.hpp +++ b/src/backends/reference/RefLayerSupport.hpp @@ -15,6 +15,11 @@ namespace armnn { +class RefLayerSupport : public ILayerSupport +{ + // TODO implement +}; + bool IsActivationSupportedRef(const TensorInfo& input, const TensorInfo& output, const ActivationDescriptor& descriptor, diff --git a/src/backends/reference/backend.mk b/src/backends/reference/backend.mk index e5345c07d5..365faa684c 100644 --- a/src/backends/reference/backend.mk +++ b/src/backends/reference/backend.mk @@ -8,6 +8,7 @@ # file in the root of ArmNN BACKEND_SOURCES := \ + RefBackend.cpp \ RefLayerSupport.cpp \ RefWorkloadFactory.cpp \ workloads/Activation.cpp \ |