Update Parser to fix bug in parsing multiply
This commit is contained in:
parent
6bd993b29e
commit
04df4ea795
@ -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 {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user