Force input coverage to be only a byte in gpu shaders.

Prime coverage invariant output calculations with single component

BUG=skia:

Review URL: https://codereview.chromium.org/649783003
diff --git a/src/gpu/gl/GrGLProgram.cpp b/src/gpu/gl/GrGLProgram.cpp
index f152173..319dcce 100644
--- a/src/gpu/gl/GrGLProgram.cpp
+++ b/src/gpu/gl/GrGLProgram.cpp
@@ -63,7 +63,7 @@
                          GrGLInstalledGeoProc* geometryProcessor,
                          GrGLInstalledFragProcs* fragmentProcessors)
     : fColor(GrColor_ILLEGAL)
-    , fCoverage(GrColor_ILLEGAL)
+    , fCoverage(0)
     , fDstCopyTexUnit(-1)
     , fBuiltinUniformHandles(builtinUniforms)
     , fProgramID(programID)
@@ -131,7 +131,7 @@
                           GrGpu::DrawType drawType,
                           const GrDeviceCoordTexture* dstCopy) {
     GrColor color = optState.getColor();
-    GrColor coverage = optState.getCoverageColor();
+    uint8_t coverage = optState.getCoverage();
 
     this->setColor(optState, color);
     this->setCoverage(optState, coverage);
@@ -223,7 +223,7 @@
     }
 }
 
-void GrGLProgram::setCoverage(const GrOptDrawState& optState, GrColor coverage) {
+void GrGLProgram::setCoverage(const GrOptDrawState& optState, uint8_t coverage) {
     const GrProgramDesc::KeyHeader& header = fDesc.header();
     switch (header.fCoverageInput) {
         case GrProgramDesc::kAttribute_ColorInput:
@@ -232,9 +232,9 @@
         case GrProgramDesc::kUniform_ColorInput:
             if (fCoverage != coverage) {
                 // OpenGL ES doesn't support unsigned byte varieties of glUniform
-                GrGLfloat c[4];
-                GrColorToRGBAFloat(coverage, c);
-                fProgramDataManager.set4fv(fBuiltinUniformHandles.fCoverageUni, 1, c);
+                static const float ONE_OVER_255 = 1.f / 255.f;
+                GrGLfloat c = coverage * ONE_OVER_255;
+                fProgramDataManager.set1f(fBuiltinUniformHandles.fCoverageUni, c);
                 fCoverage = coverage;
             }
             break;