19 |
; * along with this program; if not, write to the Free Software |
; * along with this program; if not, write to the Free Software |
20 |
; * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
; * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
21 |
; * |
; * |
22 |
; * $Id: fdct_mmx_skal.asm,v 1.2 2004-03-22 22:36:23 edgomez Exp $ |
; * $Id: fdct_mmx_skal.asm,v 1.6 2004-08-29 10:02:38 edgomez Exp $ |
23 |
; * |
; * |
24 |
; ***************************************************************************/ |
; ***************************************************************************/ |
25 |
|
|
27 |
|
|
28 |
%macro cglobal 1 |
%macro cglobal 1 |
29 |
%ifdef PREFIX |
%ifdef PREFIX |
30 |
|
%ifdef MARK_FUNCS |
31 |
|
global _%1:function %1.endfunc-%1 |
32 |
|
%define %1 _%1:function %1.endfunc-%1 |
33 |
|
%else |
34 |
global _%1 |
global _%1 |
35 |
%define %1 _%1 |
%define %1 _%1 |
36 |
|
%endif |
37 |
|
%else |
38 |
|
%ifdef MARK_FUNCS |
39 |
|
global %1:function %1.endfunc-%1 |
40 |
%else |
%else |
41 |
global %1 |
global %1 |
42 |
%endif |
%endif |
43 |
|
%endif |
44 |
%endmacro |
%endmacro |
45 |
|
|
46 |
;;; Define this if you want an unrolled version of the code |
;;; Define this if you want an unrolled version of the code |
114 |
;============================================================================= |
;============================================================================= |
115 |
|
|
116 |
%ifdef FORMAT_COFF |
%ifdef FORMAT_COFF |
117 |
SECTION .rodata data |
SECTION .rodata |
118 |
%else |
%else |
119 |
SECTION .rodata data align=16 |
SECTION .rodata align=16 |
120 |
%endif |
%endif |
121 |
|
|
122 |
ALIGN 16 |
ALIGN 16 |
491 |
mov edi, fdct_rounding_2 |
mov edi, fdct_rounding_2 |
492 |
.loop |
.loop |
493 |
%2 ecx, ecx, edx, ebx, edi |
%2 ecx, ecx, edx, ebx, edi |
494 |
add eax, 2*16 |
add ecx, 2*8 |
495 |
add edx, 2*32 |
add edx, 2*32 |
496 |
add ebx, 2*4 |
add ebx, 2*4 |
497 |
add edi, 2*4 |
add edi, 2*4 |
503 |
%endif |
%endif |
504 |
|
|
505 |
ret |
ret |
506 |
|
.endfunc |
507 |
%endmacro |
%endmacro |
508 |
|
|
509 |
;============================================================================= |
;============================================================================= |