freedreno/ir3: additional lowering
authorRob Clark <robdclark@gmail.com>
Tue, 19 Mar 2019 18:45:40 +0000 (14:45 -0400)
committerRob Clark <robdclark@gmail.com>
Thu, 21 Mar 2019 13:13:05 +0000 (09:13 -0400)
For some things that show up when we expose higher glsl

TODO check blob traces to see if we have instructions for some of this?
I guess we don't but worth a check..

Signed-off-by: Rob Clark <robdclark@gmail.com>
src/freedreno/ir3/ir3_nir.c

index 606e044d347d9b3ad82cae33ccb34afaf9141da5..0f647e3e8c2a4384140a45127369100c619b0d8e 100644 (file)
@@ -51,6 +51,9 @@ static const nir_shader_compiler_options options = {
                .lower_extract_word = true,
                .lower_all_io_to_temps = true,
                .lower_helper_invocation = true,
+               .lower_bitfield_insert_to_shifts = true,
+               .lower_bitfield_extract_to_shifts = true,
+               .lower_bfm = true,
 };
 
 /* we don't want to lower vertex_id to _zero_based on newer gpus: */
@@ -74,6 +77,9 @@ static const nir_shader_compiler_options options_a6xx = {
                .lower_extract_word = true,
                .lower_all_io_to_temps = true,
                .lower_helper_invocation = true,
+               .lower_bitfield_insert_to_shifts = true,
+               .lower_bitfield_extract_to_shifts = true,
+               .lower_bfm = true,
 };
 
 const nir_shader_compiler_options *