Integrate clamp to border into FP optimization flags
Bug: skia:
Change-Id: I89bf20a06942e8d00168c5e8b50b336e99785b9a
Reviewed-on: https://skia-review.googlesource.com/c/177502
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
diff --git a/src/gpu/effects/GrTextureDomain.cpp b/src/gpu/effects/GrTextureDomain.cpp
index f452ca7..c710245 100644
--- a/src/gpu/effects/GrTextureDomain.cpp
+++ b/src/gpu/effects/GrTextureDomain.cpp
@@ -249,16 +249,6 @@
}
///////////////////////////////////////////////////////////////////////////////
-inline GrFragmentProcessor::OptimizationFlags GrTextureDomainEffect::OptFlags(
- GrPixelConfig config, GrTextureDomain::Mode modeX, GrTextureDomain::Mode modeY) {
- if (modeX == GrTextureDomain::kDecal_Mode || modeY == GrTextureDomain::kDecal_Mode ||
- !GrPixelConfigIsOpaque(config)) {
- return GrFragmentProcessor::kCompatibleWithCoverageAsAlpha_OptimizationFlag;
- } else {
- return GrFragmentProcessor::kCompatibleWithCoverageAsAlpha_OptimizationFlag |
- GrFragmentProcessor::kPreservesOpaqueInput_OptimizationFlag;
- }
-}
std::unique_ptr<GrFragmentProcessor> GrTextureDomainEffect::Make(
sk_sp<GrTextureProxy> proxy,
@@ -291,7 +281,9 @@
GrTextureDomain::Mode modeX,
GrTextureDomain::Mode modeY,
const GrSamplerState& sampler)
- : INHERITED(kGrTextureDomainEffect_ClassID, OptFlags(proxy->config(), modeX, modeY))
+ : INHERITED(kGrTextureDomainEffect_ClassID,
+ ModulateForSamplerOptFlags(proxy->config(),
+ GrTextureDomain::IsDecalSampled(sampler, modeX, modeY)))
, fCoordTransform(matrix, proxy.get())
, fTextureDomain(proxy.get(), domain, modeX, modeY)
, fTextureSampler(std::move(proxy), sampler) {