1 /* { dg-do run } */
2 /* { dg-require-effective-target avx } */
3 /* { dg-options "-Os -fno-ipa-cp -fschedule-insns -mavx" } */
4 
5 #include "avx-check.h"
6 
7 typedef unsigned int u32;
8 typedef unsigned long long u64;
9 
10 u32 x0, x1, x2, x3, x4;
11 u64 x5, x6;
12 
13 static u64 __attribute__ ((noinline, noclone))
foo(u64 x7)14 foo (u64 x7)
15 {
16   x6 = x2;
17   x6 *= 5;
18   x6--;
19   return x0 + x5 + x1 + x7 + 1 + x3 + x4;
20 }
21 
22 static void
23 __attribute__ ((noinline))
avx_test()24 avx_test ()
25 {
26   u64 x = foo (0);
27   __builtin_printf ("%016llx", (unsigned long long) (x >> 0));
28   __builtin_printf ("\n");
29 }
30