<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - [regression][bisected] "nir: Copy propagation between blocks" regression"
href="https://bugs.freedesktop.org/show_bug.cgi?id=108624#c3">Comment # 3</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - [regression][bisected] "nir: Copy propagation between blocks" regression"
href="https://bugs.freedesktop.org/show_bug.cgi?id=108624">bug 108624</a>
from <span class="vcard"><a class="email" href="mailto:caio.oliveira@intel.com" title="Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>"> <span class="fn">Caio Marcelo de Oliveira Filho</span></a>
</span></b>
<pre>commit 947f7b452a550c66cfb9a8c9518e35635eb25947
Author: Caio Marcelo de Oliveira Filho <<a href="mailto:caio.oliveira@intel.com">caio.oliveira@intel.com</a>>
Date: Fri Dec 14 16:10:32 2018 -0800
nir: properly find the entry to keep in copy_prop_vars
When copy propagation handles a store/copy, it iterates the current
copy entries to remove aliases, but keeps the "equal" entry (if
exists) to be updated.
The removal step may swap the entries around (to ensure there are no
holes), invalidating previous iteration pointers. The bug was saving
such pointer to use later. Change the code to first perform the
removals and then find the remaining right entry.
This was causing updates to be lost since they were being made to an
entry that was not part of the current copies.
Bugzilla: <a class="bz_bug_link
bz_status_NEW "
title="NEW - [regression][bisected] "nir: Copy propagation between blocks" regression"
href="show_bug.cgi?id=108624">https://bugs.freedesktop.org/show_bug.cgi?id=108624</a>
Fixes: b3c61469255 "nir: Copy propagation between blocks"
Cc: <a href="mailto:mesa-stable@lists.freedesktop.org">mesa-stable@lists.freedesktop.org</a>
Reviewed-by: Jason Ekstrand <<a href="mailto:jason@jlekstrand.net">jason@jlekstrand.net</a>></pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>