diff options
author | Kevin Qin <Kevin.Qin@arm.com> | 2013-11-19 01:40:25 +0000 |
---|---|---|
committer | Kevin Qin <Kevin.Qin@arm.com> | 2013-11-19 01:40:25 +0000 |
commit | 282a979dddff8d06a744c1b686fb3b7a7619d0f4 (patch) | |
tree | 120b5d03e6b35bade22ddc286bb16d78f4827b01 /test | |
parent | 01dd5728cc897777da95a7f4672b5a2540d52564 (diff) | |
download | external_llvm-282a979dddff8d06a744c1b686fb3b7a7619d0f4.zip external_llvm-282a979dddff8d06a744c1b686fb3b7a7619d0f4.tar.gz external_llvm-282a979dddff8d06a744c1b686fb3b7a7619d0f4.tar.bz2 |
implement MC layer of AArch64 neon instruction PMULL and PMULL2 with 128 bit integer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195072 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/MC/AArch64/neon-3vdiff.s | 4 | ||||
-rw-r--r-- | test/MC/AArch64/neon-diagnostics.s | 12 |
2 files changed, 16 insertions, 0 deletions
diff --git a/test/MC/AArch64/neon-3vdiff.s b/test/MC/AArch64/neon-3vdiff.s index 1de6909..3ff86bf 100644 --- a/test/MC/AArch64/neon-3vdiff.s +++ b/test/MC/AArch64/neon-3vdiff.s @@ -283,12 +283,16 @@ //------------------------------------------------------------------------------ pmull v0.8h, v1.8b, v2.8b + pmull v0.1q, v1.1d, v2.1d // CHECK: pmull v0.8h, v1.8b, v2.8b // encoding: [0x20,0xe0,0x22,0x0e] +// CHECK: pmull v0.1q, v1.1d, v2.1d // encoding: [0x20,0xe0,0xe2,0x0e] pmull2 v0.8h, v1.16b, v2.16b + pmull2 v0.1q, v1.2d, v2.2d // CHECK: pmull2 v0.8h, v1.16b, v2.16b // encoding: [0x20,0xe0,0x22,0x4e] +// CHECK: pmull2 v0.1q, v1.2d, v2.2d // encoding: [0x20,0xe0,0xe2,0x4e] //------------------------------------------------------------------------------ // Widen diff --git a/test/MC/AArch64/neon-diagnostics.s b/test/MC/AArch64/neon-diagnostics.s index 044827e..eaa5c56 100644 --- a/test/MC/AArch64/neon-diagnostics.s +++ b/test/MC/AArch64/neon-diagnostics.s @@ -2582,6 +2582,12 @@ // CHECK-ERROR: pmull v0.8h, v1.8h, v2.8b // CHECK-ERROR: ^ + pmull v0.1q, v1.2d, v2.2d + +// CHECK-ERROR: error: invalid operand for instruction +// CHECK-ERROR: pmull v0.1q, v1.2d, v2.2d +// CHECK-ERROR: ^ + // Mismatched vector types pmull v0.4s, v1.4h, v2.4h pmull v0.2d, v1.2s, v2.2s @@ -2600,6 +2606,12 @@ // CHECK-ERROR: pmull2 v0.8h, v1.16h, v2.16b // CHECK-ERROR: ^ + pmull2 v0.q, v1.2d, v2.2d + +// CHECK-ERROR: error: invalid operand for instruction +// CHECK-ERROR: pmull2 v0.q, v1.2d, v2.2d +// CHECK-ERROR: ^ + // Mismatched vector types pmull2 v0.4s, v1.8h v2.8h pmull2 v0.2d, v1.4s, v2.4s |