Mesa (master): aco: fix emitting slc for MUBUF instructions on GFX6-GFX7
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Jan 17 16:19:15 UTC 2020
Module: Mesa
Branch: master
Commit: b9b393f0ce4e8df85f2e7eafeb409b032819e33d
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b9b393f0ce4e8df85f2e7eafeb409b032819e33d
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Fri Jan 17 08:22:48 2020 +0100
aco: fix emitting slc for MUBUF instructions on GFX6-GFX7
Same as GFX10, only GFX8/GFX9 moved that bit near the opcode.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Daniel Schürmann <daniel at schuermann.dev>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3437>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3437>
---
src/amd/compiler/aco_assembler.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/amd/compiler/aco_assembler.cpp b/src/amd/compiler/aco_assembler.cpp
index a9dd6b441e2..dc341e59de0 100644
--- a/src/amd/compiler/aco_assembler.cpp
+++ b/src/amd/compiler/aco_assembler.cpp
@@ -321,7 +321,7 @@ void emit_instruction(asm_context& ctx, std::vector<uint32_t>& out, Instruction*
encoding |= 0x0FFF & mubuf->offset;
out.push_back(encoding);
encoding = 0;
- if (ctx.chip_class >= GFX10) {
+ if (ctx.chip_class <= GFX7 || ctx.chip_class >= GFX10) {
encoding |= (mubuf->slc ? 1 : 0) << 22;
}
encoding |= instr->operands[2].physReg() << 24;
More information about the mesa-commit
mailing list