aboutsummaryrefslogtreecommitdiff
path: root/third_party
diff options
context:
space:
mode:
authorskia-autoroll@skia-public.iam.gserviceaccount.com <skia-autoroll@skia-public.iam.gserviceaccount.com>2018-10-15 16:45:14 +0000
committerSkia Commit-Bot <skia-commit-bot@chromium.org>2018-10-15 17:18:30 +0000
commitf989b2af0b3c9f08ebaeb08a7f152c666a632e0b (patch)
treeb86153101751d3497600637b4583bb7e67bec61d /third_party
parentc064d0b121db4fde46ab1ebec6b821b872e6fd5c (diff)
downloadskqp-f989b2af0b3c9f08ebaeb08a7f152c666a632e0b.tar.gz
Roll skia/third_party/skcms 9369e44523c7..b655b88172fa (1 commits)
https://skia.googlesource.com/skcms.git/+log/9369e44523c7..b655b88172fa 2018-10-15 mtklein@google.com work around compiler bug for mips64el/-O3 The AutoRoll server is located here: https://autoroll.skia.org/r/skcms-skia-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel TBR=egdaniel@google.com Change-Id: I85982454f6f17dceb542e0ecd0b94f5a2a3fc062 Reviewed-on: https://skia-review.googlesource.com/c/162138 Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com> Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Diffstat (limited to 'third_party')
-rw-r--r--third_party/skcms/src/Transform_inl.h9
-rwxr-xr-xthird_party/skcms/version.sha12
2 files changed, 10 insertions, 1 deletions
diff --git a/third_party/skcms/src/Transform_inl.h b/third_party/skcms/src/Transform_inl.h
index 6135ddf7c9..978a157a94 100644
--- a/third_party/skcms/src/Transform_inl.h
+++ b/third_party/skcms/src/Transform_inl.h
@@ -538,7 +538,16 @@ template <> void sample_clut<16>(const skcms_A2B* a2b, I32 ix, F* r, F* g, F* b)
#endif
}
+// GCC 7.2.0 hits an internal compiler error with -finline-functions (or -O3)
+// when targeting MIPS 64, I think attempting to inline clut() into exec_ops().
+#if 1 && defined(__GNUC__) && !defined(__clang__) && defined(__mips64)
+ #define MAYBE_NOINLINE __attribute__((noinline))
+#else
+ #define MAYBE_NOINLINE
+#endif
+
template <int kBitDepth>
+MAYBE_NOINLINE
static void clut(const skcms_A2B* a2b, int dim, I32 ix, I32 stride, F* r, F* g, F* b, F a) {
if (dim == 0) {
sample_clut<kBitDepth>(a2b,ix, r,g,b);
diff --git a/third_party/skcms/version.sha1 b/third_party/skcms/version.sha1
index 333238b23b..d766021861 100755
--- a/third_party/skcms/version.sha1
+++ b/third_party/skcms/version.sha1
@@ -1 +1 @@
-9369e44523c7d7683c19844925fff93ec7ed87c7 \ No newline at end of file
+b655b88172fa8f81943425f0bf1e7da24ed21174 \ No newline at end of file