Sfoglia il codice sorgente

i965/vs: Use an appropriate swizzle on src regs from variables.

Fixes glsl-vs-if-bool.
tags/mesa-8.0-rc1
Eric Anholt 14 anni fa
parent
commit
e5363c7fd2
1 ha cambiato i file con 4 aggiunte e 0 eliminazioni
  1. 4
    0
      src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp

+ 4
- 0
src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp Vedi File

@@ -1140,6 +1140,7 @@ vec4_visitor::visit(ir_swizzle *ir)
void
vec4_visitor::visit(ir_dereference_variable *ir)
{
const struct glsl_type *type = ir->type;
dst_reg *reg = variable_storage(ir->var);

if (!reg) {
@@ -1149,6 +1150,9 @@ vec4_visitor::visit(ir_dereference_variable *ir)
}

this->result = src_reg(*reg);

if (type->is_scalar() || type->is_vector() || type->is_matrix())
this->result.swizzle = swizzle_for_size(type->vector_elements);
}

void

Loading…
Annulla
Salva