3 /* { dg-options "-Os -fno-omit-frame-pointer" } */
4 /* { dg-require-effective-target alloca } */
6 extern void abort (void);
8 __attribute__((noinline
)) void
9 foo (double d0
, double d1
, double d2
, double d3
,
10 double d4
, double d5
, double d6
, double d7
,
11 float f0
, float f1
, float f2
, float f3
,
14 if (d0
!= 0 || d1
!= 1 || d2
!= 2 || d3
!= 3)
16 if (d4
!= 4 || d5
!= 5 || d6
!= 6 || d7
!= 7)
18 if (f0
!= 10 || f1
!= 11 || f2
!= 12 || f3
!= 13)
20 if (__builtin_memcmp (p
, "foo", 4) != 0)
22 __builtin_memcpy (p
, "bar", 4);
25 __attribute__((noinline
)) void
29 if (x
>= sizeof "foo")
30 __builtin_memcpy (p
, "foo", 4);
31 foo (0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0,
32 10.0f
, 11.0f
, 12.0f
, 13.0f
, p
);
33 if (x
>= sizeof "bar" && __builtin_memcmp (p
, "bar", 4) != 0)