mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 02:58:05 +02:00
pan/bi: Set clause_state.message conservatively
Accidentally prevented scheduling message-passing instructions to
anywhere but the last ADD of a clause.
total nops in shared programs: 86280 -> 86266 (-0.02%)
nops in affected programs: 1609 -> 1595 (-0.87%)
helped: 9
HURT: 4
Inconclusive result (value mean confidence interval includes 0).
total clauses in shared programs: 20993 -> 20813 (-0.86%)
clauses in affected programs: 3488 -> 3308 (-5.16%)
helped: 116
HURT: 0
Clauses are helped.
total quadwords in shared programs: 91697 -> 91572 (-0.14%)
quadwords in affected programs: 12257 -> 12132 (-1.02%)
helped: 53
HURT: 2
Quadwords are helped.
Fixes: f0c0082ab0 ("pan/bi: Schedule blocks")
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Tested-by: Icecream95 <ixn@disroot.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9446>
This commit is contained in:
parent
6322bc544e
commit
6cb1a9b754
1 changed files with 6 additions and 9 deletions
|
|
@ -1304,16 +1304,13 @@ bi_schedule_clause(bi_context *ctx, bi_block *block, struct bi_worklist st)
|
|||
tuple->add = tuple_state.add;
|
||||
|
||||
/* We may have a message, but only one per clause */
|
||||
if (tuple->add) {
|
||||
enum bifrost_message_type msg =
|
||||
bi_message_type_for_instr(tuple->add);
|
||||
assert(!(msg && clause->message_type));
|
||||
if (tuple->add && bi_must_message(tuple->add)) {
|
||||
assert(!clause_state.message);
|
||||
clause_state.message = true;
|
||||
|
||||
if (!clause->message_type) {
|
||||
clause->message_type = msg;
|
||||
clause->message = tuple->add;
|
||||
clause_state.message = true;
|
||||
}
|
||||
clause->message_type =
|
||||
bi_message_type_for_instr(tuple->add);
|
||||
clause->message = tuple->add;
|
||||
|
||||
switch (tuple->add->op) {
|
||||
case BI_OPCODE_ATEST:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue