IVGCVSW-6936 Add SQRT support to CL

Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ib90bade63cd0437329c690b09cf719a2e2bd06a4
diff --git a/src/backends/cl/workloads/ClSqrtWorkload.hpp b/src/backends/cl/workloads/ClSqrtWorkload.hpp
new file mode 100644
index 0000000..0476800
--- /dev/null
+++ b/src/backends/cl/workloads/ClSqrtWorkload.hpp
@@ -0,0 +1,30 @@
+//
+// Copyright © 2022 Arm Ltd and Contributors. All rights reserved.
+// SPDX-License-Identifier: MIT
+//
+
+#pragma once
+
+#include "ClBaseWorkload.hpp"
+
+#include <arm_compute/core/Error.h>
+#include <arm_compute/runtime/CL/functions/CLActivationLayer.h>
+
+namespace armnn
+{
+
+arm_compute::Status ClSqrtWorkloadValidate(const TensorInfo& input, const TensorInfo& output);
+
+class ClSqrtWorkload : public ClBaseWorkload<ElementwiseUnaryQueueDescriptor>
+{
+public:
+    ClSqrtWorkload(const ElementwiseUnaryQueueDescriptor& descriptor,
+                   const WorkloadInfo& info,
+                   const arm_compute::CLCompileContext& clCompileContext);
+    virtual void Execute() const override;
+
+private:
+    mutable arm_compute::CLActivationLayer m_SqrtLayer;
+};
+
+} // namespace armnn