1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-07-04 18:29:40 +00:00

Document slightly.

This commit is contained in:
Thomas Harte 2023-10-20 17:25:27 -04:00
parent bee094eba1
commit 8caad8b99d
2 changed files with 7 additions and 3 deletions

View File

@ -1362,9 +1362,10 @@ bool repetition_over(const InstructionT &instruction, AddressT &eCX) {
template <typename AddressT, typename InstructionT, typename FlowControllerT>
void repeat(const InstructionT &instruction, Status &status, AddressT &eCX, FlowControllerT &flow_controller) {
if(
instruction.repetition() == Repetition::None ||
!(--eCX) ||
instruction.repetition() == Repetition::None || // No repetition => stop.
!(--eCX) || // [e]cx is zero after being decremented => stop.
(instruction.repetition() == Repetition::RepNE) == status.flag<Flag::Zero>()
// repe and !zero, or repne and zero => stop.
) {
return;
}

View File

@ -404,7 +404,7 @@ struct FailedExecution {
// TODO: MOVS, SCAS, STOS
*/
// CMPS
@"A6.json.gz", @"A7.json.gz",
// @"A6.json.gz", @"A7.json.gz",
// LODS
@"AC.json.gz", @"AD.json.gz",
@ -849,6 +849,9 @@ struct FailedExecution {
int index = 0;
for(NSDictionary *test in [self testsInFile:file]) {
if(index == 10) {
printf("");
}
[self applyExecutionTest:test metadata:test_metadata];
++index;
}