Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / clang / test / CodeGen / RISCV / rvv-intrinsics-handcrafted / vfncvt-out-of-range.c
blob3ce6b7759bdac5022c2664483687a5973a721306
1 // REQUIRES: riscv-registered-target
2 // RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
3 // RUN: -target-feature +v -target-feature +zfh -target-feature +zvfh \
4 // RUN: -fsyntax-only -verify %s
6 #include <riscv_vector.h>
8 vint32m1_t test_vfncvt_x_f_w_i32m1_rm(vfloat64m2_t src, size_t vl) {
9 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
10 return __riscv_vfncvt_x_f_w_i32m1_rm(src, 5, vl);
13 vuint32m1_t test_vfncvt_xu_f_w_u32m1_rm(vfloat64m2_t src, size_t vl) {
14 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
15 return __riscv_vfncvt_xu_f_w_u32m1_rm(src, 5, vl);
18 vfloat32m1_t test_vfncvt_f_x_w_f32m1_rm(vint64m2_t src, size_t vl) {
19 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
20 return __riscv_vfncvt_f_x_w_f32m1_rm(src, 5, vl);
23 vfloat32m1_t test_vfncvt_f_xu_w_f32m1_rm(vuint64m2_t src, size_t vl) {
24 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
25 return __riscv_vfncvt_f_xu_w_f32m1_rm(src, 5, vl);
28 vfloat32m1_t test_vfncvt_f_f_w_f32m1_rm(vfloat64m2_t src, size_t vl) {
29 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
30 return __riscv_vfncvt_f_f_w_f32m1_rm(src, 5, vl);
33 vint32m1_t test_vfncvt_x_f_w_i32m1_rm_m(vbool32_t mask, vfloat64m2_t src, size_t vl) {
34 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
35 return __riscv_vfncvt_x_f_w_i32m1_rm_m(mask, src, 5, vl);
38 vuint32m1_t test_vfncvt_xu_f_w_u32m1_rm_m(vbool32_t mask, vfloat64m2_t src, size_t vl) {
39 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
40 return __riscv_vfncvt_xu_f_w_u32m1_rm_m(mask, src, 5, vl);
43 vfloat32m1_t test_vfncvt_f_x_w_f32m1_rm_m(vbool32_t mask, vint64m2_t src, size_t vl) {
44 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
45 return __riscv_vfncvt_f_x_w_f32m1_rm_m(mask, src, 5, vl);
48 vfloat32m1_t test_vfncvt_f_xu_w_f32m1_rm_m(vbool32_t mask, vuint64m2_t src, size_t vl) {
49 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
50 return __riscv_vfncvt_f_xu_w_f32m1_rm_m(mask, src, 5, vl);
53 vfloat32m1_t test_vfncvt_f_f_w_f32m1_rm_m(vbool32_t mask, vfloat64m2_t src, size_t vl) {
54 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
55 return __riscv_vfncvt_f_f_w_f32m1_rm_m(mask, src, 5, vl);
58 vint32m1_t test_vfncvt_x_f_w_i32m1_rm_tu(vint32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
59 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
60 return __riscv_vfncvt_x_f_w_i32m1_rm_tu(maskedoff, src, 5, vl);
63 vuint32m1_t test_vfncvt_xu_f_w_u32m1_rm_tu(vuint32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
64 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
65 return __riscv_vfncvt_xu_f_w_u32m1_rm_tu(maskedoff, src, 5, vl);
68 vfloat32m1_t test_vfncvt_f_x_w_f32m1_rm_tu(vfloat32m1_t maskedoff, vint64m2_t src, size_t vl) {
69 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
70 return __riscv_vfncvt_f_x_w_f32m1_rm_tu(maskedoff, src, 5, vl);
73 vfloat32m1_t test_vfncvt_f_xu_w_f32m1_rm_tu(vfloat32m1_t maskedoff, vuint64m2_t src, size_t vl) {
74 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
75 return __riscv_vfncvt_f_xu_w_f32m1_rm_tu(maskedoff, src, 5, vl);
78 vfloat32m1_t test_vfncvt_f_f_w_f32m1_rm_tu(vfloat32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
79 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
80 return __riscv_vfncvt_f_f_w_f32m1_rm_tu(maskedoff, src, 5, vl);
83 vint32m1_t test_vfncvt_x_f_w_i32m1_rm_tum(vbool32_t mask, vint32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
84 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
85 return __riscv_vfncvt_x_f_w_i32m1_rm_tum(mask, maskedoff, src, 5, vl);
88 vuint32m1_t test_vfncvt_xu_f_w_u32m1_rm_tum(vbool32_t mask, vuint32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
89 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
90 return __riscv_vfncvt_xu_f_w_u32m1_rm_tum(mask, maskedoff, src, 5, vl);
93 vfloat32m1_t test_vfncvt_f_x_w_f32m1_rm_tum(vbool32_t mask, vfloat32m1_t maskedoff, vint64m2_t src, size_t vl) {
94 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
95 return __riscv_vfncvt_f_x_w_f32m1_rm_tum(mask, maskedoff, src, 5, vl);
98 vfloat32m1_t test_vfncvt_f_xu_w_f32m1_rm_tum(vbool32_t mask, vfloat32m1_t maskedoff, vuint64m2_t src, size_t vl) {
99 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
100 return __riscv_vfncvt_f_xu_w_f32m1_rm_tum(mask, maskedoff, src, 5, vl);
103 vfloat32m1_t test_vfncvt_f_f_w_f32m1_rm_tum(vbool32_t mask, vfloat32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
104 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
105 return __riscv_vfncvt_f_f_w_f32m1_rm_tum(mask, maskedoff, src, 5, vl);
108 vint32m1_t test_vfncvt_x_f_w_i32m1_rm_tumu(vbool32_t mask, vint32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
109 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
110 return __riscv_vfncvt_x_f_w_i32m1_rm_tumu(mask, maskedoff, src, 5, vl);
113 vuint32m1_t test_vfncvt_xu_f_w_u32m1_rm_tumu(vbool32_t mask, vuint32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
114 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
115 return __riscv_vfncvt_xu_f_w_u32m1_rm_tumu(mask, maskedoff, src, 5, vl);
118 vfloat32m1_t test_vfncvt_f_x_w_f32m1_rm_tumu(vbool32_t mask, vfloat32m1_t maskedoff, vint64m2_t src, size_t vl) {
119 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
120 return __riscv_vfncvt_f_x_w_f32m1_rm_tumu(mask, maskedoff, src, 5, vl);
123 vfloat32m1_t test_vfncvt_f_xu_w_f32m1_rm_tumu(vbool32_t mask, vfloat32m1_t maskedoff, vuint64m2_t src, size_t vl) {
124 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
125 return __riscv_vfncvt_f_xu_w_f32m1_rm_tumu(mask, maskedoff, src, 5, vl);
128 vfloat32m1_t test_vfncvt_f_f_w_f32m1_rm_tumu(vbool32_t mask, vfloat32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
129 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
130 return __riscv_vfncvt_f_f_w_f32m1_rm_tumu(mask, maskedoff, src, 5, vl);
133 vint32m1_t test_vfncvt_x_f_w_i32m1_rm_mu(vbool32_t mask, vint32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
134 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
135 return __riscv_vfncvt_x_f_w_i32m1_rm_mu(mask, maskedoff, src, 5, vl);
138 vuint32m1_t test_vfncvt_xu_f_w_u32m1_rm_mu(vbool32_t mask, vuint32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
139 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
140 return __riscv_vfncvt_xu_f_w_u32m1_rm_mu(mask, maskedoff, src, 5, vl);
143 vfloat32m1_t test_vfncvt_f_x_w_f32m1_rm_mu(vbool32_t mask, vfloat32m1_t maskedoff, vint64m2_t src, size_t vl) {
144 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
145 return __riscv_vfncvt_f_x_w_f32m1_rm_mu(mask, maskedoff, src, 5, vl);
148 vfloat32m1_t test_vfncvt_f_xu_w_f32m1_rm_mu(vbool32_t mask, vfloat32m1_t maskedoff, vuint64m2_t src, size_t vl) {
149 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
150 return __riscv_vfncvt_f_xu_w_f32m1_rm_mu(mask, maskedoff, src, 5, vl);
153 vfloat32m1_t test_vfncvt_f_f_w_f32m1_rm_mu(vbool32_t mask, vfloat32m1_t maskedoff, vfloat64m2_t src, size_t vl) {
154 // expected-error@+1 {{argument value 5 is outside the valid range [0, 4]}}
155 return __riscv_vfncvt_f_f_w_f32m1_rm_mu(mask, maskedoff, src, 5, vl);