Mesa (staging/20.1): aco: prevent infinite recursion in RA for subdword variables

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Jul 24 10:35:52 UTC 2020


Module: Mesa
Branch: staging/20.1
Commit: d33a45f615cf6deae28999ede93b00df510d379f
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=d33a45f615cf6deae28999ede93b00df510d379f

Author: Daniel Schürmann <daniel at schuermann.dev>
Date:   Thu Jul 23 09:41:07 2020 +0200

aco: prevent infinite recursion in RA for subdword variables

Cc: 20.1 <mesa-stable at lists.freedesktop.org>
Reviewed-by: Rhys Perry <pendingchaos02 at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6024>
(cherry picked from commit 4c89bfc4ec0ea29ab757b0391bf646673e483668)

---

 .pick_status.json                            | 2 +-
 src/amd/compiler/aco_register_allocation.cpp | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/.pick_status.json b/.pick_status.json
index e0d78d33be5..b442b703a59 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -301,7 +301,7 @@
         "description": "aco: prevent infinite recursion in RA for subdword variables",
         "nominated": true,
         "nomination_type": 0,
-        "resolution": 0,
+        "resolution": 1,
         "master_sha": null,
         "because_sha": null
     },
diff --git a/src/amd/compiler/aco_register_allocation.cpp b/src/amd/compiler/aco_register_allocation.cpp
index dfa70c624c1..ef733eb4cbc 100644
--- a/src/amd/compiler/aco_register_allocation.cpp
+++ b/src/amd/compiler/aco_register_allocation.cpp
@@ -396,7 +396,7 @@ std::pair<PhysReg, bool> get_reg_simple(ra_ctx& ctx,
    }
 
    if (stride == 1) {
-
+      info.rc = RegClass(rc.type(), size);
       for (unsigned stride = 8; stride > 1; stride /= 2) {
          if (size % stride)
             continue;



More information about the mesa-commit mailing list