remap_sse: fix inner loop increment on SSE

In each iteration we can process 2^4 S16NE samples and 2^5 F32NE
samples, that's twice as much as in MMX, hence correct the increments.
This commit is contained in:
Lennart Poettering 2009-09-03 00:17:28 +02:00
parent 51423cae52
commit 9f4f374a19

View file

@ -108,7 +108,7 @@ static void remap_mono_to_stereo_sse (pa_remap_t *m, void *dst, const void *src,
case PA_SAMPLE_FLOAT32NE: case PA_SAMPLE_FLOAT32NE:
{ {
__asm__ __volatile__ ( __asm__ __volatile__ (
MONO_TO_STEREO(dq,3,7) /* do doubles to quads */ MONO_TO_STEREO(dq, 4, 15) /* do doubles to quads */
: "+r" (dst), "+r" (src), "=&r" (temp), "=&r" (temp2) : "+r" (dst), "+r" (src), "=&r" (temp), "=&r" (temp2)
: "r" ((pa_reg_x86)n) : "r" ((pa_reg_x86)n)
: "cc" : "cc"
@ -118,7 +118,7 @@ static void remap_mono_to_stereo_sse (pa_remap_t *m, void *dst, const void *src,
case PA_SAMPLE_S16NE: case PA_SAMPLE_S16NE:
{ {
__asm__ __volatile__ ( __asm__ __volatile__ (
MONO_TO_STEREO(wd,4,15) /* do words to doubles */ MONO_TO_STEREO(wd, 5, 31) /* do words to doubles */
: "+r" (dst), "+r" (src), "=&r" (temp), "=&r" (temp2) : "+r" (dst), "+r" (src), "=&r" (temp), "=&r" (temp2)
: "r" ((pa_reg_x86)n) : "r" ((pa_reg_x86)n)
: "cc" : "cc"