[Mesa-dev] [PATCH 18/20] gles/es3.1: Enable dispatch of almost all new GLES 3.1 functions

2015-05-13 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com

A couple functions are missing because there are no implementations of
them yet.  These are:

  glFramebufferParameteri (from GL_ARB_framebuffer_no_attachments)
  glGetFramebufferParameteriv (from GL_ARB_framebuffer_no_attachments)
  glMemoryBarrierByRegion

v2: Rebase on updated dispatch_sanity.cpp test.

v3: Add support for glDraw{Arrays,Elements}Indirect in vbo_exec_array.c.
The updated dispatch_sanity.cpp test discovered this omission.

v4: Rebase on glapi changes.

Signed-off-by: Ian Romanick ian.d.roman...@intel.com
---
 src/mapi/glapi/gen/ARB_compute_shader.xml  |  4 +-
 src/mapi/glapi/gen/ARB_draw_indirect.xml   |  4 +-
 src/mapi/glapi/gen/ARB_program_interface_query.xml | 10 +--
 src/mapi/glapi/gen/ARB_separate_shader_objects.xml | 86 ++--
 src/mapi/glapi/gen/ARB_shader_image_load_store.xml |  4 +-
 src/mapi/glapi/gen/ARB_texture_multisample.xml |  4 +-
 .../glapi/gen/ARB_texture_storage_multisample.xml  |  2 +-
 src/mapi/glapi/gen/ARB_vertex_attrib_binding.xml   | 10 +--
 src/mapi/glapi/gen/GL3x.xml|  2 +-
 src/mapi/glapi/gen/gl_API.xml  |  4 +-
 src/mesa/main/tests/dispatch_sanity.cpp| 95 ++
 src/mesa/vbo/vbo_exec_array.c  |  5 +-
 12 files changed, 164 insertions(+), 66 deletions(-)

diff --git a/src/mapi/glapi/gen/ARB_compute_shader.xml 
b/src/mapi/glapi/gen/ARB_compute_shader.xml
index 78d352f..c2ec842 100644
--- a/src/mapi/glapi/gen/ARB_compute_shader.xml
+++ b/src/mapi/glapi/gen/ARB_compute_shader.xml
@@ -26,13 +26,13 @@
   enum name=DISPATCH_INDIRECT_BUFFER_BINDINGvalue=0x90EF/
   enum name=COMPUTE_SHADER_BIT  
value=0x0020/
 
-  function name=DispatchCompute
+  function name=DispatchCompute es2=3.1
 param name=num_groups_x type=GLuint/
 param name=num_groups_y type=GLuint/
 param name=num_groups_z type=GLuint/
   /function
 
-  function name=DispatchComputeIndirect
+  function name=DispatchComputeIndirect es2=3.1
 param name=indirect type=GLintptr/
   /function
 /category
diff --git a/src/mapi/glapi/gen/ARB_draw_indirect.xml 
b/src/mapi/glapi/gen/ARB_draw_indirect.xml
index 2001eb0..3b29d6b 100644
--- a/src/mapi/glapi/gen/ARB_draw_indirect.xml
+++ b/src/mapi/glapi/gen/ARB_draw_indirect.xml
@@ -8,12 +8,12 @@
 enum name=DRAW_INDIRECT_BUFFER   value=0x8F3F/
 enum name=DRAW_INDIRECT_BUFFER_BINDING   value=0x8F43/
 
-function name=DrawArraysIndirect exec=dynamic
+function name=DrawArraysIndirect exec=dynamic es2=3.1
 param name=mode type=GLenum/
 param name=indirect type=const GLvoid */
 /function
 
-function name=DrawElementsIndirect exec=dynamic
+function name=DrawElementsIndirect exec=dynamic es2=3.1
 param name=mode type=GLenum/
 param name=type type=GLenum/
 param name=indirect type=const GLvoid */
diff --git a/src/mapi/glapi/gen/ARB_program_interface_query.xml 
b/src/mapi/glapi/gen/ARB_program_interface_query.xml
index 5b6d5cc..c3162f5 100644
--- a/src/mapi/glapi/gen/ARB_program_interface_query.xml
+++ b/src/mapi/glapi/gen/ARB_program_interface_query.xml
@@ -56,21 +56,21 @@
 enum name=NUM_COMPATIBLE_SUBROUTINES  
value=0x8E4A/
 enum name=COMPATIBLE_SUBROUTINES  
value=0x8E4B/
 
-function name=GetProgramInterfaceiv
+function name=GetProgramInterfaceiv es2=3.1
 param name=program type=GLuint/
 param name=programInterface type=GLenum/
 param name=pname type=GLenum/
 param name=params type=GLint * output=true/
 /function
 
-function name=GetProgramResourceIndex
+function name=GetProgramResourceIndex es2=3.1
 param name=program type=GLuint/
 param name=programInterface type=GLenum/
 param name=name type=const GLchar */
 return type=GLuint/
 /function
 
-function name=GetProgramResourceName
+function name=GetProgramResourceName es2=3.1
 param name=program type=GLuint/
 param name=programInterface type=GLenum/
 param name=index type=GLuint/
@@ -79,7 +79,7 @@
 param name=name type=GLchar * output=true/
 /function
 
-function name=GetProgramResourceiv
+function name=GetProgramResourceiv es2=3.1
 param name=program type=GLuint/
 param name=programInterface type=GLenum/
 param name=index type=GLuint/
@@ -90,7 +90,7 @@
 param name=params type=GLint * output=true/
 /function
 
-function name=GetProgramResourceLocation
+function name=GetProgramResourceLocation es2=3.1
 param name=program type=GLuint/
 param name=programInterface type=GLenum/
 param name=name type=const GLchar */
diff --git a/src/mapi/glapi/gen/ARB_separate_shader_objects.xml 
b/src/mapi/glapi/gen/ARB_separate_shader_objects.xml
index 

[Mesa-dev] [PATCH 18/20] gles/es3.1: Enable dispatch of almost all new GLES 3.1 functions

2015-04-29 Thread Ian Romanick
From: Ian Romanick ian.d.roman...@intel.com

A couple functions are missing because there are no implementations of
them yet.  These are:

  glFramebufferParameteri (from GL_ARB_framebuffer_no_attachments)
  glGetFramebufferParameteriv (from GL_ARB_framebuffer_no_attachments)
  glMemoryBarrierByRegion

v2: Rebase on updated dispatch_sanity.cpp test.

v3: Add support for glDraw{Arrays,Elements}Indirect in vbo_exec_array.c.
The updated dispatch_sanity.cpp test discovered this omission.

Signed-off-by: Ian Romanick ian.d.roman...@intel.com
---
 src/mapi/glapi/gen/ARB_compute_shader.xml  |  4 +-
 src/mapi/glapi/gen/ARB_draw_indirect.xml   |  4 +-
 src/mapi/glapi/gen/ARB_program_interface_query.xml | 10 +--
 src/mapi/glapi/gen/ARB_separate_shader_objects.xml | 86 ++--
 src/mapi/glapi/gen/ARB_shader_image_load_store.xml |  4 +-
 src/mapi/glapi/gen/ARB_texture_multisample.xml |  4 +-
 .../glapi/gen/ARB_texture_storage_multisample.xml  |  2 +-
 src/mapi/glapi/gen/ARB_vertex_attrib_binding.xml   | 10 +--
 src/mapi/glapi/gen/GL3x.xml|  2 +-
 src/mapi/glapi/gen/gl_API.xml  |  4 +-
 src/mesa/main/tests/dispatch_sanity.cpp| 95 ++
 src/mesa/vbo/vbo_exec_array.c  |  5 +-
 12 files changed, 164 insertions(+), 66 deletions(-)

diff --git a/src/mapi/glapi/gen/ARB_compute_shader.xml 
b/src/mapi/glapi/gen/ARB_compute_shader.xml
index 1db373e..0ccbcc0 100644
--- a/src/mapi/glapi/gen/ARB_compute_shader.xml
+++ b/src/mapi/glapi/gen/ARB_compute_shader.xml
@@ -26,13 +26,13 @@
   enum name=DISPATCH_INDIRECT_BUFFER_BINDINGvalue=0x90EF/
   enum name=COMPUTE_SHADER_BIT  
value=0x0020/
 
-  function name=DispatchCompute offset=assign
+  function name=DispatchCompute offset=assign es2=3.1
 param name=num_groups_x type=GLuint/
 param name=num_groups_y type=GLuint/
 param name=num_groups_z type=GLuint/
   /function
 
-  function name=DispatchComputeIndirect offset=assign
+  function name=DispatchComputeIndirect offset=assign es2=3.1
 param name=indirect type=GLintptr/
   /function
 /category
diff --git a/src/mapi/glapi/gen/ARB_draw_indirect.xml 
b/src/mapi/glapi/gen/ARB_draw_indirect.xml
index 7de03cd..e02568c 100644
--- a/src/mapi/glapi/gen/ARB_draw_indirect.xml
+++ b/src/mapi/glapi/gen/ARB_draw_indirect.xml
@@ -8,12 +8,12 @@
 enum name=DRAW_INDIRECT_BUFFER   value=0x8F3F/
 enum name=DRAW_INDIRECT_BUFFER_BINDING   value=0x8F43/
 
-function name=DrawArraysIndirect offset=assign exec=dynamic
+function name=DrawArraysIndirect offset=assign exec=dynamic 
es2=3.1
 param name=mode type=GLenum/
 param name=indirect type=const GLvoid */
 /function
 
-function name=DrawElementsIndirect offset=assign exec=dynamic
+function name=DrawElementsIndirect offset=assign exec=dynamic 
es2=3.1
 param name=mode type=GLenum/
 param name=type type=GLenum/
 param name=indirect type=const GLvoid */
diff --git a/src/mapi/glapi/gen/ARB_program_interface_query.xml 
b/src/mapi/glapi/gen/ARB_program_interface_query.xml
index 59eb59c..5c26498 100644
--- a/src/mapi/glapi/gen/ARB_program_interface_query.xml
+++ b/src/mapi/glapi/gen/ARB_program_interface_query.xml
@@ -56,21 +56,21 @@
 enum name=NUM_COMPATIBLE_SUBROUTINES  
value=0x8E4A/
 enum name=COMPATIBLE_SUBROUTINES  
value=0x8E4B/
 
-function name=GetProgramInterfaceiv offset=assign
+function name=GetProgramInterfaceiv offset=assign es2=3.1
 param name=program type=GLuint/
 param name=programInterface type=GLenum/
 param name=pname type=GLenum/
 param name=params type=GLint * output=true/
 /function
 
-function name=GetProgramResourceIndex offset=assign
+function name=GetProgramResourceIndex offset=assign es2=3.1
 param name=program type=GLuint/
 param name=programInterface type=GLenum/
 param name=name type=const GLchar */
 return type=GLuint/
 /function
 
-function name=GetProgramResourceName offset=assign
+function name=GetProgramResourceName offset=assign es2=3.1
 param name=program type=GLuint/
 param name=programInterface type=GLenum/
 param name=index type=GLuint/
@@ -79,7 +79,7 @@
 param name=name type=GLchar * output=true/
 /function
 
-function name=GetProgramResourceiv offset=assign
+function name=GetProgramResourceiv offset=assign es2=3.1
 param name=program type=GLuint/
 param name=programInterface type=GLenum/
 param name=index type=GLuint/
@@ -90,7 +90,7 @@
 param name=params type=GLint * output=true/
 /function
 
-function name=GetProgramResourceLocation offset=assign
+function name=GetProgramResourceLocation offset=assign es2=3.1
 param name=program type=GLuint/