diff options
Diffstat (limited to 'src/t_aarch64_emit.c')
| -rw-r--r-- | src/t_aarch64_emit.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/t_aarch64_emit.c b/src/t_aarch64_emit.c index 799b388..ca251f0 100644 --- a/src/t_aarch64_emit.c +++ b/src/t_aarch64_emit.c @@ -636,6 +636,10 @@ gencopy(uchar **pcode, enum irclass cls, Block *blk, int curi, Oper dst, Ref val } else { Xadr(pcode, KPTR, dst, src); } + } else if (src.t == OMEM) { + assert(dst.t == OREG); + assert(src.m.mode == AIMMIDX); + Xadd(pcode, cls, dst, reg2oper(src.m.base), mkoper(OIMM, .imm = src.m.disp)); } else assert(0); } |