[Mesa-dev] [PATCH 1/2] mesa/es3.1: Expose GL_ARB_framebuffer_no_attachments to GLES 3.1
Marta Lofstedt
marta.lofstedt at linux.intel.com
Mon Aug 24 00:10:56 PDT 2015
From: Marta Lofstedt <marta.lofstedt at intel.com>
Signed-off-by: Marta Lofstedt <marta.lofstedt at intel.com>
---
src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml | 4 ++--
src/mapi/glapi/gen/apiexec.py | 4 ++--
src/mesa/main/get.c | 6 ++++++
src/mesa/main/get_hash_params.py | 8 +++++---
src/mesa/main/tests/dispatch_sanity.cpp | 6 ++----
5 files changed, 17 insertions(+), 11 deletions(-)
diff --git a/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml b/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml
index 59839a0..55ad764 100644
--- a/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml
+++ b/src/mapi/glapi/gen/ARB_framebuffer_no_attachments.xml
@@ -15,13 +15,13 @@
<enum name="MAX_FRAMEBUFFER_LAYERS" value="0x9317" />
<enum name="MAX_FRAMEBUFFER_SAMPLES" value="0x9318" />
- <function name="FramebufferParameteri">
+ <function name="FramebufferParameteri" es2="3.1">
<param name="target" type="GLenum"/>
<param name="pname" type="GLenum"/>
<param name="param" type="GLint" />
</function>
- <function name="GetFramebufferParameteriv">
+ <function name="GetFramebufferParameteriv" es2="3.1">
<param name="target" type="GLenum" />
<param name="pname" type="GLenum" />
<param name="params" type="GLint *" output="true" />
diff --git a/src/mapi/glapi/gen/apiexec.py b/src/mapi/glapi/gen/apiexec.py
index 3a0eb18..58ec08b 100644
--- a/src/mapi/glapi/gen/apiexec.py
+++ b/src/mapi/glapi/gen/apiexec.py
@@ -151,8 +151,8 @@ functions = {
# OpenGL 4.3 / GL_ARB_framebuffer_no_attachments. Mesa can expose the
# extension with OpenGL 3.0.
- "FramebufferParameteri": exec_info(compatibility=30, core=31),
- "GetFramebufferParameteri": exec_info(compatibility=30, core=31),
+ "FramebufferParameteri": exec_info(compatibility=30, core=31, es2=31),
+ "GetFramebufferParameteri": exec_info(compatibility=30, core=31, es2=31),
# OpenGL 4.5 / GL_ARB_direct_state_access. Mesa can expose the extension
# with core profile.
diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c
index 307a5ff..8542ddb 100644
--- a/src/mesa/main/get.c
+++ b/src/mesa/main/get.c
@@ -403,6 +403,12 @@ static const int extra_ARB_explicit_uniform_location_es31[] = {
EXTRA_END
};
+static const int extra_ARB_framebuffer_no_attachments_es31[] = {
+ EXT(ARB_framebuffer_no_attachments),
+ EXTRA_API_ES31,
+ EXTRA_END
+};
+
EXTRA_EXT(ARB_texture_cube_map);
EXTRA_EXT(EXT_texture_array);
EXTRA_EXT(NV_fog_distance);
diff --git a/src/mesa/main/get_hash_params.py b/src/mesa/main/get_hash_params.py
index 517c391..3d6ed64 100644
--- a/src/mesa/main/get_hash_params.py
+++ b/src/mesa/main/get_hash_params.py
@@ -450,6 +450,11 @@ descriptor=[
# GL_ARB_explicit_uniform_location / GLES 3.1
[ "MAX_UNIFORM_LOCATIONS", "CONTEXT_INT(Const.MaxUserAssignableUniformLocations), extra_ARB_explicit_uniform_location_es31" ],
+
+# GL_ARB_framebuffer_no_attachments / GLES 3.1
+ ["MAX_FRAMEBUFFER_WIDTH", "CONTEXT_INT(Const.MaxFramebufferWidth), extra_ARB_framebuffer_no_attachments_es31"],
+ ["MAX_FRAMEBUFFER_HEIGHT", "CONTEXT_INT(Const.MaxFramebufferHeight), extra_ARB_framebuffer_no_attachments_es31"],
+ ["MAX_FRAMEBUFFER_SAMPLES", "CONTEXT_INT(Const.MaxFramebufferSamples), extra_ARB_framebuffer_no_attachments_es31"],
]},
# Enums in OpenGL Core profile and ES 3.1
@@ -811,10 +816,7 @@ descriptor=[
[ "MAX_GEOMETRY_IMAGE_UNIFORMS", "CONTEXT_INT(Const.Program[MESA_SHADER_GEOMETRY].MaxImageUniforms), extra_ARB_shader_image_load_store_and_geometry_shader"],
# GL_ARB_framebuffer_no_attachments
- ["MAX_FRAMEBUFFER_WIDTH", "CONTEXT_INT(Const.MaxFramebufferWidth), extra_ARB_framebuffer_no_attachments"],
- ["MAX_FRAMEBUFFER_HEIGHT", "CONTEXT_INT(Const.MaxFramebufferHeight), extra_ARB_framebuffer_no_attachments"],
["MAX_FRAMEBUFFER_LAYERS", "CONTEXT_INT(Const.MaxFramebufferLayers), extra_ARB_framebuffer_no_attachments"],
- ["MAX_FRAMEBUFFER_SAMPLES", "CONTEXT_INT(Const.MaxFramebufferSamples), extra_ARB_framebuffer_no_attachments"],
# GL_EXT_polygon_offset_clamp
[ "POLYGON_OFFSET_CLAMP_EXT", "CONTEXT_FLOAT(Polygon.OffsetClamp), extra_EXT_polygon_offset_clamp" ],
diff --git a/src/mesa/main/tests/dispatch_sanity.cpp b/src/mesa/main/tests/dispatch_sanity.cpp
index 59107eb..b9a760f 100644
--- a/src/mesa/main/tests/dispatch_sanity.cpp
+++ b/src/mesa/main/tests/dispatch_sanity.cpp
@@ -2405,10 +2405,8 @@ const struct function gles31_functions_possible[] = {
{ "glDrawArraysIndirect", 31, -1 },
{ "glDrawElementsIndirect", 31, -1 },
- // FINISHME: These two functions have not been implemented yet. They come
- // FINISHME: from the ARB_framebuffer_no_attachments extension.
- // { "glFramebufferParameteri", 31, -1 },
- // { "glGetFramebufferParameteriv", 31, -1 },
+ { "glFramebufferParameteri", 31, -1 },
+ { "glGetFramebufferParameteriv", 31, -1 },
{ "glGetProgramInterfaceiv", 31, -1 },
{ "glGetProgramResourceIndex", 31, -1 },
--
1.9.1
More information about the mesa-dev
mailing list