radv/gfx10: emit DISABLE_CONSERVATIVE_ZPASS_COUNTS
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Fri, 12 Jul 2019 10:17:18 +0000 (12:17 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Fri, 12 Jul 2019 15:47:12 +0000 (17:47 +0200)
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
src/amd/vulkan/radv_cmd_buffer.c

index 6342548c1f5b8b5e86f18830ba8eff00f2c584d9..2bbb6a520961e09377d4553b47b55419a2dbb688 100644 (file)
@@ -1993,10 +1993,12 @@ void radv_set_db_count_control(struct radv_cmd_buffer *cmd_buffer)
        } else {
                const struct radv_subpass *subpass = cmd_buffer->state.subpass;
                uint32_t sample_rate = subpass ? util_logbase2(subpass->max_sample_count) : 0;
+               bool gfx10_perfect = cmd_buffer->device->physical_device->rad_info.chip_class >= GFX10 && has_perfect_queries;
 
                if (cmd_buffer->device->physical_device->rad_info.chip_class >= GFX7) {
                        db_count_control =
                                S_028004_PERFECT_ZPASS_COUNTS(has_perfect_queries) |
+                               S_028004_DISABLE_CONSERVATIVE_ZPASS_COUNTS(gfx10_perfect) |
                                S_028004_SAMPLE_RATE(sample_rate) |
                                S_028004_ZPASS_ENABLE(1) |
                                S_028004_SLICE_EVEN_ENABLE(1) |