aboutsummaryrefslogtreecommitdiff
path: root/src/correct.c
diff options
context:
space:
mode:
authorKimplul <kimi.h.kuparinen@gmail.com>2024-04-09 20:32:48 +0300
committerKimplul <kimi.h.kuparinen@gmail.com>2024-04-09 20:32:48 +0300
commit9295e8f445dae6431f8e7c543eb8c374742b136d (patch)
treed85bbc15fb8d23089d4f5eeae44eececaaa9a2ee /src/correct.c
parent0f8532d4e7315b86e160abf4ced461e7678b5587 (diff)
downloadqbt-9295e8f445dae6431f8e7c543eb8c374742b136d.tar.gz
qbt-9295e8f445dae6431f8e7c543eb8c374742b136d.zip
add constant value to some instructions
Diffstat (limited to 'src/correct.c')
-rw-r--r--src/correct.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/correct.c b/src/correct.c
index 2654218..9191ff9 100644
--- a/src/correct.c
+++ b/src/correct.c
@@ -3,7 +3,7 @@
static size_t spill_ref(struct blk *b, size_t ii, struct insn i, size_t idx, size_t ri)
{
struct val tmp = tmp_val(ri++);
- struct insn new = insn_create(ADDR, I27, tmp, i.in[idx], noclass());
+ struct insn new = insn_create(ADDR, I27, tmp, i.in[idx], noclass(), 0);
i.in[idx] = tmp;
insn_at(b->insns, ii) = i;
insn_insert(b, new, ii);
@@ -13,7 +13,7 @@ static size_t spill_ref(struct blk *b, size_t ii, struct insn i, size_t idx, siz
static size_t spill_imm(struct blk *b, size_t ii, struct insn i, size_t idx, size_t ri)
{
struct val tmp = tmp_val(ri++);
- struct insn new = insn_create(COPY, I27, tmp, i.in[idx], noclass());
+ struct insn new = insn_create(COPY, I27, tmp, i.in[idx], noclass(), 0);
i.in[idx] = tmp;
insn_at(b->insns, ii) = i;
insn_insert(b, new, ii);
@@ -125,13 +125,13 @@ void correct(struct fn *f, size_t ri)
if (b->cmp[0].class == IMM) {
struct val t = tmp_val(ri++);
- insadd(b, COPY, I27, t, b->cmp[0], noclass());
+ insadd(b, COPY, I27, t, b->cmp[0], noclass(), 0);
b->cmp[0] = t;
}
if (b->cmp[1].class == IMM) {
struct val t = tmp_val(ri++);
- insadd(b, COPY, I27, t, b->cmp[0], noclass());
+ insadd(b, COPY, I27, t, b->cmp[0], noclass(), 0);
b->cmp[1] = t;
}
}