From: Timothy Arceri Date: Thu, 23 Jun 2016 02:52:05 +0000 (+1000) Subject: i965: add helper for creating packing writemask X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=138aad06b3bc577f7ee2970ad02f3381da451896;p=mesa.git i965: add helper for creating packing writemask For example where n=3 first_component=1 this will give us 0xE (WRITEMASK_YZW). V2: Add assert to check first component is <= 4 (Suggested by Ken) Reviewed-by: Kenneth Graunke Reviewed-by: Edward O'Callaghan --- diff --git a/src/mesa/drivers/dri/i965/brw_reg.h b/src/mesa/drivers/dri/i965/brw_reg.h index 7eab7b51e38..5b427b22230 100644 --- a/src/mesa/drivers/dri/i965/brw_reg.h +++ b/src/mesa/drivers/dri/i965/brw_reg.h @@ -972,6 +972,13 @@ brw_writemask_for_size(unsigned n) return (1 << n) - 1; } +static inline unsigned +brw_writemask_for_component_packing(unsigned n, unsigned first_component) +{ + assert(first_component + n <= 4); + return (((1 << n) - 1) << first_component); +} + static inline struct brw_reg negate(struct brw_reg reg) {