pcm dmix plugin: fix MIX_AREAS_24 routine for i386 & x86_64 platforms

The code was copied from ALSA bug#4577 from CannibalZerg.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
Jaroslav Kysela 2009-06-16 20:10:19 +02:00
parent e5ca075cde
commit e94f3cfdf9
2 changed files with 3 additions and 3 deletions

View file

@ -400,8 +400,8 @@ static void MIX_AREAS_24(unsigned int size,
"\tmovzwl (%%esi), %%ecx\n"
"\tmovl (%%ebx), %%edx\n"
"\tsall $16, %%eax\n"
"\torl %%eax, %%ecx\n"
"\t" LOCK_PREFIX "btsw $0, (%%edi)\n"
"\tleal (%%ecx,%%eax,1), %%ecx\n"
"\tjc 2f\n"
"\t" XSUB " %%edx, %%ecx\n"
"2:"

View file

@ -284,11 +284,11 @@ static void MIX_AREAS_24(unsigned int size,
* *sum += sample;
*/
"\tmovsbl 2(%%rsi), %%eax\n"
"\tmovswl (%%rsi), %%ecx\n"
"\tmovzwl (%%rsi), %%ecx\n"
"\tmovl (%%rbx), %%edx\n"
"\tsall $16, %%eax\n"
"\torl %%eax, %%ecx\n"
"\t" LOCK_PREFIX "btsw $0, (%%rdi)\n"
"\t.byte 0x67, 0x8d, 0x0c, 0x01\n"
"\tjc 2f\n"
"\t" XSUB " %%edx, %%ecx\n"
"2:"