summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2010-10-29 21:56:51 +0000
committerJim Grosbach <grosbach@apple.com>2010-10-29 21:56:51 +0000
commit31f23b48ba4003f78ddad42a8ccc544b64d5f08d (patch)
tree7c1e4d06ee61187ed760e3997c1b372f77c51ab2 /llvm/lib
parent7149fab4d37b94cd6a7627fb15ab698e4519b9ef (diff)
downloadbcm5719-llvm-31f23b48ba4003f78ddad42a8ccc544b64d5f08d.tar.gz
bcm5719-llvm-31f23b48ba4003f78ddad42a8ccc544b64d5f08d.zip
add FIXME
llvm-svn: 117718
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
index 9bcced35f96..ecca95ccadd 100644
--- a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
+++ b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
@@ -718,6 +718,11 @@ bool ARMAsmParser::ParseInstruction(StringRef Name, SMLoc NameLoc,
// FIXME: We need a way to check whether a prefix supports predication,
// otherwise we will end up with an ambiguity for instructions that happen to
// end with a predicate name.
+ // FIXME: Likewise, some arithmetic instructions have an 's' prefix which
+ // indicates to update the condition codes. Those instructions have an
+ // additional immediate operand which encodes the prefix as reg0 or CPSR.
+ // Just checking for a suffix of 's' definitely creates ambiguities; e.g,
+ // the SMMLS instruction.
unsigned CC = StringSwitch<unsigned>(Head.substr(Head.size()-2))
.Case("eq", ARMCC::EQ)
.Case("ne", ARMCC::NE)
OpenPOWER on IntegriCloud