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: idct_mmx.asm,v 1.7 2004-03-22 22:36:23 edgomez Exp $ |
; * $Id: idct_mmx.asm,v 1.10 2004-08-29 10:02:38 edgomez Exp $ |
23 |
; * |
; * |
24 |
; ***************************************************************************/ |
; ***************************************************************************/ |
25 |
|
|
52 |
|
|
53 |
%macro cglobal 1 |
%macro cglobal 1 |
54 |
%ifdef PREFIX |
%ifdef PREFIX |
55 |
|
%ifdef MARK_FUNCS |
56 |
|
global _%1:function %1.endfunc-%1 |
57 |
|
%define %1 _%1:function %1.endfunc-%1 |
58 |
|
%else |
59 |
global _%1 |
global _%1 |
60 |
%define %1 _%1 |
%define %1 _%1 |
61 |
|
%endif |
62 |
|
%else |
63 |
|
%ifdef MARK_FUNCS |
64 |
|
global %1:function %1.endfunc-%1 |
65 |
%else |
%else |
66 |
global %1 |
global %1 |
67 |
%endif |
%endif |
68 |
|
%endif |
69 |
%endmacro |
%endmacro |
70 |
|
|
71 |
%define BITS_INV_ACC 5 ; 4 or 5 for IEEE |
%define BITS_INV_ACC 5 ; 4 or 5 for IEEE |
85 |
;============================================================================= |
;============================================================================= |
86 |
|
|
87 |
%ifdef FORMAT_COFF |
%ifdef FORMAT_COFF |
88 |
SECTION .rodata data |
SECTION .rodata |
89 |
%else |
%else |
90 |
SECTION .rodata data align=16 |
SECTION .rodata align=16 |
91 |
%endif |
%endif |
92 |
|
|
93 |
;----------------------------------------------------------------------------- |
;----------------------------------------------------------------------------- |
603 |
DCT_8_INV_COL eax+8, eax+8 |
DCT_8_INV_COL eax+8, eax+8 |
604 |
|
|
605 |
ret |
ret |
606 |
|
.endfunc |
607 |
|
|
608 |
;----------------------------------------------------------------------------- |
;----------------------------------------------------------------------------- |
609 |
; void idct_xmm(uint16_t block[64]); |
; void idct_xmm(uint16_t block[64]); |
628 |
DCT_8_INV_COL eax+8, eax+8 |
DCT_8_INV_COL eax+8, eax+8 |
629 |
|
|
630 |
ret |
ret |
631 |
|
.endfunc |
632 |
|
|