1 // REQUIRES: aarch64-registered-target
2 // RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -S -O1 -Werror -Wall -o - %s | FileCheck %s
3
4 #include <arm_sve.h>
5
test_svdupq_n_b8_const()6 svbool_t test_svdupq_n_b8_const()
7 {
8 // CHECK-LABEL: test_svdupq_n_b8_const
9 // CHECK: ptrue p0.h
10 // CHECK-NEXT: ret
11 return svdupq_n_b8(1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0);
12 }
13
test_svdupq_n_b16_const()14 svbool_t test_svdupq_n_b16_const()
15 {
16 // CHECK-LABEL: test_svdupq_n_b16_const
17 // CHECK: ptrue p0.h
18 // CHECK-NEXT: ret
19 return svdupq_n_b16(1, 1, 1, 1, 1, 1, 1, 1);
20 }
21
test_svdupq_n_b32_const()22 svbool_t test_svdupq_n_b32_const()
23 {
24 // CHECK-LABEL: test_svdupq_n_b32_const
25 // CHECK: ptrue p0.s
26 // CHECK-NEXT: ret
27 return svdupq_n_b32(1, 1, 1, 1);
28 }
29
test_svdupq_n_b64_const()30 svbool_t test_svdupq_n_b64_const()
31 {
32 // CHECK-LABEL: test_svdupq_n_b64_const
33 // CHECK: ptrue p0.d
34 // CHECK-NEXT: ret
35 return svdupq_n_b64(1, 1);
36 }
37