Working patch to remove constant attributes.  This may cause some gm mismatches, I will rebaseline tonight.

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/84c94c0dfd1e12e97d8a835882dda575f36e41d2

Review URL: https://codereview.chromium.org/678073005
diff --git a/src/gpu/gl/GrGLProgramDesc.cpp b/src/gpu/gl/GrGLProgramDesc.cpp
index 7908813..4a274c6 100644
--- a/src/gpu/gl/GrGLProgramDesc.cpp
+++ b/src/gpu/gl/GrGLProgramDesc.cpp
@@ -257,25 +257,27 @@
 
     header->fEmitsPointSize = GrGpu::kDrawPoints_DrawType == drawType;
 
-    if (gpu->caps()->pathRenderingSupport() &&
-        GrGpu::IsPathRenderingDrawType(drawType) &&
-        gpu->glPathRendering()->texturingMode() == GrGLPathRendering::FixedFunction_TexturingMode) {
-        header->fUseFragShaderOnly = true;
+    bool isPathRendering = GrGpu::IsPathRenderingDrawType(drawType);
+    if (gpu->caps()->pathRenderingSupport() && isPathRendering) {
+        header->fUseNvpr = true;
         SkASSERT(!optState.hasGeometryProcessor());
     } else {
-        header->fUseFragShaderOnly = false;
+        header->fUseNvpr = false;
     }
 
-    bool defaultToUniformInputs = GrGpu::IsPathRenderingDrawType(drawType) ||
-                                  GR_GL_NO_CONSTANT_ATTRIBUTES;
+    bool hasUniformColor = inputColorIsUsed &&
+                           (isPathRendering || !optState.hasColorVertexAttribute());
+
+    bool hasUniformCoverage = inputCoverageIsUsed &&
+                              (isPathRendering || !optState.hasCoverageVertexAttribute());
 
     if (!inputColorIsUsed) {
         header->fColorInput = kAllOnes_ColorInput;
-    } else if (defaultToUniformInputs && !optState.hasColorVertexAttribute()) {
+    } else if (hasUniformColor) {
         header->fColorInput = kUniform_ColorInput;
     } else {
         header->fColorInput = kAttribute_ColorInput;
-        SkASSERT(!header->fUseFragShaderOnly);
+        SkASSERT(!header->fUseNvpr);
     }
 
     bool covIsSolidWhite = !optState.hasCoverageVertexAttribute() &&
@@ -283,11 +285,11 @@
 
     if (covIsSolidWhite || !inputCoverageIsUsed) {
         header->fCoverageInput = kAllOnes_ColorInput;
-    } else if (defaultToUniformInputs && !optState.hasCoverageVertexAttribute()) {
+    } else if (hasUniformCoverage) {
         header->fCoverageInput = kUniform_ColorInput;
     } else {
         header->fCoverageInput = kAttribute_ColorInput;
-        SkASSERT(!header->fUseFragShaderOnly);
+        SkASSERT(!header->fUseNvpr);
     }
 
     if (optState.readsDst()) {