Mesa (master): aco: always set FI on GFX10

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Jul 21 11:53:45 UTC 2020


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

Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Mon Jul 20 17:19:40 2020 +0100

aco: always set FI on GFX10

bounds_ctrl is set to true by default which works around some game bugs,
but that isn't enough on GFX10.

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

---

 src/amd/compiler/aco_assembler.cpp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/amd/compiler/aco_assembler.cpp b/src/amd/compiler/aco_assembler.cpp
index c36e8c9b51e..8d77951feff 100644
--- a/src/amd/compiler/aco_assembler.cpp
+++ b/src/amd/compiler/aco_assembler.cpp
@@ -622,6 +622,8 @@ void emit_instruction(asm_context& ctx, std::vector<uint32_t>& out, Instruction*
          encoding |= dpp->neg[1] << 22;
          encoding |= dpp->abs[0] << 21;
          encoding |= dpp->neg[0] << 20;
+         if (ctx.chip_class >= GFX10)
+            encoding |= 1 << 18; /* set Fetch Inactive to match GFX9 behaviour */
          encoding |= dpp->bound_ctrl << 19;
          encoding |= dpp->dpp_ctrl << 8;
          encoding |= (0xFF) & dpp_op.physReg();



More information about the mesa-commit mailing list