1 /* { dg-do compile { target { s390*-*-* } } } */
2 /* { dg-options "-O3 -mzarch -march=z14 -mzvector" } */
3 
4 #include <vecintrin.h>
5 
6 vector float
foo(float * a)7 foo (float *a)
8 {
9   return vec_xl (0, a);
10 }
11 
12 vector float
bar(const float * a)13 bar (const float *a)
14 {
15   return vec_xl (0, a);
16 }
17 
18 void
baz(float * f,vector float a)19 baz (float *f, vector float a)
20 {
21   vec_xst (a, 0, f);
22 }
23 
24 vector float
foo2(float * a)25 foo2 (float *a)
26 {
27   return vec_xlw4 (0, a);
28 }
29 
30 vector float
bar2(const float * a)31 bar2 (const float *a)
32 {
33   return vec_xlw4 (0, a);
34 }
35 
36 void
baz2(float * f,vector float a)37 baz2 (float *f, vector float a)
38 {
39   vec_xstw4 (a, 0, f);
40 }
41 
42 /* Make sure no alignment hints are generated.  */
43 
44 /* { dg-final { scan-assembler-not "vl.*,3" } } */
45 /* { dg-final { scan-assembler-not "vst.*,3" } } */
46