Thumb2 t2MVNi assembly parsing to recognize ".w" suffix.
authorJim Grosbach <grosbach@apple.com>
Thu, 27 Oct 2011 17:16:55 +0000 (17:16 +0000)
committerJim Grosbach <grosbach@apple.com>
Thu, 27 Oct 2011 17:16:55 +0000 (17:16 +0000)
rdar://10348584

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143108 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMInstrThumb2.td
test/MC/ARM/basic-thumb2-instructions.s

index cc137a8982d053cd8ae25991b857d03d6fbc0422..cef4c7b645ecc456b5f754f390aa7741eff95107 100644 (file)
@@ -3921,7 +3921,9 @@ def : t2InstAlias<"ldrsb${p} $Rt, $addr",
 def : t2InstAlias<"ldrsh${p} $Rt, $addr",
                   (t2LDRSHpci rGPR:$Rt, t2ldrlabel:$addr, pred:$p)>;
 
-// Alias for MVN without the ".w" optional width specifier.
+// Alias for MVN with(out) the ".w" optional width specifier.
+def : t2InstAlias<"mvn${s}${p}.w $Rd, $imm",
+           (t2MVNi rGPR:$Rd, t2_so_imm:$imm, pred:$p, cc_out:$s)>;
 def : t2InstAlias<"mvn${s}${p} $Rd, $Rm",
            (t2MVNr rGPR:$Rd, rGPR:$Rm, pred:$p, cc_out:$s)>;
 def : t2InstAlias<"mvn${s}${p} $Rd, $ShiftedRm",
index 4927e58e5b5f9c61e86af8256131c29bd3053b8d..993591f8d1ea1c95cb409fd36e500469938f9082 100644 (file)
@@ -1231,7 +1231,7 @@ _func:
         mvns r0, #0x3fc0000
         itte eq
         mvnseq r1, #12
-        mvneq r1, #12
+        mvneq.w r1, #12
         mvnne r1, #12
 
 @ CHECK: mvns  r8, #21                 @ encoding: [0x7f,0xf0,0x15,0x08]
@@ -1250,7 +1250,7 @@ _func:
         mvns r2, r3
         mvn r5, r6, lsl #19
         mvn r5, r6, lsr #9
-        mvn r5, r6, asr #4
+        mvn.w r5, r6, asr #4
         mvn r5, r6, ror #6
         mvn r5, r6, rrx
         it eq