aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/SkRasterPipelineBench.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'bench/SkRasterPipelineBench.cpp')
-rw-r--r--bench/SkRasterPipelineBench.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/bench/SkRasterPipelineBench.cpp b/bench/SkRasterPipelineBench.cpp
index bf71d9a8d9..bfe2110362 100644
--- a/bench/SkRasterPipelineBench.cpp
+++ b/bench/SkRasterPipelineBench.cpp
@@ -32,16 +32,18 @@ public:
}
void onDraw(int loops, SkCanvas*) override {
+ SkRasterPipeline p;
+ p.append(SkRasterPipeline::load_s_srgb, src);
+ p.append(SkRasterPipeline:: scale_u8, mask);
+ p.append(kF16 ? SkRasterPipeline::load_d_f16
+ : SkRasterPipeline::load_d_srgb, dst);
+ p.append(SkRasterPipeline:: srcover);
+ p.append(kF16 ? SkRasterPipeline::store_f16
+ : SkRasterPipeline::store_srgb, dst);
+ auto compiled = p.compile();
+
while (loops --> 0) {
- SkRasterPipeline p;
- p.append(SkRasterPipeline::load_s_srgb, src);
- p.append(SkRasterPipeline:: scale_u8, mask);
- p.append(kF16 ? SkRasterPipeline::load_d_f16
- : SkRasterPipeline::load_d_srgb, dst);
- p.append(SkRasterPipeline:: srcover);
- p.append(kF16 ? SkRasterPipeline::store_f16
- : SkRasterPipeline::store_srgb, dst);
- p.run(N);
+ compiled(0, N);
}
}
};