Commit 50a8713d authored by Eric Anholt's avatar Eric Anholt

v3d: Avoid spilling that breaks the r5 usage after a ldvary.

Fixes bad rendering when forcing 2 spills in glxgears.

Cc: "18.2" <mesa-stable@lists.freedesktop.org>
parent f2c0d310
...@@ -94,6 +94,15 @@ v3d_choose_spill_node(struct v3d_compile *c, struct ra_graph *g, ...@@ -94,6 +94,15 @@ v3d_choose_spill_node(struct v3d_compile *c, struct ra_graph *g,
} }
} }
/* Refuse to spill a ldvary's dst, because that means
* that ldvary's r5 would end up being used across a
* thrsw.
*/
if (inst->qpu.sig.ldvary) {
assert(inst->dst.file == QFILE_TEMP);
BITSET_CLEAR(c->spillable, inst->dst.index);
}
if (inst->is_last_thrsw) if (inst->is_last_thrsw)
started_last_seg = true; started_last_seg = true;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment