Mesa (master): aco: fix validation error from vgpr spill/restore code

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Jun 17 11:11:04 UTC 2020


Module: Mesa
Branch: master
Commit: 1e791e51a65c3cf2b7f511c3bf12f9625428f701
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1e791e51a65c3cf2b7f511c3bf12f9625428f701

Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Tue Jun 16 19:13:04 2020 +0100

aco: fix validation error from vgpr spill/restore code

Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
Reviewed-by: Daniel Schürmann <daniel at schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5504>

---

 src/amd/compiler/aco_spill.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/amd/compiler/aco_spill.cpp b/src/amd/compiler/aco_spill.cpp
index 54b84488a0a..9b8833a64ba 100644
--- a/src/amd/compiler/aco_spill.cpp
+++ b/src/amd/compiler/aco_spill.cpp
@@ -1573,7 +1573,7 @@ void assign_spill_slots(spill_ctx& ctx, unsigned spills_to_vgpr) {
                   for (unsigned i = 0; i < temp.size(); i++)
                      bld.mubuf(opcode, scratch_rsrc, Operand(), scratch_offset, split->definitions[i].getTemp(), offset + i * 4, false);
                } else {
-                  bld.mubuf(opcode, scratch_rsrc, Operand(), scratch_offset, temp, offset, false);
+                  bld.mubuf(opcode, scratch_rsrc, Operand(v1), scratch_offset, temp, offset, false);
                }
             } else if (sgpr_slot.find(spill_id) != sgpr_slot.end()) {
                ctx.program->config->spilled_sgprs += (*it)->operands[0].size();
@@ -1641,7 +1641,7 @@ void assign_spill_slots(spill_ctx& ctx, unsigned spills_to_vgpr) {
                   }
                   bld.insert(vec);
                } else {
-                  bld.mubuf(opcode, def, scratch_rsrc, Operand(), scratch_offset, offset, false);
+                  bld.mubuf(opcode, def, scratch_rsrc, Operand(v1), scratch_offset, offset, false);
                }
             } else if (sgpr_slot.find(spill_id) != sgpr_slot.end()) {
                uint32_t spill_slot = sgpr_slot[spill_id];



More information about the mesa-commit mailing list