mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 18:18:06 +02:00
i965/fs: Add no_dd_{clear,check} fields to fs_inst.
And plumb them through. Also make the assert in the generator look like the vec4 one. Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
This commit is contained in:
parent
bcbb7c41b7
commit
6d2536395d
2 changed files with 10 additions and 6 deletions
|
|
@ -239,6 +239,8 @@ public:
|
|||
bool force_uncompressed:1;
|
||||
bool force_sechalf:1;
|
||||
bool force_writemask_all:1;
|
||||
bool no_dd_clear:1;
|
||||
bool no_dd_check:1;
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -1755,14 +1755,16 @@ fs_generator::generate_code(exec_list *instructions)
|
|||
break;
|
||||
}
|
||||
|
||||
if (inst->conditional_mod) {
|
||||
/* Set the conditional modifier on the last instruction we generated.
|
||||
* Also, make sure we only emitted one instruction - anything else
|
||||
* doesn't make sense.
|
||||
*/
|
||||
assert(p->next_insn_offset == last_insn_offset + 16);
|
||||
if (inst->no_dd_clear || inst->no_dd_check || inst->conditional_mod) {
|
||||
assert(p->next_insn_offset == last_insn_offset + 16 ||
|
||||
!"conditional_mod, no_dd_check, or no_dd_clear set for IR "
|
||||
"emitting more than 1 instruction");
|
||||
|
||||
brw_inst *last = &p->store[last_insn_offset / 16];
|
||||
|
||||
brw_inst_set_cond_modifier(brw, last, inst->conditional_mod);
|
||||
brw_inst_set_no_dd_clear(brw, last, inst->no_dd_clear);
|
||||
brw_inst_set_no_dd_check(brw, last, inst->no_dd_check);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue