aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkRasterPipeline.cpp
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2017-06-27 16:58:00 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-06-27 21:20:53 +0000
commit279091ef85eec98969b72805bbf613f1c0660380 (patch)
tree968ef9fa3de43a9ba1ee519609b6e07933939d80 /src/core/SkRasterPipeline.cpp
parent7a86987815be3af78fe3801d4f347ebb0c63141a (diff)
specialize loaders for dst registers, to avoid move/swap stages
Bug: skia: Change-Id: I75d82ef2226c5f116b7de2208c4e914739414b6d Reviewed-on: https://skia-review.googlesource.com/20984 Commit-Queue: Mike Reed <reed@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
Diffstat (limited to 'src/core/SkRasterPipeline.cpp')
-rw-r--r--src/core/SkRasterPipeline.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/core/SkRasterPipeline.cpp b/src/core/SkRasterPipeline.cpp
index dc25e5a67c..45d081bec5 100644
--- a/src/core/SkRasterPipeline.cpp
+++ b/src/core/SkRasterPipeline.cpp
@@ -75,3 +75,10 @@ void SkRasterPipeline::append_from_srgb(SkAlphaType at) {
this->append(SkRasterPipeline::clamp_a);
}
}
+
+void SkRasterPipeline::append_from_srgb_dst(SkAlphaType at) {
+ this->unchecked_append(from_srgb_dst, nullptr);
+ if (at == kPremul_SkAlphaType) {
+ this->append(SkRasterPipeline::clamp_a_dst);
+ }
+}