thread alloc through to color filters

Change-Id: I783c32d92fac8c78e26f15a8e9bb6f43395d1d3f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268648
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
diff --git a/include/core/SkColorFilter.h b/include/core/SkColorFilter.h
index 18af9a4..16b6ee9 100644
--- a/include/core/SkColorFilter.h
+++ b/include/core/SkColorFilter.h
@@ -16,6 +16,7 @@
 class GrColorInfo;
 class GrFragmentProcessor;
 class GrRecordingContext;
+class SkArenaAlloc;
 class SkBitmap;
 class SkColorMatrix;
 class SkColorSpace;
@@ -63,7 +64,7 @@
 
     bool program(skvm::Builder*,
                  SkColorSpace* dstCS,
-                 skvm::Uniforms* uniforms,
+                 skvm::Uniforms* uniforms, SkArenaAlloc* alloc,
                  skvm::F32* r, skvm::F32* g, skvm::F32* b, skvm::F32* a) const;
 
     enum Flags {
@@ -150,7 +151,7 @@
 
     virtual bool onProgram(skvm::Builder*,
                            SkColorSpace* dstCS,
-                           skvm::Uniforms* uniforms,
+                           skvm::Uniforms* uniforms, SkArenaAlloc* alloc,
                            skvm::F32* r, skvm::F32* g, skvm::F32* b, skvm::F32* a) const;
 
     friend class SkComposeColorFilter;
diff --git a/src/core/SkColorFilter.cpp b/src/core/SkColorFilter.cpp
index dfd34d2..0cb50ce 100644
--- a/src/core/SkColorFilter.cpp
+++ b/src/core/SkColorFilter.cpp
@@ -47,10 +47,10 @@
 
 bool SkColorFilter::program(skvm::Builder* p,
                             SkColorSpace* dstCS,
-                            skvm::Uniforms* uniforms,
+                            skvm::Uniforms* uniforms, SkArenaAlloc* alloc,
                             skvm::F32* r, skvm::F32* g, skvm::F32* b, skvm::F32* a) const {
     skvm::F32 original = *a;
-    if (this->onProgram(p, dstCS, uniforms, r,g,b,a)) {
+    if (this->onProgram(p, dstCS, uniforms,alloc, r,g,b,a)) {
         if (this->getFlags() & kAlphaUnchanged_Flag) {
             *a = original;
         }
@@ -61,7 +61,7 @@
 
 bool SkColorFilter::onProgram(skvm::Builder*,
                               SkColorSpace* dstCS,
-                              skvm::Uniforms* uniforms,
+                              skvm::Uniforms* uniforms, SkArenaAlloc*,
                               skvm::F32* r, skvm::F32* g, skvm::F32* b, skvm::F32* a) const {
     return false;
 }
diff --git a/src/core/SkColorFilter_Matrix.cpp b/src/core/SkColorFilter_Matrix.cpp
index 6411bee..8d2c7df 100644
--- a/src/core/SkColorFilter_Matrix.cpp
+++ b/src/core/SkColorFilter_Matrix.cpp
@@ -82,7 +82,7 @@
 
 bool SkColorFilter_Matrix::onProgram(skvm::Builder* p,
                                      SkColorSpace* /*dstCS*/,
-                                     skvm::Uniforms* uniforms,
+                                     skvm::Uniforms* uniforms, SkArenaAlloc*,
                                      skvm::F32* r, skvm::F32* g, skvm::F32* b, skvm::F32* a) const {
     // TODO: specialize generated code on the 0/1 values of fMatrix?
     if (fDomain == Domain::kRGBA) {
diff --git a/src/core/SkColorFilter_Matrix.h b/src/core/SkColorFilter_Matrix.h
index 87a3095..cdbf63e 100644
--- a/src/core/SkColorFilter_Matrix.h
+++ b/src/core/SkColorFilter_Matrix.h
@@ -35,7 +35,7 @@
     bool onAppendStages(const SkStageRec& rec, bool shaderIsOpaque) const override;
     bool onProgram(skvm::Builder*,
                    SkColorSpace* dstCS,
-                   skvm::Uniforms* uniforms,
+                   skvm::Uniforms* uniforms, SkArenaAlloc*,
                    skvm::F32* r, skvm::F32* g, skvm::F32* b, skvm::F32* a) const override;
 
     float       fMatrix[20];
diff --git a/src/core/SkVMBlitter.cpp b/src/core/SkVMBlitter.cpp
index 8abef95..3929ed2 100644
--- a/src/core/SkVMBlitter.cpp
+++ b/src/core/SkVMBlitter.cpp
@@ -386,7 +386,7 @@
     struct NoopColorFilter : public SkColorFilter {
         bool onProgram(skvm::Builder*,
                        SkColorSpace*,
-                       skvm::Uniforms*,
+                       skvm::Uniforms*, SkArenaAlloc*,
                        skvm::F32*, skvm::F32*, skvm::F32*, skvm::F32*) const override {
             return true;
         }
diff --git a/src/effects/SkTableColorFilter.cpp b/src/effects/SkTableColorFilter.cpp
index 431c751..9921971 100644
--- a/src/effects/SkTableColorFilter.cpp
+++ b/src/effects/SkTableColorFilter.cpp
@@ -123,7 +123,7 @@
         return true;
     }
 
-    bool onProgram(skvm::Builder* p, SkColorSpace* dstCS, skvm::Uniforms* uniforms,
+    bool onProgram(skvm::Builder* p, SkColorSpace* dstCS, skvm::Uniforms* uniforms, SkArenaAlloc*,
                    skvm::F32* r, skvm::F32* g, skvm::F32* b, skvm::F32* a) const override {
 
         auto apply_table_to_component = [&](skvm::F32 c, const uint8_t* bytePtr) -> skvm::F32 {
diff --git a/src/shaders/SkColorFilterShader.cpp b/src/shaders/SkColorFilterShader.cpp
index 092848a..7ab0ff4 100644
--- a/src/shaders/SkColorFilterShader.cpp
+++ b/src/shaders/SkColorFilterShader.cpp
@@ -82,7 +82,7 @@
     }
 
     // Finally run that through the color filter.
-    if (!fFilter->program(p, dstCS, uniforms, r,g,b,a)) {
+    if (!fFilter->program(p, dstCS, uniforms,alloc, r,g,b,a)) {
         return false;
     }