From 4e702cfedad56ddace2941243f2b02f710e7c342 Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Sun, 10 Mar 2024 13:48:40 +0100 Subject: [ARM64_DYNAREC] Fixed printer for MVN with shift --- src/dynarec/arm64/arm64_printer.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/dynarec/arm64/arm64_printer.c b/src/dynarec/arm64/arm64_printer.c index 4802c946..7401942b 100644 --- a/src/dynarec/arm64/arm64_printer.c +++ b/src/dynarec/arm64/arm64_printer.c @@ -387,13 +387,13 @@ const char* arm64_print(uint32_t opcode, uintptr_t addr) } if(isMask(opcode, "f00100101wwiiiiiiiiiiiiiiiiddddd", &a)) { if(sf) { - uint64_t noti=~(uint64_t)imm; + uint64_t noti=~(((uint64_t)imm)<<(hw*16)); if(!hw) snprintf(buff, sizeof(buff), "MOVN %s, 0x%x\t; 0x%lx", Xt[Rd], imm, noti); else snprintf(buff, sizeof(buff), "MOVN %s, 0x%x LSL %d\t; 0x%lx", Xt[Rd], imm, 16*hw, noti); } else { - uint32_t noti=~(uint32_t)imm; + uint32_t noti=~(((uint32_t)imm)<<(hw*16)); if(!hw) snprintf(buff, sizeof(buff), "MOVN %s, 0x%x\t; 0x%x", Wt[Rd], imm, noti); else -- cgit 1.4.1