diff options
Diffstat (limited to 'src/gpu/GrPipeline.cpp')
-rw-r--r-- | src/gpu/GrPipeline.cpp | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/src/gpu/GrPipeline.cpp b/src/gpu/GrPipeline.cpp index 94f11e93ac..e2b76f8ab4 100644 --- a/src/gpu/GrPipeline.cpp +++ b/src/gpu/GrPipeline.cpp @@ -144,15 +144,9 @@ GrPipeline* GrPipeline::CreateAt(void* memory, const CreateArgs& args, optimizations->fFlags |= GrPipelineOptimizations::kCanTweakAlphaForCoverage_Flag; } - GrXPFactory::InvariantBlendedColor blendedColor; - if (xpFactory) { - xpFactory->getInvariantBlendedColor(args.fAnalysis.fColorPOI, &blendedColor); - } else { - GrPorterDuffXPFactory::SrcOverInvariantBlendedColor(args.fAnalysis.fColorPOI, - &blendedColor); - } - if (blendedColor.fWillBlendWithDst) { - optimizations->fFlags |= GrPipelineOptimizations::kWillColorBlendWithDst_Flag; + if (GrXPFactory::WillReadDst(xpFactory, args.fAnalysis.fColorPOI, + args.fAnalysis.fCoveragePOI)) { + optimizations->fFlags |= GrPipelineOptimizations::kXPReadsDst_Flag; } return pipeline; |