Mesa (master): aco: fix register allocation for subdword instructions on GFX10

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri May 29 11:30:53 UTC 2020


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

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Fri May 29 10:02:39 2020 +0200

aco: fix register allocation for subdword instructions on GFX10

Cc: 20.1 <mesa-stable at lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Daniel Schürmann <daniel at schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5148>

---

 src/amd/compiler/aco_register_allocation.cpp | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/amd/compiler/aco_register_allocation.cpp b/src/amd/compiler/aco_register_allocation.cpp
index c4d5a482932..eca7008bc51 100644
--- a/src/amd/compiler/aco_register_allocation.cpp
+++ b/src/amd/compiler/aco_register_allocation.cpp
@@ -1898,10 +1898,8 @@ void register_allocation(Program *program, std::vector<TempSet>& live_out_per_bl
 
             if (!definition.isFixed()) {
                Temp tmp = definition.getTemp();
-               /* subdword instructions before RDNA write full registers */
                if (tmp.regClass().is_subdword() &&
-                   !instr_can_access_subdword(ctx, instr) &&
-                   ctx.program->chip_class <= GFX9) {
+                   !instr_can_access_subdword(ctx, instr)) {
                   assert(tmp.bytes() <= 4);
                   tmp = Temp(definition.tempId(), v1);
                }



More information about the mesa-commit mailing list