Thumb assembly parsing and encoding for NEG.
authorJim Grosbach <grosbach@apple.com>
Fri, 19 Aug 2011 22:51:03 +0000 (22:51 +0000)
committerJim Grosbach <grosbach@apple.com>
Fri, 19 Aug 2011 22:51:03 +0000 (22:51 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138131 91177308-0d34-0410-b5e6-96231b3b80d8

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

index 258d692b1261ff1c9ec84de07bda2f809d68a36e..6a14387640e967e94b18634cee03004ee146aa18 100644 (file)
@@ -2831,7 +2831,7 @@ getMnemonicAcceptInfo(StringRef Mnemonic, bool &CanAcceptCarrySet,
       Mnemonic == "umlal" || Mnemonic == "orr" || Mnemonic == "mvn" ||
       Mnemonic == "rsb" || Mnemonic == "rsc" || Mnemonic == "orn" ||
       Mnemonic == "sbc" || Mnemonic == "mla" || Mnemonic == "umull" ||
-      Mnemonic == "eor" || Mnemonic == "smlal" ||
+      Mnemonic == "eor" || Mnemonic == "smlal" || Mnemonic == "neg" ||
       // FIXME: We need a better way. This really confused Thumb2
       // parsing for 'mov'.
       (Mnemonic == "mov" && !isThumbOne())) {
index 0e4c58074022fdc8d0cdb4c27d65f56a0996a237..5e45c3c7dc25e8da1344a4e70efe80186cc1d8d3 100644 (file)
@@ -339,3 +339,11 @@ _func:
         mvns r6, r3
 
 @ CHECK: mvns  r6, r3                  @ encoding: [0xde,0x43]
+
+
+@------------------------------------------------------------------------------
+@ NEG
+@------------------------------------------------------------------------------
+        negs r3, r4
+
+@ CHECK: rsbs  r3, r4, #0              @ encoding: [0x63,0x42]