COMPMID-1086: Optimizing GCGEMM - Add helpers to get target GPU information

This patch moves some of the helper functions in CLHelpers.[h,cpp] to
GPUTarget.[h,cpp] in order to make them avaialable to both CL and GLES backends.

Change-Id: Ib89b05a2084b73eb643b32fac13b8367cc80b6a5
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/128988
Tested-by: Jenkins <bsgcomp@arm.com>
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
diff --git a/arm_compute/core/GLES_COMPUTE/IGCKernel.h b/arm_compute/core/GLES_COMPUTE/IGCKernel.h
index 3b98733..79d5793 100644
--- a/arm_compute/core/GLES_COMPUTE/IGCKernel.h
+++ b/arm_compute/core/GLES_COMPUTE/IGCKernel.h
@@ -26,6 +26,7 @@
 
 #include "arm_compute/core/GLES_COMPUTE/GCKernelLibrary.h"
 #include "arm_compute/core/GLES_COMPUTE/OpenGLES.h"
+#include "arm_compute/core/GPUTarget.h"
 
 #include "arm_compute/core/IKernel.h"
 
@@ -105,6 +106,24 @@
         _lws_hint = lws_hint;
     }
 
+    /** Set the targeted GPU architecture
+     *
+     * @param[in] target The targeted GPU architecture
+     */
+    void set_target(GPUTarget target)
+    {
+        _target = target;
+    }
+
+    /** Get the targeted GPU architecture
+     *
+     * @return The targeted GPU architecture.
+     */
+    GPUTarget get_target() const
+    {
+        return _target;
+    }
+
 private:
     /** Add the passed tensor's parameters to the object's kernel's arguments starting from the index idx.
      *
@@ -126,6 +145,7 @@
 protected:
     GCKernel      _kernel;   /**< GLES kernel to run */
     gles::NDRange _lws_hint; /**< Local workgroup size hint for the GLES kernel */
+    GPUTarget     _target;   /**< The targeted GPU */
 };
 
 /** Add the kernel to the command queue with the given window.