Re: [Mesa-dev] [PATCH 2/9] mesa:Define constants and functions for GL_ARB_framebuffer_no_attachment extension

2015-05-06 Thread Ian Romanick
You haven't been running 'make check'. :) You also need to update
src/mesa/tests/dispatch_sanity.cpp.

On 04/29/2015 01:56 AM, kevin.rogo...@intel.com wrote:
 From: Kevin Rogovin kevin.rogo...@intel.com
 
 Define the enumeration constants, function entry points and
 glGet for the GL_ARB_framebuffer_no_attachments
 
 ---
  .../glapi/gen/ARB_framebuffer_no_attachments.xml   | 33 +++
  src/mapi/glapi/gen/Makefile.am |  1 +
  src/mapi/glapi/gen/gl_API.xml  |  4 ++-
  src/mesa/main/fbobject.c   | 12 +++
  src/mesa/main/fbobject.h   |  7 
  src/mesa/main/get.c|  3 ++
  src/mesa/main/get_hash_params.py   | 38 
 ++
  7 files changed, 97 insertions(+), 1 deletion(-)
  create mode 100644 src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml
 
 diff --git a/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml 
 b/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml
 new file mode 100644
 index 000..5bde14d
 --- /dev/null
 +++ b/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml
 @@ -0,0 +1,33 @@
 +?xml version=1.0?
 +!DOCTYPE OpenGLAPI SYSTEM gl_API.dtd
 +
 +OpenGLAPI
 +
 +category name=GL_ARB_framebuffer_no_attachments number=130
 +
 +enum name=FRAMEBUFFER_DEFAULT_WIDTH value=0x9310 /
 +enum name=FRAMEBUFFER_DEFAULT_HEIGHT value=0x9311 /
 +enum name=FRAMEBUFFER_DEFAULT_LAYERS value=0x9312 /
 +enum name=FRAMEBUFFER_DEFAULT_SAMPLES value=0x9313 /
 +enum name=FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS value=0x9314 /
 +enum name=MAX_FRAMEBUFFER_WIDTH value=0x9315 /
 +enum name=MAX_FRAMEBUFFER_HEIGHT value=0x9316 /
 +enum name=MAX_FRAMEBUFFER_LAYERS value=0x9317 /
 +enum name=MAX_FRAMEBUFFER_SAMPLES value=0x9318 /
 +
 +
 +function name=FramebufferParameteri offset=assign

Since it looks like your patches will land before my ES3.1 patches, I'll
have to update these with es2=3.1.  This is mostly to help me remember.

 +param name=target type=GLenum /
 +param name=pname type=GLenum /
 +param name=param type=GLint /
 +/function
 +
 +function name=GetFramebufferParameteriv offset=assign
 +param name=target type=GLenum /
 +param name=pname type=GLenum /
 +param name=params type=GLint * output=true /
 +/function
 +
 +/category
 +
 +/OpenGLAPI
 diff --git a/src/mapi/glapi/gen/Makefile.am b/src/mapi/glapi/gen/Makefile.am
 index 1c4b86a..dc61739 100644
 --- a/src/mapi/glapi/gen/Makefile.am
 +++ b/src/mapi/glapi/gen/Makefile.am
 @@ -129,6 +129,7 @@ API_XML = \
   ARB_draw_instanced.xml \
   ARB_ES2_compatibility.xml \
   ARB_ES3_compatibility.xml \
 + ARB_framebuffer_no_attachments.xml \
   ARB_framebuffer_object.xml \
   ARB_geometry_shader4.xml \
   ARB_get_program_binary.xml \
 diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml
 index a8a6db6..91882ef 100644
 --- a/src/mapi/glapi/gen/gl_API.xml
 +++ b/src/mapi/glapi/gen/gl_API.xml
 @@ -8324,7 +8324,9 @@
  !-- No new functions, types, enums. --
  /category
  
 -!-- ARB extensions #130..#131 --
 +xi:include href=ARB_framebuffer_no_attachments.xml 
 xmlns:xi=http://www.w3.org/2001/XInclude/
 +
 +!-- ARB extensions #131 --
  
  category name=GL_ARB_explicit_uniform_location number=128
  enum name=MAX_UNIFORM_LOCATIONS count=1 value=0x826E 
 diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
 index eabbb96..5c78c40 100644
 --- a/src/mesa/main/fbobject.c
 +++ b/src/mesa/main/fbobject.c
 @@ -1292,6 +1292,18 @@ _mesa_BindRenderbufferEXT(GLenum target, GLuint 
 renderbuffer)
 bind_renderbuffer(target, renderbuffer, true);
  }
  
 +extern void GLAPIENTRY
 +_mesa_FramebufferParameteri(GLenum target, GLenum pname, GLint param)
 +{
 +  /* to be implemented */
 +}
 +
 +extern void GLAPIENTRY
 +_mesa_GetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)
 +{
 +  /* to be implemented */
 +}
 +
  
  /**
   * Remove the specified renderbuffer or texture from any attachment point in
 diff --git a/src/mesa/main/fbobject.h b/src/mesa/main/fbobject.h
 index 61aa1f5..76adb92 100644
 --- a/src/mesa/main/fbobject.h
 +++ b/src/mesa/main/fbobject.h
 @@ -211,4 +211,11 @@ extern void GLAPIENTRY
  _mesa_DiscardFramebufferEXT(GLenum target, GLsizei numAttachments,
  const GLenum *attachments);
  
 +
 +extern void GLAPIENTRY
 +_mesa_FramebufferParameteri(GLenum target, GLenum pname, GLint param);
 +
 +extern void GLAPIENTRY
 +_mesa_GetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params);
 +
  #endif /* FBOBJECT_H */
 diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c
 index a881bc5..ca9d13c 100644
 --- a/src/mesa/main/get.c
 +++ b/src/mesa/main/get.c
 @@ -393,6 +393,7 @@ EXTRA_EXT(INTEL_performance_query);
  EXTRA_EXT(ARB_explicit_uniform_location);
  EXTRA_EXT(ARB_clip_control);
  EXTRA_EXT(EXT_polygon_offset_clamp);
 +EXTRA_EXT(ARB_framebuffer_no_attachments);
  

