diff options
author | Jason Ekstrand <[email protected]> | 2017-02-14 22:15:16 -0800 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2017-02-16 17:28:03 -0800 |
commit | 161d3e81bef19ddd7870ee88d50479439f28e82b (patch) | |
tree | 96bc2d094b6917d335ece4705283a28cf8753ea1 /src/compiler/glsl | |
parent | a4393bd97fe62e8299273bae769201c5c9c816ea (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.cpp | 10 |
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]); |