COMPMID-661: QASYMM8 support for fully connected layer.

Change-Id: I70e04d3a175ba366432ada98e9ca893c9f81b260
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/111094
Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
Tested-by: BSG Visual Compute Jenkins server to access repositories on http://mpd-gerrit.cambridge.arm.com <bsgcomp@arm.com>
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
diff --git a/arm_compute/core/Dimensions.h b/arm_compute/core/Dimensions.h
index 3d9a3fa..912b9d5 100644
--- a/arm_compute/core/Dimensions.h
+++ b/arm_compute/core/Dimensions.h
@@ -141,6 +141,17 @@
         std::fill(_id.begin() + _num_dimensions, _id.end(), 0);
     }
 
+    /** Collapse dimensions starting from a given point
+     *
+     * @param[in] start Starting point of collapsing dimensions
+     */
+    void collapse_from(size_t start)
+    {
+        ARM_COMPUTE_ERROR_ON(start > num_dimensions());
+
+        collapse(num_dimensions() - start, start);
+    }
+
     /** Returns a read/write iterator that points to the first element in the dimension array. */
     typename std::array<T, num_max_dimensions>::iterator begin()
     {