Add explicit conversion from uint2 to float2 for Vulkan

Change-Id: I07a28c77f3c9b87d6713ae1d6b7e7d1285098aa8
Reviewed-on: https://skia-review.googlesource.com/38728
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
diff --git a/src/gpu/effects/GrDistanceFieldGeoProc.cpp b/src/gpu/effects/GrDistanceFieldGeoProc.cpp
index 87b47e4..3078786 100644
--- a/src/gpu/effects/GrDistanceFieldGeoProc.cpp
+++ b/src/gpu/effects/GrDistanceFieldGeoProc.cpp
@@ -79,13 +79,15 @@
         // add varyings
         GrGLSLVertToFrag uv(kVec2f_GrSLType);
         varyingHandler->addVarying("TextureCoords", &uv, kHigh_GrSLPrecision);
-        vertBuilder->codeAppendf("%s = %s * %s;", uv.vsOut(),
+        vertBuilder->codeAppendf("%s = float2(%s.x, %s.y) * %s;", uv.vsOut(),
+                                 dfTexEffect.inTextureCoords()->fName,
                                  dfTexEffect.inTextureCoords()->fName,
                                  atlasSizeInvName);
 
         GrGLSLVertToFrag st(kVec2f_GrSLType);
         varyingHandler->addVarying("IntTextureCoords", &st, kHigh_GrSLPrecision);
-        vertBuilder->codeAppendf("%s = %s;", st.vsOut(),
+        vertBuilder->codeAppendf("%s = float2(%s.x, %s.y);", st.vsOut(),
+                                 dfTexEffect.inTextureCoords()->fName,
                                  dfTexEffect.inTextureCoords()->fName);
 
         bool isUniformScale = (dfTexEffect.getFlags() & kUniformScale_DistanceFieldEffectMask) ==
@@ -338,13 +340,15 @@
 
         GrGLSLVertToFrag uv(kVec2f_GrSLType);
         varyingHandler->addVarying("TextureCoords", &uv, kHigh_GrSLPrecision);
-        vertBuilder->codeAppendf("%s = %s * %s;", uv.vsOut(),
+        vertBuilder->codeAppendf("%s = float2(%s.x, %s.y) * %s;", uv.vsOut(),
+                                 dfTexEffect.inTextureCoords()->fName,
                                  dfTexEffect.inTextureCoords()->fName,
                                  atlasSizeInvName);
 
         GrGLSLVertToFrag st(kVec2f_GrSLType);
         varyingHandler->addVarying("IntTextureCoords", &st, kHigh_GrSLPrecision);
-        vertBuilder->codeAppendf("%s = %s;", st.vsOut(),
+        vertBuilder->codeAppendf("%s = float2(%s.x, %s.y);", st.vsOut(),
+                                 dfTexEffect.inTextureCoords()->fName,
                                  dfTexEffect.inTextureCoords()->fName);
 
         // setup pass through color
@@ -609,13 +613,15 @@
         // set up varyings
         GrGLSLVertToFrag uv(kVec2f_GrSLType);
         varyingHandler->addVarying("TextureCoords", &uv, kHigh_GrSLPrecision);
-        vertBuilder->codeAppendf("%s = %s * %s;", uv.vsOut(),
+        vertBuilder->codeAppendf("%s = float2(%s.x, %s.y) * %s;", uv.vsOut(),
+                                 dfTexEffect.inTextureCoords()->fName,
                                  dfTexEffect.inTextureCoords()->fName,
                                  atlasSizeInvName);
 
         GrGLSLVertToFrag st(kVec2f_GrSLType);
         varyingHandler->addVarying("IntTextureCoords", &st, kHigh_GrSLPrecision);
-        vertBuilder->codeAppendf("%s = %s;", st.vsOut(),
+        vertBuilder->codeAppendf("%s = float2(%s.x, %s.y);", st.vsOut(),
+                                 dfTexEffect.inTextureCoords()->fName,
                                  dfTexEffect.inTextureCoords()->fName);
 
         GrGLSLVertToFrag delta(kFloat_GrSLType);