aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorlemon <lsof@mailbox.org>2025-11-27 21:35:22 +0100
committerlemon <lsof@mailbox.org>2025-11-27 21:35:22 +0100
commita86b5b99066c7369449c6d38dbccf1dbf6b65bca (patch)
tree30267ffc61cadda8cf955a8f334fffacbcd634a9
parentba40fd10d0c6066c07cd651c25cefba8d75df9e0 (diff)
isel: fix branch arg
-rw-r--r--amd64/isel.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/amd64/isel.c b/amd64/isel.c
index 1b10de5..9065ccf 100644
--- a/amd64/isel.c
+++ b/amd64/isel.c
@@ -563,6 +563,8 @@ static void
seljmp(struct function *fn, struct block *blk)
{
if (blk->jmp.t == Jb && blk->jmp.arg[0].bits) {
+ int curi = blk->ins.n;
+ fixarg(&blk->jmp.arg[0], NULL, blk, &curi);
union ref c = blk->jmp.arg[0];
if (c.t != RTMP) {
enum irclass cls = c.t == RICON ? KI32 : c.t == RXCON && conht[c.i].cls ? conht[c.i].cls : KPTR;