zink: unset line stipple ds3 state flags when stipple not available

Fixes: 7b4c1b3a42 ("zink: track and apply ds3 states only on change")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24478>
This commit is contained in:
Mike Blumenkrantz
2023-08-03 07:36:56 -04:00
committed by Marge Bot
parent b2a9881475
commit 122ffb0c88

View File

@@ -3250,6 +3250,10 @@ flush_batch(struct zink_context *ctx, bool sync)
ctx->ds3_states = BITFIELD_MASK(ZINK_DS3_BLEND_A2C);
if (!screen->info.dynamic_state3_feats.extendedDynamicState3AlphaToOneEnable)
ctx->ds3_states &= ~BITFIELD_BIT(ZINK_DS3_BLEND_A21);
if (!screen->info.dynamic_state3_feats.extendedDynamicState3LineStippleEnable)
ctx->ds3_states &= ~BITFIELD_BIT(ZINK_DS3_RAST_STIPPLE_ON);
if (screen->driver_workarounds.no_linestipple)
ctx->ds3_states &= ~BITFIELD_BIT(ZINK_DS3_RAST_STIPPLE);
}
ctx->oom_flush = false;
ctx->oom_stall = false;