From d1815c0cce2bfc5e28b47f63a82e41b343ea2b31 Mon Sep 17 00:00:00 2001 From: sBubshait Date: Fri, 14 Jun 2024 02:01:40 +0100 Subject: [PATCH] Fix Bug in handling wide moves shift scalar --- src/encode.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/encode.c b/src/encode.c index 4f6d508..df51d4b 100644 --- a/src/encode.c +++ b/src/encode.c @@ -85,8 +85,8 @@ word encodeDPImmediate(a64inst_instruction inst) { // if wide move else { setBits(&wrd, 23, 26, 0x5); //opi - // TODO: Check the following line, is it shiftScalar?: - setBits(&wrd, 21, 23, (data.processOpData.wideMovData.shiftScalar == 12)); // hw + uint8_t hw = data.processOpData.wideMovData.shiftScalar / 16; + setBits(&wrd, 21, 23, hw); // hw setBits(&wrd, 5, 21, data.processOpData.wideMovData.immediate); // imm16 }