resolve merge conflicts of 7782ec5b to deqp-dev

Test: Build the apk and ran scripts/check_build_sanity.p.
Change-Id: I0ac3ec6a73a4751bd5b075aaf59bb24c48f14f5c
diff --git a/android/cts/master/egl-master.txt b/android/cts/master/egl-master.txt
index 93332e8..55861eb 100644
--- a/android/cts/master/egl-master.txt
+++ b/android/cts/master/egl-master.txt
@@ -2457,14 +2457,21 @@
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_draw_elements_base_vertex
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_draw_instanced
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_draw_transform_feedback
+dEQP-EGL.functional.get_proc_address.extension.gl_ext_external_buffer
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_geometry_shader
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_instanced_arrays
+dEQP-EGL.functional.get_proc_address.extension.gl_ext_memory_object
+dEQP-EGL.functional.get_proc_address.extension.gl_ext_memory_object_fd
+dEQP-EGL.functional.get_proc_address.extension.gl_ext_memory_object_win32
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_multi_draw_indirect
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_multiview_draw_buffers
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_occlusion_query_boolean
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_polygon_offset_clamp
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_primitive_bounding_box
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_raster_multisample
+dEQP-EGL.functional.get_proc_address.extension.gl_ext_semaphore
+dEQP-EGL.functional.get_proc_address.extension.gl_ext_semaphore_fd
+dEQP-EGL.functional.get_proc_address.extension.gl_ext_semaphore_win32
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_separate_shader_objects
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_shader_pixel_local_storage2
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_sparse_texture
@@ -2473,6 +2480,7 @@
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_texture_buffer
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_texture_filter_minmax
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_texture_view
+dEQP-EGL.functional.get_proc_address.extension.gl_ext_win32_keyed_mutex
 dEQP-EGL.functional.get_proc_address.extension.gl_ext_window_rectangles
 dEQP-EGL.functional.get_proc_address.extension.gl_img_bindless_texture
 dEQP-EGL.functional.get_proc_address.extension.gl_img_framebuffer_downsample
@@ -2490,6 +2498,7 @@
 dEQP-EGL.functional.get_proc_address.extension.gl_nv_coverage_sample
 dEQP-EGL.functional.get_proc_address.extension.gl_nv_draw_buffers
 dEQP-EGL.functional.get_proc_address.extension.gl_nv_draw_instanced
+dEQP-EGL.functional.get_proc_address.extension.gl_nv_draw_vulkan_image
 dEQP-EGL.functional.get_proc_address.extension.gl_nv_fragment_coverage_to_color
 dEQP-EGL.functional.get_proc_address.extension.gl_nv_framebuffer_blit
 dEQP-EGL.functional.get_proc_address.extension.gl_nv_framebuffer_mixed_samples
@@ -2522,7 +2531,7 @@
 dEQP-EGL.functional.get_proc_address.extension.gl_ovr_multiview_multisampled_render_to_texture
 dEQP-EGL.functional.get_proc_address.extension.gl_qcom_alpha_test
 dEQP-EGL.functional.get_proc_address.extension.gl_qcom_framebuffer_foveated
-dEQP-EGL.functional.get_proc_address.extension.gl_nv_draw_vulkan_image
+dEQP-EGL.functional.get_proc_address.extension.gl_qcom_shader_framebuffer_fetch_noncoherent
 dEQP-EGL.functional.get_proc_address.core.egl
 dEQP-EGL.functional.get_proc_address.core.gles
 dEQP-EGL.functional.get_proc_address.core.gles2
diff --git a/framework/egl/egluStaticES20Library.inl b/framework/egl/egluStaticES20Library.inl
index bfc637c..1e68aa2 100644
--- a/framework/egl/egluStaticES20Library.inl
+++ b/framework/egl/egluStaticES20Library.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 	{ "glActiveTexture",						(deFunctionPtr)glActiveTexture },
 	{ "glAttachShader",							(deFunctionPtr)glAttachShader },
diff --git a/framework/egl/egluStaticES30Library.inl b/framework/egl/egluStaticES30Library.inl
index 3f6a7e5..a6cdd6c 100644
--- a/framework/egl/egluStaticES30Library.inl
+++ b/framework/egl/egluStaticES30Library.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 	{ "glActiveTexture",						(deFunctionPtr)glActiveTexture },
 	{ "glAttachShader",							(deFunctionPtr)glAttachShader },
diff --git a/framework/opengl/gluCallLogUtil.inl b/framework/opengl/gluCallLogUtil.inl
index 4f6e42b..9ca34af 100644
--- a/framework/opengl/gluCallLogUtil.inl
+++ b/framework/opengl/gluCallLogUtil.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 
 int getTextureParamNumArgs (int pname)
diff --git a/framework/opengl/gluCallLogWrapper.inl b/framework/opengl/gluCallLogWrapper.inl
index c6cb935..e90834b 100644
--- a/framework/opengl/gluCallLogWrapper.inl
+++ b/framework/opengl/gluCallLogWrapper.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 
 void CallLogWrapper::glActiveShaderProgram (glw::GLuint pipeline, glw::GLuint program)
@@ -618,6 +618,13 @@
 	m_gl.compressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
 }
 
