From f951849fd5d720f1302b92623e4f29b8d6f1af2a Mon Sep 17 00:00:00 2001 From: Hendiadyoin1 Date: Fri, 1 Apr 2022 13:50:48 +0200 Subject: [PATCH] LibX86: Don't print repz prefix for SSE instructions --- Userland/Libraries/LibX86/Instruction.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Userland/Libraries/LibX86/Instruction.cpp b/Userland/Libraries/LibX86/Instruction.cpp index acc82b06c1..4dc4d35131 100644 --- a/Userland/Libraries/LibX86/Instruction.cpp +++ b/Userland/Libraries/LibX86/Instruction.cpp @@ -1418,7 +1418,8 @@ String Instruction::to_string(u32 origin, SymbolProvider const* symbol_provider, builder.append(m_o32 ? "o32 " : "o16 "); if (has_lock_prefix()) builder.append("lock "); - if (has_rep_prefix()) + // Note: SSE instructions use these to toggle between packed and single data + if (has_rep_prefix() && !(m_descriptor->format > __SSE && m_descriptor->format < __EndFormatsWithRMByte)) builder.append(m_rep_prefix == Prefix::REPNZ ? "repnz " : "repz "); to_string_internal(builder, origin, symbol_provider, x32); return builder.to_string();