freedreno/ir3/ra: fix array conflicts for split/merged
authorRob Clark <robdclark@chromium.org>
Fri, 17 Jul 2020 18:06:55 +0000 (11:06 -0700)
committerRob Clark <robdclark@chromium.org>
Sat, 18 Jul 2020 16:21:09 +0000 (09:21 -0700)
commit912ad09112556d69e3c5fc75bf64416270b4602f
tree95cddcd8b9bca116b6723bcbac74bcec60a3009a
parentb1465c382b5ab545e524f7f63cadeb49762eaa96
freedreno/ir3/ra: fix array conflicts for split/merged

Properly handle the difference between split and merged register file
when determining where arrays can fit without conflicting with other
arrays or pre-colored instructions.

1) if not mergedregs, only consider other things with same precision
   as potentially conflicting
2) if mergedregs, calculate everything in therms of half-regs and
   convert back to fullregs in the end

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5957>
src/freedreno/ir3/ir3_ra.c