If a shader uses TGSI_INTERPOLATE_LOC_SAMPLE, we need to emit the "sample"-keyword for the input-variable in the fragment shader. Since the "sampler"-keyword is a GLSL 4.00 feature, this requires us to enable GL_ARB_gpu_shader5. Unfortunately, opting in carefully on this is a bit trickier than for most other extensions, because we patch up vertex, geometry or tesselation evaluation shader outputs to match the fragment shader inputs. Since the previous patch adds padding for the require-statement directly after the #version string, we can just overwrite that padding with the require statement. This fixes the following tests: dEQP-GLES31.functional.shaders.multisample_interpolation.sample_qualifier.multisample_texture_1 dEQP-GLES31.functional.shaders.multisample_interpolation.sample_qualifier.multisample_texture_2 dEQP-GLES31.functional.shaders.multisample_interpolation.sample_qualifier.multisample_texture_4 dEQP-GLES31.functional.shaders.multisample_interpolation.sample_qualifier.multisample_texture_8 dEQP-GLES31.functional.shaders.multisample_interpolation.sample_qualifier.multisample_texture_16 dEQP-GLES31.functional.shaders.multisample_interpolation.sample_qualifier.multisample_rbo_1 dEQP-GLES31.functional.shaders.multisample_interpolation.sample_qualifier.multisample_rbo_2 dEQP-GLES31.functional.shaders.multisample_interpolation.sample_qualifier.multisample_rbo_4 dEQP-GLES31.functional.shaders.multisample_interpolation.sample_qualifier.multisample_rbo_8 dEQP-GLES31.functional.shaders.multisample_interpolation.sample_qualifier.multisample_rbo_16 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_sample.at_sample_id.multisample_texture_1 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_sample.at_sample_id.multisample_texture_2 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_sample.at_sample_id.multisample_texture_4 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_sample.at_sample_id.multisample_texture_8 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_sample.at_sample_id.multisample_texture_16 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_sample.at_sample_id.multisample_rbo_1 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_sample.at_sample_id.multisample_rbo_2 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_sample.at_sample_id.multisample_rbo_4 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_sample.at_sample_id.multisample_rbo_8 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_sample.at_sample_id.multisample_rbo_16 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_offset.at_sample_position.multisample_texture_1 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_offset.at_sample_position.multisample_texture_2 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_offset.at_sample_position.multisample_texture_4 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_offset.at_sample_position.multisample_texture_8 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_offset.at_sample_position.multisample_texture_16 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_offset.at_sample_position.multisample_rbo_1 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_offset.at_sample_position.multisample_rbo_2 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_offset.at_sample_position.multisample_rbo_4 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_offset.at_sample_position.multisample_rbo_8 dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_offset.at_sample_position.multisample_rbo_16 Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Reviewed-by: Dave Airlie <airlied@redhat.com>macos/master
parent
7014abab5d
commit
0ea74890db
Loading…
Reference in new issue