diff options
Diffstat (limited to 'src/mesa')
| -rw-r--r-- | src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp | 5 | ||||
| -rw-r--r-- | src/mesa/drivers/dri/i965/brw_fs_vector_splitting.cpp | 3 | 
2 files changed, 1 insertions, 7 deletions
| diff --git a/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp b/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp index 478614090a..eba8a764e2 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp @@ -128,10 +128,7 @@ ir_channel_expressions_visitor::assign(ir_assignment *ir, int elem, ir_rvalue *v      */     assert(ir->write_mask == (1 << ir->lhs->type->components()) - 1); -   /* Smear the float across all the channels for the masked write. */ -   val_swiz = new(mem_ctx) ir_swizzle(val, 0, 0, 0, 0, -				      ir->lhs->type->components()); -   assign = new(mem_ctx) ir_assignment(lhs, val_swiz, NULL, (1 << elem)); +   assign = new(mem_ctx) ir_assignment(lhs, val, NULL, (1 << elem));     ir->insert_before(assign);  } diff --git a/src/mesa/drivers/dri/i965/brw_fs_vector_splitting.cpp b/src/mesa/drivers/dri/i965/brw_fs_vector_splitting.cpp index 00d5c20248..d4da86b3b0 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_vector_splitting.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_vector_splitting.cpp @@ -281,9 +281,6 @@ ir_vector_splitting_visitor::visit_leave(ir_assignment *ir)  	 if (rhs) {  	    new_rhs = new(mem_ctx) ir_dereference_variable(rhs->components[i]); -	    /* If we're writing into a writemask, smear it out to that channel. */ -	    if (!lhs) -	       new_rhs = new(mem_ctx) ir_swizzle(new_rhs, i, i, i, i, i + 1);  	 } else {  	    new_rhs = new(mem_ctx) ir_swizzle(ir->rhs->clone(mem_ctx, NULL),  					      i, i, i, i, 1); | 
