From 18df8e0fe4c051b32de95f0d12260c7837aa5709 Mon Sep 17 00:00:00 2001 From: GDBWNV <93523315+GDBWNV@users.noreply.github.com> Date: Wed, 12 Jun 2024 17:26:49 +0100 Subject: [PATCH] DPI wide move --- src/parser.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/parser.c b/src/parser.c index c5bc66f..2d71001 100644 --- a/src/parser.c +++ b/src/parser.c @@ -249,6 +249,28 @@ void classifyOpcode(char* opcode, a64inst_instruction *instr, char *operandList[ } } // wide move + else { + data.DPIOpType = 1; + data.dest = getOperandNumber(operandList[0]); + switch (opcode[3]) { + case 'k': + data.processOp = 3; + break; + case 'n': + data.processOp = 0; + break; + case 'z': + data.processOp = 2; + break; + default: + data.processOp = 1; + break; + } + data.processOpData.wideMovData.immediate = getOperandNumber(operandList[1]); + if (numOperands == 3){ + data.processOpData.wideMovData.shiftScalar = getOperandNumber(strtok(operandList[2], ' ')[1]); + } + } } }