summaryrefslogtreecommitdiffstats
path: root/gpu/command_buffer/common
diff options
context:
space:
mode:
authordmurph@chromium.org <dmurph@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-07-18 22:53:31 +0000
committerdmurph@chromium.org <dmurph@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-07-18 22:53:31 +0000
commitbaa5a89286a0d55e331a779ee6b2f2b5161252b2 (patch)
tree379b3801ee97cd17433805dd1c8e96bae9b70b22 /gpu/command_buffer/common
parent6c8e0471391c2061644e1eb1ec2808f2d23a1bea (diff)
downloadchromium_src-baa5a89286a0d55e331a779ee6b2f2b5161252b2.zip
chromium_src-baa5a89286a0d55e331a779ee6b2f2b5161252b2.tar.gz
chromium_src-baa5a89286a0d55e331a779ee6b2f2b5161252b2.tar.bz2
Current status of patch:
- In-memory cache - maximum in memory limit (currently 6mb) - lru eviction - Cache includes saving the attribute + uniform mappings Wiring: - Added bindings for glProgramBinary and glGetProgramBinary - Plumbed the shader cache from gl_channel_manager to program_manager Refactoring: - moved the meat of DoCompile to the ProgramManager New: - added field to ShaderInfo to store if we have a possible pending cache compile - exposed attrib_map and uniform_map in ShaderInfo for the cache - program_cache base class with in-memory status storage - Simple memory_program_cache implementation, stores programs with lru eviction - Added caching logic to DoCompileShader in gles2_cmd_decoder and Link in program_manager Design doc: https://docs.google.com/document/d/1Vceem-nF4TCICoeGSh7OMXxfGuJEJYblGXRgN9V9hcE/edit BUG=88572 Review URL: https://chromiumcodereview.appspot.com/10534173 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147328 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/command_buffer/common')
-rw-r--r--gpu/command_buffer/common/gl_mock.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/gpu/command_buffer/common/gl_mock.h b/gpu/command_buffer/common/gl_mock.h
index c68f787..d0b89a3 100644
--- a/gpu/command_buffer/common/gl_mock.h
+++ b/gpu/command_buffer/common/gl_mock.h
@@ -213,6 +213,10 @@ class MockGLInterface : public GLInterface {
MOCK_METHOD2(GetIntegerv, void(GLenum pname, GLint* params));
+ MOCK_METHOD5(GetProgramBinary, void(
+ GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat,
+ GLvoid* binary));
+
MOCK_METHOD3(GetProgramiv, void(GLuint program, GLenum pname, GLint* params));
MOCK_METHOD4(GetProgramInfoLog, void(
@@ -307,6 +311,10 @@ class MockGLInterface : public GLInterface {
MOCK_METHOD2(PolygonOffset, void(GLfloat factor, GLfloat units));
+ MOCK_METHOD4(ProgramBinary, void(
+ GLuint program, GLenum binaryFormat, const GLvoid* binary,
+ GLsizei length));
+
MOCK_METHOD2(QueryCounter, void(GLuint id, GLenum target));
MOCK_METHOD1(ReadBuffer, void(GLenum src));