From: Paul Berry Date: Thu, 1 Sep 2011 22:30:21 +0000 (-0700) Subject: i965: Add functions to compute offsets within the VUE map. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7bb2dbfc9765c97d9c53ad954342419338018474;p=mesa.git i965: Add functions to compute offsets within the VUE map. Some parts of the i965 driver keep track of locations within the VUE (vertex URB entry) using byte offsets. This patch adds inline functions to compute these byte offsets using the VUE map. Reviewed-by: Eric Anholt --- diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h index bf15fd6cfcf..8cb42adc450 100644 --- a/src/mesa/drivers/dri/i965/brw_context.h +++ b/src/mesa/drivers/dri/i965/brw_context.h @@ -334,6 +334,24 @@ struct brw_vue_map { int num_slots; }; +/** + * Convert a VUE slot number into a byte offset within the VUE. + */ +static inline GLuint brw_vue_slot_to_offset(GLuint slot) +{ + return 16*slot; +} + +/** + * Convert a vert_result into a byte offset within the VUE. + */ +static inline GLuint brw_vert_result_to_offset(struct brw_vue_map *vue_map, + GLuint vert_result) +{ + return brw_vue_slot_to_offset(vue_map->vert_result_to_slot[vert_result]); +} + + struct brw_sf_prog_data { GLuint urb_read_length; GLuint total_grf;