zink: rewrite 64bit shader i/o as 32bit
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Wed, 18 May 2022 14:11:41 +0000 (10:11 -0400)
committerMarge Bot <emma+marge@anholt.net>
Fri, 10 Jun 2022 02:35:12 +0000 (02:35 +0000)
commit5b2f850425e4c841529ff8339a1fbc5a26e9ff8c
treedd340af472a55940b6723357493fe7563dc98756
parent5ff65a6ae78d4a80a0aaa1c877ea9f86209f62c0
zink: rewrite 64bit shader i/o as 32bit

zink can't use lower_io, so this all has to be done manually and in
excruciating depth and detail

fixes (tu):
KHR-Single-GL46.arrays_of_arrays_gl.InteractionFunctionCalls2
KHR-GL46.gpu_shader_fp64.fp64.named_uniform_blocks
KHR-GL46.gpu_shader_fp64.fp64.varyings
KHR-GL46.vertex_attrib_binding.advanced-bindingUpdate
KHR-Single-GL46.enhanced_layouts.varying_array_components
KHR-Single-GL46.enhanced_layouts.varying_array_locations
KHR-Single-GL46.enhanced_layouts.varying_components
KHR-Single-GL46.enhanced_layouts.varying_locations
KHR-Single-GL46.enhanced_layouts.xfb_explicit_location
dEQP-GLES3.functional.transform_feedback.basic_types.interleaved.lines.highp_mat3x4
dEQP-GLES3.functional.transform_feedback.basic_types.interleaved.lines.mediump_vec3
dEQP-GLES3.functional.transform_feedback.basic_types.interleaved.points.mediump_vec4
dEQP-GLES3.functional.transform_feedback.basic_types.separate.points.highp_vec3

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16669>
src/gallium/drivers/zink/ci/zink-tu-a630-fails.txt
src/gallium/drivers/zink/ci/zink-tu-a630-skips.txt
src/gallium/drivers/zink/zink_compiler.c