Fix precision issue in ChannelShuffleKernel

* Partially resolves COMPMID-4831

Change-Id: I2100432c51f2a4d2f2524ed7a3574035632c092c
Signed-off-by: Pablo Tello <pablo.tello@arm.com>
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/6403
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Freddie Liardet <frederick.liardet@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
diff --git a/src/core/NEON/kernels/NEChannelShuffleLayerKernel.cpp b/src/core/NEON/kernels/NEChannelShuffleLayerKernel.cpp
index 008ad7c..85ae974 100644
--- a/src/core/NEON/kernels/NEChannelShuffleLayerKernel.cpp
+++ b/src/core/NEON/kernels/NEChannelShuffleLayerKernel.cpp
@@ -103,7 +103,7 @@
     const size_t       row_size        = input->info()->dimension(width_idx) * input->info()->element_size();
 
     const unsigned int K  = input->info()->dimension(channel_idx) / num_groups;
-    const float        rK = 1.f / K;
+    const double       rK = 1.0 / K;
 
     Iterator in(input, win);