Add {GLX,WGL}_ARB_create_context_no_error to the registry
diff --git a/api/GL/glext.h b/api/GL/glext.h
index 04126f3..1c49e14 100755
--- a/api/GL/glext.h
+++ b/api/GL/glext.h
@@ -51,7 +51,7 @@
#define GLAPI extern
#endif
-#define GL_GLEXT_VERSION 20170518
+#define GL_GLEXT_VERSION 20170531
/* Generated C header for:
* API: gl
@@ -5681,6 +5681,10 @@
#endif
#endif /* GL_AMD_stencil_operation_extended */
+#ifndef GL_AMD_texture_gather_bias_lod
+#define GL_AMD_texture_gather_bias_lod 1
+#endif /* GL_AMD_texture_gather_bias_lod */
+
#ifndef GL_AMD_texture_texture4
#define GL_AMD_texture_texture4 1
#endif /* GL_AMD_texture_texture4 */
diff --git a/api/GL/glxext.h b/api/GL/glxext.h
index f17e0ad..4f670b1 100755
--- a/api/GL/glxext.h
+++ b/api/GL/glxext.h
@@ -34,7 +34,7 @@
** https://github.com/KhronosGroup/OpenGL-Registry
*/
-#define GLX_GLXEXT_VERSION 20170221
+#define GLX_GLXEXT_VERSION 20170531
/* Generated C header for:
* API: glx
@@ -176,6 +176,11 @@
#endif
#endif /* GLX_ARB_create_context */
+#ifndef GLX_ARB_create_context_no_error
+#define GLX_ARB_create_context_no_error 1
+#define GLX_CONTEXT_OPENGL_NO_ERROR_ARB 0x31B3
+#endif /* GLX_ARB_create_context_no_error */
+
#ifndef GLX_ARB_create_context_profile
#define GLX_ARB_create_context_profile 1
#define GLX_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
diff --git a/api/GL/wglext.h b/api/GL/wglext.h
index 3a4fb0c..a3ba413 100755
--- a/api/GL/wglext.h
+++ b/api/GL/wglext.h
@@ -39,7 +39,7 @@
#include <windows.h>
#endif
-#define WGL_WGLEXT_VERSION 20170221
+#define WGL_WGLEXT_VERSION 20170531
/* Generated C header for:
* API: wgl
@@ -90,6 +90,11 @@
#endif
#endif /* WGL_ARB_create_context */
+#ifndef WGL_ARB_create_context_no_error
+#define WGL_ARB_create_context_no_error 1
+#define WGL_CONTEXT_OPENGL_NO_ERROR_ARB 0x31B3
+#endif /* WGL_ARB_create_context_no_error */
+
#ifndef WGL_ARB_create_context_profile
#define WGL_ARB_create_context_profile 1
#define WGL_CONTEXT_PROFILE_MASK_ARB 0x9126
diff --git a/api/GLES/gl.h b/api/GLES/gl.h
index 4a32e08..2f007c7 100644
--- a/api/GLES/gl.h
+++ b/api/GLES/gl.h
@@ -36,7 +36,7 @@
#include <GLES/glplatform.h>
-/* Generated on date 20170518 */
+/* Generated on date 20170531 */
/* Generated C header for:
* API: gles1
diff --git a/api/GLES/glext.h b/api/GLES/glext.h
index 1329ed0..366fdd2 100644
--- a/api/GLES/glext.h
+++ b/api/GLES/glext.h
@@ -38,7 +38,7 @@
#define GL_APIENTRYP GL_APIENTRY*
#endif
-/* Generated on date 20170518 */
+/* Generated on date 20170531 */
/* Generated C header for:
* API: gles1
diff --git a/api/GLES2/gl2.h b/api/GLES2/gl2.h
index 3b9549b..3958d14 100644
--- a/api/GLES2/gl2.h
+++ b/api/GLES2/gl2.h
@@ -44,7 +44,7 @@
#define GL_GLES_PROTOTYPES 1
#endif
-/* Generated on date 20170518 */
+/* Generated on date 20170531 */
/* Generated C header for:
* API: gles2
diff --git a/api/GLES2/gl2ext.h b/api/GLES2/gl2ext.h
index 3388b9a..43b5081 100644
--- a/api/GLES2/gl2ext.h
+++ b/api/GLES2/gl2ext.h
@@ -38,7 +38,7 @@
#define GL_APIENTRYP GL_APIENTRY*
#endif
-/* Generated on date 20170518 */
+/* Generated on date 20170531 */
/* Generated C header for:
* API: gles2
diff --git a/api/GLES3/gl3.h b/api/GLES3/gl3.h
index f800004..507d77e 100644
--- a/api/GLES3/gl3.h
+++ b/api/GLES3/gl3.h
@@ -44,7 +44,7 @@
#define GL_GLES_PROTOTYPES 1
#endif
-/* Generated on date 20170518 */
+/* Generated on date 20170531 */
/* Generated C header for:
* API: gles2
diff --git a/extensions/ARB/ARB_create_context_no_error.txt b/extensions/ARB/ARB_create_context_no_error.txt
new file mode 100644
index 0000000..8d6e3ff
--- /dev/null
+++ b/extensions/ARB/ARB_create_context_no_error.txt
@@ -0,0 +1,130 @@
+Name
+
+ ARB_create_context_no_error
+
+Name Strings
+
+ WGL_ARB_create_context_no_error
+ GLX_ARB_create_context_no_error
+
+Contact
+
+ Piers Daniell (pdaniell 'at' nvidia.com)
+
+Contributors
+
+ Piers Daniell, NVIDIA
+ Daniel Koch, NVIDIA
+
+Notice
+
+ Copyright (c) 2017 The Khronos Group Inc. Copyright terms at
+ http://www.khronos.org/registry/speccopyright.html
+
+Status
+
+ Draft
+
+Version
+
+ Last Modified Date: 2017-03-10
+ Author Revision: 2
+
+Number
+
+ ARB Extension #191
+
+Dependencies
+
+ WGL_ARB_create_context_no_error is written against the
+ WGL_ARB_create_context specification, which is required.
+
+ GLX_ARB_create_context_no_error is written against the GLX 1.4 and
+ GLX_ARB_create_context specifications. Both are required.
+
+Overview
+
+ This extension allows the creation of an OpenGL or OpenGL ES context that
+ doesn't generate errors if the context supports a no error mode. The
+ implications of this feature are discussed in the GL_KHR_no_error
+ extension.
+
+New Procedures and Functions
+
+ None
+
+New Tokens (WGL)
+
+ Accepted as an attribute name in the <*attrib_list> argument to
+ wglCreateContextAttribsARB:
+
+ WGL_CONTEXT_OPENGL_NO_ERROR_ARB 0x31B3
+
+New Tokens (GLX)
+
+ Accepted as an attribute name in the <*attrib_list> argument to
+ glXCreateContextAttribsARB:
+
+ GLX_CONTEXT_OPENGL_NO_ERROR_ARB 0x31B3
+
+Additions to WGL_ARB_create_context and wglMakeCurrent
+
+ Add a new paragraph to the description of wglCreateContextAttribsARB, as
+ defined by WGL_ARB_create_context:
+
+ "The attribute name WGL_CONTEXT_OPENGL_NO_ERROR_ARB indicates whether a
+ faster and lower power mode should be enabled for the OpenGL or OpenGL ES
+ context. In this mode instead of GL errors occurring as defined in the
+ OpenGL spec those errors will result in undefined behavior. The default
+ value of WGL_CONTEXT_OPENGL_NO_ERROR_ARB is FALSE."
+
+Additions to the GLX 1.4 Specification and GLX_ARB_create_context
+
+ Add a new paragraph to the description of glXCreateContextAttribsARB,
+ as defined by GLX_ARB_create_context:
+
+ "The attribute name GLX_CONTEXT_OPENGL_NO_ERROR_ARB indicates whether a
+ faster and lower power mode should be enabled for the OpenGL or OpenGL ES
+ context. In this mode instead of GL errors occurring as defined in the
+ OpenGL spec those errors will result in undefined behavior. The default
+ value of WGL_CONTEXT_OPENGL_NO_ERROR_ARB is FALSE."
+
+GLX Protocol
+
+ TBD.
+
+Errors for WGL
+
+ ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB is generated if the value of
+ WGL_CONTEXT_OPENGL_NO_ERROR_ARB used to create <share_context> does not
+ match the value of WGL_CONTEXT_OPENGL_NO_ERROR_ARB for the context being
+ created.
+
+ ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB is generated if the
+ WGL_CONTEXT_OPENGL_NO_ERROR_ARB is TRUE at the same time as a debug or
+ robustness context is specified.
+
+Errors for GLX
+
+ BadMatch is generated if the value of GLX_CONTEXT_OPENGL_NO_ERROR_ARB
+ used to create <share_context> does not match the value of
+ GLX_CONTEXT_OPENGL_NO_ERROR_ARB for the context being created.
+
+ BadMatch is generated if the GLX_CONTEXT_OPENGL_NO_ERROR_ARB is TRUE at
+ the same time as a debug or robustness context is specified.
+
+New State
+
+ None.
+
+Issues
+
+ None
+
+Revision History
+
+ Rev. Date Author Changes
+ ---- ---------- -------- ---------------------------------------------
+ 1 2017-03-02 pdaniell Initial draft
+ 2 2017-03-10 pdaniell Added errors
+ 3 2017-03-27 pdaniell Removed example section and added enum values
diff --git a/extensions/arbext.php b/extensions/arbext.php
index 3667aa5..2ecdd54 100644
--- a/extensions/arbext.php
+++ b/extensions/arbext.php
@@ -407,4 +407,8 @@
</li>
<li value=190><a href="extensions/ARB/ARB_gl_spirv.txt">GL_ARB_gl_spirv</a>
</li>
+<li value=191><a href="extensions/ARB/ARB_create_context_no_error.txt">WGL_ARB_create_context_no_error</a>
+</li>
+<li value=191><a href="extensions/ARB/ARB_create_context_no_error.txt">GLX_ARB_create_context_no_error</a>
+</li>
</ol>
diff --git a/extensions/registry.py b/extensions/registry.py
index 1221864..f2974dc 100644
--- a/extensions/registry.py
+++ b/extensions/registry.py
@@ -542,6 +542,12 @@
'url' : 'extensions/ARB/GLX_ARB_create_context.txt',
'comments' : 'Alias to GLX_ARB_create_context_profile not needed - see arbnumber 75.',
},
+ 'GLX_ARB_create_context_no_error' : {
+ 'arbnumber' : 191,
+ 'flags' : { 'public' },
+ 'url' : 'extensions/ARB/ARB_create_context_no_error.txt',
+ 'comments' : 'Shares extension spec with WGL_ARB_create_context_no_error.',
+ },
'GLX_ARB_create_context_profile' : {
'arbnumber' : 75,
'flags' : { 'public' },
@@ -4955,6 +4961,12 @@
'url' : 'extensions/ARB/WGL_ARB_create_context.txt',
'comments' : 'Alias to WGL_ARB_create_context_profile not needed - see arbnumber 74.',
},
+ 'WGL_ARB_create_context_no_error' : {
+ 'arbnumber' : 191,
+ 'flags' : { 'public' },
+ 'url' : 'extensions/ARB/ARB_create_context_no_error.txt',
+ 'comments' : 'Shares extension spec with GLX_ARB_create_context_no_error.',
+ },
'WGL_ARB_create_context_profile' : {
'arbnumber' : 74,
'flags' : { 'public' },
diff --git a/xml/glx.xml b/xml/glx.xml
index f60dd20..12124b3 100644
--- a/xml/glx.xml
+++ b/xml/glx.xml
@@ -462,6 +462,10 @@
<unused start="0x21A9" end="0x21AF"/>
</enums>
+ <enums namespace="GLX" start="0x31B3" end="0x31B3" vendor="ARB" comment="Shared with WGL.">
+ <enum value="0x31B3" name="GLX_CONTEXT_OPENGL_NO_ERROR_ARB"/>
+ </enums>
+
<enums namespace="GLX" start="0x8000" end="0x804F" vendor="ARB">
<enum value="0x8000" name="GLX_NONE" comment="Attribute value"/>
<enum value="0x8001" name="GLX_SLOW_CONFIG" comment="CONFIG_CAVEAT attribute value"/>
@@ -1662,6 +1666,11 @@
<command name="glXCreateContextAttribsARB"/>
</require>
</extension>
+ <extension name="GLX_ARB_create_context_no_error" supported="glx">
+ <require>
+ <enum name="GLX_CONTEXT_OPENGL_NO_ERROR_ARB"/>
+ </require>
+ </extension>
<extension name="GLX_ARB_create_context_profile" supported="glx">
<require>
<enum name="GLX_CONTEXT_CORE_PROFILE_BIT_ARB"/>
diff --git a/xml/wgl.xml b/xml/wgl.xml
index b8e5be8..1adc1e3 100644
--- a/xml/wgl.xml
+++ b/xml/wgl.xml
@@ -456,6 +456,10 @@
<enum value="0x308A" name="WGL_COLORSPACE_LINEAR_EXT"/>
</enums>
+ <enums namespace="WGL" start="0x31B3" end="0x31B3" vendor="ARB" comment="Shared with GLX.">
+ <enum value="0x31B3" name="WGL_CONTEXT_OPENGL_NO_ERROR_ARB"/>
+ </enums>
+
<enums namespace="GL" start="0x8250" end="0x826F" vendor="ARB" comment="Values shared with GL. Do not allocate additional values in this range.">
<enum value="0x8252" name="WGL_LOSE_CONTEXT_ON_RESET_ARB"/>
<enum value="0x8256" name="WGL_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB"/>
@@ -1445,6 +1449,11 @@
<command name="wglCreateContextAttribsARB"/>
</require>
</extension>
+ <extension name="WGL_ARB_create_context_no_error" supported="wgl">
+ <require>
+ <enum name="WGL_CONTEXT_OPENGL_NO_ERROR_ARB"/>
+ </require>
+ </extension>
<extension name="WGL_ARB_create_context_profile" supported="wgl">
<require>
<enum name="WGL_CONTEXT_PROFILE_MASK_ARB"/>