3 Test homogeneous floating-point aggregates and homogeneous short-vector
4 aggregates, which should be passed in SIMD/FP registers or via the
7 /* { dg-do run { target aarch64*-*-* } } */
10 #define TESTFILE "test_25.c"
12 typedef float vf2_t
__attribute__((vector_size (8)));
26 typedef float vf4_t
__attribute__((vector_size(16)));
37 #define HAS_DATA_INIT_FUNC
40 s0
.v
= (vf2_t
){ 17.f
, 18.f
};
41 s1
.v
= (vf4_t
){ 567.890f
, 678.901f
, 789.012f
, 890.123f
};
45 s3
.v
[0] = (vf2_t
){ 19.f
, 20.f
};
46 s3
.v
[1] = (vf2_t
){ 23.f
, 24.f
};
47 s4
.v
[0] = (vf2_t
){ 27.f
, 28.f
};
48 s4
.v
[1] = (vf2_t
){ 31.f
, 32.f
};
49 s4
.v
[2] = (vf2_t
){ 35.f
, 36.f
};
54 ARG (struct x0
, s0
, D0
)
55 ARG (struct x2
, s2
, D1
)
56 ARG (struct x1
, s1
, Q4
)
57 ARG (struct x3
, s3
, D5
)
58 ARG (struct x4
, s4
, STACK
)
59 ARG (int, 0xdeadbeef, W0
)
60 LAST_ARG (double, 456.789, STACK
+24)