1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-06-25 18:30:07 +00:00

Fix address manipulation.

This commit is contained in:
Thomas Harte 2023-10-20 17:03:23 -04:00
parent 49ac2d8e0c
commit 0f5e0e17a4
2 changed files with 5 additions and 3 deletions

View File

@ -1405,8 +1405,8 @@ void cmps(const InstructionT &instruction, AddressT &eSI, AddressT &eDI, MemoryT
IntT lhs = memory.template access<IntT>(source_segment, eSI);
const IntT rhs = memory.template access<IntT>(Source::ES, eDI);
eSI += status.direction<AddressT>();
eDI += status.direction<AddressT>();
eSI += status.direction<AddressT>() * sizeof(IntT);
eDI += status.direction<AddressT>() * sizeof(IntT);
Primitive::sub<false, false>(lhs, rhs, status);

View File

@ -404,7 +404,7 @@ struct FailedExecution {
// TODO: LODS, MOVS, SCAS, STOS
*/
// CMPS
@"A6.json.gz", @"A7.json.gz",
@"A6.json.gz", @"A7.json.gz",
/*
@"E0.json.gz", // LOOPNE
@"E1.json.gz", // LOOPE
@ -844,8 +844,10 @@ struct FailedExecution {
test_metadata = test_metadata[@"reg"][[NSString stringWithFormat:@"%c", [name characterAtIndex:first_dot.location+1]]];
}
int index = 0;
for(NSDictionary *test in [self testsInFile:file]) {
[self applyExecutionTest:test metadata:test_metadata];
++index;
}
}