From dcd12aad46fd93f4d10c7fef609540ca27077283 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Wed, 5 Jun 2019 18:26:29 +0000 Subject: [PATCH] panfrost/midgard: Don't assign var locations ourselves 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 --- .../drivers/panfrost/ci/expected-failures.txt | 428 --------------------- .../drivers/panfrost/midgard/midgard_compile.c | 6 - 2 files changed, 434 deletions(-) diff --git a/src/gallium/drivers/panfrost/ci/expected-failures.txt b/src/gallium/drivers/panfrost/ci/expected-failures.txt index 0ae1132..1f4e95f 100644 --- a/src/gallium/drivers/panfrost/ci/expected-failures.txt +++ b/src/gallium/drivers/panfrost/ci/expected-failures.txt @@ -7,22 +7,6 @@ dEQP-GLES2.functional.color_clear.masked_scissored_rgba dEQP-GLES2.functional.color_clear.scissored_rgb dEQP-GLES2.functional.color_clear.scissored_rgba dEQP-GLES2.functional.color_clear.short_scissored_rgb -dEQP-GLES2.functional.default_vertex_attrib.mat2.vertex_attrib_1f -dEQP-GLES2.functional.default_vertex_attrib.mat2.vertex_attrib_1fv -dEQP-GLES2.functional.default_vertex_attrib.mat2.vertex_attrib_4f -dEQP-GLES2.functional.default_vertex_attrib.mat2.vertex_attrib_4fv -dEQP-GLES2.functional.default_vertex_attrib.mat3.vertex_attrib_1f -dEQP-GLES2.functional.default_vertex_attrib.mat3.vertex_attrib_1fv -dEQP-GLES2.functional.default_vertex_attrib.mat3.vertex_attrib_4f -dEQP-GLES2.functional.default_vertex_attrib.mat3.vertex_attrib_4fv -dEQP-GLES2.functional.default_vertex_attrib.mat4.vertex_attrib_1f -dEQP-GLES2.functional.default_vertex_attrib.mat4.vertex_attrib_1fv -dEQP-GLES2.functional.default_vertex_attrib.mat4.vertex_attrib_2f -dEQP-GLES2.functional.default_vertex_attrib.mat4.vertex_attrib_2fv -dEQP-GLES2.functional.default_vertex_attrib.mat4.vertex_attrib_3f -dEQP-GLES2.functional.default_vertex_attrib.mat4.vertex_attrib_3fv -dEQP-GLES2.functional.default_vertex_attrib.mat4.vertex_attrib_4f -dEQP-GLES2.functional.default_vertex_attrib.mat4.vertex_attrib_4fv dEQP-GLES2.functional.fbo.completeness.size.distinct dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgb565 dEQP-GLES2.functional.fbo.render.color.blend_npot_rbo_rgb565_depth_component16 @@ -320,24 +304,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 +311,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 +335,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 69e9cdc..dd86e8b 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); -- 2.7.4