ir3: Fix constlen trimming when more than one stage is trimmed
The logic is supposed to find the stage with the maximum constlen to trim for each time we have to trim a stage. But by not resetting max_constlen each time, we would "trim" the same stage repeatedly, leaving us thinking the total is below the limit when it actually isn't. Cc: mesa-stable Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40127>
This commit is contained in:
parent
68c0031f56
commit
ae8928b638
1 changed files with 3 additions and 2 deletions
|
|
@ -841,11 +841,12 @@ trim_constlens(unsigned *constlens, unsigned first_stage, unsigned last_stage,
|
|||
cur_total += constlens[i];
|
||||
}
|
||||
|
||||
unsigned max_stage = 0;
|
||||
unsigned max_const = 0;
|
||||
uint32_t trimmed = 0;
|
||||
|
||||
while (cur_total > combined_limit) {
|
||||
unsigned max_stage = 0;
|
||||
unsigned max_const = 0;
|
||||
|
||||
for (unsigned i = first_stage; i <= last_stage; i++) {
|
||||
if (constlens[i] >= max_const) {
|
||||
max_stage = i;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue