Added mangleString member and  onBefore*, onAfter* functions to GrGLFragmentShaderBuilder

BUILDS! Added mangleString, onBefore, and onAfterChildProcEmitCode() to GrGLFragmentShaderBuilder.cpp

BUG=skia:4182

Review URL: https://codereview.chromium.org/1288723002
diff --git a/src/gpu/gl/builders/GrGLFragmentShaderBuilder.cpp b/src/gpu/gl/builders/GrGLFragmentShaderBuilder.cpp
index a7a35e3..20bb3a3 100644
--- a/src/gpu/gl/builders/GrGLFragmentShaderBuilder.cpp
+++ b/src/gpu/gl/builders/GrGLFragmentShaderBuilder.cpp
@@ -300,3 +300,15 @@
     }
     fInputs.push_back().set(v->fType, GrGLShaderVar::kVaryingIn_TypeModifier, v->fFsIn, fsPrec);
 }
+
+void GrGLFragmentBuilder::onBeforeChildProcEmitCode() {
+    fSubstageIndices.back()++;
+    fSubstageIndices.push_back(0);
+    fMangleString.append(this->getMangleStringThisLevel());
+}
+
+void GrGLFragmentBuilder::onAfterChildProcEmitCode() {
+    fSubstageIndices.pop_back();
+    int removeAt = fMangleString.findLastOf('_');
+    fMangleString.remove(removeAt, fMangleString.size() - removeAt);
+}