From b95b99b3c9aa7cdda09684c672178988fbe4730b Mon Sep 17 00:00:00 2001 From: Yang Liu Date: Fri, 12 Apr 2024 23:51:55 +0800 Subject: [RV64_DYNAREC] Fixed 66 C7 MOV opcode (#1440) --- src/dynarec/rv64/dynarec_rv64_66.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/dynarec/rv64/dynarec_rv64_66.c b/src/dynarec/rv64/dynarec_rv64_66.c index edce9940..3de0df07 100644 --- a/src/dynarec/rv64/dynarec_rv64_66.c +++ b/src/dynarec/rv64/dynarec_rv64_66.c @@ -1029,9 +1029,8 @@ uintptr_t dynarec64_66(dynarec_rv64_t* dyn, uintptr_t addr, uintptr_t ip, int ni INST_NAME("MOV Ew, Iw"); nextop = F8; if(MODREG) { - ed = xRAX+(nextop&7)+(rex.b<<3); - ADDI(x1, xZR, -1); - SRLI(x1, x1, 48); + ed = xRAX + (nextop & 7) + (rex.b << 3); + LUI(x1, 0xffff0); AND(ed, ed, x1); u16 = F16; MOV32w(x1, u16); -- cgit 1.4.1