summaryrefslogtreecommitdiffstats
path: root/llvm/test/MC/AArch64/neon-scalar-dup.s
diff options
context:
space:
mode:
authorChad Rosier <mcrosier@codeaurora.org>2013-11-12 19:13:08 +0000
committerChad Rosier <mcrosier@codeaurora.org>2013-11-12 19:13:08 +0000
commit1eb0ecf8ceac5ad0889c3896b87b859f8ec75129 (patch)
tree2fafb1d5e8b0dada1566928af2b8f67dbac1c642 /llvm/test/MC/AArch64/neon-scalar-dup.s
parentb6517850fb5624e10c491747c7a4df87b2513695 (diff)
downloadbcm5719-llvm-1eb0ecf8ceac5ad0889c3896b87b859f8ec75129.tar.gz
bcm5719-llvm-1eb0ecf8ceac5ad0889c3896b87b859f8ec75129.zip
[AArch64] Implemented AdvSIMD scalar x indexed element format and AdvSIMD scalar
copy in MC layer. Added the MC layer tests. Fixed triple setting in test cases. Patch by Ana Pazos <apazos@codeaurora.org>. llvm-svn: 194501
Diffstat (limited to 'llvm/test/MC/AArch64/neon-scalar-dup.s')
-rw-r--r--llvm/test/MC/AArch64/neon-scalar-dup.s29
1 files changed, 29 insertions, 0 deletions
diff --git a/llvm/test/MC/AArch64/neon-scalar-dup.s b/llvm/test/MC/AArch64/neon-scalar-dup.s
new file mode 100644
index 00000000000..64366f2edc0
--- /dev/null
+++ b/llvm/test/MC/AArch64/neon-scalar-dup.s
@@ -0,0 +1,29 @@
+// RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+neon -show-encoding < %s | FileCheck %s
+
+//------------------------------------------------------------------------------
+// Duplicate element (scalar)
+//------------------------------------------------------------------------------
+ dup b0, v0.b[15]
+ dup b1, v0.b[7]
+ dup b17, v0.b[0]
+ dup h5, v31.h[7]
+ dup h9, v1.h[4]
+ dup h11, v17.h[0]
+ dup s2, v2.s[3]
+ dup s4, v21.s[0]
+ dup s31, v21.s[2]
+ dup d3, v5.d[0]
+ dup d6, v5.d[1]
+
+// CHECK: dup b0, v0.b[15] // encoding: [0x00,0x04,0x1f,0x5e]
+// CHECK: dup b1, v0.b[7] // encoding: [0x01,0x04,0x0f,0x5e]
+// CHECK: dup b17, v0.b[0] // encoding: [0x11,0x04,0x01,0x5e]
+// CHECK: dup h5, v31.h[7] // encoding: [0xe5,0x07,0x1e,0x5e]
+// CHECK: dup h9, v1.h[4] // encoding: [0x29,0x04,0x12,0x5e]
+// CHECK: dup h11, v17.h[0] // encoding: [0x2b,0x06,0x02,0x5e]
+// CHECK: dup s2, v2.s[3] // encoding: [0x42,0x04,0x1c,0x5e]
+// CHECK: dup s4, v21.s[0] // encoding: [0xa4,0x06,0x04,0x5e]
+// CHECK: dup s31, v21.s[2] // encoding: [0xbf,0x06,0x14,0x5e]
+// CHECK: dup d3, v5.d[0] // encoding: [0xa3,0x04,0x08,0x5e]
+// CHECK: dup d6, v5.d[1] // encoding: [0xa6,0x04,0x18,0x5e]
+
OpenPOWER on IntegriCloud