diff options
author | Vinson Lee <[email protected]> | 2012-08-31 23:30:35 -0700 |
---|---|---|
committer | Vinson Lee <[email protected]> | 2012-09-03 12:28:07 -0700 |
commit | 19b3910bd5dc99c72aa9771d8715dd67897a0810 (patch) | |
tree | 067d0b3c20b47e1c4a94e3ad80a8498b49fe457b /src | |
parent | 51b069e7aa81cdc8f38db71554ae3dd12ce0a6c4 (diff) |
util: Add cpuid for Solaris Studio.
Signed-off-by: Vinson Lee <[email protected]>
Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/auxiliary/util/u_cpu_detect.c | 4 | ||||
-rw-r--r-- | src/gallium/include/pipe/p_config.h | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/gallium/auxiliary/util/u_cpu_detect.c b/src/gallium/auxiliary/util/u_cpu_detect.c index e0c8f73c7d3..945f0b0a910 100644 --- a/src/gallium/auxiliary/util/u_cpu_detect.c +++ b/src/gallium/auxiliary/util/u_cpu_detect.c @@ -182,7 +182,7 @@ static int has_cpuid(void) static INLINE void cpuid(uint32_t ax, uint32_t *p) { -#if defined(PIPE_CC_GCC) && defined(PIPE_ARCH_X86) +#if (defined(PIPE_CC_GCC) || defined(PIPE_CC_SUNPRO)) && defined(PIPE_ARCH_X86) __asm __volatile ( "xchgl %%ebx, %1\n\t" "cpuid\n\t" @@ -193,7 +193,7 @@ cpuid(uint32_t ax, uint32_t *p) "=d" (p[3]) : "0" (ax) ); -#elif defined(PIPE_CC_GCC) && defined(PIPE_ARCH_X86_64) +#elif (defined(PIPE_CC_GCC) || defined(PIPE_CC_SUNPRO)) && defined(PIPE_ARCH_X86_64) __asm __volatile ( "cpuid\n\t" : "=a" (p[0]), diff --git a/src/gallium/include/pipe/p_config.h b/src/gallium/include/pipe/p_config.h index d63eccdc447..9a09cee8fb9 100644 --- a/src/gallium/include/pipe/p_config.h +++ b/src/gallium/include/pipe/p_config.h @@ -73,6 +73,10 @@ #define PIPE_CC_ICL #endif +#if defined(__SUNPRO_C) || defined(__SUNPRO_CC) +#define PIPE_CC_SUNPRO +#endif + /* * Processor architecture |