diff options
author | Eric Anholt <eric@anholt.net> | 2010-07-27 10:39:40 -0700 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2010-07-27 10:41:01 -0700 |
commit | 9a770ee49f8cb82653bb5c1976f7751d9a6b801e (patch) | |
tree | fe63d2519774c727d14bf967c146a35fbc7cfa4e /src | |
parent | fdbaca931a504a70d6fec54e2f85caac6281377d (diff) |
ir_to_mesa: Set the swizzle on constant struct src regs.
MESA_GLSL=nopt now produces believable output for glsl-fs-raytrace.
Diffstat (limited to 'src')
-rw-r--r-- | src/mesa/program/ir_to_mesa.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index defacc7fdc..5cc999c2e3 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -1389,6 +1389,7 @@ ir_to_mesa_visitor::visit(ir_constant *ir) if (ir->type->base_type == GLSL_TYPE_STRUCT) { ir_to_mesa_src_reg temp_base = get_temp(ir->type); + temp_base.swizzle = SWIZZLE_NOOP; ir_to_mesa_dst_reg temp = ir_to_mesa_dst_reg_from_src(temp_base); foreach_iter(exec_list_iterator, iter, ir->components) { |