From 51b00c5cb9383e59a04431356e3b3605801d13e3 Mon Sep 17 00:00:00 2001 From: Francisco Jerez Date: Sat, 23 Nov 2013 12:08:00 -0800 Subject: [PATCH] i965: Add helper function to find out the signedness of a register type. Reviewed-by: Paul Berry --- src/mesa/drivers/dri/i965/brw_reg.h | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/mesa/drivers/dri/i965/brw_reg.h b/src/mesa/drivers/dri/i965/brw_reg.h index 143c5ceabec..f497366b444 100644 --- a/src/mesa/drivers/dri/i965/brw_reg.h +++ b/src/mesa/drivers/dri/i965/brw_reg.h @@ -182,6 +182,34 @@ type_sz(unsigned type) } } +static inline bool +type_is_signed(unsigned type) +{ + switch(type) { + case BRW_REGISTER_TYPE_D: + case BRW_REGISTER_TYPE_W: + case BRW_REGISTER_TYPE_F: + case BRW_REGISTER_TYPE_B: + case BRW_REGISTER_TYPE_V: + case BRW_REGISTER_TYPE_VF: + case BRW_REGISTER_TYPE_DF: + case BRW_REGISTER_TYPE_HF: + case BRW_REGISTER_TYPE_Q: + return true; + + case BRW_REGISTER_TYPE_UD: + case BRW_REGISTER_TYPE_UW: + case BRW_REGISTER_TYPE_UB: + case BRW_REGISTER_TYPE_UV: + case BRW_REGISTER_TYPE_UQ: + return false; + + default: + assert(!"Unreachable."); + return false; + } +} + /** * Construct a brw_reg. * \param file one of the BRW_x_REGISTER_FILE values -- 2.30.2