projects
/
platform
/
upstream
/
mesa.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
964a67f
)
agx: Don't use ssa_to_reg across blocks
author
Alyssa Rosenzweig
<alyssa@rosenzweig.io>
Tue, 1 Aug 2023 13:13:02 +0000
(09:13 -0400)
committer
Marge Bot
<emma+marge@anholt.net>
Fri, 11 Aug 2023 20:31:28 +0000
(20:31 +0000)
This is a footgun with live range spltiting.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24635>
src/asahi/compiler/agx_register_allocate.c
patch
|
blob
|
history
diff --git
a/src/asahi/compiler/agx_register_allocate.c
b/src/asahi/compiler/agx_register_allocate.c
index
2b10373
..
cce2aaf
100644
(file)
--- a/
src/asahi/compiler/agx_register_allocate.c
+++ b/
src/asahi/compiler/agx_register_allocate.c
@@
-708,7
+708,9
@@
reserve_live_in(struct ra_ctx *rctx)
set_ssa_to_reg(rctx, i, base);
} else {
/* If we don't emit a phi, there is already a unique register */
- base = rctx->ssa_to_reg[i];
+ agx_foreach_predecessor(rctx->block, pred) {
+ base = (*pred)->ssa_to_reg_out[i];
+ }
}
for (unsigned j = 0; j < rctx->ncomps[i]; ++j) {