summaryrefslogtreecommitdiffstats
path: root/src/compiler/glsl
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2017-02-14 22:15:16 -0800
committerJason Ekstrand <[email protected]>2017-02-16 17:28:03 -0800
commit161d3e81bef19ddd7870ee88d50479439f28e82b (patch)
tree96bc2d094b6917d335ece4705283a28cf8753ea1 /src/compiler/glsl
parenta4393bd97fe62e8299273bae769201c5c9c816ea (diff)
nir: Combine the int and double [un]pack opcodes
NIR is a typeless IR and the two opcodes, when considered bitwise, do exactly the same thing. There's no reason to have two versions. Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/compiler/glsl')
-rw-r--r--src/compiler/glsl/glsl_to_nir.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/compiler/glsl/glsl_to_nir.cpp b/src/compiler/glsl/glsl_to_nir.cpp
index 96d8164ea43..00f20dabd66 100644
--- a/src/compiler/glsl/glsl_to_nir.cpp
+++ b/src/compiler/glsl/glsl_to_nir.cpp
@@ -1581,18 +1581,14 @@ nir_visitor::visit(ir_expression *ir)
result = nir_unpack_half_2x16(&b, srcs[0]);
break;
case ir_unop_pack_double_2x32:
- result = nir_pack_double_2x32(&b, srcs[0]);
- break;
- case ir_unop_unpack_double_2x32:
- result = nir_unpack_double_2x32(&b, srcs[0]);
- break;
case ir_unop_pack_int_2x32:
case ir_unop_pack_uint_2x32:
- result = nir_pack_int_2x32(&b, srcs[0]);
+ result = nir_pack_64_2x32(&b, srcs[0]);
break;
+ case ir_unop_unpack_double_2x32:
case ir_unop_unpack_int_2x32:
case ir_unop_unpack_uint_2x32:
- result = nir_unpack_int_2x32(&b, srcs[0]);
+ result = nir_unpack_64_2x32(&b, srcs[0]);
break;
case ir_unop_bitfield_reverse:
result = nir_bitfield_reverse(&b, srcs[0]);