Move OutputHLSL utility methods to other files.

OutputHLSL was become a large, unweildy file. Some were also useful
to other classes, even on the GL back-end, but were inacessible.

Refactoring patch only.

BUG=angle:466

Change-Id: Id216147122ca105c6ccdf0ba0c5f6c5038726965
Reviewed-on: https://chromium-review.googlesource.com/203459
Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
diff --git a/src/compiler/translator/util.h b/src/compiler/translator/util.h
index dc69f39..92b8ed8 100644
--- a/src/compiler/translator/util.h
+++ b/src/compiler/translator/util.h
@@ -7,6 +7,11 @@
 #ifndef COMPILER_UTIL_H
 #define COMPILER_UTIL_H
 
+#include "compiler/translator/Types.h"
+#include <GLES3/gl3.h>
+#include <GLES2/gl2.h>
+#include "common/shadervars.h"
+
 // atof_clamp is like atof but
 //   1. it forces C locale, i.e. forcing '.' as decimal point.
 //   2. it clamps the value to -FLT_MAX or FLT_MAX if overflow happens.
@@ -17,4 +22,17 @@
 // Return false if overflow happens.
 extern bool atoi_clamp(const char *str, int *value);
 
+namespace sh
+{
+
+GLenum GLVariableType(const TType &type);
+GLenum GLVariablePrecision(const TType &type);
+bool IsVaryingIn(TQualifier qualifier);
+bool IsVaryingOut(TQualifier qualifier);
+bool IsVarying(TQualifier qualifier);
+gl::InterpolationType GetInterpolationType(TQualifier qualifier);
+TString ArrayString(const TType &type);
+
+}
+
 #endif // COMPILER_UTIL_H