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)14foo (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()24avx_test () 25 { 26 u64 x = foo (0); 27 __builtin_printf ("%016llx", (unsigned long long) (x >> 0)); 28 __builtin_printf ("\n"); 29 } 30