Mercurial > mplayer.hg
comparison cpudetect.c @ 36204:88c5a06d1db9
Update #if for previous commit, fixes compilation for cases
that previously would have broken SSE detection.
author | reimar |
---|---|
date | Wed, 05 Jun 2013 02:13:06 +0000 |
parents | 553275f5565f |
children |
comparison
equal
deleted
inserted
replaced
36203:553275f5565f | 36204:88c5a06d1db9 |
---|---|
54 */ | 54 */ |
55 | 55 |
56 #if CONFIG_RUNTIME_CPUDETECT | 56 #if CONFIG_RUNTIME_CPUDETECT |
57 /* I believe this code works. However, it has only been used on a PII and PIII */ | 57 /* I believe this code works. However, it has only been used on a PII and PIII */ |
58 | 58 |
59 #if defined(__linux__) && defined(_POSIX_SOURCE) && !ARCH_X86_64 | 59 #if defined(__linux__) && !ARCH_X86_64 |
60 static void sigill_handler_sse( int signal, struct sigcontext sc ) | 60 static void sigill_handler_sse( int signal, struct sigcontext sc ) |
61 { | 61 { |
62 mp_msg(MSGT_CPUDETECT,MSGL_V, "SIGILL, " ); | 62 mp_msg(MSGT_CPUDETECT,MSGL_V, "SIGILL, " ); |
63 | 63 |
64 /* Both the "xorps %%xmm0,%%xmm0" and "divps %xmm0,%%xmm1" | 64 /* Both the "xorps %%xmm0,%%xmm0" and "divps %xmm0,%%xmm1" |
73 */ | 73 */ |
74 sc.eip += 3; | 74 sc.eip += 3; |
75 | 75 |
76 gCpuCaps.hasSSE=0; | 76 gCpuCaps.hasSSE=0; |
77 } | 77 } |
78 #endif /* __linux__ && _POSIX_SOURCE */ | 78 #endif /* __linux__ */ |
79 | 79 |
80 #if (defined(__MINGW32__) || defined(__CYGWIN__)) && !ARCH_X86_64 | 80 #if (defined(__MINGW32__) || defined(__CYGWIN__)) && !ARCH_X86_64 |
81 LONG CALLBACK win32_sig_handler_sse(EXCEPTION_POINTERS* ep) | 81 LONG CALLBACK win32_sig_handler_sse(EXCEPTION_POINTERS* ep) |
82 { | 82 { |
83 if(ep->ExceptionRecord->ExceptionCode==EXCEPTION_ILLEGAL_INSTRUCTION){ | 83 if(ep->ExceptionRecord->ExceptionCode==EXCEPTION_ILLEGAL_INSTRUCTION){ |