aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrFragmentProcessor.cpp
diff options
context:
space:
mode:
authorGravatar Brian Salomon <bsalomon@google.com>2017-07-20 16:46:46 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-07-21 11:48:53 +0000
commit650ced07d9660e74eb34ddff79293583f7b70837 (patch)
treefa178b22588dd1b6df6609432720e99a0e6ac633 /src/gpu/GrFragmentProcessor.cpp
parent6ec9a4ffe43910551d15ddc95150472aabbc8b74 (diff)
Make GrColorFragmentProcessorAnalysis do all analysis in constructor.
We no longer do piecemeal analysis. This simplifies the change to make FPs have unique ownership. Change-Id: I4e6b2c23b4277b612dedfc466cee74630a30e997 Reviewed-on: https://skia-review.googlesource.com/25362 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'src/gpu/GrFragmentProcessor.cpp')
-rw-r--r--src/gpu/GrFragmentProcessor.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gpu/GrFragmentProcessor.cpp b/src/gpu/GrFragmentProcessor.cpp
index 63dc3a37ae..f9f42f91b6 100644
--- a/src/gpu/GrFragmentProcessor.cpp
+++ b/src/gpu/GrFragmentProcessor.cpp
@@ -505,8 +505,10 @@ sk_sp<GrFragmentProcessor> GrFragmentProcessor::RunInSeries(sk_sp<GrFragmentProc
return series[0];
}
// Run the through the series, do the invariant output processing, and look for eliminations.
- GrColorFragmentProcessorAnalysis info;
- info.analyzeProcessors(sk_sp_address_as_pointer_address(series), cnt);
+ GrProcessorAnalysisColor inputColor;
+ inputColor.setToUnknown();
+ GrColorFragmentProcessorAnalysis info(inputColor, sk_sp_address_as_pointer_address(series),
+ cnt);
SkTArray<sk_sp<GrFragmentProcessor>> replacementSeries;
GrColor4f knownColor;
int leadingFPsToEliminate = info.initialProcessorsToEliminate(&knownColor);