diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/mesa/program/ir_to_mesa.cpp | 4 | 
1 files changed, 4 insertions, 0 deletions
| diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp index 786fdfbd23..ee3eae6cfb 100644 --- a/src/mesa/program/ir_to_mesa.cpp +++ b/src/mesa/program/ir_to_mesa.cpp @@ -651,6 +651,7 @@ type_size(const struct glsl_type *type)  	 return 1;        }     case GLSL_TYPE_ARRAY: +      assert(type->length > 0);        return type_size(type->fields.array) * type->length;     case GLSL_TYPE_STRUCT:        size = 0; @@ -2653,6 +2654,9 @@ ir_to_mesa_visitor::copy_propagate(void)     foreach_iter(exec_list_iterator, iter, this->instructions) {        ir_to_mesa_instruction *inst = (ir_to_mesa_instruction *)iter.get(); +      assert(inst->dst_reg.file != PROGRAM_TEMPORARY +	     || inst->dst_reg.index < this->next_temp); +        /* First, do any copy propagation possible into the src regs. */        for (int r = 0; r < 3; r++) {  	 ir_to_mesa_instruction *first = NULL; | 
