panfrost/midgard: Don't assign var locations ourselves

Submitted by Alyssa Rosenzweig on June 6, 2019, 7:04 p.m.

Details

Message ID 20190606190500.421-1-alyssa.rosenzweig@collabora.com
State New
Headers show
Series "panfrost/midgard: Don't assign var locations ourselves" ( rev: 2 ) in Mesa

Not browsing as part of any series.

Commit Message

Alyssa Rosenzweig June 6, 2019, 7:04 p.m.
This piece of code was cargo-culted from the ir3 standalone compiler and
made sense when we were a standalone compiler ourselves. Unfortunately,
for the online compiler, mesa/st *already handles this for us* and if we
duplicate it here, we're duplicating it *incorrectly*. So just delete
these lines and fix a heck of a lot of tests.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
---
 .../drivers/panfrost/ci/expected-failures.txt | 412 ------------------
 .../panfrost/midgard/midgard_compile.c        |   6 -
 2 files changed, 418 deletions(-)

Patch hide | download patch | download mbox

diff --git a/src/gallium/drivers/panfrost/ci/expected-failures.txt b/src/gallium/drivers/panfrost/ci/expected-failures.txt
index 0ae11321ff4..6be9c83f4af 100644
--- a/src/gallium/drivers/panfrost/ci/expected-failures.txt
+++ b/src/gallium/drivers/panfrost/ci/expected-failures.txt
@@ -320,24 +320,6 @@  dEQP-GLES2.functional.polygon_offset.fixed16_render_with_units
 dEQP-GLES2.functional.polygon_offset.fixed16_result_depth_clamp
 dEQP-GLES2.functional.rasterization.limits.points
 dEQP-GLES2.functional.shaders.builtin_variable.fragcoord_w
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat2_to_mat2_fragment
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat2_to_mat2_vertex
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat2_to_mat3_fragment
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat2_to_mat3_vertex
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat2_to_mat4_fragment
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat2_to_mat4_vertex
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat3_to_mat2_fragment
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat3_to_mat2_vertex
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat3_to_mat3_fragment
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat3_to_mat3_vertex
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat3_to_mat4_fragment
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat3_to_mat4_vertex
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat4_to_mat2_fragment
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat4_to_mat2_vertex
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat4_to_mat3_fragment
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat4_to_mat3_vertex
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat4_to_mat4_fragment
-dEQP-GLES2.functional.shaders.conversions.matrix_to_matrix.mat4_to_mat4_vertex
 dEQP-GLES2.functional.shaders.conversions.scalar_to_matrix.bool_to_mat3_vertex
 dEQP-GLES2.functional.shaders.conversions.scalar_to_matrix.float_to_mat3_vertex
 dEQP-GLES2.functional.shaders.conversions.scalar_to_matrix.int_to_mat3_vertex
@@ -345,19 +327,6 @@  dEQP-GLES2.functional.shaders.functions.control_flow.return_after_continue_verte
 dEQP-GLES2.functional.shaders.functions.control_flow.return_after_loop_sequence_vertex
 dEQP-GLES2.functional.shaders.functions.control_flow.return_in_loop_if_fragment
 dEQP-GLES2.functional.shaders.functions.control_flow.return_in_loop_if_vertex
-dEQP-GLES2.functional.shaders.functions.datatypes.float_mat2_fragment
-dEQP-GLES2.functional.shaders.functions.datatypes.float_mat2_vertex
-dEQP-GLES2.functional.shaders.functions.datatypes.float_mat3_fragment
-dEQP-GLES2.functional.shaders.functions.datatypes.float_mat3_vertex
-dEQP-GLES2.functional.shaders.functions.datatypes.float_mat4_fragment
-dEQP-GLES2.functional.shaders.functions.datatypes.float_mat4_vertex
-dEQP-GLES2.functional.shaders.functions.datatypes.mat2_fragment
-dEQP-GLES2.functional.shaders.functions.datatypes.mat2_vertex
-dEQP-GLES2.functional.shaders.functions.datatypes.mat3_fragment
-dEQP-GLES2.functional.shaders.functions.datatypes.mat3_vertex
-dEQP-GLES2.functional.shaders.functions.datatypes.mat4_fragment
-dEQP-GLES2.functional.shaders.functions.datatypes.mat4_vertex
-dEQP-GLES2.functional.shaders.indexing.matrix_subscript.mat4_dynamic_loop_write_dynamic_loop_read_vertex
 dEQP-GLES2.functional.shaders.indexing.tmp_array.float_dynamic_loop_write_dynamic_loop_read_fragment
 dEQP-GLES2.functional.shaders.indexing.tmp_array.float_dynamic_loop_write_dynamic_loop_read_vertex
 dEQP-GLES2.functional.shaders.indexing.tmp_array.vec2_dynamic_loop_write_dynamic_loop_read_fragment
@@ -382,387 +351,6 @@  dEQP-GLES2.functional.shaders.indexing.vector_subscript.vec4_dynamic_loop_subscr
 dEQP-GLES2.functional.shaders.indexing.vector_subscript.vec4_dynamic_loop_subscript_write_static_loop_subscript_read_vertex
 dEQP-GLES2.functional.shaders.indexing.vector_subscript.vec4_dynamic_loop_subscript_write_static_subscript_read_fragment
 dEQP-GLES2.functional.shaders.indexing.vector_subscript.vec4_dynamic_loop_subscript_write_static_subscript_read_vertex
-dEQP-GLES2.functional.shaders.linkage.varying_type_mat2
-dEQP-GLES2.functional.shaders.linkage.varying_type_mat3
-dEQP-GLES2.functional.shaders.linkage.varying_type_mat4
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_highp_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_lowp_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.add.dynamic_mediump_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_highp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_highp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_highp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_highp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_highp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_highp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_lowp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_lowp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_lowp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_lowp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_lowp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_lowp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_mediump_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_mediump_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_mediump_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_mediump_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_mediump_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.add_assign.dynamic_mediump_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_highp_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_lowp_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.div.dynamic_mediump_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_highp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_highp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_highp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_highp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_highp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_highp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_lowp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_lowp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_lowp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_lowp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_lowp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_lowp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_mediump_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_mediump_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_mediump_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_mediump_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_mediump_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.div_assign.dynamic_mediump_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_highp_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_highp_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_highp_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_highp_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_highp_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_highp_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_lowp_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_lowp_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_lowp_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_lowp_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_lowp_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_lowp_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_mediump_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_mediump_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_mediump_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_mediump_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_mediump_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.matrixcompmult.dynamic_mediump_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat2_vec2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat2_vec2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat3_vec3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat3_vec3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat4_vec4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_mat4_vec4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_vec2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_vec2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_vec3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_vec3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_vec4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_highp_vec4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat2_vec2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat2_vec2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat3_vec3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat3_vec3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat4_vec4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_mat4_vec4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_vec2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_vec2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_vec3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_vec3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_vec4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_lowp_vec4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat2_vec2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat2_vec2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat3_vec3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat3_vec3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat4_vec4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_mat4_vec4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_vec2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_vec2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_vec3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_vec3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_vec4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul.dynamic_mediump_vec4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_highp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_highp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_highp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_highp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_highp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_highp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_lowp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_lowp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_lowp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_lowp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_lowp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_lowp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_mediump_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_mediump_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_mediump_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_mediump_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_mediump_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.mul_assign.dynamic_mediump_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_highp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_highp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_highp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_highp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_highp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_highp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_lowp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_lowp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_lowp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_lowp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_lowp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_lowp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_mediump_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_mediump_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_mediump_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_mediump_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_mediump_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.negation.dynamic_mediump_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_highp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_highp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_highp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_highp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_highp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_highp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_lowp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_lowp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_lowp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_lowp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_lowp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_lowp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_mediump_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_mediump_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_mediump_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_mediump_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_mediump_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.post_decrement.dynamic_mediump_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_highp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_highp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_highp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_highp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_highp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_highp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_lowp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_lowp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_lowp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_lowp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_lowp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_lowp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_mediump_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_mediump_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_mediump_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_mediump_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_mediump_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.post_increment.dynamic_mediump_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_highp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_highp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_highp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_highp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_highp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_highp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_lowp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_lowp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_lowp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_lowp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_lowp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_lowp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_mediump_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_mediump_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_mediump_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_mediump_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_mediump_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_decrement.dynamic_mediump_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_highp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_highp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_highp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_highp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_highp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_highp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_lowp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_lowp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_lowp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_lowp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_lowp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_lowp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_mediump_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_mediump_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_mediump_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_mediump_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_mediump_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.pre_increment.dynamic_mediump_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_highp_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_lowp_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat2_float_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat2_float_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat2_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat2_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat3_float_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat3_float_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat3_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat3_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat4_float_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat4_float_vertex
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat4_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.sub.dynamic_mediump_mat4_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_highp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_highp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_highp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_highp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_highp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_highp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_lowp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_lowp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_lowp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_lowp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_lowp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_lowp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_mediump_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_mediump_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_mediump_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_mediump_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_mediump_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.sub_assign.dynamic_mediump_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_highp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_highp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_highp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_highp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_highp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_highp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_lowp_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_lowp_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_lowp_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_lowp_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_lowp_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_lowp_mat4_vertex
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_mediump_mat2_fragment
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_mediump_mat2_vertex
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_mediump_mat3_fragment
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_mediump_mat3_vertex
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_mediump_mat4_fragment
-dEQP-GLES2.functional.shaders.matrix.unary_addition.dynamic_mediump_mat4_vertex
 dEQP-GLES2.functional.shaders.preprocessor.predefined_macros.line_2_fragment
 dEQP-GLES2.functional.shaders.preprocessor.predefined_macros.line_2_vertex
 dEQP-GLES2.functional.shaders.random.all_features.fragment.0
diff --git a/src/gallium/drivers/panfrost/midgard/midgard_compile.c b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
index 69e9cdcc145..dd86e8bceee 100644
--- a/src/gallium/drivers/panfrost/midgard/midgard_compile.c
+++ b/src/gallium/drivers/panfrost/midgard/midgard_compile.c
@@ -2355,12 +2355,6 @@  midgard_compile_shader_nir(nir_shader *nir, midgard_program *program, bool is_bl
         /* TODO: Decide this at runtime */
         ctx->uniform_cutoff = 8;
 
-        /* Assign var locations early, so the epilogue can use them if necessary */
-
-        nir_assign_var_locations(&nir->outputs, &nir->num_outputs, glsl_type_size);
-        nir_assign_var_locations(&nir->inputs, &nir->num_inputs, glsl_type_size);
-        nir_assign_var_locations(&nir->uniforms, &nir->num_uniforms, glsl_type_size);
-
         /* Initialize at a global (not block) level hash tables */
 
         ctx->ssa_constants = _mesa_hash_table_u64_create(NULL);