diff options
Diffstat (limited to 'lib/Target/ARM/AsmParser/ARMAsmParser.cpp')
-rw-r--r-- | lib/Target/ARM/AsmParser/ARMAsmParser.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/lib/Target/ARM/AsmParser/ARMAsmParser.cpp b/lib/Target/ARM/AsmParser/ARMAsmParser.cpp index 275fcb98a7..642cd9c930 100644 --- a/lib/Target/ARM/AsmParser/ARMAsmParser.cpp +++ b/lib/Target/ARM/AsmParser/ARMAsmParser.cpp @@ -744,15 +744,11 @@ bool ARMAsmParser::ParseInstruction(StringRef Name, SMLoc NameLoc, .Case("al", ARMCC::AL) .Default(~0U); - if (CC != ~0U) { - if (CC == ARMCC::LS && - (Head.compare("vmls") == 0 || Head.compare("vnmls") == 0)) { - CC = ARMCC::AL; - } else { - Head = Head.slice(0, Head.size() - 2); - } - } else { + if (CC == ~0U || + (CC == ARMCC::LS && (Head == "vmls" || Head == "vnmls"))) { CC = ARMCC::AL; + } else { + Head = Head.slice(0, Head.size() - 2); } Operands.push_back(ARMOperand::CreateToken(Head, NameLoc)); |