A64/data_processing_addsub: bug: {ADD,SUB}S (extended register) instructions write to ZR when d = 31
This commit is contained in:
parent
996ffd5488
commit
7c4b70751c
1 changed files with 2 additions and 10 deletions
|
@ -224,11 +224,7 @@ bool TranslatorVisitor::ADDS_ext(bool sf, Reg Rm, Imm<3> option, Imm<3> imm3, Re
|
||||||
|
|
||||||
ir.SetNZCV(ir.NZCVFrom(result));
|
ir.SetNZCV(ir.NZCVFrom(result));
|
||||||
|
|
||||||
if (Rd == Reg::SP) {
|
X(datasize, Rd, result);
|
||||||
SP(datasize, result);
|
|
||||||
} else {
|
|
||||||
X(datasize, Rd, result);
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -264,11 +260,7 @@ bool TranslatorVisitor::SUBS_ext(bool sf, Reg Rm, Imm<3> option, Imm<3> imm3, Re
|
||||||
|
|
||||||
ir.SetNZCV(ir.NZCVFrom(result));
|
ir.SetNZCV(ir.NZCVFrom(result));
|
||||||
|
|
||||||
if (Rd == Reg::SP) {
|
X(datasize, Rd, result);
|
||||||
SP(datasize, result);
|
|
||||||
} else {
|
|
||||||
X(datasize, Rd, result);
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue