diff options
author | Jason Ekstrand <[email protected]> | 2019-06-20 16:13:39 -0500 |
---|---|---|
committer | Juan A. Suarez Romero <[email protected]> | 2019-07-15 10:00:59 +0000 |
commit | f5e70045e1ad7ff6c2cdd9a8eff682fcdd166067 (patch) | |
tree | fa18e5eaf0e645d7c2832cac25164f97e0dd7a8b /src/compiler/nir/nir.h | |
parent | d76ab7d9fb8898e5b1582d8b5dca14191787ae81 (diff) |
nir/loop_analyze: Fix phi-of-identical-alu detection
One issue was that the original version didn't check that swizzles
matched when comparing ALU instructions so it could end up matching
very different instructions. Using the nir_instrs_equal function from
nir_instr_set.c which we use for CSE should be much more reliable.
Another was that the loop assumes it will only run two iterations which
may not be true. If there's something which guarantees that this case
only happens for phis after ifs, it wasn't documented.
Fixes: 9e6b39e1d521 "nir: detect more induction variables"
Reviewed-by: Timothy Arceri <[email protected]>
(cherry picked from commit 9f7ffe41dd185487479ea8846df1f5cdbf1b83a6)
Diffstat (limited to 'src/compiler/nir/nir.h')
0 files changed, 0 insertions, 0 deletions