diff options
Diffstat (limited to 'third_party/skcms/src/Transform_inl.h')
-rw-r--r-- | third_party/skcms/src/Transform_inl.h | 5 |
1 files changed, 5 insertions, 0 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); |