[Mesa-dev] [PATCH 01/14] nir: Add explicitly sized types
Connor Abbott
cwabbott0 at gmail.com
Fri Mar 11 00:00:46 UTC 2016
On Mon, Mar 7, 2016 at 3:45 AM, Samuel Iglesias Gonsálvez
<siglesias at igalia.com> wrote:
> From: Jason Ekstrand <jason.ekstrand at intel.com>
>
> v2: Fix size/type mask to properly handle 8-bit types.
>
> Signed-off-by: Juan A. Suarez Romero <jasuarez at igalia.com>
> ---
> src/compiler/nir/nir.h | 17 ++++++++++++++++-
> 1 file changed, 16 insertions(+), 1 deletion(-)
>
> diff --git a/src/compiler/nir/nir.h b/src/compiler/nir/nir.h
> index cccb3a4..659e98c 100644
> --- a/src/compiler/nir/nir.h
> +++ b/src/compiler/nir/nir.h
> @@ -605,9 +605,24 @@ typedef enum {
> nir_type_float,
> nir_type_int,
> nir_type_uint,
> - nir_type_bool
> + nir_type_bool,
> + nir_type_bool32 = 32 | nir_type_bool,
> + nir_type_int8 = 8 | nir_type_int,
> + nir_type_int16 = 16 | nir_type_int,
> + nir_type_int32 = 32 | nir_type_int,
> + nir_type_int64 = 64 | nir_type_int,
> + nir_type_uint8 = 8 | nir_type_uint,
> + nir_type_uint16 = 16 | nir_type_uint,
> + nir_type_uint32 = 32 | nir_type_uint,
> + nir_type_uint64 = 64 | nir_type_uint,
> + nir_type_float16 = 16 | nir_type_float,
> + nir_type_float32 = 32 | nir_type_float,
> + nir_type_float64 = 64 | nir_type_float,
> } nir_alu_type;
>
> +#define NIR_ALU_TYPE_SIZE_MASK 0xfffffff8
> +#define NIR_ALU_TYPE_BASE_TYPE_MASK 0x00000007
So I'm not really the one to be reviewing this series (after all, I
wrote most of it :) ) but one thing that I never quite liked, and
didn't get around to fixing, is how we use these raw constants all
over the place. Perhaps we could make things more readable by adding
nir_get_sized_type(), nir_get_unsized_type(), and nir_type_size()
helpers and then use those instead of or-ing/and-ing things together
everywhere.
> +
> typedef enum {
> NIR_OP_IS_COMMUTATIVE = (1 << 0),
> NIR_OP_IS_ASSOCIATIVE = (1 << 1),
> --
> 2.7.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list