add missing cmov aliases, this resolves rdar://8208499

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113189 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2010-09-07 00:05:45 +00:00
parent 7d284de955
commit e9e0fc5eed
2 changed files with 34 additions and 13 deletions

View File

@ -662,19 +662,33 @@ ParseInstruction(StringRef Name, SMLoc NameLoc,
.Case("jnle", "jg")
.Case("jpe", "jp")
.Case("jpo", "jnp")
.Case("cmovcl", "cmovbl")
.Case("cmovnal", "cmovbel")
.Case("cmovnbl", "cmovael")
.Case("cmovnbel", "cmoval")
.Case("cmovncl", "cmovael")
.Case("cmovngl", "cmovlel")
.Case("cmovnl", "cmovgel")
.Case("cmovngl", "cmovlel")
.Case("cmovngel", "cmovll")
.Case("cmovnll", "cmovgel")
.Case("cmovnlel", "cmovgl")
.Case("cmovnzl", "cmovnel")
.Case("cmovzl", "cmovel")
// 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("cmovnaw", "cmovbew").Case("cmovnal", "cmovbel")
.Case("cmovnaq", "cmovbeq").Case("cmovna", "cmovbe")
.Case("cmovnbw", "cmovaew").Case("cmovnbl", "cmovael")
.Case("cmovnbq", "cmovaeq").Case("cmovnb", "cmovae")
.Case("cmovnbew","cmovaw") .Case("cmovnbel","cmoval")
.Case("cmovnbeq","cmovaq") .Case("cmovnbe", "cmova")
.Case("cmovncw", "cmovaew").Case("cmovncl", "cmovael")
.Case("cmovncq", "cmovaeq").Case("cmovnc", "cmovae")
.Case("cmovngw", "cmovlew").Case("cmovngl", "cmovlel")
.Case("cmovngq", "cmovleq").Case("cmovng", "cmovle")
.Case("cmovnw", "cmovgew").Case("cmovnl", "cmovgel")
.Case("cmovnq", "cmovgeq").Case("cmovn", "cmovge")
.Case("cmovngw", "cmovlew").Case("cmovngl", "cmovlel")
.Case("cmovngq", "cmovleq").Case("cmovng", "cmovle")
.Case("cmovngew","cmovlw") .Case("cmovngel","cmovll")
.Case("cmovngeq","cmovlq") .Case("cmovnge", "cmovl")
.Case("cmovnlw", "cmovgew").Case("cmovnll", "cmovgel")
.Case("cmovnlq", "cmovgeq").Case("cmovnl", "cmovge")
.Case("cmovnlew","cmovgw") .Case("cmovnlel","cmovgl")
.Case("cmovnleq","cmovgq") .Case("cmovnle", "cmovg")
.Case("cmovnzw", "cmovnew").Case("cmovnzl", "cmovnel")
.Case("cmovnzq", "cmovneq").Case("cmovnz", "cmovne")
.Case("cmovzw", "cmovew") .Case("cmovzl", "cmovel")
.Case("cmovzq", "cmoveq") .Case("cmovz", "cmove")
.Case("fwait", "wait")
.Case("movzx", "movzb")
.Default(Name);

View File

@ -181,3 +181,10 @@ push $1
// rdar://8017530
// CHECK: sldtw 4
sldt 4
// rdar://8208499
// CHECK: cmovnew %bx, %ax
cmovnz %bx, %ax
// CHECK: cmovneq %rbx, %rax
cmovnzq %rbx, %rax