aboutsummaryrefslogtreecommitdiff
path: root/test/Sema/arm64-neon-args.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/Sema/arm64-neon-args.c')
-rw-r--r--test/Sema/arm64-neon-args.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/Sema/arm64-neon-args.c b/test/Sema/arm64-neon-args.c
new file mode 100644
index 000000000000..315a7044040e
--- /dev/null
+++ b/test/Sema/arm64-neon-args.c
@@ -0,0 +1,14 @@
+// RUN: %clang_cc1 -triple arm64-apple-darwin -target-feature +neon -fsyntax-only -ffreestanding -verify %s
+// RUN: %clang_cc1 -triple arm64_be-none-linux-gnu -target-feature +neon -fsyntax-only -ffreestanding -verify %s
+
+#include <arm_neon.h>
+
+// rdar://13527900
+void vcopy_reject(float32x4_t vOut0, float32x4_t vAlpha, int t) {
+ vcopyq_laneq_f32(vOut0, 1, vAlpha, t); // expected-error {{argument to '__builtin_neon_vgetq_lane_f32' must be a constant integer}}
+}
+
+// rdar://problem/15256199
+float32x4_t test_vmlsq_lane(float32x4_t accum, float32x4_t lhs, float32x2_t rhs) {
+ return vmlsq_lane_f32(accum, lhs, rhs, 1);
+}