diff options
author | Mike Klein <mtklein@chromium.org> | 2018-06-01 15:53:21 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-06-01 20:39:46 +0000 |
commit | b54d2239d36f60087efb2611d320364d7b06374c (patch) | |
tree | 72df9d53f17b90416eeb2dde624d14fb8d1eb681 /src | |
parent | a0834048380c51f9e45063e3ae40a142a6f7f2d1 (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')
-rw-r--r-- | src/opts/SkRasterPipeline_opts.h | 4 |
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) |