OSDN Git Service

2011-08-19 Andrew Stubbs <ams@codesourcery.com>
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.target / i386 / avx-check.h
1 #include <stdlib.h>
2 #include "cpuid.h"
3 #include "m256-check.h"
4 #include "avx-os-support.h"
5
6 static void avx_test (void);
7
8 static void
9 __attribute__ ((noinline))
10 do_test (void)
11 {
12   avx_test ();
13 }
14
15 int
16 main ()
17 {
18   unsigned int eax, ebx, ecx, edx;
19  
20   if (!__get_cpuid (1, &eax, &ebx, &ecx, &edx))
21     return 0;
22
23   /* Run AVX test only if host has AVX support.  */
24   if (((ecx & (bit_AVX | bit_OSXSAVE)) == (bit_AVX | bit_OSXSAVE))
25       && avx_os_support ())
26     {
27       do_test ();
28 #ifdef DEBUG
29       printf ("PASSED\n");
30 #endif
31     }
32 #ifdef DEBUG
33   else
34     printf ("SKIPPED\n");
35 #endif
36
37   return 0;
38 }