Thumb parsing and encoding for SBC.
authorJim Grosbach <grosbach@apple.com>
Mon, 22 Aug 2011 23:55:58 +0000 (23:55 +0000)
committerJim Grosbach <grosbach@apple.com>
Mon, 22 Aug 2011 23:55:58 +0000 (23:55 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138311 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/AsmParser/ARMAsmParser.cpp
test/MC/ARM/basic-thumb-instructions.s

index 6bb59d4fa9e98a8a36a9453f725e5ee19b3086fc..953e3d95697bcaa578a61c8406ad02eca4593abe 100644 (file)
@@ -2755,7 +2755,8 @@ StringRef ARMAsmParser::splitMnemonic(StringRef Mnemonic,
   // predicated but do have a carry-set and so weren't caught above.
   if (Mnemonic != "adcs" && Mnemonic != "bics" && Mnemonic != "movs" &&
       Mnemonic != "muls" && Mnemonic != "smlals" && Mnemonic != "smulls" &&
-      Mnemonic != "umlals" && Mnemonic != "umulls" && Mnemonic != "lsls") {
+      Mnemonic != "umlals" && Mnemonic != "umulls" && Mnemonic != "lsls" &&
+      Mnemonic != "sbcs") {
     unsigned CC = StringSwitch<unsigned>(Mnemonic.substr(Mnemonic.size()-2))
       .Case("eq", ARMCC::EQ)
       .Case("ne", ARMCC::NE)
index d7b902bcda057857dee698c9f04f9b7f02717831..197094df490662b60b41e8cd3091242ee4faf1d6 100644 (file)
@@ -406,4 +406,12 @@ _func:
 @------------------------------------------------------------------------------
         rsbs r1, r3, #0
 
-       rsbs    r1, r3, #0              @ encoding: [0x59,0x42]
+@ CHECK: rsbs  r1, r3, #0              @ encoding: [0x59,0x42]
+
+
+@------------------------------------------------------------------------------
+@ SBC
+@------------------------------------------------------------------------------
+        sbcs r4, r3
+
+@ CHECK: sbcs  r4, r3                  @ encoding: [0x9c,0x41]