Roll skia/third_party/skcms 54b6cee88c40..52df767ea52b (1 commits)
https://skia.googlesource.com/skcms.git/+log/54b6cee88c40..52df767ea52b 2018-09-07 mtklein@google.com Op_noop is pointless 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=jvanverth@google.com Change-Id: I8268153c7c2cf15bdbf5832d459e26c33c12fb39 Reviewed-on: https://skia-review.googlesource.com/152603 Reviewed-by: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Commit-Queue: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
This commit is contained in:
parent
c471151721
commit
300b6197e3
16
third_party/skcms/skcms.cc
vendored
16
third_party/skcms/skcms.cc
vendored
@ -1750,8 +1750,6 @@ bool skcms_ApproximateCurve(const skcms_Curve* curve,
|
|||||||
// ~~~~ Impl. of skcms_Transform() ~~~~
|
// ~~~~ Impl. of skcms_Transform() ~~~~
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
Op_noop,
|
|
||||||
|
|
||||||
Op_load_a8,
|
Op_load_a8,
|
||||||
Op_load_g8,
|
Op_load_g8,
|
||||||
Op_load_4444,
|
Op_load_4444,
|
||||||
@ -1976,9 +1974,11 @@ static OpAndArg select_curve_op(const skcms_Curve* curve, int channel) {
|
|||||||
{ Op_tf_a, Op_table_8_a, Op_table_16_a },
|
{ Op_tf_a, Op_table_8_a, Op_table_16_a },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const OpAndArg noop = { Op_load_a8/*doesn't matter*/, nullptr };
|
||||||
|
|
||||||
if (curve->table_entries == 0) {
|
if (curve->table_entries == 0) {
|
||||||
return is_identity_tf(&curve->parametric)
|
return is_identity_tf(&curve->parametric)
|
||||||
? OpAndArg{ Op_noop, nullptr }
|
? noop
|
||||||
: OpAndArg{ ops[channel].parametric, &curve->parametric };
|
: OpAndArg{ ops[channel].parametric, &curve->parametric };
|
||||||
} else if (curve->table_8) {
|
} else if (curve->table_8) {
|
||||||
return OpAndArg{ ops[channel].table_8, curve };
|
return OpAndArg{ ops[channel].table_8, curve };
|
||||||
@ -1987,7 +1987,7 @@ static OpAndArg select_curve_op(const skcms_Curve* curve, int channel) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
assert(false);
|
assert(false);
|
||||||
return OpAndArg{Op_noop,nullptr};
|
return noop;
|
||||||
}
|
}
|
||||||
|
|
||||||
static size_t bytes_per_pixel(skcms_PixelFormat fmt) {
|
static size_t bytes_per_pixel(skcms_PixelFormat fmt) {
|
||||||
@ -2121,7 +2121,7 @@ bool skcms_Transform(const void* src,
|
|||||||
if (srcProfile->A2B.input_channels) {
|
if (srcProfile->A2B.input_channels) {
|
||||||
for (int i = 0; i < (int)srcProfile->A2B.input_channels; i++) {
|
for (int i = 0; i < (int)srcProfile->A2B.input_channels; i++) {
|
||||||
OpAndArg oa = select_curve_op(&srcProfile->A2B.input_curves[i], i);
|
OpAndArg oa = select_curve_op(&srcProfile->A2B.input_curves[i], i);
|
||||||
if (oa.op != Op_noop) {
|
if (oa.arg) {
|
||||||
*ops++ = oa.op;
|
*ops++ = oa.op;
|
||||||
*args++ = oa.arg;
|
*args++ = oa.arg;
|
||||||
}
|
}
|
||||||
@ -2139,7 +2139,7 @@ bool skcms_Transform(const void* src,
|
|||||||
if (srcProfile->A2B.matrix_channels == 3) {
|
if (srcProfile->A2B.matrix_channels == 3) {
|
||||||
for (int i = 0; i < 3; i++) {
|
for (int i = 0; i < 3; i++) {
|
||||||
OpAndArg oa = select_curve_op(&srcProfile->A2B.matrix_curves[i], i);
|
OpAndArg oa = select_curve_op(&srcProfile->A2B.matrix_curves[i], i);
|
||||||
if (oa.op != Op_noop) {
|
if (oa.arg) {
|
||||||
*ops++ = oa.op;
|
*ops++ = oa.op;
|
||||||
*args++ = oa.arg;
|
*args++ = oa.arg;
|
||||||
}
|
}
|
||||||
@ -2159,7 +2159,7 @@ bool skcms_Transform(const void* src,
|
|||||||
if (srcProfile->A2B.output_channels == 3) {
|
if (srcProfile->A2B.output_channels == 3) {
|
||||||
for (int i = 0; i < 3; i++) {
|
for (int i = 0; i < 3; i++) {
|
||||||
OpAndArg oa = select_curve_op(&srcProfile->A2B.output_curves[i], i);
|
OpAndArg oa = select_curve_op(&srcProfile->A2B.output_curves[i], i);
|
||||||
if (oa.op != Op_noop) {
|
if (oa.arg) {
|
||||||
*ops++ = oa.op;
|
*ops++ = oa.op;
|
||||||
*args++ = oa.arg;
|
*args++ = oa.arg;
|
||||||
}
|
}
|
||||||
@ -2173,7 +2173,7 @@ bool skcms_Transform(const void* src,
|
|||||||
} else if (srcProfile->has_trc && srcProfile->has_toXYZD50) {
|
} else if (srcProfile->has_trc && srcProfile->has_toXYZD50) {
|
||||||
for (int i = 0; i < 3; i++) {
|
for (int i = 0; i < 3; i++) {
|
||||||
OpAndArg oa = select_curve_op(&srcProfile->trc[i], i);
|
OpAndArg oa = select_curve_op(&srcProfile->trc[i], i);
|
||||||
if (oa.op != Op_noop) {
|
if (oa.arg) {
|
||||||
*ops++ = oa.op;
|
*ops++ = oa.op;
|
||||||
*args++ = oa.arg;
|
*args++ = oa.arg;
|
||||||
}
|
}
|
||||||
|
2
third_party/skcms/src/Transform_inl.h
vendored
2
third_party/skcms/src/Transform_inl.h
vendored
@ -590,8 +590,6 @@ static void exec_ops(const Op* ops, const void** args,
|
|||||||
F r = F0, g = F0, b = F0, a = F1;
|
F r = F0, g = F0, b = F0, a = F1;
|
||||||
while (true) {
|
while (true) {
|
||||||
switch (*ops++) {
|
switch (*ops++) {
|
||||||
case Op_noop: break;
|
|
||||||
|
|
||||||
case Op_load_a8:{
|
case Op_load_a8:{
|
||||||
a = F_from_U8(load<U8>(src + 1*i));
|
a = F_from_U8(load<U8>(src + 1*i));
|
||||||
} break;
|
} break;
|
||||||
|
2
third_party/skcms/version.sha1
vendored
2
third_party/skcms/version.sha1
vendored
@ -1 +1 @@
|
|||||||
54b6cee88c4044a086e44906e9925583cebf63c4
|
52df767ea52b9fc983511bd4d275271cb2d9e42b
|
Loading…
Reference in New Issue
Block a user