mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 19:40:10 +01:00
pvr: Fix missing sample mask test instructions
The sample mask test instructions were only being added if the sample mask was an input or no other discard test was being done. In the failing test cases, instructions to handle alpha to one and/or alpha to coverage were being added and the program marked as having a discard test. This would lead to the instructions for the sample mask test to not be added. The fix is to specifically check for whether the instructions for sample mask have been added instead of check for any discard test. Fix deqp: dEQP-VK.pipeline.monolithic.extended_dynamic_state.after_pipelines.multi_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.after_pipelines.single_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_draw.large_static_rasterization_samples_off dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_draw.multi_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_draw.single_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_good_static.multi_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.before_good_static.single_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.between_pipelines.multi_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.between_pipelines.single_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.cmd_buffer_start.large_static_rasterization_samples_off dEQP-VK.pipeline.monolithic.extended_dynamic_state.cmd_buffer_start.multi_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.cmd_buffer_start.single_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.three_draws_dynamic.multi_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.three_draws_dynamic.single_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_dynamic.multi_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_dynamic.single_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_static.multi_sample_sample_mask_disable dEQP-VK.pipeline.monolithic.extended_dynamic_state.two_draws_static.single_sample_sample_mask_disable Signed-off-by: Nick Hamilton <nick.hamilton@imgtec.com>
This commit is contained in:
parent
821baac5c3
commit
c87ef90c61
1 changed files with 2 additions and 1 deletions
|
|
@ -560,7 +560,7 @@ static bool lower_isp_fb(nir_builder *b, struct pfo_state *state)
|
|||
has_depth_feedback = true;
|
||||
}
|
||||
|
||||
if (!state->has_discards) {
|
||||
if (!state->has_sample_check) {
|
||||
b->cursor = nir_after_instr(&state->last_discard_store->instr);
|
||||
|
||||
nir_def *smp_msk = nir_ishl(b, nir_imm_int(b, 1), nir_load_sample_id(b));
|
||||
|
|
@ -572,6 +572,7 @@ static bool lower_isp_fb(nir_builder *b, struct pfo_state *state)
|
|||
state->last_discard_store =
|
||||
nir_build_store_reg(b, val, state->discard_cond_reg);
|
||||
|
||||
state->has_sample_check = true;
|
||||
state->has_discards = true;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue