Magellan Linux

Contents of /trunk/openal/patches/openal-20060211-mmx.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 153 - (show annotations) (download)
Tue May 8 20:52:56 2007 UTC (17 years ago) by niro
File size: 569 byte(s)
-import

1 --- src/arch/i386/x86_floatmul.c
2 +++ src/arch/i386/x86_floatmul.c
3 @@ -27,6 +27,7 @@
4 /* MMX routine needs 16 */
5 #define SCALING_POWER 16
6 #define SCALING_FACTOR (1 << SCALING_POWER)
7 +#define MIN_ENTER_SIMD_LEN 48
8
9 void _alFloatMul(ALshort *bpt, ALfloat sa, ALuint len);
10
11 @@ -34,6 +35,8 @@
12 ALint scaled_sa = sa * SCALING_FACTOR;
13 ALint iter;
14
15 + if (len < MIN_ENTER_SIMD_LEN)
16 + goto skip_simd;
17 #ifdef __MMX__
18 if (_alHaveMMX()) {
19 union {
20 @@ -93,6 +96,7 @@
21 __builtin_ia32_emms();
22 }
23 #endif /* __MMX__ */
24 +skip_simd:
25
26 while(len--) {
27 iter = *bpt;