APPBROWSER-230, APPBROWSER-300: Rename GCScheduler enqueue to dispatch, sync to memory_barrier

Also fix the synchronisation issues between different kernels.

Change-Id: Ib59d83ae8d5cc8b0bdf13e6f4958edccdab91ca4
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/114594
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Tested-by: Jenkins <bsgcomp@arm.com>
diff --git a/src/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.cpp b/src/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.cpp
index 63cb40e..041622d 100644
--- a/src/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.cpp
+++ b/src/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.cpp
@@ -159,19 +159,22 @@
     // Linearize input if it comes from a convolutional layer
     if(_is_fc_after_conv)
     {
-        GCScheduler::get().enqueue(_im2col_kernel, false);
+        GCScheduler::get().dispatch(_im2col_kernel, false);
     }
 
-    GCScheduler::get().sync();
+    if(!_are_weights_reshaped || _is_fc_after_conv)
+    {
+        GCScheduler::get().memory_barrier();
+    }
 
     // Run matrix multiply
-    GCScheduler::get().enqueue(_mm_kernel, !_accumulate_biases);
+    GCScheduler::get().dispatch(_mm_kernel, !_accumulate_biases);
 
     // Accumulate biases if provided
     if(_accumulate_biases)
     {
-        GCScheduler::get().sync();
+        GCScheduler::get().memory_barrier();
 
-        GCScheduler::get().enqueue(_accumulate_biases_kernel);
+        GCScheduler::get().dispatch(_accumulate_biases_kernel);
     }
 }