mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-11-07 13:30:07 -05:00
Implemented snd_pcm_rewind() for the dmix plugin
This commit is contained in:
parent
8f16428f9c
commit
70b11d614d
7 changed files with 459 additions and 28 deletions
|
|
@ -83,9 +83,9 @@ static void MIX_AREAS_16(unsigned int size,
|
|||
"\t" LOCK_PREFIX "cmpxchgw %%cx, (%%edi)\n"
|
||||
"\tmovswl (%%esi), %%ecx\n"
|
||||
"\tjnz 3f\n"
|
||||
"\tsubl %%edx, %%ecx\n"
|
||||
"\t" XSUB " %%edx, %%ecx\n"
|
||||
"3:"
|
||||
"\t" LOCK_PREFIX "addl %%ecx, (%%ebx)\n"
|
||||
"\t" LOCK_PREFIX XADD " %%ecx, (%%ebx)\n"
|
||||
|
||||
/*
|
||||
* do {
|
||||
|
|
@ -202,9 +202,9 @@ static void MIX_AREAS_16_MMX(unsigned int size,
|
|||
"\t" LOCK_PREFIX "cmpxchgw %%cx, (%%edi)\n"
|
||||
"\tmovswl (%%esi), %%ecx\n"
|
||||
"\tjnz 3f\n"
|
||||
"\tsubl %%edx, %%ecx\n"
|
||||
"\t" XSUB " %%edx, %%ecx\n"
|
||||
"3:"
|
||||
"\t" LOCK_PREFIX "addl %%ecx, (%%ebx)\n"
|
||||
"\t" LOCK_PREFIX XADD " %%ecx, (%%ebx)\n"
|
||||
|
||||
/*
|
||||
* do {
|
||||
|
|
@ -291,14 +291,14 @@ static void MIX_AREAS_32(unsigned int size,
|
|||
"\tmovl (%%esi), %%ecx\n"
|
||||
/* sample >>= 8 */
|
||||
"\tsarl $8, %%ecx\n"
|
||||
"\tsubl %%edx, %%ecx\n"
|
||||
"\t" XSUB " %%edx, %%ecx\n"
|
||||
"\tjmp 21f\n"
|
||||
"2:"
|
||||
"\tmovl (%%esi), %%ecx\n"
|
||||
/* sample >>= 8 */
|
||||
"\tsarl $8, %%ecx\n"
|
||||
"21:"
|
||||
"\t" LOCK_PREFIX "addl %%ecx, (%%ebx)\n"
|
||||
"\t" LOCK_PREFIX XADD " %%ecx, (%%ebx)\n"
|
||||
|
||||
/*
|
||||
* do {
|
||||
|
|
@ -403,9 +403,9 @@ static void MIX_AREAS_24(unsigned int size,
|
|||
"\t" LOCK_PREFIX "btsl $0, (%%edi)\n"
|
||||
"\tleal (%%ecx,%%eax,1), %%ecx\n"
|
||||
"\tjc 2f\n"
|
||||
"\tsubl %%edx, %%ecx\n"
|
||||
"\t" XSUB " %%edx, %%ecx\n"
|
||||
"2:"
|
||||
"\t" LOCK_PREFIX "addl %%ecx, (%%ebx)\n"
|
||||
"\t" LOCK_PREFIX XADD " %%ecx, (%%ebx)\n"
|
||||
|
||||
/*
|
||||
* do {
|
||||
|
|
@ -508,9 +508,9 @@ static void MIX_AREAS_24_CMOV(unsigned int size,
|
|||
"\t" LOCK_PREFIX "btsl $0, (%%edi)\n"
|
||||
"\tleal (%%ecx,%%eax,1), %%ecx\n"
|
||||
"\tjc 2f\n"
|
||||
"\tsubl %%edx, %%ecx\n"
|
||||
"\t" XSUB " %%edx, %%ecx\n"
|
||||
"2:"
|
||||
"\t" LOCK_PREFIX "addl %%ecx, (%%ebx)\n"
|
||||
"\t" LOCK_PREFIX XADD " %%ecx, (%%ebx)\n"
|
||||
|
||||
/*
|
||||
* do {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue