diff options
author | Anthony Barbier <anthony.barbier@arm.com> | 2017-10-26 15:23:08 +0100 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:35:24 +0000 |
commit | 7068f9900d136312318ff430aef588b14e0c87ad (patch) | |
tree | b57ca81231860f1d8755e6f18e5be7c959fb60c6 /arm_compute/core/Utils.h | |
parent | d60737592736715dcfd0520535c48190d4ac77d2 (diff) | |
download | ComputeLibrary-7068f9900d136312318ff430aef588b14e0c87ad.tar.gz |
COMPMID-631: Merge branches/gles_compute branch
Last commit:
commit b25c5f68042b0c81bf611d59a1bb8535e1c42497
Author: Xinghang Zhou <xinghang.zhou@arm.com>
Date: Wed Oct 25 18:48:10 2017 +0800
Synced validation's tolerances of GCSoftmax from cl side
Change-Id: Ibe72054205c1c8721845d679a31af7ed0a7c5cf6
Reviewed-on: http://mpd-gerrit.cambridge.arm.com/93283
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
Diffstat (limited to 'arm_compute/core/Utils.h')
-rw-r--r-- | arm_compute/core/Utils.h | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/arm_compute/core/Utils.h b/arm_compute/core/Utils.h index 96e99e6874..b8c5b34e5a 100644 --- a/arm_compute/core/Utils.h +++ b/arm_compute/core/Utils.h @@ -837,7 +837,16 @@ void print_consecutive_elements_impl(std::ostream &s, const T *ptr, unsigned int { s.width(stream_width); } - s << std::right << static_cast<print_type>(ptr[i]) << element_delim; + + if(std::is_same<typename std::decay<T>::type, half>::value) + { + // We use T instead of print_type here is because the std::is_floating_point<half> returns false and then the print_type becomes int. + s << std::right << static_cast<T>(ptr[i]) << element_delim; + } + else + { + s << std::right << static_cast<print_type>(ptr[i]) << element_delim; + } } } @@ -859,7 +868,17 @@ int max_consecutive_elements_display_width_impl(std::ostream &s, const T *ptr, u { std::stringstream ss; ss.copyfmt(s); - ss << static_cast<print_type>(ptr[i]); + + if(std::is_same<typename std::decay<T>::type, half>::value) + { + // We use T instead of print_type here is because the std::is_floating_point<half> returns false and then the print_type becomes int. + ss << static_cast<T>(ptr[i]); + } + else + { + ss << static_cast<print_type>(ptr[i]); + } + max_width = std::max<int>(max_width, ss.str().size()); } return max_width; |