Home
last modified time | relevance | path

Searched refs:Sk4px (Results 1 – 10 of 10) sorted by relevance

/external/skia/src/opts/
DSk4px_none.h12 static_assert(sizeof(Sk4px) == 16, "This file uses memcpy / sk_memset32, so exact size matters.");
14 inline Sk4px Sk4px::DupPMColor(SkPMColor px) { in DupPMColor()
15 Sk4px px4 = Sk16b(); in DupPMColor()
20 inline Sk4px Sk4px::Load4(const SkPMColor px[4]) { in Load4()
21 Sk4px px4 = Sk16b(); in Load4()
26 inline Sk4px Sk4px::Load2(const SkPMColor px[2]) { in Load2()
27 Sk4px px2 = Sk16b(); in Load2()
32 inline Sk4px Sk4px::Load1(const SkPMColor px[1]) { in Load1()
33 Sk4px px1 = Sk16b(); in Load1()
38 inline void Sk4px::store4(SkPMColor px[4]) const { memcpy(px, this, 16); } in store4()
[all …]
DSk4px_SSE2.h10 inline Sk4px Sk4px::DupPMColor(SkPMColor px) { return Sk16b(_mm_set1_epi32(px)); } in DupPMColor()
12 inline Sk4px Sk4px::Load4(const SkPMColor px[4]) { in Load4()
15 inline Sk4px Sk4px::Load2(const SkPMColor px[2]) { in Load2()
18 inline Sk4px Sk4px::Load1(const SkPMColor px[1]) { return Sk16b(_mm_cvtsi32_si128(*px)); } in Load1()
20 inline void Sk4px::store4(SkPMColor px[4]) const { _mm_storeu_si128((__m128i*)px, this->fVec); } in store4()
21 inline void Sk4px::store2(SkPMColor px[2]) const { _mm_storel_epi64((__m128i*)px, this->fVec); } in store2()
22 inline void Sk4px::store1(SkPMColor px[1]) const { *px = _mm_cvtsi128_si32(this->fVec); } in store1()
24 inline Sk4px::Wide Sk4px::widenLo() const { in widenLo()
29 inline Sk4px::Wide Sk4px::widenHi() const { in widenHi()
34 inline Sk4px::Wide Sk4px::widenLoHi() const { in widenLoHi()
[all …]
DSk4px_NEON.h10 inline Sk4px Sk4px::DupPMColor(SkPMColor px) { return Sk16b((uint8x16_t)vdupq_n_u32(px)); } in DupPMColor()
12 inline Sk4px Sk4px::Load4(const SkPMColor px[4]) { in Load4()
15 inline Sk4px Sk4px::Load2(const SkPMColor px[2]) { in Load2()
19 inline Sk4px Sk4px::Load1(const SkPMColor px[1]) { in Load1()
23 inline void Sk4px::store4(SkPMColor px[4]) const { in store4()
26 inline void Sk4px::store2(SkPMColor px[2]) const { in store2()
29 inline void Sk4px::store1(SkPMColor px[1]) const { in store1()
33 inline Sk4px::Wide Sk4px::widenLo() const { in widenLo()
38 inline Sk4px::Wide Sk4px::widenHi() const { in widenHi()
43 inline Sk4px::Wide Sk4px::widenLoHi() const { in widenLoHi()
[all …]
DSkXfermode_opts.h20 struct Xfermode { Sk4px operator()(const Sk4px&, const Sk4px&) const; }; \
21 inline Sk4px Xfermode::operator()(const Sk4px& d, const Sk4px& s) const
23 XFERMODE(Clear) { return Sk4px::DupPMColor(0); } in XFERMODE()
51 auto m = Sk4px::Wide::Min(s * d.alphas(), d * s.alphas()).div255(); in XFERMODE()
190 static Sk4px xfer_aa(const Sk4px& d, const Sk4px& s, const Sk4px& aa) { in xfer_aa()
191 Sk4px bw = Xfermode()(d, s); in xfer_aa()
197 template <> Sk4px xfer_aa<Xfermode>(const Sk4px& d, const Sk4px& s, const Sk4px& aa)
225 Sk4px::MapDstSrc(n, dst, src, Xfermode()); in xfer32()
227 Sk4px::MapDstSrcAlpha(n, dst, src, aa, xfer_aa<Xfermode>); in xfer32()
DSkBlitMask_opts.h137 auto s = Sk4px::DupPMColor(SkPreMultiplyColor(color));
138 auto fn = [&](const Sk4px& d, const Sk4px& aa) {
146 Sk4px::MapDstAlpha(w, dst, mask, fn);
157 auto s = Sk4px::DupPMColor(SkPreMultiplyColor(color));
158 auto fn = [&](const Sk4px& d, const Sk4px& aa) {
166 Sk4px::MapDstAlpha(w, dst, mask, fn);
176 auto fn = [](const Sk4px& d, const Sk4px& aa) {
185 Sk4px::MapDstAlpha(w, dst, mask, fn);
DSkBlitRow_opts.h32 Sk16h colorHighAndRound = Sk4px::DupPMColor(color).widenHi() + Sk16h(128); in blit_row_color32()
35 Sk4px::MapSrc(count, dst, src, [&](const Sk4px& src4) -> Sk4px { in blit_row_color32()
/external/skia/src/core/
DSk4px.h23 class Sk4px : public Sk16b {
25 static Sk4px DupAlpha(SkAlpha a) { return Sk16b(a); } // a -> aaaa aaaa aaaa aaaa in DupAlpha()
26 static Sk4px DupPMColor(SkPMColor c); // argb -> argb argb argb argb
28 Sk4px(const Sk16b& v) : INHERITED(v) {} in Sk4px() function
30 Sk4px alphas() const; // ARGB argb XYZW xyzw -> AAAA aaaa XXXX xxxx
33 Sk4px zeroColors() const; // ARGB argb XYZW xyzw -> A000 a000 X000 x000
34 Sk4px zeroAlphas() const; // ARGB argb XYZW xyzw -> 0RGB 0rgb 0YZW 0yzw
36 Sk4px inv() const { return Sk16b(255) - *this; } in inv()
39 static Sk4px Load4(const SkPMColor[4]); // PMColor[4] -> ARGB argb XYZW xyzw
40 static Sk4px Load2(const SkPMColor[2]); // PMColor[2] -> ARGB argb ???? ????
[all …]
/external/skia/tests/
DSkNxTest.cpp174 auto av = Sk4px::DupAlpha(a), in DEF_TEST()
175 bv = Sk4px::DupAlpha(b); in DEF_TEST()
198 auto packed = Sk4px::Load4(colors); in DEF_TEST()
/external/skia/site/dev/contrib/
Dsimd.md60 `SkPx`, our latest approach (there have been alpha `Sk16b` and beta `Sk4px` predecessors) to 8- and…
126 I am in the process of rolling out `SkPx`. Some Skia code is already using its precursor, `Sk4px`,…
132Sk4px` and `SkPx` implementations of these methods are clearer, less buggy, and that all the `SkXf…
/external/skia/gn/
Dcore.gni15 "$_src/core/Sk4px.h",