1  #include <stdio.h>
       2  #include <stdlib.h>
       3  
       4  #include "cpuid.h"
       5  
       6  static void mmx_3dnow_test (void);
       7  
       8  static void
       9  __attribute__ ((noinline))
      10  do_test (void)
      11  {
      12    mmx_3dnow_test ();
      13  }
      14  
      15  int
      16  main ()
      17  {
      18    unsigned int eax, ebx, ecx, edx;
      19   
      20    if (!__get_cpuid (0x80000001, &eax, &ebx, &ecx, &edx))
      21      return 0;
      22  
      23    /* Run 3DNow! test only if host has 3DNow! support.  */
      24    if (edx & bit_3DNOW)
      25      do_test ();
      26  
      27    return 0;
      28  }