intel/compiler: Fix missing tie-breaker in brw_nir_analyze_ubo_ranges() ordering code
Per Ken suggestion, use ascending order for the start offset.
Fixes: 6d28c6e52c
("i965: Select ranges of UBO data to be uploaded as push constants.")
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19731>
This commit is contained in:
@@ -67,16 +67,16 @@ cmp_ubo_range_entry(const void *va, const void *vb)
|
||||
const struct ubo_range_entry *a = va;
|
||||
const struct ubo_range_entry *b = vb;
|
||||
|
||||
/* Rank based on scores */
|
||||
/* Rank based on scores, descending order */
|
||||
int delta = score(b) - score(a);
|
||||
|
||||
/* Then use the UBO block index as a tie-breaker */
|
||||
/* Then use the UBO block index as a tie-breaker, descending order */
|
||||
if (delta == 0)
|
||||
delta = b->range.block - a->range.block;
|
||||
|
||||
/* Finally use the UBO offset as a second tie-breaker */
|
||||
/* Finally use the start offset as a second tie-breaker, ascending order */
|
||||
if (delta == 0)
|
||||
delta = b->range.block - a->range.block;
|
||||
delta = a->range.start - b->range.start;
|
||||
|
||||
return delta;
|
||||
}
|
||||
|
Reference in New Issue
Block a user