aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/opts
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@chromium.org>2018-06-01 15:53:21 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-06-01 20:39:46 +0000
commitb54d2239d36f60087efb2611d320364d7b06374c (patch)
tree72df9d53f17b90416eeb2dde624d14fb8d1eb681 /src/opts
parenta0834048380c51f9e45063e3ae40a142a6f7f2d1 (diff)
fix a weird edge case in to_srgb stage
I just uncovered this by porting the Chromecast bots from an old GCC to an old Clang. In to_srgb() we tune our constants so that 1.0f maps to exactly 1.0f, but because both JUMPER_IS_NEON and JUMPER_IS_SCALAR were defined, we picked the NEON values instead of the scalar values we want. Undefining JUMPER_IS_NEON when JUMPER_IS_SCALAR should do the trick. Change-Id: I6c6f76b78b3419e204c0b4df351459baf05315bc Reviewed-on: https://skia-review.googlesource.com/131582 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
Diffstat (limited to 'src/opts')
-rw-r--r--src/opts/SkRasterPipeline_opts.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/opts/SkRasterPipeline_opts.h b/src/opts/SkRasterPipeline_opts.h
index 6c580213eb..d6e0d4ba55 100644
--- a/src/opts/SkRasterPipeline_opts.h
+++ b/src/opts/SkRasterPipeline_opts.h
@@ -37,6 +37,10 @@
#elif __clang_major__ < 5
#define JUMPER_IS_SCALAR
#endif
+
+ #if defined(JUMPER_IS_NEON) && defined(JUMPER_IS_SCALAR)
+ #undef JUMPER_IS_NEON
+ #endif
#endif
#if defined(JUMPER_IS_SCALAR)