[llvm-commits] [llvm] r123189 - in /llvm/trunk: lib/Target/ARM/AsmParser/ARMAsmParser.cpp test/MC/ARM/neon-absdiff-encoding.s test/MC/ARM/neon-bitcount-encoding.s test/MC/ARM/neon-pairwise-encoding.s

Daniel Dunbar daniel at zuster.org
Mon Jan 10 13:01:03 PST 2011


Author: ddunbar
Date: Mon Jan 10 15:01:03 2011
New Revision: 123189

URL: http://llvm.org/viewvc/llvm-project?rev=123189&view=rev
Log:
McARM: Flush out hard coded known non-predicated mnemonic list.

Modified:
    llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    llvm/trunk/test/MC/ARM/neon-absdiff-encoding.s
    llvm/trunk/test/MC/ARM/neon-bitcount-encoding.s
    llvm/trunk/test/MC/ARM/neon-pairwise-encoding.s

Modified: llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp?rev=123189&r1=123188&r2=123189&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp (original)
+++ llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp Mon Jan 10 15:01:03 2011
@@ -869,9 +869,18 @@
 // FIXME: Would be nice to autogen this.
 static unsigned SplitMnemonicAndCC(StringRef &Mnemonic) {
   // Ignore some mnemonics we know aren't predicated forms.
-  if (Mnemonic == "movs" ||
-      Mnemonic == "vmls" ||
-      Mnemonic == "vnmls")
+  if (Mnemonic == "teq" || Mnemonic == "vceq" ||
+      Mnemonic == "movs" ||
+      Mnemonic == "svc" ||
+      (Mnemonic == "mls" || Mnemonic == "smmls" || Mnemonic == "vcls" ||
+       Mnemonic == "vmls" || Mnemonic == "vnmls") ||
+      Mnemonic == "vacge" || Mnemonic == "vcge" ||
+      Mnemonic == "vclt" ||
+      Mnemonic == "vacgt" || Mnemonic == "vcgt" ||
+      Mnemonic == "vcle" ||
+      (Mnemonic == "smlal" || Mnemonic == "umaal" || Mnemonic == "umlal" ||
+       Mnemonic == "vabal" || Mnemonic == "vmlal" || Mnemonic == "vpadal" ||
+       Mnemonic == "vqdmlal"))
     return ARMCC::AL;
 
   // Otherwise, determine the predicate.

Modified: llvm/trunk/test/MC/ARM/neon-absdiff-encoding.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ARM/neon-absdiff-encoding.s?rev=123189&r1=123188&r2=123189&view=diff
==============================================================================
--- llvm/trunk/test/MC/ARM/neon-absdiff-encoding.s (original)
+++ llvm/trunk/test/MC/ARM/neon-absdiff-encoding.s Mon Jan 10 15:01:03 2011
@@ -1,6 +1,4 @@
 @ RUN: llvm-mc -mcpu=cortex-a8 -triple arm-unknown-unknown -show-encoding < %s | FileCheck %s
-@ XFAIL: *
-@ NOTE: This currently fails because the ASM parser doesn't parse vabal.
 
 @ CHECK: vabd.s8	d16, d16, d17           @ encoding: [0xa1,0x07,0x40,0xf2]
 	vabd.s8	d16, d16, d17

Modified: llvm/trunk/test/MC/ARM/neon-bitcount-encoding.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ARM/neon-bitcount-encoding.s?rev=123189&r1=123188&r2=123189&view=diff
==============================================================================
--- llvm/trunk/test/MC/ARM/neon-bitcount-encoding.s (original)
+++ llvm/trunk/test/MC/ARM/neon-bitcount-encoding.s Mon Jan 10 15:01:03 2011
@@ -1,5 +1,4 @@
 @ RUN: llvm-mc -mcpu=cortex-a8 -triple arm-unknown-unknown -show-encoding < %s | FileCheck %s
-@ XFAIL: *
 
 @ CHECK: vcnt.8	d16, d16                @ encoding: [0x20,0x05,0xf0,0xf3]
 	vcnt.8	d16, d16

Modified: llvm/trunk/test/MC/ARM/neon-pairwise-encoding.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ARM/neon-pairwise-encoding.s?rev=123189&r1=123188&r2=123189&view=diff
==============================================================================
--- llvm/trunk/test/MC/ARM/neon-pairwise-encoding.s (original)
+++ llvm/trunk/test/MC/ARM/neon-pairwise-encoding.s Mon Jan 10 15:01:03 2011
@@ -1,5 +1,4 @@
 @ RUN: llvm-mc -mcpu=cortex-a8 -triple arm-unknown-unknown -show-encoding < %s | FileCheck %s
-@ XFAIL: *
 
 @ CHECK: vpadd.i8	d16, d17, d16   @ encoding: [0xb0,0x0b,0x41,0xf2]
 	vpadd.i8	d16, d17, d16





More information about the llvm-commits mailing list