mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 11:18:08 +02:00
i965/vs: Do round-robin register allocation on gen6+ like we do in the FS.
This will free instruction scheduling to make better choices. No statistically significant performance difference on GLB2.7 (n=93). Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
parent
15e64de9e6
commit
74e670d0a3
1 changed files with 4 additions and 0 deletions
|
|
@ -102,6 +102,8 @@ brw_alloc_reg_set_for_classes(struct brw_context *brw,
|
|||
int class_count,
|
||||
int base_reg_count)
|
||||
{
|
||||
struct intel_context *intel = &brw->intel;
|
||||
|
||||
/* Compute the total number of registers across all classes. */
|
||||
int ra_reg_count = 0;
|
||||
for (int i = 0; i < class_count; i++) {
|
||||
|
|
@ -112,6 +114,8 @@ brw_alloc_reg_set_for_classes(struct brw_context *brw,
|
|||
brw->vs.ra_reg_to_grf = ralloc_array(brw, uint8_t, ra_reg_count);
|
||||
ralloc_free(brw->vs.regs);
|
||||
brw->vs.regs = ra_alloc_reg_set(brw, ra_reg_count);
|
||||
if (intel->gen >= 6)
|
||||
ra_set_allocate_round_robin(brw->vs.regs);
|
||||
ralloc_free(brw->vs.classes);
|
||||
brw->vs.classes = ralloc_array(brw, int, class_count + 1);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue