summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM64/AsmParser/ARM64AsmParser.cpp
diff options
context:
space:
mode:
authorTim Northover <tnorthover@apple.com>2014-04-30 13:36:56 +0000
committerTim Northover <tnorthover@apple.com>2014-04-30 13:36:56 +0000
commita307769b156e2f82749568ea56ec8aa5eeedda90 (patch)
treea8c6cd98a301025ddaf482ee7f52194a1a41a337 /llvm/lib/Target/ARM64/AsmParser/ARM64AsmParser.cpp
parentd53a671354a3bb4cd218513978e53193c7b6773e (diff)
downloadbcm5719-llvm-a307769b156e2f82749568ea56ec8aa5eeedda90.tar.gz
bcm5719-llvm-a307769b156e2f82749568ea56ec8aa5eeedda90.zip
AArch64/ARM64: copy support for bCC instead of b.CC across.
llvm-svn: 207646
Diffstat (limited to 'llvm/lib/Target/ARM64/AsmParser/ARM64AsmParser.cpp')
-rw-r--r--llvm/lib/Target/ARM64/AsmParser/ARM64AsmParser.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM64/AsmParser/ARM64AsmParser.cpp b/llvm/lib/Target/ARM64/AsmParser/ARM64AsmParser.cpp
index 115bff89c40..6a8310e8f28 100644
--- a/llvm/lib/Target/ARM64/AsmParser/ARM64AsmParser.cpp
+++ b/llvm/lib/Target/ARM64/AsmParser/ARM64AsmParser.cpp
@@ -3257,6 +3257,27 @@ bool ARM64AsmParser::parseOperand(OperandVector &Operands, bool isCondCode,
bool ARM64AsmParser::ParseInstruction(ParseInstructionInfo &Info,
StringRef Name, SMLoc NameLoc,
OperandVector &Operands) {
+ Name = StringSwitch<StringRef>(Name.lower())
+ .Case("beq", "b.eq")
+ .Case("bne", "b.ne")
+ .Case("bhs", "b.hs")
+ .Case("bcs", "b.cs")
+ .Case("blo", "b.lo")
+ .Case("bcc", "b.cc")
+ .Case("bmi", "b.mi")
+ .Case("bpl", "b.pl")
+ .Case("bvs", "b.vs")
+ .Case("bvc", "b.vc")
+ .Case("bhi", "b.hi")
+ .Case("bls", "b.ls")
+ .Case("bge", "b.ge")
+ .Case("blt", "b.lt")
+ .Case("bgt", "b.gt")
+ .Case("ble", "b.le")
+ .Case("bal", "b.al")
+ .Case("bnv", "b.nv")
+ .Default(Name);
+
// Create the leading tokens for the mnemonic, split by '.' characters.
size_t Start = 0, Next = Name.find('.');
StringRef Head = Name.slice(Start, Next);
OpenPOWER on IntegriCloud