summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Schürmann <daniel@schuermann.dev>2020-07-23 09:41:07 +0200
committerEric Engestrom <eric@engestrom.ch>2020-08-05 22:23:20 +0200
commitfcd612ba5687456fa86c20f0016d5a887560515d (patch)
tree421fcf688be2481029235386d261035c67d75093
parent692df26b7d17b85d8d0b6f331b357db76e50f1d5 (diff)
aco: prevent infinite recursion in RA for subdword variables
Cc: 20.1 <mesa-stable@lists.freedesktop.org> Reviewed-by: Rhys Perry <pendingchaos02@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6024> (cherry picked from commit 4c89bfc4ec0ea29ab757b0391bf646673e483668)
-rw-r--r--.pick_status.json2
-rw-r--r--src/amd/compiler/aco_register_allocation.cpp2
2 files changed, 2 insertions, 2 deletions
diff --git a/.pick_status.json b/.pick_status.json
index 0bf57cf6e39..7fc2072923e 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -3910,7 +3910,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;