From 9bd28fe3a305605168417234a163b6702bbde9d6 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Mon, 26 Jan 2015 09:36:58 -0800 Subject: [PATCH] nir/opcodes: Simplify and fix the unpack_half_*_split_* constant expressions Previously, these functions were explicitly writing to dst.x and dst.y. However they both return only one component so writing to dst.y is invalid. Also, since they only return one component, we don't need the explicit assignment in the expression and can simplify it use an implicit assignment. Reviewed-by: Connor Abbott --- src/glsl/nir/nir_opcodes.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/glsl/nir/nir_opcodes.py b/src/glsl/nir/nir_opcodes.py index 5fe957296eb..0fa8bf543da 100644 --- a/src/glsl/nir/nir_opcodes.py +++ b/src/glsl/nir/nir_opcodes.py @@ -252,12 +252,10 @@ unpack_2x16("half") # Lowered floating point unpacking operations. -unop_horiz("unpack_half_2x16_split_x", 1, tfloat, 1, tunsigned, """ -dst.x = unpack_half_1x16((uint16_t)(src0.x & 0xffff)); -""") -unop_horiz("unpack_half_2x16_split_y", 1, tfloat, 1, tunsigned, """ -dst.y = unpack_half_1x16((uint16_t)(src0.x >> 16)); -""") +unop_horiz("unpack_half_2x16_split_x", 1, tfloat, 1, tunsigned, + "unpack_half_1x16((uint16_t)(src0.x & 0xffff))") +unop_horiz("unpack_half_2x16_split_y", 1, tfloat, 1, tunsigned, + "unpack_half_1x16((uint16_t)(src0.x >> 16))") # Bit operations, part of ARB_gpu_shader5. -- 2.30.2