Re: [Mesa-dev] [PATCH 2/9] mesa:Define constants and functions for GL_ARB_framebuffer_no_attachment extension

2015-05-06 Thread Rogovin, Kevin

 You haven't been running 'make check'. :) You also need to update 
 src/mesa/tests/dispatch_sanity.cpp.

There is something wrong with my box or something... I did run make check and 
there were no failures. Out of paranoia, I also ran 
src/mesa/main/tests/main-test explicitly and there were no failures there 
either. When I look at src/mesa/tests/dispatch_sanity.cpp, the functions for 
ARB_framebuffer_no_attachments in the table are commented out. When I remove 
the comments from them, then the test fails (DispatchSanity_test.GL31_CORE).

What am I missing? I am utterly confused now about 
src/mesa/tests/dispatch_sanity.cpp.

-Kevin


On 04/29/2015 01:56 AM, kevin.rogo...@intel.com wrote:
 From: Kevin Rogovin kevin.rogo...@intel.com
 
 Define the enumeration constants, function entry points and glGet for 
 the GL_ARB_framebuffer_no_attachments
 
 ---
  .../glapi/gen/ARB_framebuffer_no_attachments.xml   | 33 +++
  src/mapi/glapi/gen/Makefile.am |  1 +
  src/mapi/glapi/gen/gl_API.xml  |  4 ++-
  src/mesa/main/fbobject.c   | 12 +++
  src/mesa/main/fbobject.h   |  7 
  src/mesa/main/get.c|  3 ++
  src/mesa/main/get_hash_params.py   | 38 
 ++
  7 files changed, 97 insertions(+), 1 deletion(-)  create mode 100644 
 src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml
 
 diff --git a/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml 
 b/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml
 new file mode 100644
 index 000..5bde14d
 --- /dev/null
 +++ b/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml
 @@ -0,0 +1,33 @@
 +?xml version=1.0?
 +!DOCTYPE OpenGLAPI SYSTEM gl_API.dtd
 +
 +OpenGLAPI
 +
 +category name=GL_ARB_framebuffer_no_attachments number=130
 +
 +enum name=FRAMEBUFFER_DEFAULT_WIDTH value=0x9310 / enum 
 +name=FRAMEBUFFER_DEFAULT_HEIGHT value=0x9311 / enum 
 +name=FRAMEBUFFER_DEFAULT_LAYERS value=0x9312 / enum 
 +name=FRAMEBUFFER_DEFAULT_SAMPLES value=0x9313 / enum 
 +name=FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS value=0x9314 / 
 +enum name=MAX_FRAMEBUFFER_WIDTH value=0x9315 / enum 
 +name=MAX_FRAMEBUFFER_HEIGHT value=0x9316 / enum 
 +name=MAX_FRAMEBUFFER_LAYERS value=0x9317 / enum 
 +name=MAX_FRAMEBUFFER_SAMPLES value=0x9318 /
 +
 +
 +function name=FramebufferParameteri offset=assign

Since it looks like your patches will land before my ES3.1 patches, I'll have 
to update these with es2=3.1.  This is mostly to help me remember.

 +param name=target type=GLenum /
 +param name=pname type=GLenum /
 +param name=param type=GLint / /function
 +
 +function name=GetFramebufferParameteriv offset=assign
 +param name=target type=GLenum /
 +param name=pname type=GLenum /
 +param name=params type=GLint * output=true / /function
 +
 +/category
 +
 +/OpenGLAPI
 diff --git a/src/mapi/glapi/gen/Makefile.am 
 b/src/mapi/glapi/gen/Makefile.am index 1c4b86a..dc61739 100644
 --- a/src/mapi/glapi/gen/Makefile.am
 +++ b/src/mapi/glapi/gen/Makefile.am
 @@ -129,6 +129,7 @@ API_XML = \
   ARB_draw_instanced.xml \
   ARB_ES2_compatibility.xml \
   ARB_ES3_compatibility.xml \
 + ARB_framebuffer_no_attachments.xml \
   ARB_framebuffer_object.xml \
   ARB_geometry_shader4.xml \
   ARB_get_program_binary.xml \
 diff --git a/src/mapi/glapi/gen/gl_API.xml 
 b/src/mapi/glapi/gen/gl_API.xml index a8a6db6..91882ef 100644
 --- a/src/mapi/glapi/gen/gl_API.xml
 +++ b/src/mapi/glapi/gen/gl_API.xml
 @@ -8324,7 +8324,9 @@
  !-- No new functions, types, enums. --  /category
  
 -!-- ARB extensions #130..#131 --
 +xi:include href=ARB_framebuffer_no_attachments.xml 
 +xmlns:xi=http://www.w3.org/2001/XInclude/
 +
 +!-- ARB extensions #131 --
  
  category name=GL_ARB_explicit_uniform_location number=128
  enum name=MAX_UNIFORM_LOCATIONS count=1 value=0x826E  
 diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c index 
 eabbb96..5c78c40 100644
 --- a/src/mesa/main/fbobject.c
 +++ b/src/mesa/main/fbobject.c
 @@ -1292,6 +1292,18 @@ _mesa_BindRenderbufferEXT(GLenum target, GLuint 
 renderbuffer)
 bind_renderbuffer(target, renderbuffer, true);  }
  
 +extern void GLAPIENTRY
 +_mesa_FramebufferParameteri(GLenum target, GLenum pname, GLint param) 
 +{
 +  /* to be implemented */
 +}
 +
 +extern void GLAPIENTRY
 +_mesa_GetFramebufferParameteriv(GLenum target, GLenum pname, GLint 
 +*params) {
 +  /* to be implemented */
 +}
 +
  
  /**
   * Remove the specified renderbuffer or texture from any attachment 
 point in diff --git a/src/mesa/main/fbobject.h 
 b/src/mesa/main/fbobject.h index 61aa1f5..76adb92 100644
 --- a/src/mesa/main/fbobject.h
 +++ b/src/mesa/main/fbobject.h
 @@ -211,4 +211,11 @@ extern void GLAPIENTRY  
 _mesa_DiscardFramebufferEXT(GLenum target, GLsizei numAttachments,
  const GLenum *attachments);
  
 +
 +extern void GLAPIENTRY
 

[Mesa-dev] [PATCH 2/9] mesa:Define constants and functions for GL_ARB_framebuffer_no_attachment extension

2015-04-29 Thread kevin . rogovin
From: Kevin Rogovin kevin.rogo...@intel.com

Define the enumeration constants, function entry points and
glGet for the GL_ARB_framebuffer_no_attachments

---
 .../glapi/gen/ARB_framebuffer_no_attachments.xml   | 33 +++
 src/mapi/glapi/gen/Makefile.am |  1 +
 src/mapi/glapi/gen/gl_API.xml  |  4 ++-
 src/mesa/main/fbobject.c   | 12 +++
 src/mesa/main/fbobject.h   |  7 
 src/mesa/main/get.c|  3 ++
 src/mesa/main/get_hash_params.py   | 38 ++
 7 files changed, 97 insertions(+), 1 deletion(-)
 create mode 100644 src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml

diff --git a/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml 
b/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml
new file mode 100644
index 000..5bde14d
--- /dev/null
+++ b/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml
@@ -0,0 +1,33 @@
+?xml version=1.0?
+!DOCTYPE OpenGLAPI SYSTEM gl_API.dtd
+
+OpenGLAPI
+
+category name=GL_ARB_framebuffer_no_attachments number=130
+
+enum name=FRAMEBUFFER_DEFAULT_WIDTH value=0x9310 /
+enum name=FRAMEBUFFER_DEFAULT_HEIGHT value=0x9311 /
+enum name=FRAMEBUFFER_DEFAULT_LAYERS value=0x9312 /
+enum name=FRAMEBUFFER_DEFAULT_SAMPLES value=0x9313 /
+enum name=FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS value=0x9314 /
+enum name=MAX_FRAMEBUFFER_WIDTH value=0x9315 /
+enum name=MAX_FRAMEBUFFER_HEIGHT value=0x9316 /
+enum name=MAX_FRAMEBUFFER_LAYERS value=0x9317 /
+enum name=MAX_FRAMEBUFFER_SAMPLES value=0x9318 /
+
+
+function name=FramebufferParameteri offset=assign
+param name=target type=GLenum /
+param name=pname type=GLenum /
+param name=param type=GLint /
+/function
+
+function name=GetFramebufferParameteriv offset=assign
+param name=target type=GLenum /
+param name=pname type=GLenum /
+param name=params type=GLint * output=true /
+/function
+
+/category
+
+/OpenGLAPI
diff --git a/src/mapi/glapi/gen/Makefile.am b/src/mapi/glapi/gen/Makefile.am
index 1c4b86a..dc61739 100644
--- a/src/mapi/glapi/gen/Makefile.am
+++ b/src/mapi/glapi/gen/Makefile.am
@@ -129,6 +129,7 @@ API_XML = \
ARB_draw_instanced.xml \
ARB_ES2_compatibility.xml \
ARB_ES3_compatibility.xml \
+   ARB_framebuffer_no_attachments.xml \
ARB_framebuffer_object.xml \
ARB_geometry_shader4.xml \
ARB_get_program_binary.xml \
diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml
index a8a6db6..91882ef 100644
--- a/src/mapi/glapi/gen/gl_API.xml
+++ b/src/mapi/glapi/gen/gl_API.xml
@@ -8324,7 +8324,9 @@
 !-- No new functions, types, enums. --
 /category
 
-!-- ARB extensions #130..#131 --
+xi:include href=ARB_framebuffer_no_attachments.xml 
xmlns:xi=http://www.w3.org/2001/XInclude/
+
+!-- ARB extensions #131 --
 
 category name=GL_ARB_explicit_uniform_location number=128
 enum name=MAX_UNIFORM_LOCATIONS count=1 value=0x826E 
diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
index eabbb96..5c78c40 100644
--- a/src/mesa/main/fbobject.c
+++ b/src/mesa/main/fbobject.c
@@ -1292,6 +1292,18 @@ _mesa_BindRenderbufferEXT(GLenum target, GLuint 
renderbuffer)
bind_renderbuffer(target, renderbuffer, true);
 }
 
+extern void GLAPIENTRY
+_mesa_FramebufferParameteri(GLenum target, GLenum pname, GLint param)
+{
+  /* to be implemented */
+}
+
+extern void GLAPIENTRY
+_mesa_GetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params)
+{
+  /* to be implemented */
+}
+
 
 /**
  * Remove the specified renderbuffer or texture from any attachment point in
diff --git a/src/mesa/main/fbobject.h b/src/mesa/main/fbobject.h
index 61aa1f5..76adb92 100644
--- a/src/mesa/main/fbobject.h
+++ b/src/mesa/main/fbobject.h
@@ -211,4 +211,11 @@ extern void GLAPIENTRY
 _mesa_DiscardFramebufferEXT(GLenum target, GLsizei numAttachments,
 const GLenum *attachments);
 
+
+extern void GLAPIENTRY
+_mesa_FramebufferParameteri(GLenum target, GLenum pname, GLint param);
+
+extern void GLAPIENTRY
+_mesa_GetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params);
+
 #endif /* FBOBJECT_H */
diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c
index a881bc5..ca9d13c 100644
--- a/src/mesa/main/get.c
+++ b/src/mesa/main/get.c
@@ -393,6 +393,7 @@ EXTRA_EXT(INTEL_performance_query);
 EXTRA_EXT(ARB_explicit_uniform_location);
 EXTRA_EXT(ARB_clip_control);
 EXTRA_EXT(EXT_polygon_offset_clamp);
+EXTRA_EXT(ARB_framebuffer_no_attachments);
 
 static const int
 extra_ARB_color_buffer_float_or_glcore[] = {
@@ -466,6 +467,8 @@ static const int 
extra_core_ARB_color_buffer_float_and_new_buffers[] = {
  * remaining combinations. To look up the enums valid in a given API
  * we will use a hash table specific to that API. These tables are in
  * turn generated at build time and included through get_hash.h.
+ * To add an entry (i.e. a new enumeration for glGet that