diff options
-rw-r--r-- | third_party/skcms/src/Transform_inl.h | 5 | ||||
-rwxr-xr-x | third_party/skcms/version.sha1 | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/third_party/skcms/src/Transform_inl.h b/third_party/skcms/src/Transform_inl.h index 8cc9f77173..49d324aba7 100644 --- a/third_party/skcms/src/Transform_inl.h +++ b/third_party/skcms/src/Transform_inl.h @@ -140,6 +140,11 @@ SI ATTR F F_from_Half(U16 half) { #endif } +#if defined(__clang__) + // The -((127-15)<<10) underflows that side of the math when + // we pass a denorm half float. It's harmless... we'll take the 0 side anyway. + __attribute__((no_sanitize("unsigned-integer-overflow"))) +#endif SI ATTR U16 Half_from_F(F f) { #if defined(USING_NEON_F16C) return (U16)vcvt_f16_f32(f); diff --git a/third_party/skcms/version.sha1 b/third_party/skcms/version.sha1 index 943689e61c..c7eeae456d 100755 --- a/third_party/skcms/version.sha1 +++ b/third_party/skcms/version.sha1 @@ -1 +1 @@ -f80f027f8ac98fcefd0ce327930c842978dffbac
\ No newline at end of file +dc97dc542b6dc25d78a945b084425204ab380dd8
\ No newline at end of file |