Fix ROR shift logic
This commit is contained in:
parent
d73111515e
commit
460b19aaf4
@ -225,7 +225,7 @@ static void executeDPRegister(Machine *state, a64inst_instruction *inst) {
|
|||||||
if (arithmLogicData->type != a64inst_DPR_LOGIC) {
|
if (arithmLogicData->type != a64inst_DPR_LOGIC) {
|
||||||
fprintf(stderr, "Attempting to perform ROR shift on non-logic register data processing instruction!\n");
|
fprintf(stderr, "Attempting to perform ROR shift on non-logic register data processing instruction!\n");
|
||||||
}
|
}
|
||||||
src2Val = truncateValue(src2Val >> shiftAmount | src2Val << (getMSBPos(regType) - shiftAmount), regType);
|
src2Val = truncateValue(src2Val >> shiftAmount | src2Val << (getMSBPos(regType) - shiftAmount + 1), regType);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user