diff options
author | Ginn Chen <ginn.chen@sun.com> | 2010-05-06 12:06:48 -0400 |
---|---|---|
committer | Jeff Muizelaar <jmuizelaar@mozilla.com> | 2010-05-06 12:06:48 -0400 |
commit | 56d846ad309fc16ee7644046ad44375366a33ff6 (patch) | |
tree | cd7aba1b6247331da95c130fd2e610844eefd677 /transform.c | |
parent | aa139477ebeed60b2ae3444254a180d50842a1c0 (diff) |
Make sse/sse2 code built with Sun Studio 12 on Solaris
Bug 522440
Diffstat (limited to 'transform.c')
-rw-r--r-- | transform.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/transform.c b/transform.c index d9fd089..7a6cbd2 100644 --- a/transform.c +++ b/transform.c @@ -25,10 +25,10 @@ #include <assert.h> #include "qcmsint.h" -/* for MSVC, GCC, and Intel compilers */ -#if defined(_M_IX86) || defined(__i386__) || defined(_M_AMD64) || defined(__x86_64__) +/* for MSVC, GCC, Intel, and Sun compilers */ +#if defined(_M_IX86) || defined(__i386__) || defined(__i386) || defined(_M_AMD64) || defined(__x86_64__) || defined(__x86_64) #define X86 -#endif /* _M_IX86 || __i386__ || _M_AMD64 || __x86_64__ */ +#endif /* _M_IX86 || __i386__ || __i386 || _M_AMD64 || __x86_64__ || __x86_64 */ //XXX: could use a bettername typedef uint16_t uint16_fract_t; @@ -1062,7 +1062,7 @@ static void cpuid(uint32_t fxn, uint32_t *a, uint32_t *b, uint32_t *c, uint32_t *c = c_; *d = d_; } -#elif defined(__GNUC__) && defined(__i386__) +#elif (defined(__GNUC__) || defined(__SUNPRO_C)) && (defined(__i386__) || defined(__i386)) #define HAS_CPUID /* Get us a CPUID function. We can't use ebx because it's the PIC register on some platforms, so we use ESI instead and save ebx to avoid clobbering it. */ @@ -1088,7 +1088,7 @@ static void cpuid(uint32_t fxn, uint32_t *a, uint32_t *b, uint32_t *c, uint32_t static int sse_version_available(void) { -#if defined(__x86_64__) || defined(_M_AMD64) +#if defined(__x86_64__) || defined(__x86_64) || defined(_M_AMD64) /* we know at build time that 64-bit CPUs always have SSE2 * this tells the compiler that non-SSE2 branches will never be * taken (i.e. OK to optimze away the SSE1 and non-SIMD code */ |