diff --git a/.pick_status.json b/.pick_status.json index 8f2959cdea4..66bf9d53102 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -85,7 +85,7 @@ "description": "intel/compiler: Don't insert barriers for NULL sources", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "eab1c55590b15260d6e1ceb65f96661a5e42ad00" }, diff --git a/src/intel/compiler/brw_schedule_instructions.cpp b/src/intel/compiler/brw_schedule_instructions.cpp index 3821114bf99..1da29055aea 100644 --- a/src/intel/compiler/brw_schedule_instructions.cpp +++ b/src/intel/compiler/brw_schedule_instructions.cpp @@ -1142,7 +1142,7 @@ fs_instruction_scheduler::calculate_deps() } } else if (inst->src[i].is_accumulator()) { add_dep(last_accumulator_write, n); - } else if (inst->src[i].file == ARF) { + } else if (inst->src[i].file == ARF && !inst->src[i].is_null()) { add_barrier_deps(n); } } @@ -1271,7 +1271,7 @@ fs_instruction_scheduler::calculate_deps() } } else if (inst->src[i].is_accumulator()) { add_dep(n, last_accumulator_write, 0); - } else if (inst->src[i].file == ARF) { + } else if (inst->src[i].file == ARF && !inst->src[i].is_null()) { add_barrier_deps(n); } } @@ -1395,7 +1395,7 @@ vec4_instruction_scheduler::calculate_deps() } else if (inst->src[i].is_accumulator()) { assert(last_accumulator_write); add_dep(last_accumulator_write, n); - } else if (inst->src[i].file == ARF) { + } else if (inst->src[i].file == ARF && !inst->src[i].is_null()) { add_barrier_deps(n); } } @@ -1480,7 +1480,7 @@ vec4_instruction_scheduler::calculate_deps() add_dep(n, last_fixed_grf_write); } else if (inst->src[i].is_accumulator()) { add_dep(n, last_accumulator_write); - } else if (inst->src[i].file == ARF) { + } else if (inst->src[i].file == ARF && !inst->src[i].is_null()) { add_barrier_deps(n); } }