DPI wide move
This commit is contained in:
parent
31b5174b20
commit
18df8e0fe4
22
src/parser.c
22
src/parser.c
@ -249,6 +249,28 @@ void classifyOpcode(char* opcode, a64inst_instruction *instr, char *operandList[
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// wide move
|
// 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]);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user