mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-02 05:48:07 +02:00
ir3/ra: Fix logic bug in compress_regs_left
If we're allocating a source then we force is_killed to false, not to
true. Fixes a regression in
dEQP-GLES31.functional.synchronization.in_invocation.image_atomic_write_read
later.
Fixes: 0ffcb19b9d ("ir3: Rewrite register allocation")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14246>
This commit is contained in:
parent
c9adcb6051
commit
d371d807eb
1 changed files with 2 additions and 2 deletions
|
|
@ -972,9 +972,9 @@ compress_regs_left(struct ra_ctx *ctx, struct ra_file *file, unsigned size,
|
|||
assert(!interval->frozen);
|
||||
|
||||
/* Killed sources don't count because they go at the end and can
|
||||
* overlap the register we're trying to add.
|
||||
* overlap the register we're trying to add, unless it's a source.
|
||||
*/
|
||||
if (!interval->is_killed && !is_source) {
|
||||
if (!interval->is_killed || is_source) {
|
||||
removed_size += interval->physreg_end - interval->physreg_start;
|
||||
if (interval->interval.reg->flags & IR3_REG_HALF) {
|
||||
removed_half_size += interval->physreg_end -
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue