On 05/11/2012 11:08 AM, Marek Olšák wrote:
I think a more preferable way to enable an extension for everybody by
default is to do something like this:

diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c
index a843a40..71b7721 100644
--- a/src/mesa/main/extensions.c
+++ b/src/mesa/main/extensions.c
@@ -298,7 +298,7 @@ static const struct extension extension_table[] = {
     { "GL_NV_light_max_exponent",                   o(NV_light_max_exponent),  
                 GL,             1999 },
     { "GL_NV_packed_depth_stencil",                 
o(EXT_packed_depth_stencil),                GL,             2000 },
     { "GL_NV_point_sprite",                         o(NV_point_sprite),        
                 GL,             2001 },
-   { "GL_NV_primitive_restart",                    o(NV_primitive_restart),    
                GL,             2002 },
+   { "GL_NV_primitive_restart",                    o(dummy_true),              
                GL,             2002 },
     { "GL_NV_texgen_reflection",                    o(NV_texgen_reflection),   
                 GL,             1999 },
     { "GL_NV_texture_barrier",                      o(NV_texture_barrier),     
                 GL,             2009 },
     { "GL_NV_texture_env_combine4",                 
o(NV_texture_env_combine4),                 GL,             1999 },
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index 06ca0d5..8086bb5 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -2982,7 +2982,6 @@ struct gl_extensions
     GLboolean NV_fragment_program_option;
     GLboolean NV_light_max_exponent;
     GLboolean NV_point_sprite;
-   GLboolean NV_primitive_restart;
     GLboolean NV_texture_barrier;
     GLboolean NV_texgen_reflection;
     GLboolean NV_texture_env_combine4;

And fixing all occurences of gl_extensions::NV_primitive_restart. Both
ways are equivalent though, so it's really just about whether we
should allow drivers to disable the extension.

FWIW, I know of at least one application which performs faster with the vmware driver when NV_primitive_restart is disabled (and the app does it's own work-around) rather than to use the software-based primitive restart path.

So setting MESA_EXTENSION_OVERRIDE=-GL_NV_primitive_restart should be an option. The o(dummy_true) convention might prevent that, but I haven't tested that...

-Brian
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to