comparison mp3lib/decode_i586.c @ 4246:3f677202418b

mangling in mp3lib + stdcall undefined fix with cygwin
author atmos4
date Sat, 19 Jan 2002 04:47:32 +0000
parents 4bbdda22003d
children 60fe896e437c
comparison
equal deleted inserted replaced
4245:27cb0e43de32 4246:3f677202418b
21 * 21 *
22 * Stefan Bieschewski <stb@acm.org> 22 * Stefan Bieschewski <stb@acm.org>
23 * 23 *
24 * $Id$ 24 * $Id$
25 */ 25 */
26 #include "../mangle.h"
26 #define real float /* ugly - but only way */ 27 #define real float /* ugly - but only way */
27 28
28 static long buffs[1088]; 29 static long buffs[1088];
29 static long bo=1; 30 static long bo=1;
30 31
34 register int retval; 35 register int retval;
35 __asm __volatile( 36 __asm __volatile(
36 " movl %1,%%eax\n\t"/*bandPtr*/ 37 " movl %1,%%eax\n\t"/*bandPtr*/
37 " movl %3,%%esi\n\t" 38 " movl %3,%%esi\n\t"
38 " xorl %%edi,%%edi\n\t" 39 " xorl %%edi,%%edi\n\t"
39 " movl bo,%%ebp\n\t" 40 " movl "MANGLE(bo)",%%ebp\n\t"
40 " cmpl %%edi,%2\n\t" 41 " cmpl %%edi,%2\n\t"
41 " jne .L48\n\t" 42 " jne .L48\n\t"
42 " decl %%ebp\n\t" 43 " decl %%ebp\n\t"
43 " andl $15,%%ebp\n\t" 44 " andl $15,%%ebp\n\t"
44 " movl %%ebp,bo\n\t" 45 " movl %%ebp,"MANGLE(bo)"\n\t"
45 " movl $buffs,%%ecx\n\t" 46 " movl $"MANGLE(buffs)",%%ecx\n\t"
46 " jmp .L49\n\t" 47 " jmp .L49\n\t"
47 ".L48:\n\t" 48 ".L48:\n\t"
48 " addl $2,%%esi\n\t" 49 " addl $2,%%esi\n\t"
49 " movl $buffs+2176,%%ecx\n\t" 50 " movl $"MANGLE(buffs)"+2176,%%ecx\n\t"
50 ".L49:\n\t" 51 ".L49:\n\t"
51 " testl $1,%%ebp\n\t" 52 " testl $1,%%ebp\n\t"
52 " je .L50\n\t" 53 " je .L50\n\t"
53 " movl %%ecx,%%ebx\n\t" 54 " movl %%ecx,%%ebx\n\t"
54 " movl %%ebp,%4\n\t" 55 " movl %%ebp,%4\n\t"
70 " leal 1092(%%ecx,%%ebp,4),%%eax\n\t" 71 " leal 1092(%%ecx,%%ebp,4),%%eax\n\t"
71 " pushl %%eax\n\t" 72 " pushl %%eax\n\t"
72 " leal (%%ecx,%%ebp,4),%%eax\n\t" 73 " leal (%%ecx,%%ebp,4),%%eax\n\t"
73 ".L74:\n\t" 74 ".L74:\n\t"
74 " pushl %%eax\n\t" 75 " pushl %%eax\n\t"
75 " call dct64\n\t" 76 " call "MANGLE(dct64)"\n\t"
76 " addl $12,%%esp\n\t" 77 " addl $12,%%esp\n\t"
77 " movl %4,%%edx\n\t" 78 " movl %4,%%edx\n\t"
78 " leal 0(,%%edx,4),%%edx\n\t" 79 " leal 0(,%%edx,4),%%edx\n\t"
79 " movl $decwin+64,%%eax\n\t" 80 " movl $"MANGLE(decwin)"+64,%%eax\n\t"
80 " movl %%eax,%%ecx\n\t" 81 " movl %%eax,%%ecx\n\t"
81 " subl %%edx,%%ecx\n\t" 82 " subl %%edx,%%ecx\n\t"
82 " movl $16,%%ebp\n\t" 83 " movl $16,%%ebp\n\t"
83 ".L55:\n\t" 84 ".L55:\n\t"
84 " flds (%%ecx)\n\t" 85 " flds (%%ecx)\n\t"