diff options
author | Kevin Cheng <kevin.cheng@arm.com> | 2020-11-11 13:54:06 -0800 |
---|---|---|
committer | Kevin Cheng <kevin.cheng@arm.com> | 2020-11-12 11:47:16 -0800 |
commit | aee1facbde25caf27cc34e5ec08eb8bba6af8e18 (patch) | |
tree | 0ff32b95e6f32444445ca01c1b47835b52fb955f /reference_model/src/ops/type_conversion.cc | |
parent | 99bea145a050e12f1b5f8301979713d9a9b04e12 (diff) | |
download | reference_model-aee1facbde25caf27cc34e5ec08eb8bba6af8e18.tar.gz |
Implement and add unit tests for MUL and ARITHMETIC_RIGHT_SHIFT
add .clang-format
Add expected failure for RESIZE and RESCALE unit tests
Signed-off-by: Kevin Cheng <kevin.cheng@arm.com>
Change-Id: I33c8afdc8998e8518f2b0e5fabddd36ce3aa2ee9
Diffstat (limited to 'reference_model/src/ops/type_conversion.cc')
-rw-r--r-- | reference_model/src/ops/type_conversion.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/reference_model/src/ops/type_conversion.cc b/reference_model/src/ops/type_conversion.cc index a97bc0d..c505e29 100644 --- a/reference_model/src/ops/type_conversion.cc +++ b/reference_model/src/ops/type_conversion.cc @@ -130,8 +130,8 @@ int OpRescale<Rank, InDtype, OutDtype>::eval() curr_channel_slice_prescaled.unaryExpr([input_zp, output_zp, channel_multiplier, channel_shift, double_round](InEigenType in_val) -> OutEigenType { InEigenType input_zp_shifted = in_val - (InEigenType)input_zp; - int32_t scaled = TosaReference::QuantUtil::apply_scale_32( - input_zp_shifted, channel_multiplier, channel_shift, double_round); + int32_t scaled = TosaReference::QuantUtil::apply_scale_32(input_zp_shifted, channel_multiplier, + channel_shift, double_round); OutEigenType out_val = (OutEigenType)(scaled + output_zp); out_val = std::max<OutEigenType>(out_val, QMin); out_val = std::min<OutEigenType>(out_val, QMax); @@ -151,7 +151,7 @@ int OpRescale<Rank, InDtype, OutDtype>::eval() output_2d = input_reshaped.unaryExpr( [input_zp, output_zp, tensor_multiplier, tensor_shift, double_round](InEigenType in_val) -> OutEigenType { InEigenType input_zp_shifted = in_val - (InEigenType)input_zp; - int32_t scaled = TosaReference::QuantUtil::apply_scale_32(input_zp_shifted, tensor_multiplier, + int32_t scaled = TosaReference::QuantUtil::apply_scale_32(input_zp_shifted, tensor_multiplier, tensor_shift, double_round); OutEigenType out_val = (OutEigenType)(scaled + output_zp); out_val = std::max<OutEigenType>(out_val, QMin); |