diff options
| author | Daniel Dunbar <daniel@zuster.org> | 2011-01-10 21:01:03 +0000 |
|---|---|---|
| committer | Daniel Dunbar <daniel@zuster.org> | 2011-01-10 21:01:03 +0000 |
| commit | c0e8756ba90c9ae1bbfee6f8f682403205374840 (patch) | |
| tree | 9771051cc682c8bcf7610ffb7fad4f9acda3170c /llvm | |
| parent | 48d2411597e8a1d21eca6e9ad078d1ed220460e4 (diff) | |
| download | bcm5719-llvm-c0e8756ba90c9ae1bbfee6f8f682403205374840.tar.gz bcm5719-llvm-c0e8756ba90c9ae1bbfee6f8f682403205374840.zip | |
McARM: Flush out hard coded known non-predicated mnemonic list.
llvm-svn: 123189
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp | 15 | ||||
| -rw-r--r-- | llvm/test/MC/ARM/neon-absdiff-encoding.s | 2 | ||||
| -rw-r--r-- | llvm/test/MC/ARM/neon-bitcount-encoding.s | 1 | ||||
| -rw-r--r-- | llvm/test/MC/ARM/neon-pairwise-encoding.s | 1 |
4 files changed, 12 insertions, 7 deletions
diff --git a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp index d53ce935607..030e7fd98f0 100644 --- a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp +++ b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp @@ -869,9 +869,18 @@ bool ARMAsmParser::ParseOperand(SmallVectorImpl<MCParsedAsmOperand*> &Operands){ // 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. diff --git a/llvm/test/MC/ARM/neon-absdiff-encoding.s b/llvm/test/MC/ARM/neon-absdiff-encoding.s index d678cafa2c6..f43ea6582a2 100644 --- a/llvm/test/MC/ARM/neon-absdiff-encoding.s +++ b/llvm/test/MC/ARM/neon-absdiff-encoding.s @@ -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 diff --git a/llvm/test/MC/ARM/neon-bitcount-encoding.s b/llvm/test/MC/ARM/neon-bitcount-encoding.s index 68d7f1293cd..2c9518b32c1 100644 --- a/llvm/test/MC/ARM/neon-bitcount-encoding.s +++ b/llvm/test/MC/ARM/neon-bitcount-encoding.s @@ -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 diff --git a/llvm/test/MC/ARM/neon-pairwise-encoding.s b/llvm/test/MC/ARM/neon-pairwise-encoding.s index 40c2a0bbd5a..65c47bd64ae 100644 --- a/llvm/test/MC/ARM/neon-pairwise-encoding.s +++ b/llvm/test/MC/ARM/neon-pairwise-encoding.s @@ -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 |

