diff options
Diffstat (limited to 'delegate/opaque')
-rw-r--r-- | delegate/opaque/src/Activation.hpp | 9 | ||||
-rw-r--r-- | delegate/opaque/src/armnn_delegate.cpp | 6 |
2 files changed, 15 insertions, 0 deletions
diff --git a/delegate/opaque/src/Activation.hpp b/delegate/opaque/src/Activation.hpp index 9fce7a12e0..f56609001a 100644 --- a/delegate/opaque/src/Activation.hpp +++ b/delegate/opaque/src/Activation.hpp @@ -166,6 +166,15 @@ TfLiteStatus VisitActivationOperator(DelegateData& delegateData, activationDesc.m_Function = armnn::ActivationFunction::HardSwish; break; } + case kTfLiteBuiltinLeakyRelu: + { + // Get alpha param from builtin data + auto* leakyReluParameters = + reinterpret_cast<TfLiteLeakyReluParams*>(TfLiteOpaqueNodeGetBuiltinData(tfLiteNode)); + activationDesc.m_Function = armnn::ActivationFunction::LeakyReLu; + activationDesc.m_A = leakyReluParameters->alpha; + break; + } default: { return kTfLiteError; diff --git a/delegate/opaque/src/armnn_delegate.cpp b/delegate/opaque/src/armnn_delegate.cpp index 49fa30d8f0..60da293eb2 100644 --- a/delegate/opaque/src/armnn_delegate.cpp +++ b/delegate/opaque/src/armnn_delegate.cpp @@ -828,6 +828,12 @@ TfLiteStatus ArmnnSubgraph::VisitNode(DelegateData& delegateData, tfLiteNode, nodeIndex, kTfLiteBuiltinL2Pool2d); + case kTfLiteBuiltinLeakyRelu: + return VisitActivationOperator(delegateData, + tfLiteContext, + tfLiteNode, + nodeIndex, + kTfLiteBuiltinLeakyRelu); case kTfLiteBuiltinLess: return VisitComparisonOperator(delegateData, tfLiteContext, |