convert over to 2d-mode
[√] convert all stages to use SkJumper_MemoryCtx / be 2d-compatible
[√] convert compile to 2d also, remove 1d run/compile
[√] convert all call sites
[√] no diffs
Change-Id: I3b806eb8fe0c3ec043359616409f7cd1211a1e43
Reviewed-on: https://skia-review.googlesource.com/24263
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
diff --git a/src/codec/SkGifCodec.cpp b/src/codec/SkGifCodec.cpp
index df472b9..412b8ff 100644
--- a/src/codec/SkGifCodec.cpp
+++ b/src/codec/SkGifCodec.cpp
@@ -38,6 +38,7 @@
#include "SkRasterPipeline.h"
#include "SkStream.h"
#include "SkSwizzler.h"
+#include "../jumper/SkJumper.h"
#include <algorithm>
@@ -520,16 +521,19 @@
SkRasterPipeline::StockStage storeDst;
void* src = SkTAddOffset<void>(fTmpBuffer.get(), offsetBytes);
void* dst = SkTAddOffset<void>(dstLine, offsetBytes);
+
+ SkJumper_MemoryCtx src_ctx = { src, 0 },
+ dst_ctx = { dst, 0 };
switch (dstInfo.colorType()) {
case kBGRA_8888_SkColorType:
case kRGBA_8888_SkColorType:
- p.append(SkRasterPipeline::load_8888_dst, &dst);
- p.append(SkRasterPipeline::load_8888, &src);
+ p.append(SkRasterPipeline::load_8888_dst, &dst_ctx);
+ p.append(SkRasterPipeline::load_8888, &src_ctx);
storeDst = SkRasterPipeline::store_8888;
break;
case kRGBA_F16_SkColorType:
- p.append(SkRasterPipeline::load_f16_dst, &dst);
- p.append(SkRasterPipeline::load_f16, &src);
+ p.append(SkRasterPipeline::load_f16_dst, &dst_ctx);
+ p.append(SkRasterPipeline::load_f16, &src_ctx);
storeDst = SkRasterPipeline::store_f16;
break;
default:
@@ -539,7 +543,7 @@
}
p.append(SkRasterPipeline::srcover);
p.append(storeDst, &dst);
- p.run(0, 0, fSwizzler->swizzleWidth());
+ p.run(0,0, fSwizzler->swizzleWidth(),1);
}
// Tell the frame to copy the row data if need be.