diff options
author | Rhys Perry <pendingchaos02@gmail.com> | 2019-11-27 17:08:27 +0000 |
---|---|---|
committer | Rhys Perry <pendingchaos02@gmail.com> | 2019-11-29 17:46:01 +0000 |
commit | 31e68e230f5800670e457414e8846a7b8fc23037 (patch) | |
tree | 129f180f79ea89184671e81aa750684588a7442c /src | |
parent | 082e3a68fada731757ee06d1afdfa2cf654a0ad9 (diff) |
aco: fix SADDR with FLAT on GFX10
The reference guide is incorrect and SADDR is actually used with FLAT on
GFX10.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Diffstat (limited to 'src')
-rw-r--r-- | src/amd/compiler/aco_assembler.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/amd/compiler/aco_assembler.cpp b/src/amd/compiler/aco_assembler.cpp index c9b5ca10684..54dc520bb19 100644 --- a/src/amd/compiler/aco_assembler.cpp +++ b/src/amd/compiler/aco_assembler.cpp @@ -431,7 +431,7 @@ void emit_instruction(asm_context& ctx, std::vector<uint32_t>& out, Instruction* assert(ctx.chip_class >= GFX10 || instr->operands[1].physReg() != 0x7F); assert(instr->format != Format::FLAT); encoding |= instr->operands[1].physReg() << 16; - } else if (instr->format != Format::FLAT) { + } else if (instr->format != Format::FLAT || ctx.chip_class >= GFX10) { /* SADDR is actually used with FLAT on GFX10 */ if (ctx.chip_class <= GFX9) encoding |= 0x7F << 16; else |