summaryrefslogtreecommitdiff
path: root/src/mesa
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2010-07-12 11:04:07 -0700
committerEric Anholt <eric@anholt.net>2010-07-12 13:26:46 -0700
commit6d8a0a0aadaafbab02dffcf7f89eb0210dd37b2e (patch)
treefe424ec3226da050c072fae82816448028800595 /src/mesa
parent5723e5bb8b73cd2a3b77d750972e3d0b4d0d0ff8 (diff)
glsl2: Add a new pass at the IR level to break down matrix ops to vector ops.
This will be used by the Mesa IR and likely most HW backends, as it allows other optimizations to occur that might not otherwise. Fixes glsl-vs-mat-sub-1, glsl-vs-mat-div-1.
Diffstat (limited to 'src/mesa')
-rw-r--r--src/mesa/shader/ir_to_mesa.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mesa/shader/ir_to_mesa.cpp b/src/mesa/shader/ir_to_mesa.cpp
index 708c6fece1..81b91918cb 100644
--- a/src/mesa/shader/ir_to_mesa.cpp
+++ b/src/mesa/shader/ir_to_mesa.cpp
@@ -1960,6 +1960,7 @@ _mesa_glsl_compile_shader(GLcontext *ctx, struct gl_shader *shader)
_mesa_ast_to_hir(shader->ir, state);
/* Lowering */
+ do_mat_op_to_vec(shader->ir);
do_mod_to_fract(shader->ir);
do_div_to_mul_rcp(shader->ir);