blob: f8cd50fa4fe7cfc6b6cbad01bebdcf360a4e6b41 [file] [log] [blame]
section .data align=16
align 16
mmx_yuy2_00ff dw 000ffh, 000ffh, 000ffh, 000ffh
section .text
; -- Import/Export ------------------------------------------------------
global mb_yuy2yuv_mmx
struc macroblock_yuy2_param
.dsty: resd 1
.dstu: resd 1
.dstv: resd 1
.dypitch: resd 1
.dcpitch: resd 1
.src: resd 1
.spitch: resd 1
endstruc
; -----------------------------------------------------------------------
; -= mb_yuy2yuv_mmx =-
;
; extern "C" int __fastcall mb_yuy2yuv_mmx( macroblock_param *param );
; -----------------------------------------------------------------------
align 16
mb_yuy2yuv_mmx:
push ebx
push edx
push esi
push edi
push ebp
mov esi, [ecx + macroblock_yuy2_param.src]
mov edx, [ecx + macroblock_yuy2_param.spitch]
mov edi, [ecx + macroblock_yuy2_param.dsty]
mov eax, [ecx + macroblock_yuy2_param.dstu]
mov ebx, [ecx + macroblock_yuy2_param.dstv]
mov ebp, [ecx + macroblock_yuy2_param.dypitch]
mov ecx, [ecx + macroblock_yuy2_param.dcpitch]
movq mm6, [mmx_yuy2_00ff]
pop ebp
pop edi
pop esi
pop edx
pop ebx
retn