-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256
On 11/03/16 01:08, Jason Ekstrand wrote: > On Thu, Mar 10, 2016 at 4:00 PM, Connor Abbott > <cwabbo...@gmail.com> wrote: > >> On Mon, Mar 7, 2016 at 3:45 AM, Samuel Iglesias Gonsálvez >> <sigles...@igalia.com> wrote: >>> From: Jason Ekstrand <jason.ekstr...@intel.com> >>> >>> v2: Fix size/type mask to properly handle 8-bit types. >>> >>> Signed-off-by: Juan A. Suarez Romero <jasua...@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. >> > > Agreed. > > Agreed. We saw it too but, as this is used in a lot in the fp64 patches, we were thinking on apply one patch at the end of the fp64 series adding those helper functions (maybe just macros like NIR_GET_UNSIZED_TYPE and NIR_GET_TYPE_SIZE) and adapting the users of the mask. However, we can add them here and modify the rest of fp64 patches if you prefer it. Sam >> >>> + typedef enum { NIR_OP_IS_COMMUTATIVE = (1 << 0), >>> NIR_OP_IS_ASSOCIATIVE = (1 << 1), -- 2.7.0 >>> >>> _______________________________________________ mesa-dev >>> mailing list mesa-dev@lists.freedesktop.org >>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev >> _______________________________________________ mesa-dev mailing >> list mesa-dev@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/mesa-dev >> > -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJW4nTAAAoJEH/0ujLxfcNDQmcP/3PDBMxX+z91XQ0wSY7QMuu8 I4BVir0n1J3g05S8Yid+z61vCOMNdDB9xmUCJmV1Jv+YuS4SB5GaluHj9jFBPgvj YQtT5SnoGC1tBEViAPa+nNRwxF+fxh8xLKG+OQ2IXqDMAdIsx5V772Ea8/anClhi q4d8Fw93URPubBKTTh8IMt/dOa0oN3L0Cka7062bLl27+Y2Ml8MyPVLEQPBI2WP8 ayMicIDco2ldRS3u/jteGc6R4GI9Ef8gIsSVyEYPKUYgNmVkun5LMJjpjbh2PXBB VaManLcCdv6Yf2GP9ehQjTp4rr0GLl2rcAaftt0pD7MN1ZzQlFp/opyIQpzFe+Ny hqzzvbn8wh/W4goKbfir6HpasaPC56AamTnHZ9zJVhaUIPjan/oSSRHRoK9kswib rpnj5WDQN9KKnuY89Pxoo/w8aesgyektLiFbsXQx7jbNVxKOdrvKwnhSjSQs0sUG C+e/2oLSMiH2VLnYT7iJoinD8IlQXgmYBo/IZvFgtcOfZdJRgSssrWQclfagv8MR dzNLUTR5sS6/GG+4nTuD14uGaswuToCRCNiq2CDnemFXMdtgkIkztj8dwZd8u9hY kP5UQKoW6KU+0fFf8PQez2YCFX/dxLXtRyP8uP+V5ZUh1y+Qv4TDwYacl/VG8Hlt kx7+UXIC4g/vUS5ONfP0 =6z48 -----END PGP SIGNATURE----- _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev