diff --git a/InstructionSets/x86/Instruction.cpp b/InstructionSets/x86/Instruction.cpp index 11fda40ac..9a039dbc3 100644 --- a/InstructionSets/x86/Instruction.cpp +++ b/InstructionSets/x86/Instruction.cpp @@ -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; diff --git a/OSBindings/Mac/Clock SignalTests/8088Tests.mm b/OSBindings/Mac/Clock SignalTests/8088Tests.mm index a68ae569b..4e4fdf18a 100644 --- a/OSBindings/Mac/Clock SignalTests/8088Tests.mm +++ b/OSBindings/Mac/Clock SignalTests/8088Tests.mm @@ -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",