COMPMID-417: Fix F16 CLSoftmaxLayer

Change-Id: I231b1fcaea8bfb11f8306bc71fdde78fadeed60d
Reviewed-on: http://mpd-gerrit.cambridge.arm.com/81832
Reviewed-by: Steven Niu <steven.niu@arm.com>
Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
diff --git a/src/core/CL/kernels/CLSoftmaxLayerKernel.cpp b/src/core/CL/kernels/CLSoftmaxLayerKernel.cpp
index 0e81fc7..da3b942 100644
--- a/src/core/CL/kernels/CLSoftmaxLayerKernel.cpp
+++ b/src/core/CL/kernels/CLSoftmaxLayerKernel.cpp
@@ -68,6 +68,10 @@
     {
         build_opts.emplace(("-DFIXED_POINT_POSITION=" + support::cpp11::to_string(input->info()->fixed_point_position())));
     }
+    else if(input->info()->data_type() == DataType::F16)
+    {
+        build_opts.emplace("-DUSE_F16");
+    }
 
     // Tell the kernel that the width is not a multiple of 16
     if((input->info()->dimension(0) % max_cl_vector_width) != 0)
@@ -130,6 +134,10 @@
     {
         build_opts.emplace(("-DFIXED_POINT_POSITION=" + support::cpp11::to_string(input->info()->fixed_point_position())));
     }
+    else if(input->info()->data_type() == DataType::F16)
+    {
+        build_opts.emplace("-DUSE_F16");
+    }
 
     // Tell the kernel that the width is not a multiple of 16
     if((input->info()->dimension(0) % max_cl_vector_width) != 0)