Relocate gradient negative fract() workaround to GLSLCodeGenerator

Change-Id: If5aba5b266f86f677b6e63b0f79792f1d3213336
Reviewed-on: https://skia-review.googlesource.com/32202
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
diff --git a/src/shaders/gradients/SkGradientShader.cpp b/src/shaders/gradients/SkGradientShader.cpp
index 186f683..767955a 100644
--- a/src/shaders/gradients/SkGradientShader.cpp
+++ b/src/shaders/gradients/SkGradientShader.cpp
@@ -1557,14 +1557,7 @@
         fragBuilder->codeAppendf("float clamp_t = clamp(%s, 0.0, 1.0);", t);
         break;
     case SkShader::kRepeat_TileMode:
-        if (shaderCaps->canUseFractForNegativeValues()) {
-            fragBuilder->codeAppendf("float clamp_t = fract(%s);", t);
-        } else {
-            // Tegra3 fract() sometimes yields undefined results when the arg is negative.
-            // TODO: relocate this workaround to GLSLCodeGenerator.
-            fragBuilder->codeAppendf("float clamp_t = 0.5 - sign(%s) * (0.5 - fract(abs(%s)));",
-                                     t, t);
-        }
+        fragBuilder->codeAppendf("float clamp_t = fract(%s);", t);
         break;
     case SkShader::kMirror_TileMode:
         fragBuilder->codeAppendf("float t_1 = %s - 1.0;", t);