diff options
-rw-r--r-- | src/dynamic/sample/SampleDynamicLayerSupport.cpp | 25 | ||||
-rw-r--r-- | src/dynamic/sample/SampleDynamicLayerSupport.hpp | 7 |
2 files changed, 32 insertions, 0 deletions
diff --git a/src/dynamic/sample/SampleDynamicLayerSupport.cpp b/src/dynamic/sample/SampleDynamicLayerSupport.cpp index cbd221f52b..3094bc1c5b 100644 --- a/src/dynamic/sample/SampleDynamicLayerSupport.cpp +++ b/src/dynamic/sample/SampleDynamicLayerSupport.cpp @@ -12,6 +12,31 @@ namespace sdb // sample dynamic backend { +bool SampleDynamicLayerSupport::IsLayerSupported(const armnn::LayerType& type, + const std::vector<armnn::TensorInfo>& infos, + const armnn::BaseDescriptor& /*descriptor*/, + const armnn::Optional<armnn::LstmInputParamsInfo>& + /*lstmParamsInfo*/, + const armnn::Optional<armnn::QuantizedLstmInputParamsInfo>& + /*quantizedLstmParamsInfo*/, + armnn::Optional<std::string&> reasonIfUnsupported) const +{ + switch (type) + { + case armnn::LayerType::Input: + return IsInputSupported(infos[0], reasonIfUnsupported); + case armnn::LayerType::Output: + return IsOutputSupported(infos[0], reasonIfUnsupported); + case armnn::LayerType::Addition: + return IsAdditionSupported(infos[0], + infos[1], + infos[2], + reasonIfUnsupported); + default: + return false; + } +} + bool SampleDynamicLayerSupport::IsInputSupported(const armnn::TensorInfo& input, armnn::Optional<std::string&> reasonIfUnsupported) const { diff --git a/src/dynamic/sample/SampleDynamicLayerSupport.hpp b/src/dynamic/sample/SampleDynamicLayerSupport.hpp index a38207304f..2f0744aab7 100644 --- a/src/dynamic/sample/SampleDynamicLayerSupport.hpp +++ b/src/dynamic/sample/SampleDynamicLayerSupport.hpp @@ -23,6 +23,13 @@ public: bool IsOutputSupported(const armnn::TensorInfo& output, armnn::Optional<std::string&> reasonIfUnsupported) const override; + + bool IsLayerSupported(const armnn::LayerType& type, + const std::vector<armnn::TensorInfo>& infos, + const armnn::BaseDescriptor& descriptor, + const armnn::Optional<armnn::LstmInputParamsInfo>& lstmParamsInfo, + const armnn::Optional<armnn::QuantizedLstmInputParamsInfo>& quantizedLstmParamsInfo, + armnn::Optional<std::string&> reasonIfUnsupported = armnn::EmptyOptional()) const override; }; } // namespace sdb |