aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/helpers.c
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2012-11-13 15:20:36 -0800
committerChris Robinson <[email protected]>2012-11-13 15:20:36 -0800
commit0518ecca14ee166d04d53aecc8e737b28e7f9810 (patch)
treebc576f2ed6d5a890a1eb7405d288e037c54fc6fe /Alc/helpers.c
parent43b9027611a56d3ee87dc4523139127867efa9e6 (diff)
Avoid storing the SSE state if it's not supported
Diffstat (limited to 'Alc/helpers.c')
-rw-r--r--Alc/helpers.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/Alc/helpers.c b/Alc/helpers.c
index 859e6c3d..44dc21a8 100644
--- a/Alc/helpers.c
+++ b/Alc/helpers.c
@@ -210,11 +210,14 @@ void SetMixerFPUMode(FPUCtl *ctl)
#endif
#elif defined(HAVE___CONTROL87_2)
int mode;
- __control87_2(0, 0, &ctl->state, &ctl->sse_state);
+ __control87_2(0, 0, &ctl->state, NULL);
__control87_2(_RC_CHOP|_PC_24, _MCW_RC|_MCW_PC, &mode, NULL);
#ifdef HAVE_SSE
if((CPUCapFlags&CPU_CAP_SSE))
+ {
+ __control87_2(0, 0, NULL, &ctl->sse_state);
__control87_2(_RC_CHOP|_DN_FLUSH, _MCW_RC|_MCW_DN, NULL, &mode);
+ }
#endif
#elif defined(HAVE__CONTROLFP)
ctl->state = _controlfp(0, 0);