From: Timothy Arceri Date: Wed, 22 Jun 2016 23:32:39 +0000 (+1000) Subject: i965: add helpers for creating component layout swizzle X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4b57b53f85a7b125fa19508b5dcdd92b9e00c25f;p=mesa.git i965: add helpers for creating component layout swizzle This will be used to swizzle components to the beginning or end of the vector based on the component layout qualifier and whether we are doing a load or store. 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 38cf8e31371..7eab7b51e38 100644 --- a/src/mesa/drivers/dri/i965/brw_reg.h +++ b/src/mesa/drivers/dri/i965/brw_reg.h @@ -88,6 +88,9 @@ struct brw_device_info; #define BRW_SWIZZLE_ZWZW BRW_SWIZZLE4(2,3,2,3) #define BRW_SWIZZLE_WZYX BRW_SWIZZLE4(3,2,1,0) +#define BRW_SWZ_COMP_INPUT(comp) (BRW_SWIZZLE_XYZW >> ((comp)*2)) +#define BRW_SWZ_COMP_OUTPUT(comp) (BRW_SWIZZLE_XYZW << ((comp)*2)) + static inline bool brw_is_single_value_swizzle(unsigned swiz) {