COMPMID-2051 Refactor shape_calculator::calculate_concatenate_shape

Change-Id: Ibf316718d11fa975d75f226925747b21c4efd127
Signed-off-by: Michalis Spyrou <michalis.spyrou@arm.com>
Reviewed-on: https://review.mlplatform.org/c/974
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com>
diff --git a/src/graph/nodes/ConcatenateLayerNode.cpp b/src/graph/nodes/ConcatenateLayerNode.cpp
index 48da8b6..ff515c4 100644
--- a/src/graph/nodes/ConcatenateLayerNode.cpp
+++ b/src/graph/nodes/ConcatenateLayerNode.cpp
@@ -68,6 +68,7 @@
 
     TensorDescriptor output_descriptor = input_descriptors[0];
     const int        axis_idx          = get_dimension_idx(output_descriptor.layout, axis);
+    ARM_COMPUTE_ERROR_ON_MSG(axis_idx > 2, "Unsupported concatenation axis!");
 
     // Extract shapes
     std::vector<const TensorShape *> shapes;
@@ -76,18 +77,7 @@
         shapes.emplace_back(&input_descriptor.shape);
     }
 
-    if(axis_idx < 2)
-    {
-        output_descriptor.shape = arm_compute::misc::shape_calculator::calculate_concatenate_shape(shapes, axis_idx);
-    }
-    else if(axis_idx == 2)
-    {
-        output_descriptor.shape = arm_compute::misc::shape_calculator::calculate_depth_concatenate_shape(shapes);
-    }
-    else
-    {
-        ARM_COMPUTE_ERROR("Unsupported concatenation axis!");
-    }
+    output_descriptor.shape = arm_compute::misc::shape_calculator::calculate_concatenate_shape(shapes, axis_idx);
 
     return output_descriptor;
 }