Use SkPMColor4f in OverrideInput, remove some kruft from SkGr

Bug: skia:
Change-Id: I2263048fea3b708aa0ac7758a80cbdc47e4f45f2
Reviewed-on: https://skia-review.googlesource.com/c/159540
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
diff --git a/src/gpu/GrFragmentProcessor.cpp b/src/gpu/GrFragmentProcessor.cpp
index 550134b..eff7419 100644
--- a/src/gpu/GrFragmentProcessor.cpp
+++ b/src/gpu/GrFragmentProcessor.cpp
@@ -281,11 +281,11 @@
 //////////////////////////////////////////////////////////////////////////////
 
 std::unique_ptr<GrFragmentProcessor> GrFragmentProcessor::OverrideInput(
-        std::unique_ptr<GrFragmentProcessor> fp, GrColor4f color) {
+        std::unique_ptr<GrFragmentProcessor> fp, const SkPMColor4f& color) {
     class ReplaceInputFragmentProcessor : public GrFragmentProcessor {
     public:
         static std::unique_ptr<GrFragmentProcessor> Make(std::unique_ptr<GrFragmentProcessor> child,
-                                                         GrColor4f color) {
+                                                         const SkPMColor4f& color) {
             return std::unique_ptr<GrFragmentProcessor>(
                     new ReplaceInputFragmentProcessor(std::move(child), color));
         }
@@ -312,29 +312,31 @@
             private:
                 void onSetData(const GrGLSLProgramDataManager& pdman,
                                const GrFragmentProcessor& fp) override {
-                    GrColor4f color = fp.cast<ReplaceInputFragmentProcessor>().fColor;
+                    SkPMColor4f color = fp.cast<ReplaceInputFragmentProcessor>().fColor;
                     if (!fHaveSetColor || color != fPreviousColor) {
-                        pdman.set4fv(fColorUni, 1, color.fRGBA);
+                        pdman.set4fv(fColorUni, 1, color.vec());
                         fPreviousColor = color;
                         fHaveSetColor = true;
                     }
                 }
 
                 GrGLSLProgramDataManager::UniformHandle fColorUni;
-                bool      fHaveSetColor;
-                GrColor4f fPreviousColor;
+                bool        fHaveSetColor;
+                SkPMColor4f fPreviousColor;
             };
 
             return new GLFP;
         }
 
-        ReplaceInputFragmentProcessor(std::unique_ptr<GrFragmentProcessor> child, GrColor4f color)
+        ReplaceInputFragmentProcessor(std::unique_ptr<GrFragmentProcessor> child,
+                                      const SkPMColor4f& color)
                 : INHERITED(kReplaceInputFragmentProcessor_ClassID, OptFlags(child.get(), color))
                 , fColor(color) {
             this->registerChildProcessor(std::move(child));
         }
 
-        static OptimizationFlags OptFlags(const GrFragmentProcessor* child, GrColor4f color) {
+        static OptimizationFlags OptFlags(const GrFragmentProcessor* child,
+                                          const SkPMColor4f& color) {
             OptimizationFlags childFlags = child->optimizationFlags();
             OptimizationFlags flags = kNone_OptimizationFlags;
             if (childFlags & kConstantOutputForConstantInput_OptimizationFlag) {
@@ -354,11 +356,10 @@
         }
 
         SkPMColor4f constantOutputForConstantInput(const SkPMColor4f&) const override {
-            return ConstantOutputForConstantInput(this->childProcessor(0),
-                                                  fColor.asRGBA4f<kPremul_SkAlphaType>());
+            return ConstantOutputForConstantInput(this->childProcessor(0), fColor);
         }
 
-        GrColor4f fColor;
+        SkPMColor4f fColor;
 
         typedef GrFragmentProcessor INHERITED;
     };