COMPMID-2380: Create utility functions for is_one and is_zero with float

Change-Id: If5b968e19cf830d5472395a1b43bf72a456fd331
Signed-off-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
Reviewed-on: https://review.mlplatform.org/c/1322
Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
diff --git a/src/core/CL/kernels/CLGEMMMatrixMultiplyKernel.cpp b/src/core/CL/kernels/CLGEMMMatrixMultiplyKernel.cpp
index 2b004c2..b3ea309 100644
--- a/src/core/CL/kernels/CLGEMMMatrixMultiplyKernel.cpp
+++ b/src/core/CL/kernels/CLGEMMMatrixMultiplyKernel.cpp
@@ -35,6 +35,7 @@
 #include "arm_compute/core/Types.h"
 #include "arm_compute/core/Utils.h"
 #include "arm_compute/core/Window.h"
+#include "arm_compute/core/utils/helpers/float_ops.h"
 #include "arm_compute/core/utils/misc/ShapeCalculator.h"
 
 #include <set>
@@ -306,7 +307,7 @@
     CLBuildOptions build_opts;
 
     // Only define ALPHA when alpha is not 1.0f. This avoids performing unnecessary multiplications.
-    if(std::abs(1.0f - alpha) > 0.00001f)
+    if(!(helpers::float_ops::is_one(alpha)))
     {
         build_opts.add_option("-DALPHA=" + float_to_string_with_full_precision(alpha));
     }