Update of /cvsroot/alsa/alsa-lib/src/pcm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1672

Modified Files:
        pcm_dmix_i386.h 
Log Message:
Cleanups, returned zero size checking

Index: pcm_dmix_i386.h
===================================================================
RCS file: /cvsroot/alsa/alsa-lib/src/pcm/pcm_dmix_i386.h,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- pcm_dmix_i386.h     4 Feb 2004 08:25:19 -0000       1.11
+++ pcm_dmix_i386.h     12 Mar 2004 12:41:06 -0000      1.12
@@ -52,7 +52,9 @@
                "\tmovl %1, %%edi\n"
                "\tmovl %2, %%esi\n"
                "\tmovl %3, %%ebx\n"
-               "\tjmp 2f\n"
+               "\tcmpl $0, %0\n"
+               "\tjnz 2f\n"
+               "\tjmp 7f\n"
 
 
                /*
@@ -73,9 +75,8 @@
                 */
 
                "2:"
-               "\txor %%ax, %%ax\n"
-               "\tmovw %%ax, %%cx\n"
-               "\tincw  %%cx\n"
+               "\tmovw $0, %%ax\n"
+               "\tmovw $1, %%cx\n"
                "\tmovl (%%ebx), %%edx\n"
                "\t" LOCK_PREFIX "cmpxchgw %%cx, (%%edi)\n"
                "\tmovswl (%%esi), %%ecx\n"
@@ -106,8 +107,8 @@
                 * while (size-- > 0)
                 */
                "\tdecl %0\n"
-               "\tjz  7f\n"
-               "\tjmp 1b\n"
+               "\tjnz 1b\n"
+               "\tjmp 7f\n"
 
                /*
                 *  sample > 0x7fff
@@ -171,7 +172,9 @@
                "\tmovl %1, %%edi\n"
                "\tmovl %2, %%esi\n"
                "\tmovl %3, %%ebx\n"
-               "\tjmp  2f\n"
+               "\tcmpl $0, %0\n"
+               "\tjnz 2f\n"
+               "\tjmp 5f\n"
 
                "\t.p2align 4,,15\n"
                "1:"
@@ -187,9 +190,8 @@
                 *     sample -= sum_sample;
                 *   xadd(*sum, sample);
                 */
-               "\txor  %%ax, %%ax\n"
-               "\tmovw %%ax, %%cx\n"
-               "\tincw %%cx\n"
+               "\tmovw $0, %%ax\n"
+               "\tmovw $1, %%cx\n"
                "\tmovl (%%ebx), %%edx\n"
                "\t" LOCK_PREFIX "cmpxchgw %%cx, (%%edi)\n"
                "\tmovswl (%%esi), %%ecx\n"
@@ -221,6 +223,7 @@
                "\tdecl %0\n"
                "\tjnz 1b\n"
                "\temms\n"
+                "5:"
                "\tpop %%ebx\n"         /* ebx is GOT pointer (-fPIC) */
 
                : /* no output regs */
@@ -255,6 +258,9 @@
                "\tmovl %1, %%edi\n"
                "\tmovl %2, %%esi\n"
                "\tmovl %3, %%ebx\n"
+               "\tcmpl $0, %0\n"
+               "\tjnz 2f\n"
+               "\tjmp 6f\n"
 
                "\t.p2align 4,,15\n"
 



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
Alsa-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-cvslog

Reply via email to