Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h
- index d623316..14b86b7 100644
- --- a/src/mesa/drivers/dri/i965/brw_fs.h
- +++ b/src/mesa/drivers/dri/i965/brw_fs.h
- @@ -534,11 +534,6 @@ public:
- void emit_color_write(int target, int index, int first_color_mrf);
- void emit_fb_writes();
- - bool try_rewrite_rhs_to_dst(ir_assignment *ir,
- - fs_reg dst,
- - fs_reg src,
- - fs_inst *pre_rhs_inst,
- - fs_inst *last_rhs_inst);
- void emit_assignment_writes(fs_reg &l, fs_reg &r,
- const glsl_type *type, bool predicated);
- void resolve_ud_negate(fs_reg *reg);
- diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
- index 9f8a44a..e316606 100644
- --- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
- +++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
- @@ -528,42 +528,6 @@ fs_visitor::emit_assignment_writes(fs_reg &l, fs_reg &r,
- }
- }
- -/* If the RHS processing resulted in an instruction generating a
- - * temporary value, and it would be easy to rewrite the instruction to
- - * generate its result right into the LHS instead, do so. This ends
- - * up reliably removing instructions where it can be tricky to do so
- - * later without real UD chain information.
- - */
- -bool
- -fs_visitor::try_rewrite_rhs_to_dst(ir_assignment *ir,
- - fs_reg dst,
- - fs_reg src,
- - fs_inst *pre_rhs_inst,
- - fs_inst *last_rhs_inst)
- -{
- - if (pre_rhs_inst == last_rhs_inst)
- - return false; /* No instructions generated to work with. */
- -
- - /* Only attempt if we're doing a direct assignment. */
- - if (ir->condition ||
- - !(ir->lhs->type->is_scalar() ||
- - (ir->lhs->type->is_vector() &&
- - ir->write_mask == (1 << ir->lhs->type->vector_elements) - 1)))
- - return false;
- -
- - /* Make sure the last instruction generated our source reg. */
- - if (last_rhs_inst->predicated ||
- - last_rhs_inst->force_uncompressed ||
- - last_rhs_inst->force_sechalf ||
- - !src.equals(&last_rhs_inst->dst))
- - return false;
- -
- - /* Success! Rewrite the instruction. */
- - last_rhs_inst->dst = dst;
- -
- - return true;
- -}
- -
- void
- fs_visitor::visit(ir_assignment *ir)
- {
- @@ -574,19 +538,12 @@ fs_visitor::visit(ir_assignment *ir)
- ir->lhs->accept(this);
- l = this->result;
- - fs_inst *pre_rhs_inst = (fs_inst *) this->instructions.get_tail();
- -
- ir->rhs->accept(this);
- r = this->result;
- - fs_inst *last_rhs_inst = (fs_inst *) this->instructions.get_tail();
- -
- assert(l.file != BAD_FILE);
- assert(r.file != BAD_FILE);
- - if (try_rewrite_rhs_to_dst(ir, l, r, pre_rhs_inst, last_rhs_inst))
- - return;
- -
- if (ir->condition) {
- emit_bool_to_cond_code(ir->condition);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement