diff options
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp b/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp index b552cf8baf6..40b5715cccd 100644 --- a/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp +++ b/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp @@ -879,7 +879,8 @@ fs_instruction_scheduler::calculate_deps() } else if (inst->dst.is_accumulator()) { add_dep(last_accumulator_write, n); last_accumulator_write = n; - } else if (inst->dst.file != BAD_FILE) { + } else if (inst->dst.file != BAD_FILE && + !inst->dst.is_null()) { add_barrier_deps(n); } @@ -1005,7 +1006,8 @@ fs_instruction_scheduler::calculate_deps() } } else if (inst->dst.is_accumulator()) { last_accumulator_write = n; - } else if (inst->dst.file != BAD_FILE) { + } else if (inst->dst.file != BAD_FILE && + !inst->dst.is_null()) { add_barrier_deps(n); } @@ -1112,7 +1114,8 @@ vec4_instruction_scheduler::calculate_deps() } else if (inst->dst.is_accumulator()) { add_dep(last_accumulator_write, n); last_accumulator_write = n; - } else if (inst->dst.file != BAD_FILE) { + } else if (inst->dst.file != BAD_FILE && + !inst->dst.is_null()) { add_barrier_deps(n); } @@ -1199,7 +1202,8 @@ vec4_instruction_scheduler::calculate_deps() last_fixed_grf_write = n; } else if (inst->dst.is_accumulator()) { last_accumulator_write = n; - } else if (inst->dst.file != BAD_FILE) { + } else if (inst->dst.file != BAD_FILE && + !inst->dst.is_null()) { add_barrier_deps(n); } |