Lines Matching refs:skvm

337     skvm::Color onProgram(skvm::Builder* b,
338 skvm::Coord device, skvm::Coord local, skvm::Color color,
341 skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const override {
665 skvm::Color SkImageShader::onProgram(skvm::Builder* b,
666 skvm::Coord device, skvm::Coord origLocal, skvm::Color paint,
669 skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const {
674 skvm::Color SkImageShader::makeProgram(
675 skvm::Builder* p, skvm::Coord device, skvm::Coord origLocal, skvm::Color paint,
677 skvm::Uniforms* uniforms, const TransformShader* coordShader, SkArenaAlloc* alloc) const {
709 skvm::Coord upperLocal;
737 skvm::F32 w, iw, i2w,
740 skvm::F32 clamp_w,
743 skvm::Uniform addr;
744 skvm::I32 rowBytesAsPixels;
746 skvm::PixelFormat pixelFormat; // not a uniform, but needed for each texel sample,
752 skvm::PixelFormat pixelFormat = skvm::SkColorType_to_PixelFormat(pm.colorType());
772 auto sample_texel = [&](const Uniforms& u, skvm::F32 sx, skvm::F32 sy) -> skvm::Color {
774 auto repeat = [&](skvm::F32 v, skvm::F32 S, skvm::F32 I) {
777 auto mirror = [&](skvm::F32 v, skvm::F32 S, skvm::F32 I2) {
780 skvm::F32 A = v - S,
799 skvm::F32 clamped_x = clamp(sx, 0, u.clamp_w),
803 skvm::I32 index = trunc(clamped_x) +
805 skvm::Color c = gather(u.pixelFormat, u.addr, index);
814 skvm::I32 mask = p->splat(~0);
827 auto sample_level = [&](const SkPixmap& pm, const SkMatrix& inv, skvm::Coord local) {
833 skvm::F32 fx = fract(local.x + 0.5f),
835 skvm::F32 wx[4],
840 auto dot = [](const skvm::F32 a[], const skvm::F32 b[]) {
843 const skvm::F32 tmpx[] = { p->splat(1.0f), fx, fx*fx, fx*fx*fx };
844 const skvm::F32 tmpy[] = { p->splat(1.0f), fy, fy*fy, fy*fy*fy };
848 skvm::F32 ru[] = {
858 skvm::Color c;
861 skvm::F32 sy = local.y - 1.5f;
863 skvm::F32 sx = local.x - 1.5f;
865 skvm::Color s = sample_texel(u, sx,sy);
866 skvm::F32 w = wx[i] * wy[j];
878 skvm::F32 left = local.x - 0.5f,
884 skvm::F32 fx = fract(right ),
895 skvm::Color c = sample_level(upper, upperInv, upperLocal);
928 skvm::F32 limit = (at == kUnpremul_SkAlphaType || fClampAsIfUnpremul)