+void CallLogWrapper::glCompressedTexImage3DOES (glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLsizei imageSize, const void *data)
+{
+	if (m_enableLog)
+		m_log << TestLog::Message << "glCompressedTexImage3DOES(" << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << border << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
+	m_gl.compressedTexImage3DOES(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
 void CallLogWrapper::glCompressedTexSubImage1D (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLsizei width, glw::GLenum format, glw::GLsizei imageSize, const void *data)
 {
 	if (m_enableLog)
@@ -639,6 +646,13 @@
 	m_gl.compressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
 }
 
+void CallLogWrapper::glCompressedTexSubImage3DOES (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLsizei imageSize, const void *data)
+{
+	if (m_enableLog)
+		m_log << TestLog::Message << "glCompressedTexSubImage3DOES(" << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << imageSize << ", " << data << ");" << TestLog::EndMessage;
+	m_gl.compressedTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
 void CallLogWrapper::glCompressedTextureImage1DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLint border, glw::GLsizei imageSize, const void *bits)
 {
 	if (m_enableLog)
@@ -793,6 +807,13 @@
 	m_gl.copyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
 }
 
+void CallLogWrapper::glCopyTexSubImage3DOES (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height)
+{
+	if (m_enableLog)
+		m_log << TestLog::Message << "glCopyTexSubImage3DOES(" << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << x << ", " << y << ", " << width << ", " << height << ");" << TestLog::EndMessage;
+	m_gl.copyTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
 void CallLogWrapper::glCopyTextureImage1DEXT (glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLint border)
 {
 	if (m_enableLog)
@@ -1533,6 +1554,13 @@
 	m_gl.framebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
 }
 
+void CallLogWrapper::glFramebufferTexture3DOES (glw::GLenum target, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level, glw::GLint zoffset)
+{
+	if (m_enableLog)
+		m_log << TestLog::Message << "glFramebufferTexture3DOES(" << toHex(target) << ", " << toHex(attachment) << ", " << toHex(textarget) << ", " << texture << ", " << level << ", " << zoffset << ");" << TestLog::EndMessage;
+	m_gl.framebufferTexture3DOES(target, attachment, textarget, texture, level, zoffset);
+}
+
 void CallLogWrapper::glFramebufferTextureLayer (glw::GLenum target, glw::GLenum attachment, glw::GLuint texture, glw::GLint level, glw::GLint layer)
 {
 	if (m_enableLog)
@@ -1936,16 +1964,6 @@
 	return returnValue;
 }
 
-glw::GLenum CallLogWrapper::glGetGraphicsResetStatusEXT (void)
-{
-	if (m_enableLog)
-		m_log << TestLog::Message << "glGetGraphicsResetStatusEXT(" << ");" << TestLog::EndMessage;
-	glw::GLenum returnValue = m_gl.getGraphicsResetStatusEXT();
-	if (m_enableLog)
-		m_log << TestLog::Message << "// " << toHex(returnValue) << " returned" << TestLog::EndMessage;
-	return returnValue;
-}
-
 void CallLogWrapper::glGetInteger64i_v (glw::GLenum target, glw::GLuint index, glw::GLint64 *data)
 {
 	if (m_enableLog)
@@ -2968,13 +2986,6 @@
 	m_gl.getnUniformfv(program, location, bufSize, params);
 }
 
-void CallLogWrapper::glGetnUniformfvEXT (glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLfloat *params)
-{
-	if (m_enableLog)
-		m_log << TestLog::Message << "glGetnUniformfvEXT(" << program << ", " << location << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
-	m_gl.getnUniformfvEXT(program, location, bufSize, params);
-}
-
 void CallLogWrapper::glGetnUniformiv (glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLint *params)
 {
 	if (m_enableLog)
@@ -2982,13 +2993,6 @@
 	m_gl.getnUniformiv(program, location, bufSize, params);
 }
 
-void CallLogWrapper::glGetnUniformivEXT (glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLint *params)
-{
-	if (m_enableLog)
-		m_log << TestLog::Message << "glGetnUniformivEXT(" << program << ", " << location << ", " << bufSize << ", " << toHex(reinterpret_cast<deUintptr>(static_cast<const void*>(params))) << ");" << TestLog::EndMessage;
-	m_gl.getnUniformivEXT(program, location, bufSize, params);
-}
-
 void CallLogWrapper::glGetnUniformuiv (glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLuint *params)
 {
 	if (m_enableLog)
@@ -4834,6 +4838,13 @@
 	m_gl.texImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
 }
 
+void CallLogWrapper::glTexImage3DOES (glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels)
+{
+	if (m_enableLog)
+		m_log << TestLog::Message << "glTexImage3DOES(" << toHex(target) << ", " << level << ", " << toHex(internalformat) << ", " << width << ", " << height << ", " << depth << ", " << border << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
+	m_gl.texImage3DOES(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
 void CallLogWrapper::glTexPageCommitmentARB (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLboolean commit)
 {
 	if (m_enableLog)
@@ -4939,6 +4950,13 @@
 	m_gl.texSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
 }
 
+void CallLogWrapper::glTexSubImage3DOES (glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLenum type, const void *pixels)
+{
+	if (m_enableLog)
+		m_log << TestLog::Message << "glTexSubImage3DOES(" << toHex(target) << ", " << level << ", " << xoffset << ", " << yoffset << ", " << zoffset << ", " << width << ", " << height << ", " << depth << ", " << toHex(format) << ", " << toHex(type) << ", " << pixels << ");" << TestLog::EndMessage;
+	m_gl.texSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
 void CallLogWrapper::glTextureBarrier (void)
 {
 	if (m_enableLog)
diff --git a/framework/opengl/gluCallLogWrapperApi.inl b/framework/opengl/gluCallLogWrapperApi.inl
index 0c70026..b86d641 100644
--- a/framework/opengl/gluCallLogWrapperApi.inl
+++ b/framework/opengl/gluCallLogWrapperApi.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 void					glActiveShaderProgram								(glw::GLuint pipeline, glw::GLuint program);
 void					glActiveTexture										(glw::GLenum texture);
@@ -89,9 +89,11 @@
 void					glCompressedTexImage1D								(glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLint border, glw::GLsizei imageSize, const void *data);
 void					glCompressedTexImage2D								(glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLint border, glw::GLsizei imageSize, const void *data);
 void					glCompressedTexImage3D								(glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLsizei imageSize, const void *data);
+void					glCompressedTexImage3DOES							(glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLsizei imageSize, const void *data);
 void					glCompressedTexSubImage1D							(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLsizei width, glw::GLenum format, glw::GLsizei imageSize, const void *data);
 void					glCompressedTexSubImage2D							(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLsizei imageSize, const void *data);
 void					glCompressedTexSubImage3D							(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLsizei imageSize, const void *data);
+void					glCompressedTexSubImage3DOES						(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLsizei imageSize, const void *data);
 void					glCompressedTextureImage1DEXT						(glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLint border, glw::GLsizei imageSize, const void *bits);
 void					glCompressedTextureImage2DEXT						(glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLint border, glw::GLsizei imageSize, const void *bits);
 void					glCompressedTextureImage3DEXT						(glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLsizei imageSize, const void *bits);
@@ -114,6 +116,7 @@
 void					glCopyTexSubImage1D									(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint x, glw::GLint y, glw::GLsizei width);
 void					glCopyTexSubImage2D									(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height);
 void					glCopyTexSubImage3D									(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height);
+void					glCopyTexSubImage3DOES								(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height);
 void					glCopyTextureImage1DEXT								(glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLint border);
 void					glCopyTextureImage2DEXT								(glw::GLuint texture, glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLint x, glw::GLint y, glw::GLsizei width, glw::GLsizei height, glw::GLint border);
 void					glCopyTextureSubImage1D								(glw::GLuint texture, glw::GLint level, glw::GLint xoffset, glw::GLint x, glw::GLint y, glw::GLsizei width);
@@ -218,6 +221,7 @@
 void					glFramebufferTexture1D								(glw::GLenum target, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level);
 void					glFramebufferTexture2D								(glw::GLenum target, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level);
 void					glFramebufferTexture3D								(glw::GLenum target, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level, glw::GLint zoffset);
+void					glFramebufferTexture3DOES							(glw::GLenum target, glw::GLenum attachment, glw::GLenum textarget, glw::GLuint texture, glw::GLint level, glw::GLint zoffset);
 void					glFramebufferTextureLayer							(glw::GLenum target, glw::GLenum attachment, glw::GLuint texture, glw::GLint level, glw::GLint layer);
 void					glFrontFace											(glw::GLenum mode);
 void					glGenBuffers										(glw::GLsizei n, glw::GLuint *buffers);
@@ -268,7 +272,6 @@
 void					glGetFramebufferParameteriv							(glw::GLenum target, glw::GLenum pname, glw::GLint *params);
 void					glGetFramebufferParameterivEXT						(glw::GLuint framebuffer, glw::GLenum pname, glw::GLint *params);
 glw::GLenum				glGetGraphicsResetStatus							(void);
-glw::GLenum				glGetGraphicsResetStatusEXT							(void);
 void					glGetInteger64i_v									(glw::GLenum target, glw::GLuint index, glw::GLint64 *data);
 void					glGetInteger64v										(glw::GLenum pname, glw::GLint64 *data);
 void					glGetIntegeri_v										(glw::GLenum target, glw::GLuint index, glw::GLint *data);
@@ -401,9 +404,7 @@
 void					glGetnTexImage										(glw::GLenum target, glw::GLint level, glw::GLenum format, glw::GLenum type, glw::GLsizei bufSize, void *pixels);
 void					glGetnUniformdv										(glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLdouble *params);
 void					glGetnUniformfv										(glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLfloat *params);
-void					glGetnUniformfvEXT									(glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLfloat *params);
 void					glGetnUniformiv										(glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLint *params);
-void					glGetnUniformivEXT									(glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLint *params);
 void					glGetnUniformuiv									(glw::GLuint program, glw::GLint location, glw::GLsizei bufSize, glw::GLuint *params);
 void					glHint												(glw::GLenum target, glw::GLenum mode);
 void					glInsertEventMarkerEXT								(glw::GLsizei length, const glw::GLchar *marker);
@@ -659,6 +660,7 @@
 void					glTexImage2DMultisample								(glw::GLenum target, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLboolean fixedsamplelocations);
 void					glTexImage3D										(glw::GLenum target, glw::GLint level, glw::GLint internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels);
 void					glTexImage3DMultisample								(glw::GLenum target, glw::GLsizei samples, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLboolean fixedsamplelocations);
+void					glTexImage3DOES										(glw::GLenum target, glw::GLint level, glw::GLenum internalformat, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLint border, glw::GLenum format, glw::GLenum type, const void *pixels);
 void					glTexPageCommitmentARB								(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLboolean commit);
 void					glTexParameterIiv									(glw::GLenum target, glw::GLenum pname, const glw::GLint *params);
 void					glTexParameterIuiv									(glw::GLenum target, glw::GLenum pname, const glw::GLuint *params);
@@ -674,6 +676,7 @@
 void					glTexSubImage1D										(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLsizei width, glw::GLenum format, glw::GLenum type, const void *pixels);
 void					glTexSubImage2D										(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLsizei width, glw::GLsizei height, glw::GLenum format, glw::GLenum type, const void *pixels);
 void					glTexSubImage3D										(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLenum type, const void *pixels);
+void					glTexSubImage3DOES									(glw::GLenum target, glw::GLint level, glw::GLint xoffset, glw::GLint yoffset, glw::GLint zoffset, glw::GLsizei width, glw::GLsizei height, glw::GLsizei depth, glw::GLenum format, glw::GLenum type, const void *pixels);
 void					glTextureBarrier									(void);
 void					glTextureBuffer										(glw::GLuint texture, glw::GLenum internalformat, glw::GLuint buffer);
 void					glTextureBufferEXT									(glw::GLuint texture, glw::GLenum target, glw::GLenum internalformat, glw::GLuint buffer);
diff --git a/framework/opengl/gluES3PlusWrapperFuncs.inl b/framework/opengl/gluES3PlusWrapperFuncs.inl
index 8d5167a..c0d7607 100644
--- a/framework/opengl/gluES3PlusWrapperFuncs.inl
+++ b/framework/opengl/gluES3PlusWrapperFuncs.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 dst->activeShaderProgram					= src.activeShaderProgram;
 dst->activeTexture							= src.activeTexture;
diff --git a/framework/opengl/gluQueryUtil.inl b/framework/opengl/gluQueryUtil.inl
index da5a927..857af60 100644
--- a/framework/opengl/gluQueryUtil.inl
+++ b/framework/opengl/gluQueryUtil.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 
 int getBasicQueryNumArgsOut (int pname)
diff --git a/framework/opengl/gluStrUtil.inl b/framework/opengl/gluStrUtil.inl
index a75e8ab..b32e4ec 100644
--- a/framework/opengl/gluStrUtil.inl
+++ b/framework/opengl/gluStrUtil.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 
 const char* getErrorName (int value)
diff --git a/framework/opengl/gluStrUtilPrototypes.inl b/framework/opengl/gluStrUtilPrototypes.inl
index 5e54abf..d5374c7 100644
--- a/framework/opengl/gluStrUtilPrototypes.inl
+++ b/framework/opengl/gluStrUtilPrototypes.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 const char*							getErrorName							(int value);
 const char*							getTypeName								(int value);
diff --git a/framework/opengl/wrapper/glwApi.inl b/framework/opengl/wrapper/glwApi.inl
index e24474f..588cff2 100644
--- a/framework/opengl/wrapper/glwApi.inl
+++ b/framework/opengl/wrapper/glwApi.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 #define			glActiveShaderProgram								glwActiveShaderProgram
 #define			glActiveTexture										glwActiveTexture
@@ -89,9 +89,11 @@
 #define			glCompressedTexImage1D								glwCompressedTexImage1D
 #define			glCompressedTexImage2D								glwCompressedTexImage2D
 #define			glCompressedTexImage3D								glwCompressedTexImage3D
+#define			glCompressedTexImage3DOES							glwCompressedTexImage3DOES
 #define			glCompressedTexSubImage1D							glwCompressedTexSubImage1D
 #define			glCompressedTexSubImage2D							glwCompressedTexSubImage2D
 #define			glCompressedTexSubImage3D							glwCompressedTexSubImage3D
+#define			glCompressedTexSubImage3DOES						glwCompressedTexSubImage3DOES
 #define			glCompressedTextureImage1DEXT						glwCompressedTextureImage1DEXT
 #define			glCompressedTextureImage2DEXT						glwCompressedTextureImage2DEXT
 #define			glCompressedTextureImage3DEXT						glwCompressedTextureImage3DEXT
@@ -114,6 +116,7 @@
 #define			glCopyTexSubImage1D									glwCopyTexSubImage1D
 #define			glCopyTexSubImage2D									glwCopyTexSubImage2D
 #define			glCopyTexSubImage3D									glwCopyTexSubImage3D
+#define			glCopyTexSubImage3DOES								glwCopyTexSubImage3DOES
 #define			glCopyTextureImage1DEXT								glwCopyTextureImage1DEXT
 #define			glCopyTextureImage2DEXT								glwCopyTextureImage2DEXT
 #define			glCopyTextureSubImage1D								glwCopyTextureSubImage1D
@@ -218,6 +221,7 @@
 #define			glFramebufferTexture1D								glwFramebufferTexture1D
 #define			glFramebufferTexture2D								glwFramebufferTexture2D
 #define			glFramebufferTexture3D								glwFramebufferTexture3D
+#define			glFramebufferTexture3DOES							glwFramebufferTexture3DOES
 #define			glFramebufferTextureLayer							glwFramebufferTextureLayer
 #define			glFrontFace											glwFrontFace
 #define			glGenBuffers										glwGenBuffers
@@ -268,7 +272,6 @@
 #define			glGetFramebufferParameteriv							glwGetFramebufferParameteriv
 #define			glGetFramebufferParameterivEXT						glwGetFramebufferParameterivEXT
 #define			glGetGraphicsResetStatus							glwGetGraphicsResetStatus
-#define			glGetGraphicsResetStatusEXT							glwGetGraphicsResetStatusEXT
 #define			glGetInteger64i_v									glwGetInteger64i_v
 #define			glGetInteger64v										glwGetInteger64v
 #define			glGetIntegeri_v										glwGetIntegeri_v
@@ -401,9 +404,7 @@
 #define			glGetnTexImage										glwGetnTexImage
 #define			glGetnUniformdv										glwGetnUniformdv
 #define			glGetnUniformfv										glwGetnUniformfv
-#define			glGetnUniformfvEXT									glwGetnUniformfvEXT
 #define			glGetnUniformiv										glwGetnUniformiv
-#define			glGetnUniformivEXT									glwGetnUniformivEXT
 #define			glGetnUniformuiv									glwGetnUniformuiv
 #define			glHint												glwHint
 #define			glInsertEventMarkerEXT								glwInsertEventMarkerEXT
@@ -659,6 +660,7 @@
 #define			glTexImage2DMultisample								glwTexImage2DMultisample
 #define			glTexImage3D										glwTexImage3D
 #define			glTexImage3DMultisample								glwTexImage3DMultisample
+#define			glTexImage3DOES										glwTexImage3DOES
 #define			glTexPageCommitmentARB								glwTexPageCommitmentARB
 #define			glTexParameterIiv									glwTexParameterIiv
 #define			glTexParameterIuiv									glwTexParameterIuiv
@@ -674,6 +676,7 @@
 #define			glTexSubImage1D										glwTexSubImage1D
 #define			glTexSubImage2D										glwTexSubImage2D
 #define			glTexSubImage3D										glwTexSubImage3D
+#define			glTexSubImage3DOES									glwTexSubImage3DOES
 #define			glTextureBarrier									glwTextureBarrier
 #define			glTextureBuffer										glwTextureBuffer
 #define			glTextureBufferEXT									glwTextureBufferEXT
@@ -974,9 +977,11 @@
 void			glwCompressedTexImage1D								(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data);
 void			glwCompressedTexImage2D								(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data);
 void			glwCompressedTexImage3D								(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
+void			glwCompressedTexImage3DOES							(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
 void			glwCompressedTexSubImage1D							(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data);
 void			glwCompressedTexSubImage2D							(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
 void			glwCompressedTexSubImage3D							(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
+void			glwCompressedTexSubImage3DOES						(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
 void			glwCompressedTextureImage1DEXT						(GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *bits);
 void			glwCompressedTextureImage2DEXT						(GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *bits);
 void			glwCompressedTextureImage3DEXT						(GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *bits);
@@ -999,6 +1004,7 @@
 void			glwCopyTexSubImage1D								(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
 void			glwCopyTexSubImage2D								(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 void			glwCopyTexSubImage3D								(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+void			glwCopyTexSubImage3DOES								(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 void			glwCopyTextureImage1DEXT							(GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
 void			glwCopyTextureImage2DEXT							(GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
 void			glwCopyTextureSubImage1D							(GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
@@ -1103,6 +1109,7 @@
 void			glwFramebufferTexture1D								(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
 void			glwFramebufferTexture2D								(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
 void			glwFramebufferTexture3D								(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+void			glwFramebufferTexture3DOES							(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
 void			glwFramebufferTextureLayer							(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
 void			glwFrontFace										(GLenum mode);
 void			glwGenBuffers										(GLsizei n, GLuint *buffers);
@@ -1153,7 +1160,6 @@
 void			glwGetFramebufferParameteriv						(GLenum target, GLenum pname, GLint *params);
 void			glwGetFramebufferParameterivEXT						(GLuint framebuffer, GLenum pname, GLint *params);
 GLenum			glwGetGraphicsResetStatus							();
-GLenum			glwGetGraphicsResetStatusEXT						();
 void			glwGetInteger64i_v									(GLenum target, GLuint index, GLint64 *data);
 void			glwGetInteger64v									(GLenum pname, GLint64 *data);
 void			glwGetIntegeri_v									(GLenum target, GLuint index, GLint *data);
@@ -1286,9 +1292,7 @@
 void			glwGetnTexImage										(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels);
 void			glwGetnUniformdv									(GLuint program, GLint location, GLsizei bufSize, GLdouble *params);
 void			glwGetnUniformfv									(GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
-void			glwGetnUniformfvEXT									(GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
 void			glwGetnUniformiv									(GLuint program, GLint location, GLsizei bufSize, GLint *params);
-void			glwGetnUniformivEXT									(GLuint program, GLint location, GLsizei bufSize, GLint *params);
 void			glwGetnUniformuiv									(GLuint program, GLint location, GLsizei bufSize, GLuint *params);
 void			glwHint												(GLenum target, GLenum mode);
 void			glwInsertEventMarkerEXT								(GLsizei length, const GLchar *marker);
@@ -1544,6 +1548,7 @@
 void			glwTexImage2DMultisample							(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
 void			glwTexImage3D										(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
 void			glwTexImage3DMultisample							(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+void			glwTexImage3DOES									(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
 void			glwTexPageCommitmentARB								(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit);
 void			glwTexParameterIiv									(GLenum target, GLenum pname, const GLint *params);
 void			glwTexParameterIuiv									(GLenum target, GLenum pname, const GLuint *params);
@@ -1559,6 +1564,7 @@
 void			glwTexSubImage1D									(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
 void			glwTexSubImage2D									(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
 void			glwTexSubImage3D									(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
+void			glwTexSubImage3DOES									(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
 void			glwTextureBarrier									();
 void			glwTextureBuffer									(GLuint texture, GLenum internalformat, GLuint buffer);
 void			glwTextureBufferEXT									(GLuint texture, GLenum target, GLenum internalformat, GLuint buffer);
diff --git a/framework/opengl/wrapper/glwEnums.inl b/framework/opengl/wrapper/glwEnums.inl
index 65a3591..772bbbf 100644
--- a/framework/opengl/wrapper/glwEnums.inl
+++ b/framework/opengl/wrapper/glwEnums.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 #define GL_DEPTH_BUFFER_BIT												0x00000100
 #define GL_STENCIL_BUFFER_BIT											0x00000400
diff --git a/framework/opengl/wrapper/glwFunctionTypes.inl b/framework/opengl/wrapper/glwFunctionTypes.inl
index 9184a73..2ae4b1f 100644
--- a/framework/opengl/wrapper/glwFunctionTypes.inl
+++ b/framework/opengl/wrapper/glwFunctionTypes.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 typedef GLW_APICALL void			(GLW_APIENTRY* glActiveShaderProgramFunc)								(GLuint pipeline, GLuint program);
 typedef GLW_APICALL void			(GLW_APIENTRY* glActiveTextureFunc)										(GLenum texture);
@@ -89,9 +89,11 @@
 typedef GLW_APICALL void			(GLW_APIENTRY* glCompressedTexImage1DFunc)								(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCompressedTexImage2DFunc)								(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCompressedTexImage3DFunc)								(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
+typedef GLW_APICALL void			(GLW_APIENTRY* glCompressedTexImage3DOESFunc)							(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCompressedTexSubImage1DFunc)							(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCompressedTexSubImage2DFunc)							(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCompressedTexSubImage3DFunc)							(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
+typedef GLW_APICALL void			(GLW_APIENTRY* glCompressedTexSubImage3DOESFunc)						(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCompressedTextureImage1DEXTFunc)						(GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *bits);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCompressedTextureImage2DEXTFunc)						(GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *bits);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCompressedTextureImage3DEXTFunc)						(GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *bits);
@@ -114,6 +116,7 @@
 typedef GLW_APICALL void			(GLW_APIENTRY* glCopyTexSubImage1DFunc)									(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCopyTexSubImage2DFunc)									(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCopyTexSubImage3DFunc)									(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
+typedef GLW_APICALL void			(GLW_APIENTRY* glCopyTexSubImage3DOESFunc)								(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCopyTextureImage1DEXTFunc)								(GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCopyTextureImage2DEXTFunc)								(GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
 typedef GLW_APICALL void			(GLW_APIENTRY* glCopyTextureSubImage1DFunc)								(GLuint texture, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
@@ -218,6 +221,7 @@
 typedef GLW_APICALL void			(GLW_APIENTRY* glFramebufferTexture1DFunc)								(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
 typedef GLW_APICALL void			(GLW_APIENTRY* glFramebufferTexture2DFunc)								(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
 typedef GLW_APICALL void			(GLW_APIENTRY* glFramebufferTexture3DFunc)								(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
+typedef GLW_APICALL void			(GLW_APIENTRY* glFramebufferTexture3DOESFunc)							(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
 typedef GLW_APICALL void			(GLW_APIENTRY* glFramebufferTextureLayerFunc)							(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
 typedef GLW_APICALL void			(GLW_APIENTRY* glFrontFaceFunc)											(GLenum mode);
 typedef GLW_APICALL void			(GLW_APIENTRY* glGenBuffersFunc)										(GLsizei n, GLuint *buffers);
@@ -268,7 +272,6 @@
 typedef GLW_APICALL void			(GLW_APIENTRY* glGetFramebufferParameterivFunc)							(GLenum target, GLenum pname, GLint *params);
 typedef GLW_APICALL void			(GLW_APIENTRY* glGetFramebufferParameterivEXTFunc)						(GLuint framebuffer, GLenum pname, GLint *params);
 typedef GLW_APICALL GLenum			(GLW_APIENTRY* glGetGraphicsResetStatusFunc)							(void);
-typedef GLW_APICALL GLenum			(GLW_APIENTRY* glGetGraphicsResetStatusEXTFunc)							(void);
 typedef GLW_APICALL void			(GLW_APIENTRY* glGetInteger64i_vFunc)									(GLenum target, GLuint index, GLint64 *data);
 typedef GLW_APICALL void			(GLW_APIENTRY* glGetInteger64vFunc)										(GLenum pname, GLint64 *data);
 typedef GLW_APICALL void			(GLW_APIENTRY* glGetIntegeri_vFunc)										(GLenum target, GLuint index, GLint *data);
@@ -401,9 +404,7 @@
 typedef GLW_APICALL void			(GLW_APIENTRY* glGetnTexImageFunc)										(GLenum target, GLint level, GLenum format, GLenum type, GLsizei bufSize, void *pixels);
 typedef GLW_APICALL void			(GLW_APIENTRY* glGetnUniformdvFunc)										(GLuint program, GLint location, GLsizei bufSize, GLdouble *params);
 typedef GLW_APICALL void			(GLW_APIENTRY* glGetnUniformfvFunc)										(GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
-typedef GLW_APICALL void			(GLW_APIENTRY* glGetnUniformfvEXTFunc)									(GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
 typedef GLW_APICALL void			(GLW_APIENTRY* glGetnUniformivFunc)										(GLuint program, GLint location, GLsizei bufSize, GLint *params);
-typedef GLW_APICALL void			(GLW_APIENTRY* glGetnUniformivEXTFunc)									(GLuint program, GLint location, GLsizei bufSize, GLint *params);
 typedef GLW_APICALL void			(GLW_APIENTRY* glGetnUniformuivFunc)									(GLuint program, GLint location, GLsizei bufSize, GLuint *params);
 typedef GLW_APICALL void			(GLW_APIENTRY* glHintFunc)												(GLenum target, GLenum mode);
 typedef GLW_APICALL void			(GLW_APIENTRY* glInsertEventMarkerEXTFunc)								(GLsizei length, const GLchar *marker);
@@ -659,6 +660,7 @@
 typedef GLW_APICALL void			(GLW_APIENTRY* glTexImage2DMultisampleFunc)								(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
 typedef GLW_APICALL void			(GLW_APIENTRY* glTexImage3DFunc)										(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
 typedef GLW_APICALL void			(GLW_APIENTRY* glTexImage3DMultisampleFunc)								(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
+typedef GLW_APICALL void			(GLW_APIENTRY* glTexImage3DOESFunc)										(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
 typedef GLW_APICALL void			(GLW_APIENTRY* glTexPageCommitmentARBFunc)								(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit);
 typedef GLW_APICALL void			(GLW_APIENTRY* glTexParameterIivFunc)									(GLenum target, GLenum pname, const GLint *params);
 typedef GLW_APICALL void			(GLW_APIENTRY* glTexParameterIuivFunc)									(GLenum target, GLenum pname, const GLuint *params);
@@ -674,6 +676,7 @@
 typedef GLW_APICALL void			(GLW_APIENTRY* glTexSubImage1DFunc)										(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels);
 typedef GLW_APICALL void			(GLW_APIENTRY* glTexSubImage2DFunc)										(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
 typedef GLW_APICALL void			(GLW_APIENTRY* glTexSubImage3DFunc)										(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
+typedef GLW_APICALL void			(GLW_APIENTRY* glTexSubImage3DOESFunc)									(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
 typedef GLW_APICALL void			(GLW_APIENTRY* glTextureBarrierFunc)									(void);
 typedef GLW_APICALL void			(GLW_APIENTRY* glTextureBufferFunc)										(GLuint texture, GLenum internalformat, GLuint buffer);
 typedef GLW_APICALL void			(GLW_APIENTRY* glTextureBufferEXTFunc)									(GLuint texture, GLenum target, GLenum internalformat, GLuint buffer);
diff --git a/framework/opengl/wrapper/glwFunctions.inl b/framework/opengl/wrapper/glwFunctions.inl
index f2428b1..d0dfd73 100644
--- a/framework/opengl/wrapper/glwFunctions.inl
+++ b/framework/opengl/wrapper/glwFunctions.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 glActiveShaderProgramFunc								activeShaderProgram;
 glActiveTextureFunc										activeTexture;
@@ -89,9 +89,11 @@
 glCompressedTexImage1DFunc								compressedTexImage1D;
 glCompressedTexImage2DFunc								compressedTexImage2D;
 glCompressedTexImage3DFunc								compressedTexImage3D;
+glCompressedTexImage3DOESFunc							compressedTexImage3DOES;
 glCompressedTexSubImage1DFunc							compressedTexSubImage1D;
 glCompressedTexSubImage2DFunc							compressedTexSubImage2D;
 glCompressedTexSubImage3DFunc							compressedTexSubImage3D;
+glCompressedTexSubImage3DOESFunc						compressedTexSubImage3DOES;
 glCompressedTextureImage1DEXTFunc						compressedTextureImage1DEXT;
 glCompressedTextureImage2DEXTFunc						compressedTextureImage2DEXT;
 glCompressedTextureImage3DEXTFunc						compressedTextureImage3DEXT;
@@ -114,6 +116,7 @@
 glCopyTexSubImage1DFunc									copyTexSubImage1D;
 glCopyTexSubImage2DFunc									copyTexSubImage2D;
 glCopyTexSubImage3DFunc									copyTexSubImage3D;
+glCopyTexSubImage3DOESFunc								copyTexSubImage3DOES;
 glCopyTextureImage1DEXTFunc								copyTextureImage1DEXT;
 glCopyTextureImage2DEXTFunc								copyTextureImage2DEXT;
 glCopyTextureSubImage1DFunc								copyTextureSubImage1D;
@@ -218,6 +221,7 @@
 glFramebufferTexture1DFunc								framebufferTexture1D;
 glFramebufferTexture2DFunc								framebufferTexture2D;
 glFramebufferTexture3DFunc								framebufferTexture3D;
+glFramebufferTexture3DOESFunc							framebufferTexture3DOES;
 glFramebufferTextureLayerFunc							framebufferTextureLayer;
 glFrontFaceFunc											frontFace;
 glGenBuffersFunc										genBuffers;
@@ -268,7 +272,6 @@
 glGetFramebufferParameterivFunc							getFramebufferParameteriv;
 glGetFramebufferParameterivEXTFunc						getFramebufferParameterivEXT;
 glGetGraphicsResetStatusFunc							getGraphicsResetStatus;
-glGetGraphicsResetStatusEXTFunc							getGraphicsResetStatusEXT;
 glGetInteger64i_vFunc									getInteger64i_v;
 glGetInteger64vFunc										getInteger64v;
 glGetIntegeri_vFunc										getIntegeri_v;
@@ -401,9 +404,7 @@
 glGetnTexImageFunc										getnTexImage;
 glGetnUniformdvFunc										getnUniformdv;
 glGetnUniformfvFunc										getnUniformfv;
-glGetnUniformfvEXTFunc									getnUniformfvEXT;
 glGetnUniformivFunc										getnUniformiv;
-glGetnUniformivEXTFunc									getnUniformivEXT;
 glGetnUniformuivFunc									getnUniformuiv;
 glHintFunc												hint;
 glInsertEventMarkerEXTFunc								insertEventMarkerEXT;
@@ -659,6 +660,7 @@
 glTexImage2DMultisampleFunc								texImage2DMultisample;
 glTexImage3DFunc										texImage3D;
 glTexImage3DMultisampleFunc								texImage3DMultisample;
+glTexImage3DOESFunc										texImage3DOES;
 glTexPageCommitmentARBFunc								texPageCommitmentARB;
 glTexParameterIivFunc									texParameterIiv;
 glTexParameterIuivFunc									texParameterIuiv;
@@ -674,6 +676,7 @@
 glTexSubImage1DFunc										texSubImage1D;
 glTexSubImage2DFunc										texSubImage2D;
 glTexSubImage3DFunc										texSubImage3D;
+glTexSubImage3DOESFunc									texSubImage3DOES;
 glTextureBarrierFunc									textureBarrier;
 glTextureBufferFunc										textureBuffer;
 glTextureBufferEXTFunc									textureBufferEXT;
diff --git a/framework/opengl/wrapper/glwImpl.inl b/framework/opengl/wrapper/glwImpl.inl
index 859a16d..2ff1bc9 100644
--- a/framework/opengl/wrapper/glwImpl.inl
+++ b/framework/opengl/wrapper/glwImpl.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 
 void glwActiveShaderProgram (GLuint pipeline, GLuint program)
@@ -692,6 +692,14 @@
 	gl->compressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
 }
 
+void glwCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data)
+{
+	const glw::Functions* gl = glw::getCurrentThreadFunctions();
+	if (!gl)
+		return;
+	gl->compressedTexImage3DOES(target, level, internalformat, width, height, depth, border, imageSize, data);
+}
+
 void glwCompressedTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data)
 {
 	const glw::Functions* gl = glw::getCurrentThreadFunctions();
@@ -716,6 +724,14 @@
 	gl->compressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
 }
 
+void glwCompressedTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)
+{
+	const glw::Functions* gl = glw::getCurrentThreadFunctions();
+	if (!gl)
+		return;
+	gl->compressedTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
+}
+
 void glwCompressedTextureImage1DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *bits)
 {
 	const glw::Functions* gl = glw::getCurrentThreadFunctions();
@@ -892,6 +908,14 @@
 	gl->copyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
 }
 
+void glwCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+	const glw::Functions* gl = glw::getCurrentThreadFunctions();
+	if (!gl)
+		return;
+	gl->copyTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, x, y, width, height);
+}
+
 void glwCopyTextureImage1DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
 {
 	const glw::Functions* gl = glw::getCurrentThreadFunctions();
@@ -1724,6 +1748,14 @@
 	gl->framebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
 }
 
+void glwFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+	const glw::Functions* gl = glw::getCurrentThreadFunctions();
+	if (!gl)
+		return;
+	gl->framebufferTexture3DOES(target, attachment, textarget, texture, level, zoffset);
+}
+
 void glwFramebufferTextureLayer (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
 {
 	const glw::Functions* gl = glw::getCurrentThreadFunctions();
@@ -2124,14 +2156,6 @@
 	return gl->getGraphicsResetStatus();
 }
 
-GLenum glwGetGraphicsResetStatusEXT (void)
-{
-	const glw::Functions* gl = glw::getCurrentThreadFunctions();
-	if (!gl)
-		return (GLenum)0;
-	return gl->getGraphicsResetStatusEXT();
-}
-
 void glwGetInteger64i_v (GLenum target, GLuint index, GLint64 *data)
 {
 	const glw::Functions* gl = glw::getCurrentThreadFunctions();
@@ -3188,14 +3212,6 @@
 	gl->getnUniformfv(program, location, bufSize, params);
 }
 
-void glwGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, GLfloat *params)
-{
-	const glw::Functions* gl = glw::getCurrentThreadFunctions();
-	if (!gl)
-		return;
-	gl->getnUniformfvEXT(program, location, bufSize, params);
-}
-
 void glwGetnUniformiv (GLuint program, GLint location, GLsizei bufSize, GLint *params)
 {
 	const glw::Functions* gl = glw::getCurrentThreadFunctions();
@@ -3204,14 +3220,6 @@
 	gl->getnUniformiv(program, location, bufSize, params);
 }
 
-void glwGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params)
-{
-	const glw::Functions* gl = glw::getCurrentThreadFunctions();
-	if (!gl)
-		return;
-	gl->getnUniformivEXT(program, location, bufSize, params);
-}
-
 void glwGetnUniformuiv (GLuint program, GLint location, GLsizei bufSize, GLuint *params)
 {
 	const glw::Functions* gl = glw::getCurrentThreadFunctions();
@@ -5252,6 +5260,14 @@
 	gl->texImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
 }
 
+void glwTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels)
+{
+	const glw::Functions* gl = glw::getCurrentThreadFunctions();
+	if (!gl)
+		return;
+	gl->texImage3DOES(target, level, internalformat, width, height, depth, border, format, type, pixels);
+}
+
 void glwTexPageCommitmentARB (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit)
 {
 	const glw::Functions* gl = glw::getCurrentThreadFunctions();
@@ -5372,6 +5388,14 @@
 	gl->texSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
 }
 
+void glwTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)
+{
+	const glw::Functions* gl = glw::getCurrentThreadFunctions();
+	if (!gl)
+		return;
+	gl->texSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
+}
+
 void glwTextureBarrier (void)
 {
 	const glw::Functions* gl = glw::getCurrentThreadFunctions();
diff --git a/framework/opengl/wrapper/glwInitES20.inl b/framework/opengl/wrapper/glwInitES20.inl
index c6e6f0f..1a7fa9e 100644
--- a/framework/opengl/wrapper/glwInitES20.inl
+++ b/framework/opengl/wrapper/glwInitES20.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeTexture						= (glActiveTextureFunc)							loader->get("glActiveTexture");
 gl->attachShader						= (glAttachShaderFunc)							loader->get("glAttachShader");
diff --git a/framework/opengl/wrapper/glwInitES20Direct.inl b/framework/opengl/wrapper/glwInitES20Direct.inl
index ce21ae6..eb54931 100644
--- a/framework/opengl/wrapper/glwInitES20Direct.inl
+++ b/framework/opengl/wrapper/glwInitES20Direct.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeTexture						= &glActiveTexture;
 gl->attachShader						= &glAttachShader;
diff --git a/framework/opengl/wrapper/glwInitES30.inl b/framework/opengl/wrapper/glwInitES30.inl
index e765528..13beaa7 100644
--- a/framework/opengl/wrapper/glwInitES30.inl
+++ b/framework/opengl/wrapper/glwInitES30.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeTexture						= (glActiveTextureFunc)							loader->get("glActiveTexture");
 gl->attachShader						= (glAttachShaderFunc)							loader->get("glAttachShader");
diff --git a/framework/opengl/wrapper/glwInitES30Direct.inl b/framework/opengl/wrapper/glwInitES30Direct.inl
index 445d2c0..71588dc 100644
--- a/framework/opengl/wrapper/glwInitES30Direct.inl
+++ b/framework/opengl/wrapper/glwInitES30Direct.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeTexture						= &glActiveTexture;
 gl->attachShader						= &glAttachShader;
diff --git a/framework/opengl/wrapper/glwInitES31.inl b/framework/opengl/wrapper/glwInitES31.inl
index 67d5faf..e6a6fca 100644
--- a/framework/opengl/wrapper/glwInitES31.inl
+++ b/framework/opengl/wrapper/glwInitES31.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeShaderProgram					= (glActiveShaderProgramFunc)					loader->get("glActiveShaderProgram");
 gl->activeTexture						= (glActiveTextureFunc)							loader->get("glActiveTexture");
diff --git a/framework/opengl/wrapper/glwInitES31Direct.inl b/framework/opengl/wrapper/glwInitES31Direct.inl
index 713cc49..0b6e02a 100644
--- a/framework/opengl/wrapper/glwInitES31Direct.inl
+++ b/framework/opengl/wrapper/glwInitES31Direct.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeShaderProgram					= &glActiveShaderProgram;
 gl->activeTexture						= &glActiveTexture;
diff --git a/framework/opengl/wrapper/glwInitES32.inl b/framework/opengl/wrapper/glwInitES32.inl
index 4bcbebb..674e242 100644
--- a/framework/opengl/wrapper/glwInitES32.inl
+++ b/framework/opengl/wrapper/glwInitES32.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeShaderProgram					= (glActiveShaderProgramFunc)					loader->get("glActiveShaderProgram");
 gl->activeTexture						= (glActiveTextureFunc)							loader->get("glActiveTexture");
diff --git a/framework/opengl/wrapper/glwInitES32Direct.inl b/framework/opengl/wrapper/glwInitES32Direct.inl
index 79a203d..cd12bdd 100644
--- a/framework/opengl/wrapper/glwInitES32Direct.inl
+++ b/framework/opengl/wrapper/glwInitES32Direct.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeShaderProgram					= &glActiveShaderProgram;
 gl->activeTexture						= &glActiveTexture;
diff --git a/framework/opengl/wrapper/glwInitExtES.inl b/framework/opengl/wrapper/glwInitExtES.inl
index 8fe5a40..709cdaf 100644
--- a/framework/opengl/wrapper/glwInitExtES.inl
+++ b/framework/opengl/wrapper/glwInitExtES.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 
 if (de::contains(extSet, "GL_KHR_blend_equation_advanced"))
@@ -45,10 +45,10 @@
 
 if (de::contains(extSet, "GL_EXT_robustness"))
 {
-	gl->getGraphicsResetStatusEXT	= (glGetGraphicsResetStatusEXTFunc)	loader->get("glGetGraphicsResetStatusEXT");
-	gl->getnUniformfvEXT			= (glGetnUniformfvEXTFunc)			loader->get("glGetnUniformfvEXT");
-	gl->getnUniformivEXT			= (glGetnUniformivEXTFunc)			loader->get("glGetnUniformivEXT");
-	gl->readnPixels					= (glReadnPixelsFunc)				loader->get("glReadnPixelsEXT");
+	gl->getGraphicsResetStatus	= (glGetGraphicsResetStatusFunc)	loader->get("glGetGraphicsResetStatusEXT");
+	gl->getnUniformfv			= (glGetnUniformfvFunc)				loader->get("glGetnUniformfvEXT");
+	gl->getnUniformiv			= (glGetnUniformivFunc)				loader->get("glGetnUniformivEXT");
+	gl->readnPixels				= (glReadnPixelsFunc)				loader->get("glReadnPixelsEXT");
 }
 
 if (de::contains(extSet, "GL_EXT_texture_buffer"))
@@ -124,12 +124,12 @@
 
 if (de::contains(extSet, "GL_OES_texture_3D"))
 {
-	gl->compressedTexImage3D	= (glCompressedTexImage3DFunc)		loader->get("glCompressedTexImage3DOES");
-	gl->compressedTexSubImage3D	= (glCompressedTexSubImage3DFunc)	loader->get("glCompressedTexSubImage3DOES");
-	gl->copyTexSubImage3D		= (glCopyTexSubImage3DFunc)			loader->get("glCopyTexSubImage3DOES");
-	gl->framebufferTexture3D	= (glFramebufferTexture3DFunc)		loader->get("glFramebufferTexture3DOES");
-	gl->texImage3D				= (glTexImage3DFunc)				loader->get("glTexImage3DOES");
-	gl->texSubImage3D			= (glTexSubImage3DFunc)				loader->get("glTexSubImage3DOES");
+	gl->compressedTexImage3DOES		= (glCompressedTexImage3DOESFunc)		loader->get("glCompressedTexImage3DOES");
+	gl->compressedTexSubImage3DOES	= (glCompressedTexSubImage3DOESFunc)	loader->get("glCompressedTexSubImage3DOES");
+	gl->copyTexSubImage3DOES		= (glCopyTexSubImage3DOESFunc)			loader->get("glCopyTexSubImage3DOES");
+	gl->framebufferTexture3DOES		= (glFramebufferTexture3DOESFunc)		loader->get("glFramebufferTexture3DOES");
+	gl->texImage3DOES				= (glTexImage3DOESFunc)					loader->get("glTexImage3DOES");
+	gl->texSubImage3DOES			= (glTexSubImage3DOESFunc)				loader->get("glTexSubImage3DOES");
 }
 
 if (de::contains(extSet, "GL_OES_texture_storage_multisample_2d_array"))
@@ -177,3 +177,11 @@
 {
 	gl->getInternalformatSampleivNV	= (glGetInternalformatSampleivNVFunc)	loader->get("glGetInternalformatSampleivNV");
 }
+
+if (de::contains(extSet, "GL_OES_draw_elements_base_vertex"))
+{
+	gl->drawElementsBaseVertex			= (glDrawElementsBaseVertexFunc)			loader->get("glDrawElementsBaseVertexOES");
+	gl->drawElementsInstancedBaseVertex	= (glDrawElementsInstancedBaseVertexFunc)	loader->get("glDrawElementsInstancedBaseVertexOES");
+	gl->drawRangeElementsBaseVertex		= (glDrawRangeElementsBaseVertexFunc)		loader->get("glDrawRangeElementsBaseVertexOES");
+	gl->multiDrawElementsBaseVertex		= (glMultiDrawElementsBaseVertexFunc)		loader->get("glMultiDrawElementsBaseVertexOES");
+}
diff --git a/framework/opengl/wrapper/glwInitExtGL.inl b/framework/opengl/wrapper/glwInitExtGL.inl
index 00ab28c..50da75b 100644
--- a/framework/opengl/wrapper/glwInitExtGL.inl
+++ b/framework/opengl/wrapper/glwInitExtGL.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 
 if (de::contains(extSet, "GL_KHR_blend_equation_advanced"))
@@ -573,6 +573,12 @@
 	gl->dispatchComputeIndirect	= (glDispatchComputeIndirectFunc)	loader->get("glDispatchComputeIndirect");
 }
 
+if (de::contains(extSet, "GL_ARB_draw_instanced"))
+{
+	gl->drawArraysInstanced		= (glDrawArraysInstancedFunc)	loader->get("glDrawArraysInstancedARB");
+	gl->drawElementsInstanced	= (glDrawElementsInstancedFunc)	loader->get("glDrawElementsInstancedARB");
+}
+
 if (de::contains(extSet, "GL_ARB_draw_elements_base_vertex"))
 {
 	gl->drawElementsBaseVertex			= (glDrawElementsBaseVertexFunc)			loader->get("glDrawElementsBaseVertex");
@@ -700,6 +706,16 @@
 	gl->getInternalformativ	= (glGetInternalformativFunc)	loader->get("glGetInternalformativ");
 }
 
+if (de::contains(extSet, "GL_ARB_instanced_arrays"))
+{
+	gl->vertexAttribDivisor	= (glVertexAttribDivisorFunc)	loader->get("glVertexAttribDivisorARB");
+}
+
+if (de::contains(extSet, "GL_ARB_parallel_shader_compile"))
+{
+	gl->maxShaderCompilerThreadsARB	= (glMaxShaderCompilerThreadsARBFunc)	loader->get("glMaxShaderCompilerThreadsARB");
+}
+
 if (de::contains(extSet, "GL_ARB_program_interface_query"))
 {
 	gl->getProgramInterfaceiv			= (glGetProgramInterfaceivFunc)				loader->get("glGetProgramInterfaceiv");
diff --git a/framework/opengl/wrapper/glwInitGL30.inl b/framework/opengl/wrapper/glwInitGL30.inl
index 9aea113..6ee285d 100644
--- a/framework/opengl/wrapper/glwInitGL30.inl
+++ b/framework/opengl/wrapper/glwInitGL30.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeTexture						= (glActiveTextureFunc)							loader->get("glActiveTexture");
 gl->attachShader						= (glAttachShaderFunc)							loader->get("glAttachShader");
diff --git a/framework/opengl/wrapper/glwInitGL31.inl b/framework/opengl/wrapper/glwInitGL31.inl
index af71dc4..800bb4e 100644
--- a/framework/opengl/wrapper/glwInitGL31.inl
+++ b/framework/opengl/wrapper/glwInitGL31.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeTexture						= (glActiveTextureFunc)							loader->get("glActiveTexture");
 gl->attachShader						= (glAttachShaderFunc)							loader->get("glAttachShader");
diff --git a/framework/opengl/wrapper/glwInitGL32.inl b/framework/opengl/wrapper/glwInitGL32.inl
index 7c7fbda..2199baa 100644
--- a/framework/opengl/wrapper/glwInitGL32.inl
+++ b/framework/opengl/wrapper/glwInitGL32.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeTexture						= (glActiveTextureFunc)							loader->get("glActiveTexture");
 gl->attachShader						= (glAttachShaderFunc)							loader->get("glAttachShader");
diff --git a/framework/opengl/wrapper/glwInitGL33.inl b/framework/opengl/wrapper/glwInitGL33.inl
index 6472c21..0225d86 100644
--- a/framework/opengl/wrapper/glwInitGL33.inl
+++ b/framework/opengl/wrapper/glwInitGL33.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeTexture						= (glActiveTextureFunc)							loader->get("glActiveTexture");
 gl->attachShader						= (glAttachShaderFunc)							loader->get("glAttachShader");
diff --git a/framework/opengl/wrapper/glwInitGL40.inl b/framework/opengl/wrapper/glwInitGL40.inl
index a0a0c11..35209c2 100644
--- a/framework/opengl/wrapper/glwInitGL40.inl
+++ b/framework/opengl/wrapper/glwInitGL40.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeTexture						= (glActiveTextureFunc)							loader->get("glActiveTexture");
 gl->attachShader						= (glAttachShaderFunc)							loader->get("glAttachShader");
diff --git a/framework/opengl/wrapper/glwInitGL41.inl b/framework/opengl/wrapper/glwInitGL41.inl
index 2228280..b3702fe 100644
--- a/framework/opengl/wrapper/glwInitGL41.inl
+++ b/framework/opengl/wrapper/glwInitGL41.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeShaderProgram					= (glActiveShaderProgramFunc)					loader->get("glActiveShaderProgram");
 gl->activeTexture						= (glActiveTextureFunc)							loader->get("glActiveTexture");
diff --git a/framework/opengl/wrapper/glwInitGL42.inl b/framework/opengl/wrapper/glwInitGL42.inl
index 1d931a4..40d0f21 100644
--- a/framework/opengl/wrapper/glwInitGL42.inl
+++ b/framework/opengl/wrapper/glwInitGL42.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeShaderProgram							= (glActiveShaderProgramFunc)							loader->get("glActiveShaderProgram");
 gl->activeTexture								= (glActiveTextureFunc)									loader->get("glActiveTexture");
diff --git a/framework/opengl/wrapper/glwInitGL43.inl b/framework/opengl/wrapper/glwInitGL43.inl
index 225a51f..eaed3a1 100644
--- a/framework/opengl/wrapper/glwInitGL43.inl
+++ b/framework/opengl/wrapper/glwInitGL43.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeShaderProgram							= (glActiveShaderProgramFunc)							loader->get("glActiveShaderProgram");
 gl->activeTexture								= (glActiveTextureFunc)									loader->get("glActiveTexture");
diff --git a/framework/opengl/wrapper/glwInitGL44.inl b/framework/opengl/wrapper/glwInitGL44.inl
index b15f933..fac353f 100644
--- a/framework/opengl/wrapper/glwInitGL44.inl
+++ b/framework/opengl/wrapper/glwInitGL44.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeShaderProgram							= (glActiveShaderProgramFunc)							loader->get("glActiveShaderProgram");
 gl->activeTexture								= (glActiveTextureFunc)									loader->get("glActiveTexture");
diff --git a/framework/opengl/wrapper/glwInitGL45.inl b/framework/opengl/wrapper/glwInitGL45.inl
index c2e8815..fb0e831 100644
--- a/framework/opengl/wrapper/glwInitGL45.inl
+++ b/framework/opengl/wrapper/glwInitGL45.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeShaderProgram							= (glActiveShaderProgramFunc)							loader->get("glActiveShaderProgram");
 gl->activeTexture								= (glActiveTextureFunc)									loader->get("glActiveTexture");
diff --git a/framework/opengl/wrapper/glwVersions.inl b/framework/opengl/wrapper/glwVersions.inl
index c8611bc..00e207c 100644
--- a/framework/opengl/wrapper/glwVersions.inl
+++ b/framework/opengl/wrapper/glwVersions.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 #define GL_ES_VERSION_2_0	1
 #define GL_ES_VERSION_3_0	1
diff --git a/framework/platform/null/tcuNullRenderContextFuncs.inl b/framework/platform/null/tcuNullRenderContextFuncs.inl
index 95b07c1..e38bb41 100644
--- a/framework/platform/null/tcuNullRenderContextFuncs.inl
+++ b/framework/platform/null/tcuNullRenderContextFuncs.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 
 GLW_APICALL void GLW_APIENTRY glActiveShaderProgram (GLuint pipeline, GLuint program)
@@ -767,6 +767,20 @@
 
 }
 
+GLW_APICALL void GLW_APIENTRY glCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data)
+{
+	DE_UNREF(target);
+	DE_UNREF(level);
+	DE_UNREF(internalformat);
+	DE_UNREF(width);
+	DE_UNREF(height);
+	DE_UNREF(depth);
+	DE_UNREF(border);
+	DE_UNREF(imageSize);
+	DE_UNREF(data);
+
+}
+
 GLW_APICALL void GLW_APIENTRY glCompressedTexSubImage1D (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data)
 {
 	DE_UNREF(target);
@@ -809,6 +823,22 @@
 
 }
 
+GLW_APICALL void GLW_APIENTRY glCompressedTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data)
+{
+	DE_UNREF(target);
+	DE_UNREF(level);
+	DE_UNREF(xoffset);
+	DE_UNREF(yoffset);
+	DE_UNREF(zoffset);
+	DE_UNREF(width);
+	DE_UNREF(height);
+	DE_UNREF(depth);
+	DE_UNREF(format);
+	DE_UNREF(imageSize);
+	DE_UNREF(data);
+
+}
+
 GLW_APICALL void GLW_APIENTRY glCompressedTextureImage1DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *bits)
 {
 	DE_UNREF(texture);
@@ -1109,6 +1139,20 @@
 
 }
 
+GLW_APICALL void GLW_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+	DE_UNREF(target);
+	DE_UNREF(level);
+	DE_UNREF(xoffset);
+	DE_UNREF(yoffset);
+	DE_UNREF(zoffset);
+	DE_UNREF(x);
+	DE_UNREF(y);
+	DE_UNREF(width);
+	DE_UNREF(height);
+
+}
+
 GLW_APICALL void GLW_APIENTRY glCopyTextureImage1DEXT (GLuint texture, GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
 {
 	DE_UNREF(texture);
@@ -1923,6 +1967,17 @@
 
 }
 
+GLW_APICALL void GLW_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+	DE_UNREF(target);
+	DE_UNREF(attachment);
+	DE_UNREF(textarget);
+	DE_UNREF(texture);
+	DE_UNREF(level);
+	DE_UNREF(zoffset);
+
+}
+
 GLW_APICALL void GLW_APIENTRY glFramebufferTextureLayer (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
 {
 	DE_UNREF(target);
@@ -2253,12 +2308,6 @@
 	return (GLenum)0;
 }
 
-GLW_APICALL GLenum GLW_APIENTRY glGetGraphicsResetStatusEXT (void)
-{
-
-	return (GLenum)0;
-}
-
 GLW_APICALL void GLW_APIENTRY glGetInteger64i_v (GLenum target, GLuint index, GLint64 *data)
 {
 	DE_UNREF(target);
@@ -3374,15 +3423,6 @@
 
 }
 
-GLW_APICALL void GLW_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, GLfloat *params)
-{
-	DE_UNREF(program);
-	DE_UNREF(location);
-	DE_UNREF(bufSize);
-	DE_UNREF(params);
-
-}
-
 GLW_APICALL void GLW_APIENTRY glGetnUniformiv (GLuint program, GLint location, GLsizei bufSize, GLint *params)
 {
 	DE_UNREF(program);
@@ -3392,15 +3432,6 @@
 
 }
 
-GLW_APICALL void GLW_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params)
-{
-	DE_UNREF(program);
-	DE_UNREF(location);
-	DE_UNREF(bufSize);
-	DE_UNREF(params);
-
-}
-
 GLW_APICALL void GLW_APIENTRY glGetnUniformuiv (GLuint program, GLint location, GLsizei bufSize, GLuint *params)
 {
 	DE_UNREF(program);
@@ -5660,6 +5691,21 @@
 
 }
 
+GLW_APICALL void GLW_APIENTRY glTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels)
+{
+	DE_UNREF(target);
+	DE_UNREF(level);
+	DE_UNREF(internalformat);
+	DE_UNREF(width);
+	DE_UNREF(height);
+	DE_UNREF(depth);
+	DE_UNREF(border);
+	DE_UNREF(format);
+	DE_UNREF(type);
+	DE_UNREF(pixels);
+
+}
+
 GLW_APICALL void GLW_APIENTRY glTexPageCommitmentARB (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit)
 {
 	DE_UNREF(target);
@@ -5817,6 +5863,22 @@
 
 }
 
+GLW_APICALL void GLW_APIENTRY glTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels)
+{
+	DE_UNREF(target);
+	DE_UNREF(level);
+	DE_UNREF(xoffset);
+	DE_UNREF(yoffset);
+	DE_UNREF(zoffset);
+	DE_UNREF(width);
+	DE_UNREF(height);
+	DE_UNREF(depth);
+	DE_UNREF(format);
+	DE_UNREF(type);
+	DE_UNREF(pixels);
+
+}
+
 GLW_APICALL void GLW_APIENTRY glTextureBarrier (void)
 {
 
diff --git a/framework/platform/null/tcuNullRenderContextInitFuncs.inl b/framework/platform/null/tcuNullRenderContextInitFuncs.inl
index f02990a..26efa10 100644
--- a/framework/platform/null/tcuNullRenderContextInitFuncs.inl
+++ b/framework/platform/null/tcuNullRenderContextInitFuncs.inl
@@ -1,7 +1,7 @@
 /* WARNING: This is auto-generated file. Do not modify, since changes will
  * be lost! Modify the generating script instead.
  *
- * Generated from Khronos GL API description (gl.xml) revision db2965fc26513b254e2f964171f79e416a05fe29.
+ * Generated from Khronos GL API description (gl.xml) revision 7ac9c857db1e3a6065485e4e2144151f48a4f1c4.
  */
 gl->activeShaderProgram								= glActiveShaderProgram;
 gl->activeTexture									= glActiveTexture;
@@ -89,9 +89,11 @@
 gl->compressedTexImage1D							= glCompressedTexImage1D;
 gl->compressedTexImage2D							= glCompressedTexImage2D;
 gl->compressedTexImage3D							= glCompressedTexImage3D;
+gl->compressedTexImage3DOES							= glCompressedTexImage3DOES;
 gl->compressedTexSubImage1D							= glCompressedTexSubImage1D;
 gl->compressedTexSubImage2D							= glCompressedTexSubImage2D;
 gl->compressedTexSubImage3D							= glCompressedTexSubImage3D;
+gl->compressedTexSubImage3DOES						= glCompressedTexSubImage3DOES;
 gl->compressedTextureImage1DEXT						= glCompressedTextureImage1DEXT;
 gl->compressedTextureImage2DEXT						= glCompressedTextureImage2DEXT;
 gl->compressedTextureImage3DEXT						= glCompressedTextureImage3DEXT;
@@ -114,6 +116,7 @@
 gl->copyTexSubImage1D								= glCopyTexSubImage1D;
 gl->copyTexSubImage2D								= glCopyTexSubImage2D;
 gl->copyTexSubImage3D								= glCopyTexSubImage3D;
+gl->copyTexSubImage3DOES							= glCopyTexSubImage3DOES;
 gl->copyTextureImage1DEXT							= glCopyTextureImage1DEXT;
 gl->copyTextureImage2DEXT							= glCopyTextureImage2DEXT;
 gl->copyTextureSubImage1D							= glCopyTextureSubImage1D;
@@ -218,6 +221,7 @@
 gl->framebufferTexture1D							= glFramebufferTexture1D;
 gl->framebufferTexture2D							= glFramebufferTexture2D;
 gl->framebufferTexture3D							= glFramebufferTexture3D;
+gl->framebufferTexture3DOES							= glFramebufferTexture3DOES;
 gl->framebufferTextureLayer							= glFramebufferTextureLayer;
 gl->frontFace										= glFrontFace;
 gl->genBuffers										= glGenBuffers;
@@ -268,7 +272,6 @@
 gl->getFramebufferParameteriv						= glGetFramebufferParameteriv;
 gl->getFramebufferParameterivEXT					= glGetFramebufferParameterivEXT;
 gl->getGraphicsResetStatus							= glGetGraphicsResetStatus;
-gl->getGraphicsResetStatusEXT						= glGetGraphicsResetStatusEXT;
 gl->getInteger64i_v									= glGetInteger64i_v;
 gl->getInteger64v									= glGetInteger64v;
 gl->getIntegeri_v									= glGetIntegeri_v;
@@ -401,9 +404,7 @@
 gl->getnTexImage									= glGetnTexImage;
 gl->getnUniformdv									= glGetnUniformdv;
 gl->getnUniformfv									= glGetnUniformfv;
-gl->getnUniformfvEXT								= glGetnUniformfvEXT;
 gl->getnUniformiv									= glGetnUniformiv;
-gl->getnUniformivEXT								= glGetnUniformivEXT;
 gl->getnUniformuiv									= glGetnUniformuiv;
 gl->hint											= glHint;
 gl->insertEventMarkerEXT							= glInsertEventMarkerEXT;
@@ -659,6 +660,7 @@
 gl->texImage2DMultisample							= glTexImage2DMultisample;
 gl->texImage3D										= glTexImage3D;
 gl->texImage3DMultisample							= glTexImage3DMultisample;
+gl->texImage3DOES									= glTexImage3DOES;
 gl->texPageCommitmentARB							= glTexPageCommitmentARB;
 gl->texParameterIiv									= glTexParameterIiv;
 gl->texParameterIuiv								= glTexParameterIuiv;
@@ -674,6 +676,7 @@
 gl->texSubImage1D									= glTexSubImage1D;
 gl->texSubImage2D									= glTexSubImage2D;
 gl->texSubImage3D									= glTexSubImage3D;
+gl->texSubImage3DOES								= glTexSubImage3DOES;
 gl->textureBarrier									= glTextureBarrier;
 gl->textureBuffer									= glTextureBuffer;
 gl->textureBufferEXT								= glTextureBufferEXT;
diff --git a/modules/egl/teglGetProcAddressTests.inl b/modules/egl/teglGetProcAddressTests.inl
index 5f0cd81..b140f81 100644
--- a/modules/egl/teglGetProcAddressTests.inl
+++ b/modules/egl/teglGetProcAddressTests.inl
@@ -1115,6 +1115,12 @@
 	"glDrawTransformFeedbackInstancedEXT",
 };
 
+static const char* s_GL_EXT_external_buffer[] =
+{
+	"glBufferStorageExternalEXT",
+	"glNamedBufferStorageExternalEXT",
+};
+
 static const char* s_GL_EXT_geometry_shader[] =
 {
 	"glFramebufferTextureEXT",
@@ -1127,6 +1133,38 @@
 	"glVertexAttribDivisorEXT",
 };
 
+static const char* s_GL_EXT_memory_object[] =
+{
+	"glBufferStorageMemEXT",
+	"glCreateMemoryObjectsEXT",
+	"glDeleteMemoryObjectsEXT",
+	"glGetMemoryObjectParameterivEXT",
+	"glGetUnsignedBytevEXT",
+	"glGetUnsignedBytei_vEXT",
+	"glIsMemoryObjectEXT",
+	"glMemoryObjectParameterivEXT",
+	"glNamedBufferStorageMemEXT",
+	"glTexStorageMem2DEXT",
+	"glTexStorageMem2DMultisampleEXT",
+	"glTexStorageMem3DEXT",
+	"glTexStorageMem3DMultisampleEXT",
+	"glTextureStorageMem2DEXT",
+	"glTextureStorageMem2DMultisampleEXT",
+	"glTextureStorageMem3DEXT",
+	"glTextureStorageMem3DMultisampleEXT",
+};
+
+static const char* s_GL_EXT_memory_object_fd[] =
+{
+	"glImportMemoryFdEXT",
+};
+
+static const char* s_GL_EXT_memory_object_win32[] =
+{
+	"glImportMemoryWin32HandleEXT",
+	"glImportMemoryWin32NameEXT",
+};
+
 static const char* s_GL_EXT_multi_draw_indirect[] =
 {
 	"glMultiDrawArraysIndirectEXT",
@@ -1166,6 +1204,30 @@
 	"glRasterSamplesEXT",
 };
 
+static const char* s_GL_EXT_semaphore[] =
+{
+	"glDeleteSemaphoresEXT",
+	"glGenSemaphoresEXT",
+	"glGetSemaphoreParameterui64vEXT",
+	"glGetUnsignedBytevEXT",
+	"glGetUnsignedBytei_vEXT",
+	"glIsSemaphoreEXT",
+	"glSemaphoreParameterui64vEXT",
+	"glSignalSemaphoreEXT",
+	"glWaitSemaphoreEXT",
+};
+
+static const char* s_GL_EXT_semaphore_fd[] =
+{
+	"glImportSemaphoreFdEXT",
+};
+
+static const char* s_GL_EXT_semaphore_win32[] =
+{
+	"glImportSemaphoreWin32HandleEXT",
+	"glImportSemaphoreWin32NameEXT",
+};
+
 static const char* s_GL_EXT_separate_shader_objects[] =
 {
 	"glActiveShaderProgramEXT",
@@ -1259,6 +1321,12 @@
 	"glTextureViewEXT",
 };
 
+static const char* s_GL_EXT_win32_keyed_mutex[] =
+{
+	"glAcquireKeyedMutexWin32EXT",
+	"glReleaseKeyedMutexWin32EXT",
+};
+
 static const char* s_GL_EXT_window_rectangles[] =
 {
 	"glWindowRectanglesEXT",
@@ -1389,6 +1457,15 @@
 	"glDrawElementsInstancedNV",
 };
 
+static const char* s_GL_NV_draw_vulkan_image[] =
+{
+	"glDrawVkImageNV",
+	"glGetVkProcAddrNV",
+	"glWaitVkSemaphoreNV",
+	"glSignalVkSemaphoreNV",
+	"glSignalVkFenceNV",
+};
+
 static const char* s_GL_NV_fragment_coverage_to_color[] =
 {
 	"glFragmentCoverageColorNV",
@@ -1694,13 +1771,9 @@
 	"glFramebufferFoveationParametersQCOM",
 };
 
-static const char* s_GL_NV_draw_vulkan_image[] =
+static const char* s_GL_QCOM_shader_framebuffer_fetch_noncoherent[] =
 {
-	"glDrawVkImageNV",
-	"glGetVkProcAddrNV",
-	"glWaitVkSemaphoreNV",
-	"glSignalVkSemaphoreNV",
-	"glSignalVkFenceNV",
+	"glFramebufferFetchBarrierQCOM",
 };
 
 static const struct
@@ -1801,14 +1874,21 @@
 	{ "GL_EXT_draw_elements_base_vertex",					DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_elements_base_vertex),					s_GL_EXT_draw_elements_base_vertex					},
 	{ "GL_EXT_draw_instanced",								DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_instanced),							s_GL_EXT_draw_instanced								},
 	{ "GL_EXT_draw_transform_feedback",						DE_LENGTH_OF_ARRAY(s_GL_EXT_draw_transform_feedback),					s_GL_EXT_draw_transform_feedback					},
+	{ "GL_EXT_external_buffer",								DE_LENGTH_OF_ARRAY(s_GL_EXT_external_buffer),							s_GL_EXT_external_buffer							},
 	{ "GL_EXT_geometry_shader",								DE_LENGTH_OF_ARRAY(s_GL_EXT_geometry_shader),							s_GL_EXT_geometry_shader							},
 	{ "GL_EXT_instanced_arrays",							DE_LENGTH_OF_ARRAY(s_GL_EXT_instanced_arrays),							s_GL_EXT_instanced_arrays							},
+	{ "GL_EXT_memory_object",								DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object),								s_GL_EXT_memory_object								},
+	{ "GL_EXT_memory_object_fd",							DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object_fd),							s_GL_EXT_memory_object_fd							},
+	{ "GL_EXT_memory_object_win32",							DE_LENGTH_OF_ARRAY(s_GL_EXT_memory_object_win32),						s_GL_EXT_memory_object_win32						},
 	{ "GL_EXT_multi_draw_indirect",							DE_LENGTH_OF_ARRAY(s_GL_EXT_multi_draw_indirect),						s_GL_EXT_multi_draw_indirect						},
 	{ "GL_EXT_multiview_draw_buffers",						DE_LENGTH_OF_ARRAY(s_GL_EXT_multiview_draw_buffers),					s_GL_EXT_multiview_draw_buffers						},
 	{ "GL_EXT_occlusion_query_boolean",						DE_LENGTH_OF_ARRAY(s_GL_EXT_occlusion_query_boolean),					s_GL_EXT_occlusion_query_boolean					},
 	{ "GL_EXT_polygon_offset_clamp",						DE_LENGTH_OF_ARRAY(s_GL_EXT_polygon_offset_clamp),						s_GL_EXT_polygon_offset_clamp						},
 	{ "GL_EXT_primitive_bounding_box",						DE_LENGTH_OF_ARRAY(s_GL_EXT_primitive_bounding_box),					s_GL_EXT_primitive_bounding_box						},
 	{ "GL_EXT_raster_multisample",							DE_LENGTH_OF_ARRAY(s_GL_EXT_raster_multisample),						s_GL_EXT_raster_multisample							},
+	{ "GL_EXT_semaphore",									DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore),									s_GL_EXT_semaphore									},
+	{ "GL_EXT_semaphore_fd",								DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore_fd),								s_GL_EXT_semaphore_fd								},
+	{ "GL_EXT_semaphore_win32",								DE_LENGTH_OF_ARRAY(s_GL_EXT_semaphore_win32),							s_GL_EXT_semaphore_win32							},
 	{ "GL_EXT_separate_shader_objects",						DE_LENGTH_OF_ARRAY(s_GL_EXT_separate_shader_objects),					s_GL_EXT_separate_shader_objects					},
 	{ "GL_EXT_shader_pixel_local_storage2",					DE_LENGTH_OF_ARRAY(s_GL_EXT_shader_pixel_local_storage2),				s_GL_EXT_shader_pixel_local_storage2				},
 	{ "GL_EXT_sparse_texture",								DE_LENGTH_OF_ARRAY(s_GL_EXT_sparse_texture),							s_GL_EXT_sparse_texture								},
@@ -1817,6 +1897,7 @@
 	{ "GL_EXT_texture_buffer",								DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_buffer),							s_GL_EXT_texture_buffer								},
 	{ "GL_EXT_texture_filter_minmax",						DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_filter_minmax),						s_GL_EXT_texture_filter_minmax						},
 	{ "GL_EXT_texture_view",								DE_LENGTH_OF_ARRAY(s_GL_EXT_texture_view),								s_GL_EXT_texture_view								},
+	{ "GL_EXT_win32_keyed_mutex",							DE_LENGTH_OF_ARRAY(s_GL_EXT_win32_keyed_mutex),							s_GL_EXT_win32_keyed_mutex							},
 	{ "GL_EXT_window_rectangles",							DE_LENGTH_OF_ARRAY(s_GL_EXT_window_rectangles),							s_GL_EXT_window_rectangles							},
 	{ "GL_IMG_bindless_texture",							DE_LENGTH_OF_ARRAY(s_GL_IMG_bindless_texture),							s_GL_IMG_bindless_texture							},
 	{ "GL_IMG_framebuffer_downsample",						DE_LENGTH_OF_ARRAY(s_GL_IMG_framebuffer_downsample),					s_GL_IMG_framebuffer_downsample						},
@@ -1834,6 +1915,7 @@
 	{ "GL_NV_coverage_sample",								DE_LENGTH_OF_ARRAY(s_GL_NV_coverage_sample),							s_GL_NV_coverage_sample								},
 	{ "GL_NV_draw_buffers",									DE_LENGTH_OF_ARRAY(s_GL_NV_draw_buffers),								s_GL_NV_draw_buffers								},
 	{ "GL_NV_draw_instanced",								DE_LENGTH_OF_ARRAY(s_GL_NV_draw_instanced),								s_GL_NV_draw_instanced								},
+	{ "GL_NV_draw_vulkan_image",							DE_LENGTH_OF_ARRAY(s_GL_NV_draw_vulkan_image),							s_GL_NV_draw_vulkan_image							},
 	{ "GL_NV_fragment_coverage_to_color",					DE_LENGTH_OF_ARRAY(s_GL_NV_fragment_coverage_to_color),					s_GL_NV_fragment_coverage_to_color					},
 	{ "GL_NV_framebuffer_blit",								DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_blit),							s_GL_NV_framebuffer_blit							},
 	{ "GL_NV_framebuffer_mixed_samples",					DE_LENGTH_OF_ARRAY(s_GL_NV_framebuffer_mixed_samples),					s_GL_NV_framebuffer_mixed_samples					},
@@ -1866,5 +1948,5 @@
 	{ "GL_OVR_multiview_multisampled_render_to_texture",	DE_LENGTH_OF_ARRAY(s_GL_OVR_multiview_multisampled_render_to_texture),	s_GL_OVR_multiview_multisampled_render_to_texture	},
 	{ "GL_QCOM_alpha_test",									DE_LENGTH_OF_ARRAY(s_GL_QCOM_alpha_test),								s_GL_QCOM_alpha_test								},
 	{ "GL_QCOM_framebuffer_foveated",						DE_LENGTH_OF_ARRAY(s_GL_QCOM_framebuffer_foveated),						s_GL_QCOM_framebuffer_foveated						},
-	{ "GL_NV_draw_vulkan_image",							DE_LENGTH_OF_ARRAY(s_GL_NV_draw_vulkan_image),							s_GL_NV_draw_vulkan_image							},
+	{ "GL_QCOM_shader_framebuffer_fetch_noncoherent",		DE_LENGTH_OF_ARRAY(s_GL_QCOM_shader_framebuffer_fetch_noncoherent),		s_GL_QCOM_shader_framebuffer_fetch_noncoherent		},
 };
diff --git a/scripts/opengl/src_util.py b/scripts/opengl/src_util.py
index 7e7183b..aeb96f5 100644
--- a/scripts/opengl/src_util.py
+++ b/scripts/opengl/src_util.py
@@ -38,8 +38,8 @@
 GL_SOURCE			= khr_util.registry_cache.RegistrySource(
 						"https://raw.githubusercontent.com/KhronosGroup/OpenGL-Registry",
 						"xml/gl.xml",
-						"db2965fc26513b254e2f964171f79e416a05fe29",
-						"c4a4e241dc63ed3d1c4cd50451e5baef330dbb51dd3ecb278be80a5779f5b348")
+						"7ac9c857db1e3a6065485e4e2144151f48a4f1c4",
+						"2475e1ff6d69048e67a49188d8be09195b261ed96b2b4108a0f7d7a459834674")
 
 EXTENSIONS			= [
 	'GL_KHR_texture_compression_astc_ldr',
@@ -123,6 +123,7 @@
 	'GL_ARB_vertex_attrib_binding',
 	'GL_NV_deep_texture3D',
 	'GL_NV_internalformat_sample_query',
+	'GL_OES_draw_elements_base_vertex',
 ]
 
 def getGLRegistry ():