Removed the last references to Renderer from ProgramBinary.

BUG=angle:731
Change-Id: I8829a434e59279b1b9c37e9a1922ae05d467b376
Reviewed-on: https://chromium-review.googlesource.com/219421
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Tested-by: Brandon Jones <bajones@chromium.org>
diff --git a/src/libGLESv2/renderer/ProgramImpl.h b/src/libGLESv2/renderer/ProgramImpl.h
index 2a52e9f..4d765d6 100644
--- a/src/libGLESv2/renderer/ProgramImpl.h
+++ b/src/libGLESv2/renderer/ProgramImpl.h
@@ -13,6 +13,7 @@
 #include "libGLESv2/BinaryStream.h"
 #include "libGLESv2/Constants.h"
 #include "libGLESv2/ProgramBinary.h"
+#include "libGLESv2/renderer/Renderer.h"
 
 namespace rx
 {
@@ -24,8 +25,6 @@
 public:
     virtual ~ProgramImpl() { }
 
-    // TODO: Temporary interfaces to ease migration. Remove soon!
-    virtual Renderer *getRenderer() = 0;
     virtual const std::vector<rx::PixelShaderOutputVariable> &getPixelShaderKey() = 0;
 
     virtual bool usesPointSize() const = 0;
@@ -47,6 +46,9 @@
     virtual rx::ShaderExecutable *getGeometryExecutable(gl::InfoLog &infoLog, gl::Shader *fragmentShader, gl::Shader *vertexShader,
                                                         const std::vector<gl::LinkedVarying> &transformFeedbackLinkedVaryings,
                                                         bool separatedOutputBuffers, int registers) = 0;
+    virtual rx::ShaderExecutable *loadExecutable(const void *function, size_t length, rx::ShaderType type,
+                                                 const std::vector<gl::LinkedVarying> &transformFeedbackLinkedVaryings,
+                                                 bool separatedOutputBuffers) = 0;
 
     virtual bool link(gl::InfoLog &infoLog, gl::Shader *fragmentShader, gl::Shader *vertexShader,
                       const std::vector<std::string> &transformFeedbackVaryings, int *registers,
@@ -57,6 +59,13 @@
 
     virtual void initializeUniformStorage(const std::vector<gl::LinkedUniform*> &uniforms) = 0;
 
+    virtual gl::Error applyUniforms(const std::vector<gl::LinkedUniform*> &uniforms) = 0;
+    virtual gl::Error applyUniformBuffers(const std::vector<gl::UniformBlock*> uniformBlocks, const std::vector<gl::Buffer*> boundBuffers,
+                                     const gl::Caps &caps) = 0;
+    virtual bool assignUniformBlockRegister(gl::InfoLog &infoLog, gl::UniformBlock *uniformBlock, GLenum shader,
+                                            unsigned int registerIndex, const gl::Caps &caps) = 0;
+    virtual unsigned int getReservedUniformVectors(GLenum shader) = 0;
+
     virtual void reset() = 0;
 };