mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-10 16:50:13 +01:00
i965/fs: Don't use backend_visitor::instructions after creating the CFG.
This is a fix for a regression introduced in commita9f8296d("i965/fs: Preserve the CFG in a few more places."). The errata this code works around is described in a comment before the function: "[DevBW, DevCL] Errata: A destination register from a send can not be used as a destination register until after it has been sourced by an instruction with a different destination register. The framebuffer write's sources must be in message registers, which SEND instructions cannot have as a destination. There's no way for this errata to affect anything at the end of the program. Just remove the code. Cc: 10.4, 10.5 <mesa-stable@lists.freedesktop.org> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=84613 Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commite214000f25)
This commit is contained in:
parent
a598a9bdfe
commit
741aeba26f
1 changed files with 0 additions and 10 deletions
|
|
@ -2842,16 +2842,6 @@ fs_visitor::insert_gen4_post_send_dependency_workarounds(bblock_t *block, fs_ins
|
|||
if (i == write_len)
|
||||
return;
|
||||
}
|
||||
|
||||
/* If we hit the end of the program, resolve all remaining dependencies out
|
||||
* of paranoia.
|
||||
*/
|
||||
fs_inst *last_inst = (fs_inst *)this->instructions.get_tail();
|
||||
assert(last_inst->eot);
|
||||
for (int i = 0; i < write_len; i++) {
|
||||
if (needs_dep[i])
|
||||
last_inst->insert_before(block, DEP_RESOLVE_MOV(first_write_grf + i));
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue