From 72a0b7a43531eb5e5cc4355941957864f86dd719 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Wed, 17 Apr 2013 17:30:24 -0700 Subject: [PATCH] i965/vs: Set the PreferDP4 shader compiler option. Doing matrix multiplies with DP4s is fewer instructions than MUL/ADD, especially since we don't support MAD in the vertex shader. Not observed to improve performance in any fixed function applications, but is useful for the next patch. I've left this unset for the fragment shader because the scalar backend can't use DP4 and does have MAD support. Signed-off-by: Kenneth Graunke Reviewed-by: Ian Romanick Reviewed-by: Eric Anholt --- src/mesa/drivers/dri/i965/brw_context.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c index 745a1172772..69b7e4dead8 100644 --- a/src/mesa/drivers/dri/i965/brw_context.c +++ b/src/mesa/drivers/dri/i965/brw_context.c @@ -232,6 +232,8 @@ brwCreateContext(int api, ctx->ShaderCompilerOptions[i].LowerClipDistance = true; } + ctx->ShaderCompilerOptions[MESA_SHADER_VERTEX].PreferDP4 = true; + ctx->Const.VertexProgram.MaxNativeInstructions = (16 * 1024); ctx->Const.VertexProgram.MaxAluInstructions = 0; ctx->Const.VertexProgram.MaxTexInstructions = 0; -- 2.30.2