Update Parser to fix bug in parsing multiply

This commit is contained in:
sBubshait 2024-06-13 20:06:37 +01:00
parent 6bd993b29e
commit 04df4ea795

View File

@ -5,6 +5,7 @@
#include <stdbool.h> #include <stdbool.h>
#include "parser.h" #include "parser.h"
#include "a64instruction/a64instruction.h" #include "a64instruction/a64instruction.h"
#include "global.h"
#include "tokeniser.c" #include "tokeniser.c"
/** Prototypes */ /** Prototypes */
@ -330,6 +331,9 @@ void parseDPRegister(a64inst_instruction *inst, char *tokens[], int tokensCount)
if (tokensCount >= 5) { if (tokensCount >= 5) {
data->processOpData.multiplydata.summand = getOperandNumber(tokens[4]); data->processOpData.multiplydata.summand = getOperandNumber(tokens[4]);
data->processOpData.multiplydata.negProd = strcmp(tokens[4], "mneg") == 0; data->processOpData.multiplydata.negProd = strcmp(tokens[4], "mneg") == 0;
}else {
data->processOpData.multiplydata.summand = ZERO_REGISTER;
data->processOpData.multiplydata.negProd = false;
} }
} else { } else {