diff options
author | jamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-10 17:54:14 +0000 |
---|---|---|
committer | jamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-10 17:54:14 +0000 |
commit | 37fd3cc51cb10faa97b17b720a7a317c1f873e48 (patch) | |
tree | 0a6c7bcaffe3c3e2aeef94350276bc72217253ab /gpu | |
parent | 2e79f731451fa6d4ad14819b0f31bac136e37d59 (diff) | |
download | chromium_src-37fd3cc51cb10faa97b17b720a7a317c1f873e48.zip chromium_src-37fd3cc51cb10faa97b17b720a7a317c1f873e48.tar.gz chromium_src-37fd3cc51cb10faa97b17b720a7a317c1f873e48.tar.bz2 |
Refactor id_handler set in GLES2Implementation
I plan to add some logic that will apply to all id handlers, so having
these in an array instead of 5 separate objects.
BUG=none
Review URL: http://codereview.chromium.org/8508034
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109450 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu')
5 files changed, 99 insertions, 59 deletions
diff --git a/gpu/command_buffer/build_gles2_cmd_buffer.py b/gpu/command_buffer/build_gles2_cmd_buffer.py index 22d22a9..e1051b4 100755 --- a/gpu/command_buffer/build_gles2_cmd_buffer.py +++ b/gpu/command_buffer/build_gles2_cmd_buffer.py @@ -2818,7 +2818,7 @@ class GENnHandler(TypeHandler): 'name': func.original_name, 'typed_args': func.MakeTypedOriginalArgString(""), 'args': func.MakeOriginalArgString(""), - 'resource_type': func.name[3:-1].lower(), + 'resource_type': func.name[3:], 'count_name': func.GetOriginalArgs()[0].name, } file.Write("%(return_type)s %(name)s(%(typed_args)s) {\n" % args) @@ -2826,7 +2826,8 @@ class GENnHandler(TypeHandler): self.WriteClientGLCallLog(func, file) for arg in func.GetOriginalArgs(): arg.WriteClientSideValidationCode(file, func) - code = """ %(resource_type)s_id_handler_->MakeIds(0, %(args)s); + code = """ id_handlers_[id_namespaces::k%(resource_type)s]-> + MakeIds(0, %(args)s); helper_->%(name)sImmediate(%(args)s); %(log_code)s } @@ -3045,7 +3046,8 @@ TEST_F(%(test_name)s, %(name)sInvalidArgs%(arg_index)d_%(value_index)d) { for arg in func.GetOriginalArgs(): arg.WriteClientSideValidationCode(file, func) file.Write(" GLuint client_id;\n") - file.Write(" program_and_shader_id_handler_->MakeIds(0, 1, &client_id);\n") + file.Write(" id_handlers_[id_namespaces::kProgramsAndShaders]->\n") + file.Write(" MakeIds(0, 1, &client_id);\n") file.Write(" helper_->%s(%s);\n" % (func.name, func.MakeCmdArgString(""))) file.Write(' GPU_CLIENT_LOG("returned " << client_id);\n') diff --git a/gpu/command_buffer/client/gles2_implementation.cc b/gpu/command_buffer/client/gles2_implementation.cc index 12238da..f6d8696 100644 --- a/gpu/command_buffer/client/gles2_implementation.cc +++ b/gpu/command_buffer/client/gles2_implementation.cc @@ -566,34 +566,23 @@ GLES2Implementation::GLES2Implementation( if (share_resources) { if (!bind_generates_resource) { - buffer_id_handler_.reset( - new StrictSharedIdHandler(this, id_namespaces::kBuffers)); - framebuffer_id_handler_.reset( - new StrictSharedIdHandler(this, id_namespaces::kFramebuffers)); - renderbuffer_id_handler_.reset( - new StrictSharedIdHandler(this, id_namespaces::kRenderbuffers)); - program_and_shader_id_handler_.reset( - new StrictSharedIdHandler(this, id_namespaces::kProgramsAndShaders)); - texture_id_handler_.reset( - new StrictSharedIdHandler(this, id_namespaces::kTextures)); + for (int i = 0; i < id_namespaces::kNumIdNamespaces; ++i) { + id_handlers_[i].reset(new StrictSharedIdHandler( + this, static_cast<id_namespaces::IdNamespaces>(i))); + } } else { - buffer_id_handler_.reset( - new SharedIdHandler(this, id_namespaces::kBuffers)); - framebuffer_id_handler_.reset( - new SharedIdHandler(this, id_namespaces::kFramebuffers)); - renderbuffer_id_handler_.reset( - new SharedIdHandler(this, id_namespaces::kRenderbuffers)); - program_and_shader_id_handler_.reset( - new SharedIdHandler(this, id_namespaces::kProgramsAndShaders)); - texture_id_handler_.reset( - new SharedIdHandler(this, id_namespaces::kTextures)); + for (int i = 0; i < id_namespaces::kNumIdNamespaces; ++i) { + id_handlers_[i].reset(new SharedIdHandler( + this, static_cast<id_namespaces::IdNamespaces>(i))); + } } } else { - buffer_id_handler_.reset(new NonSharedIdHandler()); - framebuffer_id_handler_.reset(new NonSharedIdHandler()); - renderbuffer_id_handler_.reset(new NonSharedIdHandler()); - program_and_shader_id_handler_.reset(new NonSharedNonReusedIdHandler()); - texture_id_handler_.reset(new NonSharedIdHandler()); + for (int i = 0; i < id_namespaces::kNumIdNamespaces; ++i) { + if (i == id_namespaces::kProgramsAndShaders) + id_handlers_[i].reset(new NonSharedNonReusedIdHandler); + else + id_handlers_[i].reset(new NonSharedIdHandler); + } } static const GLenum pnames[] = { @@ -626,7 +615,7 @@ GLES2Implementation::GLES2Implementation( program_info_manager_.reset(ProgramInfoManager::Create(sharing_resources_)); #if defined(GLES2_SUPPORT_CLIENT_SIDE_ARRAYS) - buffer_id_handler_->MakeIds( + id_handlers_[id_namespaces::kBuffers]->MakeIds( kClientSideArrayId, arraysize(reserved_ids_), &reserved_ids_[0]); client_side_buffer_helper_.reset(new ClientSideBufferHelper( @@ -1104,7 +1093,7 @@ void GLES2Implementation::GetVertexAttribPointerv( } bool GLES2Implementation::DeleteProgramHelper(GLuint program) { - if (!program_and_shader_id_handler_->FreeIds(1, &program)) { + if (!id_handlers_[id_namespaces::kProgramsAndShaders]->FreeIds(1, &program)) { SetGLError( GL_INVALID_VALUE, "glDeleteProgram: id not created by this context."); @@ -1117,7 +1106,7 @@ bool GLES2Implementation::DeleteProgramHelper(GLuint program) { } bool GLES2Implementation::DeleteShaderHelper(GLuint shader) { - if (!program_and_shader_id_handler_->FreeIds(1, &shader)) { + if (!id_handlers_[id_namespaces::kProgramsAndShaders]->FreeIds(1, &shader)) { SetGLError( GL_INVALID_VALUE, "glDeleteShader: id not created by this context."); @@ -2076,7 +2065,7 @@ void GLES2Implementation::BindBufferHelper( } // TODO(gman): There's a bug here. If the target is invalid the ID will not be // used even though it's marked it as used here. - buffer_id_handler_->MarkAsUsedForBind(buffer); + id_handlers_[id_namespaces::kBuffers]->MarkAsUsedForBind(buffer); } void GLES2Implementation::BindFramebufferHelper( @@ -2091,7 +2080,7 @@ void GLES2Implementation::BindFramebufferHelper( } // TODO(gman): There's a bug here. If the target is invalid the ID will not be // used even though it's marked it as used here. - framebuffer_id_handler_->MarkAsUsedForBind(framebuffer); + id_handlers_[id_namespaces::kFramebuffers]->MarkAsUsedForBind(framebuffer); } void GLES2Implementation::BindRenderbufferHelper( @@ -2106,7 +2095,7 @@ void GLES2Implementation::BindRenderbufferHelper( } // TODO(gman): There's a bug here. If the target is invalid the ID will not be // used even though it's marked it as used here. - renderbuffer_id_handler_->MarkAsUsedForBind(renderbuffer); + id_handlers_[id_namespaces::kRenderbuffers]->MarkAsUsedForBind(renderbuffer); } void GLES2Implementation::BindTextureHelper(GLenum target, GLuint texture) { @@ -2124,7 +2113,7 @@ void GLES2Implementation::BindTextureHelper(GLenum target, GLuint texture) { } // TODO(gman): There's a bug here. If the target is invalid the ID will not be // used. even though it's marked it as used here. - texture_id_handler_->MarkAsUsedForBind(texture); + id_handlers_[id_namespaces::kTextures]->MarkAsUsedForBind(texture); } #if defined(GLES2_SUPPORT_CLIENT_SIDE_ARRAYS) @@ -2144,7 +2133,7 @@ bool GLES2Implementation::IsBufferReservedId(GLuint /* id */) { void GLES2Implementation::DeleteBuffersHelper( GLsizei n, const GLuint* buffers) { - if (!buffer_id_handler_->FreeIds(n, buffers)) { + if (!id_handlers_[id_namespaces::kBuffers]->FreeIds(n, buffers)) { SetGLError( GL_INVALID_VALUE, "glDeleteBuffers: id not created by this context."); @@ -2164,7 +2153,7 @@ void GLES2Implementation::DeleteBuffersHelper( void GLES2Implementation::DeleteFramebuffersHelper( GLsizei n, const GLuint* framebuffers) { - if (!framebuffer_id_handler_->FreeIds(n, framebuffers)) { + if (!id_handlers_[id_namespaces::kFramebuffers]->FreeIds(n, framebuffers)) { SetGLError( GL_INVALID_VALUE, "glDeleteFramebuffers: id not created by this context."); @@ -2181,7 +2170,7 @@ void GLES2Implementation::DeleteFramebuffersHelper( void GLES2Implementation::DeleteRenderbuffersHelper( GLsizei n, const GLuint* renderbuffers) { - if (!renderbuffer_id_handler_->FreeIds(n, renderbuffers)) { + if (!id_handlers_[id_namespaces::kRenderbuffers]->FreeIds(n, renderbuffers)) { SetGLError( GL_INVALID_VALUE, "glDeleteRenderbuffers: id not created by this context."); @@ -2198,7 +2187,7 @@ void GLES2Implementation::DeleteRenderbuffersHelper( void GLES2Implementation::DeleteTexturesHelper( GLsizei n, const GLuint* textures) { - if (!texture_id_handler_->FreeIds(n, textures)) { + if (!id_handlers_[id_namespaces::kTextures]->FreeIds(n, textures)) { SetGLError( GL_INVALID_VALUE, "glDeleteTextures: id not created by this context."); diff --git a/gpu/command_buffer/client/gles2_implementation.h b/gpu/command_buffer/client/gles2_implementation.h index 81f0145..8594f67 100644 --- a/gpu/command_buffer/client/gles2_implementation.h +++ b/gpu/command_buffer/client/gles2_implementation.h @@ -189,12 +189,12 @@ class GLES2Implementation { GLuint MakeTextureId() { GLuint id; - texture_id_handler_->MakeIds(0, 1, &id); + id_handlers_[id_namespaces::kTextures]->MakeIds(0, 1, &id); return id; } void FreeTextureId(GLuint id) { - texture_id_handler_->FreeIds(1, &id); + id_handlers_[id_namespaces::kTextures]->FreeIds(1, &id); } void SetSharedMemoryChunkSizeMultiple(unsigned int multiple); @@ -422,11 +422,7 @@ class GLES2Implementation { GLES2Util util_; GLES2CmdHelper* helper_; - scoped_ptr<IdHandlerInterface> buffer_id_handler_; - scoped_ptr<IdHandlerInterface> framebuffer_id_handler_; - scoped_ptr<IdHandlerInterface> renderbuffer_id_handler_; - scoped_ptr<IdHandlerInterface> program_and_shader_id_handler_; - scoped_ptr<IdHandlerInterface> texture_id_handler_; + scoped_ptr<IdHandlerInterface> id_handlers_[id_namespaces::kNumIdNamespaces]; AlignedRingBuffer transfer_buffer_; int transfer_buffer_id_; void* result_buffer_; diff --git a/gpu/command_buffer/client/gles2_implementation_autogen.h b/gpu/command_buffer/client/gles2_implementation_autogen.h index 46c01c0..d8f6a5c 100644 --- a/gpu/command_buffer/client/gles2_implementation_autogen.h +++ b/gpu/command_buffer/client/gles2_implementation_autogen.h @@ -183,7 +183,8 @@ void CopyTexSubImage2D( GLuint CreateProgram() { GPU_CLIENT_LOG("[" << this << "] glCreateProgram(" << ")"); GLuint client_id; - program_and_shader_id_handler_->MakeIds(0, 1, &client_id); + id_handlers_[id_namespaces::kProgramsAndShaders]-> + MakeIds(0, 1, &client_id); helper_->CreateProgram(client_id); GPU_CLIENT_LOG("returned " << client_id); return client_id; @@ -192,7 +193,8 @@ GLuint CreateProgram() { GLuint CreateShader(GLenum type) { GPU_CLIENT_LOG("[" << this << "] glCreateShader(" << GLES2Util::GetStringShaderType(type) << ")"); // NOLINT GLuint client_id; - program_and_shader_id_handler_->MakeIds(0, 1, &client_id); + id_handlers_[id_namespaces::kProgramsAndShaders]-> + MakeIds(0, 1, &client_id); helper_->CreateShader(type, client_id); GPU_CLIENT_LOG("returned " << client_id); return client_id; @@ -359,7 +361,8 @@ void GenBuffers(GLsizei n, GLuint* buffers) { SetGLError(GL_INVALID_VALUE, "glGenBuffers: n < 0"); return; } - buffer_id_handler_->MakeIds(0, n, buffers); + id_handlers_[id_namespaces::kBuffers]-> + MakeIds(0, n, buffers); helper_->GenBuffersImmediate(n, buffers); GPU_CLIENT_LOG_CODE_BLOCK({ for (GLsizei i = 0; i < n; ++i) { @@ -379,7 +382,8 @@ void GenFramebuffers(GLsizei n, GLuint* framebuffers) { SetGLError(GL_INVALID_VALUE, "glGenFramebuffers: n < 0"); return; } - framebuffer_id_handler_->MakeIds(0, n, framebuffers); + id_handlers_[id_namespaces::kFramebuffers]-> + MakeIds(0, n, framebuffers); helper_->GenFramebuffersImmediate(n, framebuffers); GPU_CLIENT_LOG_CODE_BLOCK({ for (GLsizei i = 0; i < n; ++i) { @@ -394,7 +398,8 @@ void GenRenderbuffers(GLsizei n, GLuint* renderbuffers) { SetGLError(GL_INVALID_VALUE, "glGenRenderbuffers: n < 0"); return; } - renderbuffer_id_handler_->MakeIds(0, n, renderbuffers); + id_handlers_[id_namespaces::kRenderbuffers]-> + MakeIds(0, n, renderbuffers); helper_->GenRenderbuffersImmediate(n, renderbuffers); GPU_CLIENT_LOG_CODE_BLOCK({ for (GLsizei i = 0; i < n; ++i) { @@ -409,7 +414,8 @@ void GenTextures(GLsizei n, GLuint* textures) { SetGLError(GL_INVALID_VALUE, "glGenTextures: n < 0"); return; } - texture_id_handler_->MakeIds(0, n, textures); + id_handlers_[id_namespaces::kTextures]-> + MakeIds(0, n, textures); helper_->GenTexturesImmediate(n, textures); GPU_CLIENT_LOG_CODE_BLOCK({ for (GLsizei i = 0; i < n; ++i) { diff --git a/gpu/command_buffer/common/gles2_cmd_utils_implementation_autogen.h b/gpu/command_buffer/common/gles2_cmd_utils_implementation_autogen.h index 14e626f..9b8d22b 100644 --- a/gpu/command_buffer/common/gles2_cmd_utils_implementation_autogen.h +++ b/gpu/command_buffer/common/gles2_cmd_utils_implementation_autogen.h @@ -10,6 +10,10 @@ #define GPU_COMMAND_BUFFER_COMMON_GLES2_CMD_UTILS_IMPLEMENTATION_AUTOGEN_H_ static GLES2Util::EnumToString enum_to_string_table[] = { + { 0x8825, "GL_DRAW_BUFFER0_NV", }, + { 0x0BC1, "GL_ALPHA_TEST_FUNC_QCOM", }, + { 0x0BC0, "GL_ALPHA_TEST_QCOM", }, + { 0x0BC2, "GL_ALPHA_TEST_REF_QCOM", }, { 0x1E01, "GL_REPLACE", }, { 0, "GL_FALSE", }, { 0x00400000, "GL_STENCIL_BUFFER_BIT6_QCOM", }, @@ -48,6 +52,7 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x8DF7, "GL_INT_10_10_10_2_OES", }, { 0x806F, "GL_TEXTURE_3D_OES", }, { 0x806A, "GL_TEXTURE_BINDING_3D_OES", }, + { 0x8CE3, "GL_COLOR_ATTACHMENT3_NV", }, { 0x8069, "GL_TEXTURE_BINDING_2D", }, { 0x8DFA, "GL_SHADER_COMPILER", }, { 0x8DFB, "GL_MAX_VERTEX_UNIFORM_VECTORS", }, @@ -109,6 +114,7 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x81A6, "GL_DEPTH_COMPONENT24_OES", }, { 0x81A7, "GL_DEPTH_COMPONENT32_OES", }, { 0x8DFD, "GL_MAX_FRAGMENT_UNIFORM_VECTORS", }, + { 0x8F60, "GL_MALI_SHADER_BINARY_ARM", }, { 0x87EE, "GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD", }, { 1, "GL_ES_VERSION_2_0", }, { 0x84F9, "GL_DEPTH_STENCIL_OES", }, @@ -155,15 +161,22 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x00020000, "GL_STENCIL_BUFFER_BIT1_QCOM", }, { 0x8D00, "GL_DEPTH_ATTACHMENT", }, { 0x8FA0, "GL_PERFMON_GLOBAL_MODE_QCOM", }, + { 0x813D, "GL_TEXTURE_MAX_LEVEL_APPLE", }, { 0x8CDD, "GL_FRAMEBUFFER_UNSUPPORTED", }, + { 0x8CDF, "GL_MAX_COLOR_ATTACHMENTS_NV", }, + { 0x882A, "GL_DRAW_BUFFER5_NV", }, { 0x80AA, "GL_SAMPLE_COVERAGE_VALUE", }, { 0x80AB, "GL_SAMPLE_COVERAGE_INVERT", }, + { 0x882B, "GL_DRAW_BUFFER6_NV", }, + { 0x882C, "GL_DRAW_BUFFER7_NV", }, { 0x84FF, "GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT", }, { 0x0B74, "GL_DEPTH_FUNC", }, { 0x0B71, "GL_DEPTH_TEST", }, { 0x0B70, "GL_DEPTH_RANGE", }, { 0x0B73, "GL_DEPTH_CLEAR_VALUE", }, { 0x0B72, "GL_DEPTH_WRITEMASK", }, + { 0x85BA, "GL_UNSIGNED_SHORT_8_8_APPLE", }, + { 0x882E, "GL_DRAW_BUFFER9_NV", }, { 0x8073, "GL_MAX_3D_TEXTURE_SIZE_OES", }, { 0x8072, "GL_TEXTURE_WRAP_R_OES", }, { 0x80E1, "GL_BGRA_EXT", }, @@ -212,20 +225,22 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x84CB, "GL_TEXTURE11", }, { 0x8D55, "GL_RENDERBUFFER_STENCIL_SIZE", }, { 0x8D54, "GL_RENDERBUFFER_DEPTH_SIZE", }, - { 0x8D57, "GL_MAX_SAMPLES", }, - { 0x8D56, "GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE", }, + { 0x8D57, "GL_MAX_SAMPLES_ANGLE", }, + { 0x8D56, "GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE", }, { 0x8D51, "GL_RENDERBUFFER_GREEN_SIZE", }, { 0x8D50, "GL_RENDERBUFFER_RED_SIZE", }, { 0x8D53, "GL_RENDERBUFFER_ALPHA_SIZE", }, { 0x8D52, "GL_RENDERBUFFER_BLUE_SIZE", }, { 0x00080000, "GL_STENCIL_BUFFER_BIT3_QCOM", }, { 0x886A, "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED", }, + { 0x9250, "GL_SHADER_BINARY_DMP", }, { 0x10000000, "GL_MULTISAMPLE_BUFFER_BIT4_QCOM", }, { 0x00000002, "GL_COLOR_BUFFER_BIT1_QCOM", }, { 0x00000001, "GL_COLOR_BUFFER_BIT0_QCOM", }, { 0x00000004, "GL_COLOR_BUFFER_BIT2_QCOM", }, { 0x1702, "GL_TEXTURE", }, { 0x00000008, "GL_COLOR_BUFFER_BIT3_QCOM", }, + { 0x8828, "GL_DRAW_BUFFER3_NV", }, { 0x8DF0, "GL_LOW_FLOAT", }, { 0x1906, "GL_ALPHA", }, { 0x1907, "GL_RGB", }, @@ -237,8 +252,11 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x8823, "GL_WRITEONLY_RENDERING_QCOM", }, { 0x1908, "GL_RGBA", }, { 0x8DF2, "GL_HIGH_FLOAT", }, + { 0x8826, "GL_DRAW_BUFFER1_NV", }, + { 0x8827, "GL_DRAW_BUFFER2_NV", }, { 0x8DF3, "GL_LOW_INT", }, { 0x8B53, "GL_INT_VEC2", }, + { 0x0C02, "GL_READ_BUFFER_NV", }, { 0x8B52, "GL_FLOAT_VEC4", }, { 0x9240, "GL_UNPACK_FLIP_Y_CHROMIUM", }, { 0x8B51, "GL_FLOAT_VEC3", }, @@ -246,9 +264,12 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x812F, "GL_CLAMP_TO_EDGE", }, { 0x86A3, "GL_COMPRESSED_TEXTURE_FORMATS", }, { 0x86A2, "GL_NUM_COMPRESSED_TEXTURE_FORMATS", }, + { 0x0CF3, "GL_UNPACK_SKIP_ROWS", }, + { 0x0CF2, "GL_UNPACK_ROW_LENGTH", }, { 0x140C, "GL_FIXED", }, { 0x8008, "GL_MAX_EXT", }, { 0x0CF5, "GL_UNPACK_ALIGNMENT", }, + { 0x0CF4, "GL_UNPACK_SKIP_PIXELS", }, { 0x8009, "GL_BLEND_EQUATION", }, { 0x1401, "GL_UNSIGNED_BYTE", }, { 0x1400, "GL_BYTE", }, @@ -335,25 +356,31 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x84D1, "GL_TEXTURE17", }, { 0x1E03, "GL_DECR", }, { 0x84DF, "GL_TEXTURE31", }, + { 0x882D, "GL_DRAW_BUFFER8_NV", }, { 0x84DD, "GL_TEXTURE29", }, { 0x84DE, "GL_TEXTURE30", }, { 0x84DB, "GL_TEXTURE27", }, { 0x84DC, "GL_TEXTURE28", }, { 0x84DA, "GL_TEXTURE26", }, + { 0x882F, "GL_DRAW_BUFFER10_NV", }, { 0x8645, "GL_VERTEX_ATTRIB_ARRAY_POINTER", }, { 0x300E, "GL_CONTEXT_LOST", }, { 0x2600, "GL_NEAREST", }, { 0x84C4, "GL_TEXTURE4", }, { 0x85B5, "GL_VERTEX_ARRAY_BINDING_OES", }, { 0x8253, "GL_GUILTY_CONTEXT_RESET_ARB", }, + { 0x8FC4, "GL_SHADER_BINARY_VIV", }, { 0x00200000, "GL_STENCIL_BUFFER_BIT5_QCOM", }, { 0x8D68, "GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES", }, + { 0x85BB, "GL_UNSIGNED_SHORT_8_8_REV_APPLE", }, { 0x8D61, "GL_HALF_FLOAT_OES", }, { 0x8D62, "GL_RGB565", }, { 0x8D64, "GL_ETC1_RGB8_OES", }, { 0x8D65, "GL_TEXTURE_EXTERNAL_OES", }, { 0x8D66, "GL_SAMPLER_EXTERNAL_OES", }, { 0x8D67, "GL_TEXTURE_BINDING_EXTERNAL_OES", }, + { 0x04000000, "GL_MULTISAMPLE_BUFFER_BIT2_QCOM", }, + { 0x8CEE, "GL_COLOR_ATTACHMENT14_NV", }, { 0x2800, "GL_TEXTURE_MAG_FILTER", }, { 0x2801, "GL_TEXTURE_MIN_FILTER", }, { 0x2802, "GL_TEXTURE_WRAP_S", }, @@ -371,6 +398,11 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x8B4F, "GL_SHADER_TYPE", }, { 0x00004000, "GL_COLOR_BUFFER_BIT", }, { 0x00000010, "GL_COLOR_BUFFER_BIT4_QCOM", }, + { 0x8834, "GL_DRAW_BUFFER15_NV", }, + { 0x8833, "GL_DRAW_BUFFER14_NV", }, + { 0x8832, "GL_DRAW_BUFFER13_NV", }, + { 0x8831, "GL_DRAW_BUFFER12_NV", }, + { 0x8830, "GL_DRAW_BUFFER11_NV", }, { 0x00010000, "GL_STENCIL_BUFFER_BIT0_QCOM", }, { 0x0B93, "GL_STENCIL_VALUE_MASK", }, { 0x0B92, "GL_STENCIL_FUNC", }, @@ -388,7 +420,7 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x8058, "GL_RGBA8_OES", }, { 0x00002000, "GL_DEPTH_BUFFER_BIT5_QCOM", }, { 0x8051, "GL_RGB8_OES", }, - { 0x8CAB, "GL_RENDERBUFFER_SAMPLES", }, + { 0x8CAB, "GL_RENDERBUFFER_SAMPLES_ANGLE", }, { 0x8057, "GL_RGB5_A1", }, { 0x8056, "GL_RGBA4", }, { 0x150A, "GL_INVERT", }, @@ -398,8 +430,8 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x8D20, "GL_STENCIL_ATTACHMENT", }, { 0x00000200, "GL_DEPTH_BUFFER_BIT1_QCOM", }, { 0x00008000, "GL_DEPTH_BUFFER_BIT7_QCOM", }, - { 0x8CA8, "GL_READ_FRAMEBUFFER", }, - { 0x8CA9, "GL_DRAW_FRAMEBUFFER", }, + { 0x8CA8, "GL_READ_FRAMEBUFFER_ANGLE", }, + { 0x8CA9, "GL_DRAW_FRAMEBUFFER_ANGLE", }, { 0x8CA6, "GL_FRAMEBUFFER_BINDING", }, { 0x8CA7, "GL_RENDERBUFFER_BINDING", }, { 0x8CA4, "GL_STENCIL_BACK_VALUE_MASK", }, @@ -407,6 +439,7 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x8CA3, "GL_STENCIL_BACK_REF", }, { 0x80CB, "GL_BLEND_SRC_ALPHA", }, { 0x80CA, "GL_BLEND_DST_ALPHA", }, + { 0x8CE4, "GL_COLOR_ATTACHMENT4_NV", }, { 0x8CD6, "GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT", }, { 0x8872, "GL_MAX_TEXTURE_IMAGE_UNITS", }, { 0x8508, "GL_DECR_WRAP", }, @@ -432,20 +465,34 @@ static GLES2Util::EnumToString enum_to_string_table[] = { { 0x1100, "GL_DONT_CARE", }, { 0x1101, "GL_FASTEST", }, { 0x1102, "GL_NICEST", }, + { 0x8CEB, "GL_COLOR_ATTACHMENT11_NV", }, + { 0x8CEC, "GL_COLOR_ATTACHMENT12_NV", }, { 0x0408, "GL_FRONT_AND_BACK", }, - { 0x04000000, "GL_MULTISAMPLE_BUFFER_BIT2_QCOM", }, + { 0x8CEA, "GL_COLOR_ATTACHMENT10_NV", }, + { 0x8CEF, "GL_COLOR_ATTACHMENT15_NV", }, + { 0x8CED, "GL_COLOR_ATTACHMENT13_NV", }, + { 0x8829, "GL_DRAW_BUFFER4_NV", }, { 0x0404, "GL_FRONT", }, { 0x0405, "GL_BACK", }, { 0x88E0, "GL_STREAM_DRAW", }, { 0x88E4, "GL_STATIC_DRAW", }, { 0x88E8, "GL_DYNAMIC_DRAW", }, - { 0x8CAA, "GL_READ_FRAMEBUFFER_BINDING", }, + { 0x8CAA, "GL_READ_FRAMEBUFFER_BINDING_ANGLE", }, { 0x40000000, "GL_MULTISAMPLE_BUFFER_BIT6_QCOM", }, { 0x00000800, "GL_DEPTH_BUFFER_BIT3_QCOM", }, + { 0x8CE2, "GL_COLOR_ATTACHMENT2_NV", }, { 0x8BC1, "GL_COUNTER_RANGE_AMD", }, { 0x8CE0, "GL_COLOR_ATTACHMENT0", }, + { 0x8CE1, "GL_COLOR_ATTACHMENT1_NV", }, + { 0x8CE6, "GL_COLOR_ATTACHMENT6_NV", }, + { 0x8CE7, "GL_COLOR_ATTACHMENT7_NV", }, + { 0x8A1F, "GL_RGB_422_APPLE", }, + { 0x8CE5, "GL_COLOR_ATTACHMENT5_NV", }, + { 0x8CE8, "GL_COLOR_ATTACHMENT8_NV", }, + { 0x8CE9, "GL_COLOR_ATTACHMENT9_NV", }, { 0x0C23, "GL_COLOR_WRITEMASK", }, { 0x0C22, "GL_COLOR_CLEAR_VALUE", }, + { 0x8824, "GL_MAX_DRAW_BUFFERS_NV", }, { 0x1909, "GL_LUMINANCE", }, { 0x0D3A, "GL_MAX_VIEWPORT_DIMS", }, { 0x809E, "GL_SAMPLE_ALPHA_TO_COVERAGE", }, |