Re: [Mesa-dev] [PATCH 04/22] nir/opcodes: Make unpack_half_2x16_split_* variable-width

2018-08-28 Thread Kenneth Graunke
On Friday, August 17, 2018 1:06:10 PM PDT Jason Ekstrand wrote:
> There is nothing inherent about these opcodes that requires them to only
> take scalars.  It's very convenient if we let them take vectors as well.
> ---
>  src/compiler/nir/nir_opcodes.py | 8 
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/src/compiler/nir/nir_opcodes.py b/src/compiler/nir/nir_opcodes.py
> index ed8e0ae9f39..4ef4ecc6f22 100644
> --- a/src/compiler/nir/nir_opcodes.py
> +++ b/src/compiler/nir/nir_opcodes.py
> @@ -304,10 +304,10 @@ unop_horiz("unpack_32_2x16", 2, tuint16, 1, tuint32,
>  # Lowered floating point unpacking operations.
>  
>  
> -unop_horiz("unpack_half_2x16_split_x", 1, tfloat32, 1, tuint32,
> -   "unpack_half_1x16((uint16_t)(src0.x & 0x))")
> -unop_horiz("unpack_half_2x16_split_y", 1, tfloat32, 1, tuint32,
> -   "unpack_half_1x16((uint16_t)(src0.x >> 16))")
> +unop_convert("unpack_half_2x16_split_x", tfloat32, tuint32,
> + "unpack_half_1x16((uint16_t)(src0 & 0x))")
> +unop_convert("unpack_half_2x16_split_y", tfloat32, tuint32,
> + "unpack_half_1x16((uint16_t)(src0 >> 16))")
>  
>  unop_convert("unpack_32_2x16_split_x", tuint16, tuint32, "src0")
>  unop_convert("unpack_32_2x16_split_y", tuint16, tuint32, "src0 >> 16")
> 

Reviewed-by: Kenneth Graunke 


signature.asc
Description: This is a digitally signed message part.
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


[Mesa-dev] [PATCH 04/22] nir/opcodes: Make unpack_half_2x16_split_* variable-width

2018-08-17 Thread Jason Ekstrand
There is nothing inherent about these opcodes that requires them to only
take scalars.  It's very convenient if we let them take vectors as well.
---
 src/compiler/nir/nir_opcodes.py | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/compiler/nir/nir_opcodes.py b/src/compiler/nir/nir_opcodes.py
index ed8e0ae9f39..4ef4ecc6f22 100644
--- a/src/compiler/nir/nir_opcodes.py
+++ b/src/compiler/nir/nir_opcodes.py
@@ -304,10 +304,10 @@ unop_horiz("unpack_32_2x16", 2, tuint16, 1, tuint32,
 # Lowered floating point unpacking operations.
 
 
-unop_horiz("unpack_half_2x16_split_x", 1, tfloat32, 1, tuint32,
-   "unpack_half_1x16((uint16_t)(src0.x & 0x))")
-unop_horiz("unpack_half_2x16_split_y", 1, tfloat32, 1, tuint32,
-   "unpack_half_1x16((uint16_t)(src0.x >> 16))")
+unop_convert("unpack_half_2x16_split_x", tfloat32, tuint32,
+ "unpack_half_1x16((uint16_t)(src0 & 0x))")
+unop_convert("unpack_half_2x16_split_y", tfloat32, tuint32,
+ "unpack_half_1x16((uint16_t)(src0 >> 16))")
 
 unop_convert("unpack_32_2x16_split_x", tuint16, tuint32, "src0")
 unop_convert("unpack_32_2x16_split_y", tuint16, tuint32, "src0 >> 16")
-- 
2.17.1

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev