[2/2] panfrost/midgard: Enable autovectorization

Submitted by Alyssa Rosenzweig on June 17, 2019, 6:36 p.m.

Details

Message ID 20190617183651.5938-2-alyssa.rosenzweig@collabora.com
State New
Headers show
Series "Series without cover letter" ( rev: 1 ) in Mesa

Not browsing as part of any series.

Commit Message

Alyssa Rosenzweig June 17, 2019, 6:36 p.m.
Enable nir_opt_vectorize.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
---
 src/gallium/drivers/panfrost/midgard/midgard_compile.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Patch hide | download patch | download mbox

diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
index cfb17572b35..69585ec421a 100644
--- a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
+++ b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
@@ -428,8 +428,7 @@  optimise_nir(nir_shader *nir)
                          nir_var_shader_out |
                          nir_var_function_temp);
 
-                /* TODO: Enable vectorize when merged upstream */
-                // NIR_PASS(progress, nir, nir_opt_vectorize);
+                NIR_PASS(progress, nir, nir_opt_vectorize);
         } while (progress);
 
         /* Must be run at the end to prevent creation of fsin/fcos ops */

Comments

Hi there,

this patch seems to have caused the following regressions:

+dEQP-GLES2.functional.shaders.conversions.vector_combine.bvec2_float_to_bvec3_fragment
+dEQP-GLES2.functional.shaders.conversions.vector_combine.float_bool_to_bvec2_fragment
+dEQP-GLES2.functional.shaders.conversions.vector_combine.float_float_float_to_bvec3_fragment
+dEQP-GLES2.functional.shaders.conversions.vector_combine.float_float_float_to_ivec3_fragment
+dEQP-GLES2.functional.shaders.conversions.vector_combine.float_float_to_bvec2_fragment
+dEQP-GLES2.functional.shaders.conversions.vector_combine.float_float_to_ivec2_fragment
+dEQP-GLES2.functional.shaders.conversions.vector_combine.int_int_int_to_bvec3_fragment
+dEQP-GLES2.functional.shaders.conversions.vector_combine.int_int_int_to_ivec3_fragment
+dEQP-GLES2.functional.shaders.conversions.vector_combine.int_int_to_bvec2_fragment
+dEQP-GLES2.functional.shaders.conversions.vector_combine.int_int_to_ivec2_fragment
+dEQP-GLES2.functional.shaders.conversions.vector_combine.vec2_bool_to_bvec3_fragment

For more details, see https://gitlab.freedesktop.org/tomeu/mesa/pipelines/43340

Should we revert it for now?

Cheers,

Tomeu

On Mon, 17 Jun 2019 at 20:37, Alyssa Rosenzweig
<alyssa.rosenzweig@collabora.com> wrote:
>
> Enable nir_opt_vectorize.
>
> Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
> ---
>  src/gallium/drivers/panfrost/midgard/midgard_compile.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
> index cfb17572b35..69585ec421a 100644
> --- a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
> +++ b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
> @@ -428,8 +428,7 @@ optimise_nir(nir_shader *nir)
>                           nir_var_shader_out |
>                           nir_var_function_temp);
>
> -                /* TODO: Enable vectorize when merged upstream */
> -                // NIR_PASS(progress, nir, nir_opt_vectorize);
> +                NIR_PASS(progress, nir, nir_opt_vectorize);
>          } while (progress);
>
>          /* Must be run at the end to prevent creation of fsin/fcos ops */
> --
> 2.20.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev