Lines Matching defs:src

106     // A generic driver that maps fn over a src array into a dst array.
107 // fn should take an Sk4px (4 src pixels) and return an Sk4px (4 dst pixels).
109 static void MapSrc(int n, SkPMColor* dst, const SkPMColor* src, const Fn& fn) {
111 SkASSERT(src);
116 Sk4px dst0 = fn(Load4(src+0)),
117 dst4 = fn(Load4(src+4));
120 dst += 8; src += 8; n -= 8;
125 fn(Load4(src)).store4(dst);
126 dst += 4; src += 4; n -= 4;
129 fn(Load2(src)).store2(dst);
130 dst += 2; src += 2; n -= 2;
133 fn(Load1(src)).store1(dst);
141 static void MapDstSrc(int n, SkPMColor* dst, const SkPMColor* src, const Fn& fn) {
143 SkASSERT(src);
146 Sk4px dst0 = fn(Load4(dst+0), Load4(src+0)),
147 dst4 = fn(Load4(dst+4), Load4(src+4));
150 dst += 8; src += 8; n -= 8;
155 fn(Load4(dst), Load4(src)).store4(dst);
156 dst += 4; src += 4; n -= 4;
159 fn(Load2(dst), Load2(src)).store2(dst);
160 dst += 2; src += 2; n -= 2;
163 fn(Load1(dst), Load1(src)).store1(dst);
201 static void MapDstSrcAlpha(int n, SkPMColor* dst, const SkPMColor* src, const SkAlpha* a,
204 SkASSERT(src);
208 Sk4px dst0 = fn(Load4(dst+0), Load4(src+0), Load4Alphas(a+0)),
209 dst4 = fn(Load4(dst+4), Load4(src+4), Load4Alphas(a+4));
212 dst += 8; src += 8; a += 8; n -= 8;
217 fn(Load4(dst), Load4(src), Load4Alphas(a)).store4(dst);
218 dst += 4; src += 4; a += 4; n -= 4;
221 fn(Load2(dst), Load2(src), Load2Alphas(a)).store2(dst);
222 dst += 2; src += 2; a += 2; n -= 2;
225 fn(Load1(dst), Load1(src), Sk16b(*a)).store1(dst);
243 #include "src/opts/Sk4px_none.h"
246 #include "src/opts/Sk4px_SSE2.h"
248 #include "src/opts/Sk4px_NEON.h"
250 #include "src/opts/Sk4px_none.h"