Don't like ads? PRO users don't see any ads ;-)
Guest

zad

By: a guest on Jan 9th, 2009  |  syntax: None  |  size: 1.22 KB  |  hits: 54  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. http://mxr.mozilla.org/mozilla-central/source/modules/lcms/src/cmsxform.c#96
  2.  
  3. 89 #define HAVE_MMX_INTEL_MNEMONICS
  4. 90
  5. 91 /* SSE2 code appears broken for some cpus (bug 247437) */
  6. 92 #define HAVE_SSE2_INTEL_MNEMONICS
  7. 93 #define HAVE_SSE2_INTRINSICS
  8. 94 #endif
  9. 95
  10.  
  11. 96 #if defined(__GNUC__) && defined(__x86_64__) /*defined(__i386__) */ // hangs up
  12.  
  13. 96 #if defined(__GNUC__) || defined(__i386__) || defined(__x86_64__) || defined(__amd64__) //would this be appropriate?
  14.  
  15. 97
  16. 98 /* Get us a CPUID function. We can't use ebx because it's the PIC register on
  17. 99    some platforms, so we use ESI instead and save ebx to avoid clobbering it. */
  18. 100 LCMS_INLINE void LCMSCPUID(DWORD fxn, LPDWORD a, LPDWORD b, LPDWORD c, LPDWORD d) {
  19. z101        
  20. 102            DWORD a_, b_, c_, d_;
  21. 103        __asm__ __volatile__ ("xchgl %%ebx, %%esi; cpuid; xchgl %%ebx, %%esi;"
  22. 104                              : "=a" (a_), "=S" (b_), "=c" (c_), "=d" (d_) : "a" (fxn));
  23. 105            *a = a_;
  24. 106            *b = b_;
  25. 107            *c = c_;
  26. 108            *d = d_;
  27. 109  }
  28. 110
  29. 111 #define HAVE_SSE2_INTRINSICS
  30. 112 /* XXX - the below wasn't in jpeg/jmorecfg.h - why? */
  31. 113 #define HAVE_SSE2_INTEL_MNEMONICS
  32. 114 #endif /* ! GNUC && i386 */