aboutsummaryrefslogtreecommitdiffhomepage
path: root/amd64/isel.c
diff options
context:
space:
mode:
authorlemon <lsof@mailbox.org>2025-11-21 16:52:46 +0100
committerlemon <lsof@mailbox.org>2025-11-21 16:52:46 +0100
commit821adf9e5c962c97e46f3a215c876bc10916e302 (patch)
treeafbde7e0cb5f073b6bdbec1d25e086f5e094b31d /amd64/isel.c
parentec4cfe9db9afc1d1c633a922174f5bb0685b0c32 (diff)
remove umul
Diffstat (limited to 'amd64/isel.c')
-rw-r--r--amd64/isel.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/amd64/isel.c b/amd64/isel.c
index b17e541..2ae9a92 100644
--- a/amd64/isel.c
+++ b/amd64/isel.c
@@ -15,7 +15,6 @@ static const uchar opflags[NOPER] = {
[Oadd] = ZF|CLOBF,
[Osub] = ZF|CLOBF,
[Omul] = CLOBF,
- [Oumul] = CLOBF,
[Odiv] = CLOBF,
[Oudiv] = CLOBF,
[Orem] = CLOBF,
@@ -457,7 +456,7 @@ sel(struct function *fn, struct instr *ins, struct block *blk, int *curi)
}
}
/* fallthru */
- case Omul: case Oumul:
+ case Omul:
case Oand: case Oxor: case Oior:
/* commutative ops */
if (iscon(ins->l))
@@ -473,7 +472,7 @@ sel(struct function *fn, struct instr *ins, struct block *blk, int *curi)
case Onot:
ALU:
if (!(op == Oadd && kisint(ins->cls))) /* 3-address add is lea */
- if (!(in_range(op, Omul, Oumul) && kisint(ins->cls) && isimm32(ins->r))) /* for (I)MUL r,r/m,imm */
+ if (!(op == Omul && kisint(ins->cls) && isimm32(ins->r))) /* for (I)MUL r,r/m,imm */
ins->inplace = 1;
if (iscon(ins->l)) {
fixarg(&ins->l, ins, blk, curi);