radv: make sure to disable MRT compaction when compiling a PS epilog with GPL
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21140>
This commit is contained in:

committed by
Marge Bot

parent
16e4dd3e37
commit
06d17fccfb
@@ -2421,7 +2421,14 @@ radv_generate_graphics_pipeline_key(const struct radv_graphics_pipeline *pipelin
|
|||||||
!(lib_flags & VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT)) ||
|
!(lib_flags & VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT)) ||
|
||||||
key.ps.dynamic_ps_epilog);
|
key.ps.dynamic_ps_epilog);
|
||||||
|
|
||||||
key.ps.epilog = radv_pipeline_generate_ps_epilog_key(pipeline, state, key.ps.has_epilog);
|
/* Disable MRT compaction when it's not possible to know both the written color outputs and the
|
||||||
|
* color blend attachments.
|
||||||
|
*/
|
||||||
|
bool disable_mrt_compaction = key.ps.has_epilog ||
|
||||||
|
((lib_flags & VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT) &&
|
||||||
|
!(lib_flags & VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT));
|
||||||
|
|
||||||
|
key.ps.epilog = radv_pipeline_generate_ps_epilog_key(pipeline, state, disable_mrt_compaction);
|
||||||
|
|
||||||
key.dynamic_patch_control_points =
|
key.dynamic_patch_control_points =
|
||||||
!!(pipeline->dynamic_states & RADV_DYNAMIC_PATCH_CONTROL_POINTS);
|
!!(pipeline->dynamic_states & RADV_DYNAMIC_PATCH_CONTROL_POINTS);
|
||||||
|
Reference in New Issue
Block a user