1 /* Test AAPCS layout (VFP variant) */
2 
3 /* { dg-do run { target arm_eabi } } */
4 /* { dg-require-effective-target arm_hard_vfp_ok } */
5 /* { dg-require-effective-target arm32 } */
6 /* { dg-options "-O -mfpu=vfp -mfloat-abi=hard" } */
7 
8 #ifndef IN_FRAMEWORK
9 #define VFP
10 #define TESTFILE "vfp13.c"
11 
12 __complex__ x = 1.0+2.0i;
13 
14 struct y
15 {
16   int p;
17   int q;
18   int r;
19   int s;
20 } v = { 1, 2, 3, 4 };
21 
22 struct z
23 {
24   double x[4];
25 };
26 
27 struct z a = { 5.0, 6.0, 7.0, 8.0 };
28 struct z b = { 9.0, 10.0, 11.0, 12.0 };
29 
30 #include "abitest.h"
31 #else
32   ARG(int, 7, R0)
33   ARG(int, 9, R1)
34   ARG(struct z, a, D0)
35   ARG(double, 1.0, D4)
36   ARG(struct z, b, STACK)
37   ARG(int, 4, R2)
38   LAST_ARG(double, 0.5, STACK+32)
39 #endif
40