aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/Xfer4fBench.cpp
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2017-06-08 20:26:41 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-06-09 00:48:50 +0000
commit43e498e7e7ca6f93bb57f76e8346244ed807255e (patch)
tree4ac538afa966b3d6f4ad39d6d703c5f3f6dd7fe7 /bench/Xfer4fBench.cpp
parentfee2b4ed0ff3776064c327c73f4f66b20727a1c1 (diff)
specialize D32 proc for legacy src
lots of dead-code removal Bug: skia: Change-Id: I23ea25eb38855b4776e97fa8ff777d9744baab1d Reviewed-on: https://skia-review.googlesource.com/19147 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'bench/Xfer4fBench.cpp')
-rw-r--r--bench/Xfer4fBench.cpp104
1 files changed, 0 insertions, 104 deletions
diff --git a/bench/Xfer4fBench.cpp b/bench/Xfer4fBench.cpp
deleted file mode 100644
index 5e679a826e..0000000000
--- a/bench/Xfer4fBench.cpp
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * Copyright 2016 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "Benchmark.h"
-#include "SkPM4f.h"
-#include "SkString.h"
-#include "SkXfermodePriv.h"
-
-#define USE_AA (1 << 31) // merge with Xfermode::PMFlags w/o conflict
-
-#define INNER_LOOPS 1000
-
-// Benchmark that draws non-AA rects or AA text with an SkXfermode::Mode.
-class XferD32Bench : public Benchmark {
-public:
- XferD32Bench(SkBlendMode mode, const char name[], bool doN, uint32_t flags)
- : fDoN(doN)
- , fFlags(flags & ~USE_AA)
- {
- fMode = mode;
- fProc1 = SkXfermode::GetD32Proc(fMode, fFlags | SkXfermode::kSrcIsSingle_D32Flag);
- fProcN = SkXfermode::GetD32Proc(fMode, fFlags);
- fName.printf("xfer4f_%s_%s_%c_%s_%s",
- name,
- (flags & USE_AA) ? "aa" : "bw",
- fDoN ? 'N' : '1',
- (flags & SkXfermode::kSrcIsOpaque_D32Flag) ? "opaque" : "alpha",
- (flags & SkXfermode::kDstIsSRGB_D32Flag) ? "srgb" : "linear");
-
- for (int i = 0; i < N; ++i) {
- fSrc[i] = {{ 1, 1, 1, 1 }};
- fDst[i] = 0;
- fAAStorage[i] = i * 255 / (N - 1);
- }
-
- if (flags & USE_AA) {
- fAA = fAAStorage;
- } else {
- fAA = nullptr;
- }
- }
-
-protected:
- bool isSuitableFor(Backend backend) override { return backend == kNonRendering_Backend; }
-
- const char* onGetName() override { return fName.c_str(); }
-
- void onDraw(int loops, SkCanvas*) override {
- for (int i = 0; i < loops * INNER_LOOPS; ++i) {
- if (fDoN) {
- fProcN(fMode, fDst, fSrc, N, fAA);
- } else {
- fProc1(fMode, fDst, fSrc, N, fAA);
- }
- }
- }
-
-private:
- SkBlendMode fMode;
- SkString fName;
- SkXfermode::D32Proc fProc1;
- SkXfermode::D32Proc fProcN;
- const SkAlpha* fAA;
- bool fDoN;
- uint32_t fFlags;
-
- enum {
- N = 1000,
- };
- SkPM4f fSrc[N];
- SkPMColor fDst[N];
- uint8_t fAAStorage[N];
-
- typedef Benchmark INHERITED;
-};
-
-#define F00 0
-#define F01 (SkXfermode::kSrcIsOpaque_D32Flag)
-#define F10 (SkXfermode::kDstIsSRGB_D32Flag)
-#define F11 (SkXfermode::kSrcIsOpaque_D32Flag | SkXfermode::kDstIsSRGB_D32Flag)
-
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", false, F10); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", false, F00); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", false, F11); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", false, F01); )
-
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", true, F10); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", true, F00); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", true, F11); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", true, F01); )
-
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", false, F10 | USE_AA); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", false, F00 | USE_AA); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", false, F11 | USE_AA); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", false, F01 | USE_AA); )
-
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", true, F10 | USE_AA); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", true, F00 | USE_AA); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", true, F11 | USE_AA); )
-DEF_BENCH( return new XferD32Bench(SkBlendMode::kSrcOver, "srcover", true, F01 | USE_AA); )