diff --git a/lib/Target/X86/AsmParser/X86AsmParser.cpp b/lib/Target/X86/AsmParser/X86AsmParser.cpp index 19e7ee2ba13..6a664ad4ce1 100644 --- a/lib/Target/X86/AsmParser/X86AsmParser.cpp +++ b/lib/Target/X86/AsmParser/X86AsmParser.cpp @@ -654,6 +654,8 @@ ParseInstruction(StringRef Name, SMLoc NameLoc, // Condition code aliases for 16-bit, 32-bit, 64-bit and unspec operands. .Case("cmovcw", "cmovbw") .Case("cmovcl", "cmovbl") .Case("cmovcq", "cmovbq") .Case("cmovc", "cmovb") + .Case("cmovnaew","cmovbw") .Case("cmovnael","cmovbl") + .Case("cmovnaeq","cmovbq") .Case("cmovnae", "cmovb") .Case("cmovnaw", "cmovbew").Case("cmovnal", "cmovbel") .Case("cmovnaq", "cmovbeq").Case("cmovna", "cmovbe") .Case("cmovnbw", "cmovaew").Case("cmovnbl", "cmovael") diff --git a/test/MC/AsmParser/X86/x86_32-new-encoder.s b/test/MC/AsmParser/X86/x86_32-new-encoder.s index 16978f7d1b9..f9cb206b6a6 100644 --- a/test/MC/AsmParser/X86/x86_32-new-encoder.s +++ b/test/MC/AsmParser/X86/x86_32-new-encoder.s @@ -107,6 +107,10 @@ retl // CHECK: encoding: [0x0f,0x42,0xd0] cmovbl %eax,%edx +// CHECK: cmovbw %bx, %bx +cmovnae %bx,%bx + + // CHECK: cmovbel %eax, %edx // CHECK: encoding: [0x0f,0x46,0xd0] cmovbel %eax,%edx