Mesa (master): aco: update bug workarounds for GFX10_3

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Aug 4 22:04:28 UTC 2020


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

Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Thu Jun 18 14:23:13 2020 +0100

aco: update bug workarounds for GFX10_3

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/5546>

---

 src/amd/compiler/aco_assembler.cpp   | 2 +-
 src/amd/compiler/aco_insert_NOPs.cpp | 4 +++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/amd/compiler/aco_assembler.cpp b/src/amd/compiler/aco_assembler.cpp
index 3972429a383..5e199d48e0a 100644
--- a/src/amd/compiler/aco_assembler.cpp
+++ b/src/amd/compiler/aco_assembler.cpp
@@ -787,7 +787,7 @@ static void fix_branches_gfx10(asm_context& ctx, std::vector<uint32_t>& out)
 
 void fix_branches(asm_context& ctx, std::vector<uint32_t>& out)
 {
-   if (ctx.chip_class >= GFX10)
+   if (ctx.chip_class == GFX10)
       fix_branches_gfx10(ctx, out);
 
    for (std::pair<int, SOPP_instruction*> &branch : ctx.branches) {
diff --git a/src/amd/compiler/aco_insert_NOPs.cpp b/src/amd/compiler/aco_insert_NOPs.cpp
index fe4525b75a0..a609c18d5dc 100644
--- a/src/amd/compiler/aco_insert_NOPs.cpp
+++ b/src/amd/compiler/aco_insert_NOPs.cpp
@@ -804,7 +804,9 @@ void mitigate_hazards(Program *program)
 
 void insert_NOPs(Program* program)
 {
-   if (program->chip_class >= GFX10)
+   if (program->chip_class >= GFX10_3)
+      ; /* no hazards/bugs to mitigate */
+   else if (program->chip_class >= GFX10)
       mitigate_hazards<NOP_ctx_gfx10, handle_instruction_gfx10>(program);
    else
       mitigate_hazards<NOP_ctx_gfx6, handle_instruction_gfx6>(program);



More information about the mesa-commit mailing list