diff options
| author | Francisco Jerez <currojerez@riseup.net> | 2016-07-21 16:56:05 -0700 |
|---|---|---|
| committer | Francisco Jerez <currojerez@riseup.net> | 2016-08-25 18:36:09 -0700 |
| commit | be12a1f36efcdd4628f199d4e11b01cc06787e8a (patch) | |
| tree | f391d55260f2642bc7f3b0240f3e01df6e6c42ca | |
| parent | 3daa0fae4b39a271f50f473edbe44712b6c8f040 (diff) | |
| download | external_mesa3d-be12a1f36efcdd4628f199d4e11b01cc06787e8a.tar.gz external_mesa3d-be12a1f36efcdd4628f199d4e11b01cc06787e8a.tar.bz2 external_mesa3d-be12a1f36efcdd4628f199d4e11b01cc06787e8a.zip | |
i965/fs: Remove special casing of framebuffer writes in scheduler code.
The reason why it was safe for the scheduler to ignore the side
effects of framebuffer write instructions was that its side effects
couldn't have had any influence on any other instruction in the
program, because we weren't doing framebuffer reads, and framebuffer
writes were always non-overlapping. We need actual memory dependency
analysis in order to determine whether a side-effectful instruction
can be reordered with respect to other instructions in the program.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
| -rw-r--r-- | src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp b/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp index a8987065f1..f15c0dfc55 100644 --- a/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp +++ b/src/mesa/drivers/dri/i965/brw_schedule_instructions.cpp @@ -969,8 +969,7 @@ is_scheduling_barrier(const fs_inst *inst) { return inst->opcode == FS_OPCODE_PLACEHOLDER_HALT || inst->is_control_flow() || - inst->eot || - (inst->has_side_effects() && inst->opcode != FS_OPCODE_FB_WRITE); + inst->has_side_effects(); } void |
