nir/opt_algebraic: Optimize unpacking of upcasts to 64bit integers.

Foz-DB Navi21:
Totals from 7 (0.01% of 134913) affected shaders:
CodeSize: 213364 -> 213028 (-0.16%)
Instrs: 38347 -> 38319 (-0.07%)
Latency: 780148 -> 779776 (-0.05%)
InvThroughput: 520098 -> 519851 (-0.05%)

Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18435>
This commit is contained in:
Georg Lehmann 2022-09-06 14:47:19 +02:00 committed by Marge Bot
parent 3601c28690
commit 4d7fe94f3a
1 changed files with 4 additions and 0 deletions

View File

@ -1466,6 +1466,10 @@ optimizations.extend([
(('unpack_64_2x32_split_y', ('pack_64_2x32_split', a, b)), b),
(('unpack_64_2x32_split_x', ('pack_64_2x32', a)), 'a.x'),
(('unpack_64_2x32_split_y', ('pack_64_2x32', a)), 'a.y'),
(('unpack_64_2x32_split_x', ('u2u64', 'a@32')), a),
(('unpack_64_2x32_split_y', ('u2u64', a)), 0),
(('unpack_64_2x32_split_x', ('i2i64', 'a@32')), a),
(('unpack_64_2x32_split_y', ('i2i64(is_used_once)', 'a@32')), ('ishr', a, 31)),
(('unpack_64_2x32', ('pack_64_2x32_split', a, b)), ('vec2', a, b)),
(('unpack_64_2x32', ('pack_64_2x32', a)), a),
(('unpack_double_2x32_dxil', ('pack_double_2x32_dxil', a)), a),