remove src/jumper
The distinction between SkJumper and SkRasterPipeline used
to be important, but it's no longer. This CL moves everything
under src/jumper to the appropriate SkRasterPipeline file.
Change-Id: I1181fffafccb3dc4c4eb5f33b442c719ee370462
Reviewed-on: https://skia-review.googlesource.com/c/164627
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
diff --git a/src/shaders/SkComposeShader.cpp b/src/shaders/SkComposeShader.cpp
index 3e3d06d..2dee742 100644
--- a/src/shaders/SkComposeShader.cpp
+++ b/src/shaders/SkComposeShader.cpp
@@ -15,7 +15,6 @@
#include "SkReadBuffer.h"
#include "SkWriteBuffer.h"
#include "SkString.h"
-#include "../jumper/SkJumper.h"
sk_sp<SkShader> SkShader::MakeCompose(sk_sp<SkShader> dst, sk_sp<SkShader> src, SkBlendMode mode,
float lerpT) {
@@ -81,7 +80,7 @@
bool SkComposeShader::onAppendStages(const StageRec& rec) const {
struct Storage {
- float fRGBA[4 * SkJumper_kMaxStride];
+ float fRGBA[4 * SkRasterPipeline_kMaxStride];
float fAlpha;
};
auto storage = rec.fAlloc->make<Storage>();
diff --git a/src/shaders/SkImageShader.cpp b/src/shaders/SkImageShader.cpp
index 8313806..4493fd9 100644
--- a/src/shaders/SkImageShader.cpp
+++ b/src/shaders/SkImageShader.cpp
@@ -16,7 +16,6 @@
#include "SkImageShader.h"
#include "SkReadBuffer.h"
#include "SkWriteBuffer.h"
-#include "../jumper/SkJumper.h"
/**
* We are faster in clamp, so always use that tiling when we can.
@@ -286,23 +285,23 @@
p->append(SkRasterPipeline::seed_shader);
p->append_matrix(alloc, matrix);
- auto gather = alloc->make<SkJumper_GatherCtx>();
+ auto gather = alloc->make<SkRasterPipeline_GatherCtx>();
gather->pixels = pm.addr();
gather->stride = pm.rowBytesAsPixels();
gather->width = pm.width();
gather->height = pm.height();
- auto limit_x = alloc->make<SkJumper_TileCtx>(),
- limit_y = alloc->make<SkJumper_TileCtx>();
+ auto limit_x = alloc->make<SkRasterPipeline_TileCtx>(),
+ limit_y = alloc->make<SkRasterPipeline_TileCtx>();
limit_x->scale = pm.width();
limit_x->invScale = 1.0f / pm.width();
limit_y->scale = pm.height();
limit_y->invScale = 1.0f / pm.height();
- SkJumper_DecalTileCtx* decal_ctx = nullptr;
+ SkRasterPipeline_DecalTileCtx* decal_ctx = nullptr;
bool decal_x_and_y = fTileModeX == kDecal_TileMode && fTileModeY == kDecal_TileMode;
if (fTileModeX == kDecal_TileMode || fTileModeY == kDecal_TileMode) {
- decal_ctx = alloc->make<SkJumper_DecalTileCtx>();
+ decal_ctx = alloc->make<SkRasterPipeline_DecalTileCtx>();
decal_ctx->limit_x = limit_x->scale;
decal_ctx->limit_y = limit_y->scale;
}
@@ -404,9 +403,9 @@
return append_misc();
}
- SkJumper_SamplerCtx* sampler = nullptr;
+ SkRasterPipeline_SamplerCtx* sampler = nullptr;
if (quality != kNone_SkFilterQuality) {
- sampler = alloc->make<SkJumper_SamplerCtx>();
+ sampler = alloc->make<SkRasterPipeline_SamplerCtx>();
}
auto sample = [&](SkRasterPipeline::StockStage setup_x,
diff --git a/src/shaders/SkShader.cpp b/src/shaders/SkShader.cpp
index 21626f3..f1875ed 100644
--- a/src/shaders/SkShader.cpp
+++ b/src/shaders/SkShader.cpp
@@ -21,7 +21,6 @@
#include "SkShaderBase.h"
#include "SkTLazy.h"
#include "SkWriteBuffer.h"
-#include "../jumper/SkJumper.h"
#if SK_SUPPORT_GPU
#include "GrFragmentProcessor.h"
@@ -221,7 +220,7 @@
ContextRec cr(*opaquePaint, rec.fCTM, rec.fLocalM, rec.fDstColorType, rec.fDstCS);
- struct CallbackCtx : SkJumper_CallbackCtx {
+ struct CallbackCtx : SkRasterPipeline_CallbackCtx {
sk_sp<SkShader> shader;
Context* ctx;
};
@@ -229,7 +228,7 @@
cb->shader = rec.fDstCS ? SkColorSpaceXformer::Make(sk_ref_sp(rec.fDstCS))->apply(this)
: sk_ref_sp((SkShader*)this);
cb->ctx = as_SB(cb->shader)->makeContext(cr, rec.fAlloc);
- cb->fn = [](SkJumper_CallbackCtx* self, int active_pixels) {
+ cb->fn = [](SkRasterPipeline_CallbackCtx* self, int active_pixels) {
auto c = (CallbackCtx*)self;
int x = (int)c->rgba[0],
y = (int)c->rgba[1];
diff --git a/src/shaders/gradients/SkGradientShader.cpp b/src/shaders/gradients/SkGradientShader.cpp
index 4debbf6..52a9b56 100644
--- a/src/shaders/gradients/SkGradientShader.cpp
+++ b/src/shaders/gradients/SkGradientShader.cpp
@@ -20,7 +20,6 @@
#include "SkSweepGradient.h"
#include "SkTwoPointConicalGradient.h"
#include "SkWriteBuffer.h"
-#include "../../jumper/SkJumper.h"
enum GradientSerializationFlags {
// Bits 29:31 used for various boolean flags
@@ -216,7 +215,7 @@
desc.flatten(buffer);
}
-static void add_stop_color(SkJumper_GradientCtx* ctx, size_t stop, SkPMColor4f Fs, SkPMColor4f Bs) {
+static void add_stop_color(SkRasterPipeline_GradientCtx* ctx, size_t stop, SkPMColor4f Fs, SkPMColor4f Bs) {
(ctx->fs[0])[stop] = Fs.fR;
(ctx->fs[1])[stop] = Fs.fG;
(ctx->fs[2])[stop] = Fs.fB;
@@ -227,14 +226,14 @@
(ctx->bs[3])[stop] = Bs.fA;
}
-static void add_const_color(SkJumper_GradientCtx* ctx, size_t stop, SkPMColor4f color) {
+static void add_const_color(SkRasterPipeline_GradientCtx* ctx, size_t stop, SkPMColor4f color) {
add_stop_color(ctx, stop, { 0, 0, 0, 0 }, color);
}
// Calculate a factor F and a bias B so that color = F*t + B when t is in range of
// the stop. Assume that the distance between stops is 1/gapCount.
static void init_stop_evenly(
- SkJumper_GradientCtx* ctx, float gapCount, size_t stop, SkPMColor4f c_l, SkPMColor4f c_r) {
+ SkRasterPipeline_GradientCtx* ctx, float gapCount, size_t stop, SkPMColor4f c_l, SkPMColor4f c_r) {
// Clankium's GCC 4.9 targeting ARMv7 is barfing when we use Sk4f math here, so go scalar...
SkPMColor4f Fs = {
(c_r.fR - c_l.fR) * gapCount,
@@ -254,7 +253,7 @@
// For each stop we calculate a bias B and a scale factor F, such that
// for any t between stops n and n+1, the color we want is B[n] + F[n]*t.
static void init_stop_pos(
- SkJumper_GradientCtx* ctx, size_t stop, float t_l, float t_r, SkPMColor4f c_l, SkPMColor4f c_r) {
+ SkRasterPipeline_GradientCtx* ctx, size_t stop, float t_l, float t_r, SkPMColor4f c_l, SkPMColor4f c_r) {
// See note about Clankium's old compiler in init_stop_evenly().
SkPMColor4f Fs = {
(c_r.fR - c_l.fR) / (t_r - t_l),
@@ -275,7 +274,7 @@
bool SkGradientShaderBase::onAppendStages(const StageRec& rec) const {
SkRasterPipeline* p = rec.fPipeline;
SkArenaAlloc* alloc = rec.fAlloc;
- SkJumper_DecalTileCtx* decal_ctx = nullptr;
+ SkRasterPipeline_DecalTileCtx* decal_ctx = nullptr;
SkMatrix matrix;
if (!this->computeTotalInverse(rec.fCTM, rec.fLocalM, &matrix)) {
@@ -293,7 +292,7 @@
case kMirror_TileMode: p->append(SkRasterPipeline::mirror_x_1); break;
case kRepeat_TileMode: p->append(SkRasterPipeline::repeat_x_1); break;
case kDecal_TileMode:
- decal_ctx = alloc->make<SkJumper_DecalTileCtx>();
+ decal_ctx = alloc->make<SkRasterPipeline_DecalTileCtx>();
decal_ctx->limit_x = SkBits2Float(SkFloat2Bits(1.0f) + 1);
// reuse mask + limit_x stage, or create a custom decal_1 that just stores the mask
p->append(SkRasterPipeline::decal_x, decal_ctx);
@@ -326,14 +325,14 @@
c_r = prepareColor(1);
// See F and B below.
- auto ctx = alloc->make<SkJumper_EvenlySpaced2StopGradientCtx>();
+ auto ctx = alloc->make<SkRasterPipeline_EvenlySpaced2StopGradientCtx>();
(Sk4f::Load(c_r.vec()) - Sk4f::Load(c_l.vec())).store(ctx->f);
( Sk4f::Load(c_l.vec())).store(ctx->b);
ctx->interpolatedInPremul = premulGrad;
p->append(SkRasterPipeline::evenly_spaced_2_stop_gradient, ctx);
} else {
- auto* ctx = alloc->make<SkJumper_GradientCtx>();
+ auto* ctx = alloc->make<SkRasterPipeline_GradientCtx>();
ctx->interpolatedInPremul = premulGrad;
// Note: In order to handle clamps in search, the search assumes a stop conceptully placed
diff --git a/src/shaders/gradients/SkTwoPointConicalGradient.cpp b/src/shaders/gradients/SkTwoPointConicalGradient.cpp
index b605af3..49d0631 100644
--- a/src/shaders/gradients/SkTwoPointConicalGradient.cpp
+++ b/src/shaders/gradients/SkTwoPointConicalGradient.cpp
@@ -10,7 +10,6 @@
#include "SkReadBuffer.h"
#include "SkTwoPointConicalGradient.h"
#include "SkWriteBuffer.h"
-#include "../../jumper/SkJumper.h"
#include <utility>
@@ -200,7 +199,7 @@
}
if (fType == Type::kStrip) {
- auto* ctx = alloc->make<SkJumper_2PtConicalCtx>();
+ auto* ctx = alloc->make<SkRasterPipeline_2PtConicalCtx>();
SkScalar scaledR0 = fRadius1 / this->getCenterX1();
ctx->fP0 = scaledR0 * scaledR0;
p->append(SkRasterPipeline::xy_to_2pt_conical_strip, ctx);
@@ -209,7 +208,7 @@
return;
}
- auto* ctx = alloc->make<SkJumper_2PtConicalCtx>();
+ auto* ctx = alloc->make<SkRasterPipeline_2PtConicalCtx>();
ctx->fP0 = 1/fFocalData.fR1;
ctx->fP1 = fFocalData.fFocalX;