diff options
author | Jose Maria Casanova Crespo <[email protected]> | 2017-07-01 08:06:45 +0200 |
---|---|---|
committer | Jose Maria Casanova Crespo <[email protected]> | 2017-12-06 08:57:18 +0100 |
commit | 75a88d85671e03f6913dcc8bd288515e8ee8a99b (patch) | |
tree | a178806cd04c2116f2c35ca244eb147ca7640c61 /src/intel/compiler/brw_nir.c | |
parent | 2d28ca70005968c7becb4e598b97e72c8e4890a2 (diff) |
i965: Support for 16-bit base types in helper functions
v2: Fixed calculation of scalar size for 16-bit types. (Jason Ekstrand)
v3: Fix coding style (Topi Pohjolainen)
Signed-off-by: Jose Maria Casanova Crespo <[email protected]>
Signed-off-by: Eduardo Lima <[email protected]>
Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src/intel/compiler/brw_nir.c')
-rw-r--r-- | src/intel/compiler/brw_nir.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/intel/compiler/brw_nir.c b/src/intel/compiler/brw_nir.c index 8f3f77f89ae..265c63efdda 100644 --- a/src/intel/compiler/brw_nir.c +++ b/src/intel/compiler/brw_nir.c @@ -843,12 +843,18 @@ brw_type_for_nir_type(const struct gen_device_info *devinfo, nir_alu_type type) case nir_type_float: case nir_type_float32: return BRW_REGISTER_TYPE_F; + case nir_type_float16: + return BRW_REGISTER_TYPE_HF; case nir_type_float64: return BRW_REGISTER_TYPE_DF; case nir_type_int64: return devinfo->gen < 8 ? BRW_REGISTER_TYPE_DF : BRW_REGISTER_TYPE_Q; case nir_type_uint64: return devinfo->gen < 8 ? BRW_REGISTER_TYPE_DF : BRW_REGISTER_TYPE_UQ; + case nir_type_int16: + return BRW_REGISTER_TYPE_W; + case nir_type_uint16: + return BRW_REGISTER_TYPE_UW; default: unreachable("unknown type"); } @@ -867,6 +873,9 @@ brw_glsl_base_type_for_nir_type(nir_alu_type type) case nir_type_float32: return GLSL_TYPE_FLOAT; + case nir_type_float16: + return GLSL_TYPE_FLOAT16; + case nir_type_float64: return GLSL_TYPE_DOUBLE; @@ -878,6 +887,12 @@ brw_glsl_base_type_for_nir_type(nir_alu_type type) case nir_type_uint32: return GLSL_TYPE_UINT; + case nir_type_int16: + return GLSL_TYPE_INT16; + + case nir_type_uint16: + return GLSL_TYPE_UINT16; + default: unreachable("bad type"); } |