aboutsummaryrefslogtreecommitdiff
path: root/src/core/utils/quantization/AsymmHelpers.cpp
diff options
context:
space:
mode:
authorMichele Di Giorgio <michele.digiorgio@arm.com>2019-12-03 19:34:30 +0000
committerMichele Di Giorgio <michele.digiorgio@arm.com>2019-12-11 14:07:14 +0000
commit35c37940deb0f2cb2d1f074bb7f43f0485a885d2 (patch)
treef1a0889c1e0d6292e46b2606d3486c2ce677f1f4 /src/core/utils/quantization/AsymmHelpers.cpp
parentf2cdce30ca782cac7caebc43c7e67caf677b7358 (diff)
downloadComputeLibrary-35c37940deb0f2cb2d1f074bb7f43f0485a885d2.tar.gz
COMPMID-2974: VTS Test failure in CLConvolutionLayer quantized per-channel with multiplier == 1
Change-Id: I568aa17390af6eeef115171b6103703644b42762 Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com> Reviewed-on: https://review.mlplatform.org/c/2410 Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/core/utils/quantization/AsymmHelpers.cpp')
-rw-r--r--src/core/utils/quantization/AsymmHelpers.cpp9
1 files changed, 1 insertions, 8 deletions
diff --git a/src/core/utils/quantization/AsymmHelpers.cpp b/src/core/utils/quantization/AsymmHelpers.cpp
index 0551874d5f..6196662441 100644
--- a/src/core/utils/quantization/AsymmHelpers.cpp
+++ b/src/core/utils/quantization/AsymmHelpers.cpp
@@ -37,7 +37,7 @@ constexpr float epsilon = 0.00001f;
Status calculate_quantized_multiplier(float multiplier, int *quant_multiplier, int *shift)
{
- if(multiplier > 1.f)
+ if(multiplier >= 1.f)
{
Status status = calculate_quantized_multiplier_greater_than_one(multiplier, quant_multiplier, shift);
*shift *= -1;
@@ -57,13 +57,6 @@ Status calculate_quantized_multiplier_less_than_one(float multiplier,
ARM_COMPUTE_RETURN_ERROR_ON(right_shift == nullptr);
ARM_COMPUTE_RETURN_ERROR_ON(multiplier < -epsilon);
ARM_COMPUTE_RETURN_ERROR_ON(multiplier > 1.0f + epsilon);
- if(std::fabs(1.0f - multiplier) < epsilon)
- {
- *quant_multiplier = 1;
- *right_shift = 0;
- return Status{};
- }
-
if(std::fabs(0.0f - multiplier) < epsilon)
{
*quant_multiplier = 0;