summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorg Lehmann <dadschoorse@gmail.com>2022-12-17 12:32:49 +0100
committerMarge Bot <emma+marge@anholt.net>2023-01-11 00:00:38 +0000
commit9abe4850baf17453d9faaec04b90d8937cee28ff (patch)
tree14a5ef0f09c05e1096abb35049e4f8119eab403b
parent1ab80eb061b872ae3707c347ea52d7b57cfe4c18 (diff)
downloadmesa-9abe4850baf17453d9faaec04b90d8937cee28ff.tar.gz
aco: Handle NSA with vectors in get_mimg_nsa_dwords.
No Foz-DB changes. Reviewed-by: Rhys Perry <pendingchaos02@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20370>
-rw-r--r--src/amd/compiler/aco_assembler.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/amd/compiler/aco_assembler.cpp b/src/amd/compiler/aco_assembler.cpp
index 8d78351fd65..a49b466eca9 100644
--- a/src/amd/compiler/aco_assembler.cpp
+++ b/src/amd/compiler/aco_assembler.cpp
@@ -68,7 +68,8 @@ get_mimg_nsa_dwords(const Instruction* instr)
{
unsigned addr_dwords = instr->operands.size() - 3;
for (unsigned i = 1; i < addr_dwords; i++) {
- if (instr->operands[3 + i].physReg() != instr->operands[3].physReg().advance(i * 4))
+ if (instr->operands[3 + i].physReg() !=
+ instr->operands[3 + (i - 1)].physReg().advance(instr->operands[3 + (i - 1)].bytes()))
return DIV_ROUND_UP(addr_dwords - 1, 4);
}
return 0;