diff options
author | Kenneth Graunke <[email protected]> | 2013-08-21 22:06:15 -0700 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2013-08-26 11:21:10 -0700 |
commit | a149f744d9dfc116860c04ce30256f7bed96e323 (patch) | |
tree | 206384ba9848681d0880e4cf63feea6c6f458737 /src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp | |
parent | 7aaaa8bc8fb851a4783292a5e1ffdfeda2451dae (diff) |
i965/vs: Move base_reg_count computation to brw_alloc_reg_set().
We're soon going to be calling brw_alloc_reg_set() from outside of the
visitor, where we don't have the precomputed "max_grf" variable handy.
Signed-off-by: Kenneth Graunke <[email protected]>
Reviewed-by: Paul Berry <[email protected]>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp b/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp index 091d5c1a153..fbd79d03a6a 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp @@ -97,8 +97,10 @@ vec4_visitor::reg_allocate_trivial() } static void -brw_alloc_reg_set(struct brw_context *brw, int base_reg_count) +brw_alloc_reg_set(struct brw_context *brw) { + int base_reg_count = brw->gen >= 7 ? GEN7_MRF_HACK_START : BRW_MAX_GRF; + /* After running split_virtual_grfs(), almost all VGRFs will be of size 1. * SEND-from-GRF sources cannot be split, so we also need classes for each * potential message length. @@ -177,7 +179,6 @@ vec4_visitor::reg_allocate() { unsigned int hw_reg_mapping[virtual_grf_count]; int payload_reg_count = this->first_non_payload_grf; - int base_reg_count = max_grf; /* Using the trivial allocator can be useful in debugging undefined * register access as a result of broken optimization passes. @@ -187,7 +188,7 @@ vec4_visitor::reg_allocate() calculate_live_intervals(); - brw_alloc_reg_set(brw, base_reg_count); + brw_alloc_reg_set(brw); int node_count = virtual_grf_count; int first_payload_node = node_count; |