mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-07 17:58:26 +02:00
anv: fix invalid programming of BLEND_STATE
We can't enable Logic Op & Color Buffer Blend. The Vulkan spec seems
to say Logic Op discards blending.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable@lists.freedesktop.org
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3767
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8691>
(cherry picked from commit 998f38bd99)
This commit is contained in:
parent
b6310c5225
commit
a8031d0f78
2 changed files with 17 additions and 2 deletions
|
|
@ -346,7 +346,7 @@
|
|||
"description": "anv: fix invalid programming of BLEND_STATE",
|
||||
"nominated": true,
|
||||
"nomination_type": 0,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"master_sha": null,
|
||||
"because_sha": null
|
||||
},
|
||||
|
|
|
|||
|
|
@ -1180,7 +1180,22 @@ emit_cb_state(struct anv_graphics_pipeline *pipeline,
|
|||
#endif
|
||||
.LogicOpEnable = info->logicOpEnable,
|
||||
.LogicOpFunction = vk_to_gen_logic_op[info->logicOp],
|
||||
.ColorBufferBlendEnable = a->blendEnable,
|
||||
/* Vulkan specification 1.2.168, VkLogicOp:
|
||||
*
|
||||
* "Logical operations are controlled by the logicOpEnable and
|
||||
* logicOp members of VkPipelineColorBlendStateCreateInfo. If
|
||||
* logicOpEnable is VK_TRUE, then a logical operation selected by
|
||||
* logicOp is applied between each color attachment and the
|
||||
* fragment’s corresponding output value, and blending of all
|
||||
* attachments is treated as if it were disabled."
|
||||
*
|
||||
* From the Broadwell PRM Volume 2d: Command Reference: Structures:
|
||||
* BLEND_STATE_ENTRY:
|
||||
*
|
||||
* "Enabling LogicOp and Color Buffer Blending at the same time is
|
||||
* UNDEFINED"
|
||||
*/
|
||||
.ColorBufferBlendEnable = !info->logicOpEnable && a->blendEnable,
|
||||
.ColorClampRange = COLORCLAMP_RTFORMAT,
|
||||
.PreBlendColorClampEnable = true,
|
||||
.PostBlendColorClampEnable = true,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue