From: Roland Scheidegger Date: Sat, 10 Jun 2006 00:51:54 +0000 (+0000) Subject: enable arb_vertex_program by default if drm is new enough. Do a fallback when it... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=5b90cf2f2f3dcda0d674c01859847149b4054608;p=mesa.git enable arb_vertex_program by default if drm is new enough. Do a fallback when it's a nv_vp as there could be issues. --- diff --git a/src/mesa/drivers/dri/r200/r200_context.c b/src/mesa/drivers/dri/r200/r200_context.c index 3e41d863148..0e85b9680ce 100644 --- a/src/mesa/drivers/dri/r200/r200_context.c +++ b/src/mesa/drivers/dri/r200/r200_context.c @@ -478,7 +478,8 @@ GLboolean r200CreateContext( const __GLcontextModes *glVisual, if (rmesa->r200Screen->drmSupportsBlendColor) { driInitExtensions( ctx, blend_extensions, GL_FALSE ); } - if(driQueryOptionb(&rmesa->optionCache, "arb_vertex_program")) + if(rmesa->r200Screen->drmSupportsVertexProgram || + driQueryOptionb(&rmesa->optionCache, "arb_vertex_program")) driInitSingleExtension( ctx, ARB_vp_extension ); if(driQueryOptionb(&rmesa->optionCache, "nv_vertex_program")) driInitSingleExtension( ctx, NV_vp_extension ); diff --git a/src/mesa/drivers/dri/r200/r200_vertprog.c b/src/mesa/drivers/dri/r200/r200_vertprog.c index dfacdc88cc4..615953b6100 100644 --- a/src/mesa/drivers/dri/r200/r200_vertprog.c +++ b/src/mesa/drivers/dri/r200/r200_vertprog.c @@ -414,6 +414,11 @@ static GLboolean r200_translate_vertex_program(struct r200_vertex_program *vp) return GL_FALSE; } + if (mesa_vp->IsNVProgram) { + /* subtle differences in spec like guaranteed initialized regs could cause + headaches. Might want to remove the driconf option to enable it completely */ + return GL_FALSE; + } /* Initial value should be last tmp reg that hw supports. Strangely enough r300 doesnt mind even though these would be out of range. Smart enough to realize that it doesnt need it? */