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/runtime/GLES_COMPUTE/GCScheduler.h b/arm_compute/runtime/GLES_COMPUTE/GCScheduler.h
index 9bdff63..1cf2af4 100644
--- a/arm_compute/runtime/GLES_COMPUTE/GCScheduler.h
+++ b/arm_compute/runtime/GLES_COMPUTE/GCScheduler.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 ARM Limited.
+ * Copyright (c) 2017-2018 ARM Limited.
  *
  * SPDX-License-Identifier: MIT
  *
@@ -64,6 +64,24 @@
     /** Defines a barrier ordering memory transactions. */
     void memory_barrier();
 
+    /** Get the target GPU.
+     *
+     * @return The target GPU.
+     */
+    GPUTarget get_target() const
+    {
+        return _target;
+    }
+
+    /** Accessor to set target GPU to be used by the scheduler.
+     *
+     * @param[in] target The target GPU.
+     */
+    void set_target(GPUTarget target)
+    {
+        _target = target;
+    }
+
 private:
     /** Constructor */
     GCScheduler();
@@ -82,6 +100,8 @@
 
     EGLDisplay _display; /**< Underlying EGL Display. */
     EGLContext _context; /**< Underlying EGL Context. */
+
+    GPUTarget _target;
 };
 }
 #endif /* __ARM_COMPUTE_GCSCHEDULER_H__ */