Remove unused quality param for skvm program

No behavior/pixel differences expected.

Change-Id: I9916a74de5063fd81f78bc3744ed32460e12c656
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/387236
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
This commit is contained in:
Mike Reed 2021-03-19 14:05:19 -04:00 committed by Skia Commit-Bot
parent 73318b3583
commit 80468375c0
22 changed files with 51 additions and 80 deletions

View File

@ -189,7 +189,7 @@ public:
skvm::Color result = as_SB(fShader)->program(
builder, /*device=*/coord, /*local=*/coord, /*paint=*/{zero, zero, zero, zero},
matrixProvider, /*localM=*/nullptr, kLow_SkFilterQuality, colorInfo, fUniforms,
matrixProvider, /*localM=*/nullptr, colorInfo, fUniforms,
fAlloc);
SkASSERT(result);
outResult[0] = result.r;

View File

@ -150,8 +150,7 @@ protected:
skvm::Color onProgram(skvm::Builder*,
skvm::Coord, skvm::Coord, skvm::Color,
const SkMatrixProvider&, const SkMatrix*,
SkFilterQuality, const SkColorInfo&,
const SkMatrixProvider&, const SkMatrix*, const SkColorInfo&,
skvm::Uniforms*, SkArenaAlloc*) const override {
// TODO?
return {};

View File

@ -687,7 +687,7 @@ public:
skvm::Color onProgram(skvm::Builder* p,
skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider& matrices, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const override {
sk_sp<SkData> inputs =
get_xformed_uniforms(fEffect.get(), fUniforms, &matrices, dst.colorSpace());
@ -705,8 +705,7 @@ public:
if (fChildren[ix]) {
SkOverrideDeviceMatrixProvider mats{matrices, SkMatrix::I()};
return as_SB(fChildren[ix])->program(p, device, coord, paint,
mats, nullptr,
quality, dst,
mats, nullptr, dst,
uniforms, alloc);
} else {
return paint;

View File

@ -42,7 +42,6 @@ namespace {
SkBlendMode blendMode;
Coverage coverage;
SkColor4f paint;
SkFilterQuality quality;
const SkMatrixProvider& matrices;
Params withCoverage(Coverage c) const {
@ -144,8 +143,7 @@ namespace {
if (auto c = sb->program(&p,
device,/*local=*/device, paint,
params.matrices, /*localM=*/nullptr,
params.quality, params.dst,
uniforms,alloc)) {
params.dst, uniforms,alloc)) {
hash = p.hash();
// p.hash() folds in all instructions to produce r,g,b,a but does not know
// precisely which value we'll treat as which channel. Imagine the shader
@ -200,8 +198,7 @@ namespace {
// See note about arguments above: a SpriteShader will call p->arg() once during program().
skvm::Color src = as_SB(params.shader)->program(p, device,/*local=*/device, paint,
params.matrices, /*localM=*/nullptr,
params.quality, params.dst,
uniforms, alloc);
params.dst, uniforms, alloc);
SkASSERT(src);
if (params.coverage == Coverage::Mask3D) {
skvm::F32 M = from_unorm(8, p->load8(p->varying<uint8_t>())),
@ -271,8 +268,7 @@ namespace {
if (params.clip) {
skvm::Color clip = as_SB(params.clip)->program(p, device,/*local=*/device, paint,
params.matrices, /*localM=*/nullptr,
params.quality, params.dst,
uniforms, alloc);
params.dst, uniforms, alloc);
SkAssertResult(clip);
cov.r *= clip.a; // We use the alpha channel of clip for all four.
cov.g *= clip.a;
@ -353,7 +349,7 @@ namespace {
skvm::Color onProgram(skvm::Builder* p,
skvm::Coord /*device*/, skvm::Coord /*local*/, skvm::Color /*paint*/,
const SkMatrixProvider&, const SkMatrix* /*localM*/,
SkFilterQuality, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc*) const override {
const SkColorType ct = fSprite.colorType();
@ -379,11 +375,11 @@ namespace {
skvm::Color onProgram(skvm::Builder* p,
skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider& matrices, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const override {
// Run our wrapped shader.
skvm::Color c = as_SB(fShader)->program(p, device,local, paint,
matrices,localM, quality,dst, uniforms,alloc);
matrices,localM, dst, uniforms,alloc);
if (!c) {
return {};
}
@ -465,8 +461,7 @@ namespace {
skvm::Color onProgram(skvm::Builder*,
skvm::Coord, skvm::Coord, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix*,
SkFilterQuality, const SkColorInfo&,
const SkMatrixProvider&, const SkMatrix*, const SkColorInfo&,
skvm::Uniforms*, SkArenaAlloc*) const override {
// Incoming `paint` is unpremul in the destination color space,
// so we just need to premul it.
@ -537,7 +532,6 @@ namespace {
blendMode,
Coverage::Full, // Placeholder... withCoverage() will change as needed.
paintColor,
paint.getFilterQuality(),
matrices,
};
}

View File

@ -65,12 +65,11 @@ bool SkColorFilterShader::onAppendStages(const SkStageRec& rec) const {
skvm::Color SkColorFilterShader::onProgram(skvm::Builder* p,
skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider& matrices, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const {
// Run the shader.
skvm::Color c = as_SB(fShader)->program(p, device,local, paint,
matrices,localM,
quality,dst,
matrices,localM, dst,
uniforms,alloc);
if (!c) {
return {};

View File

@ -27,8 +27,7 @@ private:
bool onAppendStages(const SkStageRec&) const override;
skvm::Color onProgram(skvm::Builder*, skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkMatrixProvider&, const SkMatrix* localM, const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc*) const override;
SK_FLATTENABLE_HOOKS(SkColorFilterShader)

View File

@ -93,9 +93,8 @@ bool SkColor4Shader::onAppendStages(const SkStageRec& rec) const {
skvm::Color SkColorShader::onProgram(skvm::Builder* p,
skvm::Coord /*device*/, skvm::Coord /*local*/,
skvm::Color /*paint*/,
const SkMatrixProvider&, const SkMatrix* /*localM*/,
SkFilterQuality /*quality*/, const SkColorInfo& dst,
skvm::Color /*paint*/, const SkMatrixProvider&,
const SkMatrix* /*localM*/, const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc*) const {
SkColor4f color = SkColor4f::FromColor(fColor);
SkColorSpaceXformSteps(sk_srgb_singleton(), kUnpremul_SkAlphaType,
@ -104,9 +103,8 @@ skvm::Color SkColorShader::onProgram(skvm::Builder* p,
}
skvm::Color SkColor4Shader::onProgram(skvm::Builder* p,
skvm::Coord /*device*/, skvm::Coord /*local*/,
skvm::Color /*paint*/,
const SkMatrixProvider&, const SkMatrix* /*localM*/,
SkFilterQuality /*quality*/, const SkColorInfo& dst,
skvm::Color /*paint*/, const SkMatrixProvider&,
const SkMatrix* /*localM*/, const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc*) const {
SkColor4f color = fColor;
SkColorSpaceXformSteps(fColorSpace.get(), kUnpremul_SkAlphaType,

View File

@ -45,8 +45,7 @@ private:
bool onAppendStages(const SkStageRec&) const override;
skvm::Color onProgram(skvm::Builder*, skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkMatrixProvider&, const SkMatrix* localM, const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc*) const override;
SkColor fColor;
@ -70,8 +69,7 @@ private:
bool onAppendStages(const SkStageRec&) const override;
skvm::Color onProgram(skvm::Builder*, skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkMatrixProvider&, const SkMatrix* localM, const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc*) const override;
sk_sp<SkColorSpace> fColorSpace;

View File

@ -130,20 +130,20 @@ bool SkShader_Blend::onAppendStages(const SkStageRec& orig_rec) const {
static skvm::Color program_or_paint(const sk_sp<SkShader>& sh, skvm::Builder* p,
skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider& mats, const SkMatrix* localM,
SkFilterQuality q, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) {
return sh ? as_SB(sh)->program(p, device,local, paint, mats,localM, q,dst, uniforms,alloc)
return sh ? as_SB(sh)->program(p, device,local, paint, mats,localM, dst, uniforms,alloc)
: p->premul(paint);
}
skvm::Color SkShader_Blend::onProgram(skvm::Builder* p,
skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider& mats, const SkMatrix* localM,
SkFilterQuality q, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const {
skvm::Color d,s;
if ((d = program_or_paint(fDst, p, device,local, paint, mats,localM, q,dst, uniforms,alloc)) &&
(s = program_or_paint(fSrc, p, device,local, paint, mats,localM, q,dst, uniforms,alloc)))
if ((d = program_or_paint(fDst, p, device,local, paint, mats,localM, dst, uniforms,alloc)) &&
(s = program_or_paint(fSrc, p, device,local, paint, mats,localM, dst, uniforms,alloc)))
{
return p->blend(fMode, s,d);
}
@ -180,11 +180,11 @@ bool SkShader_Lerp::onAppendStages(const SkStageRec& orig_rec) const {
skvm::Color SkShader_Lerp::onProgram(skvm::Builder* p,
skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider& mats, const SkMatrix* localM,
SkFilterQuality q, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const {
skvm::Color d,s;
if ((d = program_or_paint(fDst, p, device,local, paint, mats,localM, q,dst, uniforms,alloc)) &&
(s = program_or_paint(fSrc, p, device,local, paint, mats,localM, q,dst, uniforms,alloc)))
if ((d = program_or_paint(fDst, p, device,local, paint, mats,localM, dst, uniforms,alloc)) &&
(s = program_or_paint(fSrc, p, device,local, paint, mats,localM, dst, uniforms,alloc)))
{
auto t = p->uniformF(uniforms->pushF(fWeight));
return {

View File

@ -28,8 +28,7 @@ protected:
void flatten(SkWriteBuffer&) const override;
bool onAppendStages(const SkStageRec&) const override;
skvm::Color onProgram(skvm::Builder*, skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix* localM,
SkFilterQuality, const SkColorInfo& dst,
const SkMatrixProvider&, const SkMatrix* localM, const SkColorInfo& dst,
skvm::Uniforms*, SkArenaAlloc*) const override;
private:
@ -61,8 +60,7 @@ protected:
void flatten(SkWriteBuffer&) const override;
bool onAppendStages(const SkStageRec&) const override;
skvm::Color onProgram(skvm::Builder*, skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix* localM,
SkFilterQuality, const SkColorInfo& dst,
const SkMatrixProvider&, const SkMatrix* localM, const SkColorInfo& dst,
skvm::Uniforms*, SkArenaAlloc*) const override;
private:

View File

@ -38,8 +38,7 @@ protected:
}
skvm::Color onProgram(skvm::Builder*, skvm::Coord, skvm::Coord, skvm::Color,
const SkMatrixProvider&, const SkMatrix*,
SkFilterQuality, const SkColorInfo&,
const SkMatrixProvider&, const SkMatrix*, const SkColorInfo&,
skvm::Uniforms*, SkArenaAlloc*) const override;
private:

View File

@ -811,7 +811,7 @@ SkStageUpdater* SkImageShader::onAppendUpdatableStages(const SkStageRec& rec) co
skvm::Color SkImageShader::onProgram(skvm::Builder* p,
skvm::Coord device, skvm::Coord origLocal, skvm::Color paint,
const SkMatrixProvider& matrices, const SkMatrix* localM,
SkFilterQuality, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const {
SkMatrix baseInv;
if (!this->computeTotalInverse(matrices.localToDevice(), localM, &baseInv)) {

View File

@ -52,8 +52,7 @@ private:
SkStageUpdater* onAppendUpdatableStages(const SkStageRec&) const override;
skvm::Color onProgram(skvm::Builder*, skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkMatrixProvider&, const SkMatrix* localM, const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc*) const override;
bool doStages(const SkStageRec&, SkImageStageUpdater* = nullptr) const;

View File

@ -81,15 +81,14 @@ bool SkLocalMatrixShader::onAppendStages(const SkStageRec& rec) const {
skvm::Color SkLocalMatrixShader::onProgram(skvm::Builder* p,
skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider& matrices, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const {
SkTCopyOnFirstWrite<SkMatrix> lm(this->getLocalMatrix());
if (localM) {
lm.writable()->preConcat(*localM);
}
return as_SB(fProxyShader)->program(p, device,local, paint,
matrices,lm.get(),
quality,dst,
matrices,lm.get(), dst,
uniforms,alloc);
}
@ -160,12 +159,11 @@ protected:
skvm::Color onProgram(skvm::Builder* p,
skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider& matrices, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const override {
SkOverrideDeviceMatrixProvider matrixProvider(matrices, fCTM);
return as_SB(fProxyShader)->program(p, device,local, paint,
matrixProvider,localM,
quality,dst,
matrixProvider,localM, dst,
uniforms,alloc);
}

View File

@ -49,8 +49,7 @@ protected:
bool onAppendStages(const SkStageRec&) const override;
skvm::Color onProgram(skvm::Builder*, skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkMatrixProvider&, const SkMatrix* localM, const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc*) const override;
private:

View File

@ -304,8 +304,7 @@ public:
skvm::Color onProgram(skvm::Builder*,
skvm::Coord, skvm::Coord, skvm::Color,
const SkMatrixProvider&, const SkMatrix*,
SkFilterQuality, const SkColorInfo&,
const SkMatrixProvider&, const SkMatrix*, const SkColorInfo&,
skvm::Uniforms*, SkArenaAlloc*) const override {
// TODO?
return {};

View File

@ -296,7 +296,7 @@ bool SkPictureShader::onAppendStages(const SkStageRec& rec) const {
skvm::Color SkPictureShader::onProgram(skvm::Builder* p,
skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider& matrices, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const {
auto lm = this->totalLocalMatrix(localM);
@ -309,8 +309,7 @@ skvm::Color SkPictureShader::onProgram(skvm::Builder* p,
}
return as_SB(bitmapShader)->program(p, device,local, paint,
matrices,lm,
quality,dst,
matrices,lm, dst,
uniforms,alloc);
}

View File

@ -36,8 +36,7 @@ protected:
void flatten(SkWriteBuffer&) const override;
bool onAppendStages(const SkStageRec&) const override;
skvm::Color onProgram(skvm::Builder*, skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkMatrixProvider&, const SkMatrix* localM, const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const override;
#ifdef SK_ENABLE_LEGACY_SHADERCONTEXT

View File

@ -198,7 +198,7 @@ bool SkShaderBase::onAppendStages(const SkStageRec& rec) const {
skvm::Color SkShaderBase::program(skvm::Builder* p,
skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider& matrices, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const {
// Shader subclasses should always act as if the destination were premul or opaque.
// SkVMBlitter handles all the coordination of unpremul itself, via premul.
@ -218,7 +218,7 @@ skvm::Color SkShaderBase::program(skvm::Builder* p,
// shader program hash and blitter Key. This makes it safe for us to use
// that bit to make decisions when constructing an SkVMBlitter, like doing
// SrcOver -> Src strength reduction.
if (auto color = this->onProgram(p, device,local, paint, matrices,localM, quality,tweaked,
if (auto color = this->onProgram(p, device,local, paint, matrices,localM, tweaked,
uniforms,alloc)) {
if (this->isOpaque()) {
color.a = p->splat(1.0f);
@ -265,8 +265,7 @@ skvm::Coord SkShaderBase::ApplyMatrix(skvm::Builder* p, const SkMatrix& m,
///////////////////////////////////////////////////////////////////////////////////////////////////
skvm::Color SkEmptyShader::onProgram(skvm::Builder*, skvm::Coord, skvm::Coord, skvm::Color,
const SkMatrixProvider&, const SkMatrix*,
SkFilterQuality, const SkColorInfo&,
const SkMatrixProvider&, const SkMatrix*, const SkColorInfo&,
skvm::Uniforms*, SkArenaAlloc*) const {
return {}; // signal failure
}

View File

@ -8,7 +8,6 @@
#ifndef SkShaderBase_DEFINED
#define SkShaderBase_DEFINED
#include "include/core/SkFilterQuality.h"
#include "include/core/SkMatrix.h"
#include "include/core/SkPaint.h"
#include "include/core/SkSamplingOptions.h"
@ -98,8 +97,8 @@ public:
const SkMatrix* fLocalMatrix; // optional local matrix
SkColorType fDstColorType; // the color type of the dest surface
SkColorSpace* fDstColorSpace; // the color space of the dest surface (if any)
SkAlpha fPaintAlpha;
bool fPaintDither;
SkAlpha fPaintAlpha;
bool fPaintDither;
bool isLegacyCompatible(SkColorSpace* shadersColorSpace) const;
};
@ -218,8 +217,7 @@ public:
SK_WARN_UNUSED_RESULT
skvm::Color program(skvm::Builder*, skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
const SkMatrixProvider&, const SkMatrix* localM, const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const;
protected:
@ -256,8 +254,7 @@ private:
virtual skvm::Color onProgram(skvm::Builder*,
skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dst,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const = 0;
const SkColorInfo& dst, skvm::Uniforms*, SkArenaAlloc*) const = 0;
using INHERITED = SkShader;
};

View File

@ -424,7 +424,7 @@ skvm::Color SkGradientShaderBase::onProgram(skvm::Builder* p,
skvm::Coord device, skvm::Coord local,
skvm::Color /*paint*/,
const SkMatrixProvider& mats, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dstInfo,
const SkColorInfo& dstInfo,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const {
SkMatrix inv;
if (!this->computeTotalInverse(mats.localToDevice(), localM, &inv)) {

View File

@ -80,8 +80,7 @@ protected:
bool onAppendStages(const SkStageRec&) const override;
skvm::Color onProgram(skvm::Builder*, skvm::Coord device, skvm::Coord local, skvm::Color paint,
const SkMatrixProvider&, const SkMatrix* localM,
SkFilterQuality quality, const SkColorInfo& dstCS,
const SkMatrixProvider&, const SkMatrix* localM, const SkColorInfo& dstCS,
skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const override;
virtual void appendGradientStages(SkArenaAlloc* alloc, SkRasterPipeline* tPipeline,