mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 09:38:07 +02:00
aco/cssa: reset equal_anc_out if merging fails
try_merge_merge_set() expects equal_anc_out to be Temp() in the beginning,
so we need to reset it in case it's used again.
Fixes compilation of metro_exodus/163b3b895730d37b with
VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHR.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Fixes: 18ba93e673 ("aco/cssa: rewrite lower_to_cssa pass")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28248>
This commit is contained in:
parent
f72cd2eae7
commit
0c0819f0da
1 changed files with 4 additions and 1 deletions
|
|
@ -305,8 +305,11 @@ try_merge_merge_set(cssa_ctx& ctx, Temp dst, merge_set& set_b)
|
|||
while (!dom.empty() && !dominates(ctx, dom.back(), current))
|
||||
dom.pop_back(); /* not the desired parent, remove */
|
||||
|
||||
if (!dom.empty() && interference(ctx, current, dom.back()))
|
||||
if (!dom.empty() && interference(ctx, current, dom.back())) {
|
||||
for (Temp t : union_set)
|
||||
ctx.merge_node_table[t.id()].equal_anc_out = Temp();
|
||||
return false; /* intersection detected */
|
||||
}
|
||||
|
||||
dom.emplace_back(current); /* otherwise, keep checking */
|
||||
if (current != dst)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue