Merge inbound to mozilla-central. a=merge

This commit is contained in:
Margareta Eliza Balazs 2018-11-05 11:48:33 +02:00
Родитель f6c59cabb6 102969de53
Коммит 7c848ac763
1 изменённых файлов: 18 добавлений и 2 удалений

Просмотреть файл

@ -110,13 +110,29 @@ SkColor SkHSVToColor(U8CPU a, const SkScalar hsv[3]) {
template <> template <>
SkColor4f SkColor4f::FromColor(SkColor bgra) { SkColor4f SkColor4f::FromColor(SkColor bgra) {
SkColor4f rgba; SkColor4f rgba;
swizzle_rb(Sk4f_fromL32(bgra)).store(rgba.vec()); Sk4f c4f = Sk4f_fromL32(bgra);
#ifdef SK_CPU_BENDIAN
// ARGB -> RGBA
c4f = SkNx_shuffle<1, 2, 3, 0>(c4f);
#else
// BGRA -> RGBA
c4f = swizzle_rb(c4f);
#endif
c4f.store(rgba.vec());
return rgba; return rgba;
} }
template <> template <>
SkColor SkColor4f::toSkColor() const { SkColor SkColor4f::toSkColor() const {
return Sk4f_toL32(swizzle_rb(Sk4f::Load(this->vec()))); Sk4f c4f = Sk4f::Load(this->vec());
#ifdef SK_CPU_BENDIAN
// RGBA -> ARGB
c4f = SkNx_shuffle<3, 0, 1, 2>(c4f);
#else
// RGBA -> BGRA
c4f = swizzle_rb(c4f);
#endif
return Sk4f_toL32(c4f);
} }
template <> template <>