diff options
author | Isabella Gottardi <isabella.gottardi@arm.com> | 2018-02-26 16:06:06 +0000 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:48:11 +0000 |
commit | abca1c98605e8e9eb767c6eb1df568812d9c32bb (patch) | |
tree | 099fe2010708ed6ae63f383bbfcf74ff0855f885 | |
parent | 77562dc560a3e292c3679d08bd2813293eb3a68f (diff) | |
download | ComputeLibrary-abca1c98605e8e9eb767c6eb1df568812d9c32bb.tar.gz |
COMPMID-959: Fix bug in NEActivationLayerKernel (CONST_0-QASYMM8)
Change-Id: I05ca7f6c22e110f3a748c1940847cdcdf2359ba7
Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/122242
Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Tested-by: Jenkins <bsgcomp@arm.com>
-rw-r--r-- | src/core/NEON/kernels/NEActivationLayerKernel.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/core/NEON/kernels/NEActivationLayerKernel.cpp b/src/core/NEON/kernels/NEActivationLayerKernel.cpp index a6dbfe6551..ec125154a4 100644 --- a/src/core/NEON/kernels/NEActivationLayerKernel.cpp +++ b/src/core/NEON/kernels/NEActivationLayerKernel.cpp @@ -574,13 +574,13 @@ typename std::enable_if<std::is_same<T, int8_t>::value, void>::type NEActivation template <ActivationLayerInfo::ActivationFunction F, typename T> typename std::enable_if<std::is_same<T, qasymm8_t>::value, void>::type NEActivationLayerKernel::activation(const Window &window) { - Iterator input(_input, window); - Iterator output(_output, window); - const QuantizationInfo qi_in = _input->info()->quantization_info(); - const QuantizationInfo qi_out = _output->info()->quantization_info(); - const qasymm8x16_t a = vdupq_n_u8(sqcvt_qasymm8_f32(_act_info.a(), qi_in.scale, qi_in.offset)); - const qasymm8x16_t b = vdupq_n_u8(sqcvt_qasymm8_f32(_act_info.b(), qi_in.scale, qi_in.offset)); - static const qasymm8x16_t CONST_0 = vdupq_n_u8(sqcvt_qasymm8_f32(0.f, qi_in.scale, qi_in.offset)); + Iterator input(_input, window); + Iterator output(_output, window); + const QuantizationInfo qi_in = _input->info()->quantization_info(); + const QuantizationInfo qi_out = _output->info()->quantization_info(); + const qasymm8x16_t a = vdupq_n_u8(sqcvt_qasymm8_f32(_act_info.a(), qi_in.scale, qi_in.offset)); + const qasymm8x16_t b = vdupq_n_u8(sqcvt_qasymm8_f32(_act_info.b(), qi_in.scale, qi_in.offset)); + const qasymm8x16_t CONST_0 = vdupq_n_u8(sqcvt_qasymm8_f32(0.f, qi_in.scale, qi_in.offset)); // Initialise scale/offset for re-quantization float s = qi_in.scale / qi_out.scale; |