diff options
author | Alyssa Rosenzweig <[email protected]> | 2019-12-24 14:01:33 -0500 |
---|---|---|
committer | Alyssa Rosenzweig <[email protected]> | 2019-12-24 19:21:52 -0500 |
commit | 3af5a398f33751a839d114c8fd66c9c96a5bc5f7 (patch) | |
tree | fb070974b9166ebdb3dc6ae1369841ca02e94923 | |
parent | 843a6db6bb9408f49514dca2568d6bd5645a829a (diff) |
pan/midgard: Enable lower_(un)pack_* lowering
These show up in some blend shaders. Let's use the shared lowering and
remove our own.
Signed-off-by: Alyssa Rosenzweig <[email protected]>
-rw-r--r-- | src/panfrost/midgard/midgard_compile.h | 13 | ||||
-rw-r--r-- | src/panfrost/midgard/midgard_nir_algebraic.py | 2 |
2 files changed, 13 insertions, 2 deletions
diff --git a/src/panfrost/midgard/midgard_compile.h b/src/panfrost/midgard/midgard_compile.h index 51966b46471..97dac0e8125 100644 --- a/src/panfrost/midgard/midgard_compile.h +++ b/src/panfrost/midgard/midgard_compile.h @@ -123,6 +123,19 @@ static const nir_shader_compiler_options midgard_nir_options = { .lower_extract_word = true, .lower_rotate = true, + .lower_pack_half_2x16 = true, + .lower_pack_half_2x16_split = true, + .lower_pack_unorm_2x16 = true, + .lower_pack_snorm_2x16 = true, + .lower_pack_unorm_4x8 = true, + .lower_pack_snorm_4x8 = true, + .lower_unpack_half_2x16 = true, + .lower_unpack_half_2x16_split = true, + .lower_unpack_unorm_2x16 = true, + .lower_unpack_snorm_2x16 = true, + .lower_unpack_unorm_4x8 = true, + .lower_unpack_snorm_4x8 = true, + .lower_doubles_options = nir_lower_dmod, .vectorize_io = true, diff --git a/src/panfrost/midgard/midgard_nir_algebraic.py b/src/panfrost/midgard/midgard_nir_algebraic.py index faf83364c3a..951b4b23241 100644 --- a/src/panfrost/midgard/midgard_nir_algebraic.py +++ b/src/panfrost/midgard/midgard_nir_algebraic.py @@ -60,8 +60,6 @@ converts = [ # Totally redundant (('~f2f16', ('f2f32', 'a@16')), a), - - (('pack_half_2x16_split', 'a@32', 'b@32'), ('ior', ('ishl', ('i2i32', ('f2f16', b)), 16), ('i2i32', ('f2f16', a)))), ] # Midgard scales fsin/fcos arguments by pi. |