Fix Bug in assembler parser, SDT offset for 32-bit registers
This commit is contained in:
parent
3e0991e257
commit
abe02ecc12
@ -421,7 +421,7 @@ static void parseAddressingMode(a64inst_instruction *instr, char *tokens[], int
|
||||
instr->data.SingleTransferData.processOpData.singleDataTransferData.addressingMode = a64inst_UNSIGNED_OFFSET;
|
||||
if(operandCount > 1){
|
||||
int offset = getImmediate(operands[1]);
|
||||
instr->data.SingleTransferData.processOpData.singleDataTransferData.a64inst_addressingModeData.unsignedOffset = offset/8;
|
||||
instr->data.SingleTransferData.processOpData.singleDataTransferData.a64inst_addressingModeData.unsignedOffset = instr->data.SingleTransferData.regType == a64inst_W ? offset/4 : offset/8;
|
||||
}
|
||||
} else {
|
||||
if((isRegister(operands[0]) == 1)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user