From: Kenneth Graunke Date: Wed, 3 Apr 2013 04:11:51 +0000 (-0700) Subject: i965: Use a variable for the push constant size in kB. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=967514ce680f7bf785ab544c6174786dd20425de;p=mesa.git i965: Use a variable for the push constant size in kB. This clarifies that the offset of 2 is actually 16 kB / 8kB units. It also keys both computations off of a single variable, which should make it easier to change in the future. Signed-off-by: Kenneth Graunke Reviewed-by: Paul Berry --- diff --git a/src/mesa/drivers/dri/i965/gen7_urb.c b/src/mesa/drivers/dri/i965/gen7_urb.c index dafe1add51f..5ac388589b4 100644 --- a/src/mesa/drivers/dri/i965/gen7_urb.c +++ b/src/mesa/drivers/dri/i965/gen7_urb.c @@ -78,8 +78,9 @@ static void gen7_upload_urb(struct brw_context *brw) { struct intel_context *intel = &brw->intel; + const int push_size_kB = 16; /* Total space for entries is URB size - 16kB for push constants */ - int handle_region_size = (brw->urb.size - 16) * 1024; /* bytes */ + int handle_region_size = (brw->urb.size - push_size_kB) * 1024; /* bytes */ /* CACHE_NEW_VS_PROG */ unsigned vs_size = MAX2(brw->vs.prog_data->urb_entry_size, 1); @@ -92,7 +93,7 @@ gen7_upload_urb(struct brw_context *brw) brw->urb.nr_vs_entries = ROUND_DOWN_TO(nr_vs_entries, 8); /* URB Starting Addresses are specified in multiples of 8kB. */ - brw->urb.vs_start = 2; /* skip over push constants */ + brw->urb.vs_start = push_size_kB / 8; /* skip over push constants */ assert(brw->urb.nr_vs_entries % 8 == 0); assert(brw->urb.nr_gs_entries % 8 == 0);