mirror of
https://github.com/TomHarte/CLK.git
synced 2024-11-26 08:49:37 +00:00
Add segment prefix for MOVS, LODS, etc.
This commit is contained in:
parent
0e027445d4
commit
e36274e5c2
@ -432,6 +432,27 @@ std::string InstructionSet::x86::to_string(
|
||||
) {
|
||||
std::string operation;
|
||||
|
||||
// Add segment override, if any, ahead of some operations that won't otherwise print it.
|
||||
switch(instruction.operation) {
|
||||
default: break;
|
||||
|
||||
case Operation::CMPS:
|
||||
case Operation::SCAS:
|
||||
case Operation::STOS:
|
||||
case Operation::LODS:
|
||||
case Operation::MOVS:
|
||||
switch(instruction.segment_override()) {
|
||||
default: break;
|
||||
case Source::ES: operation += "es "; break;
|
||||
case Source::CS: operation += "cs "; break;
|
||||
case Source::DS: operation += "ds "; break;
|
||||
case Source::SS: operation += "ss "; break;
|
||||
case Source::GS: operation += "gs "; break;
|
||||
case Source::FS: operation += "fs "; break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// Add a repetition prefix; it'll be one of 'rep', 'repe' or 'repne'.
|
||||
switch(instruction.repetition()) {
|
||||
case Repetition::None: break;
|
||||
|
@ -350,16 +350,6 @@ struct FailedExecution {
|
||||
@"7D.json.gz",
|
||||
@"7E.json.gz",
|
||||
@"7F.json.gz",
|
||||
@"A4.json.gz",
|
||||
@"A5.json.gz",
|
||||
@"A6.json.gz",
|
||||
@"A7.json.gz",
|
||||
@"AA.json.gz",
|
||||
@"AB.json.gz",
|
||||
@"AC.json.gz",
|
||||
@"AD.json.gz",
|
||||
@"AE.json.gz",
|
||||
@"AF.json.gz",
|
||||
@"CC.json.gz",
|
||||
@"E0.json.gz",
|
||||
@"E1.json.gz",
|
||||
|
Loading…
Reference in New Issue
Block a user