radv: force persample shading when required.
authorDave Airlie <airlied@redhat.com>
Thu, 24 Nov 2016 00:18:21 +0000 (00:18 +0000)
committerDave Airlie <airlied@redhat.com>
Tue, 29 Nov 2016 22:48:03 +0000 (22:48 +0000)
commitf3a3fea973a145fe16f70866dcfc22c3c5322a91
tree0faefa4b5267b3f0d070885a68c446c432aa56df
parent6a62026dd46a267eb861bcdf8a7db449745aa32e
radv: force persample shading when required.

We need to force persample shading when
a) shader uses sample_id
b) shader uses sample_position
c) shader uses sample qualifier.

Also since ps_iter_samples can now change independently of the
rasterizer samples we need to move setting the regs more often.

This fixes:
dEQP-VK.pipeline.multisample_interpolation.centroid_interpolate_at_consistency.*
dEQP-VK.pipeline.multisample_interpolation.centroid_qualifier_inside_primitive.137_191_1.*
dEQP-VK.pipeline.multisample_interpolation.sample_interpolate_at_distinct_values.*
dEQP-VK.pipeline.multisample_interpolation.sample_qualifier_distinct_values.128_128_1.*

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Signed-off-by: Dave Airlie <airlied@redhat.com>
src/amd/common/ac_nir_to_llvm.c
src/amd/common/ac_nir_to_llvm.h
src/amd/vulkan/radv_cmd_buffer.c
src/amd/vulkan/radv_pipeline.c