4 |
; * - Quarter-pixel interpolation - |
; * - Quarter-pixel interpolation - |
5 |
; * Copyright(C) 2002 Pascal Massimino <skal@planet-d.net> |
; * Copyright(C) 2002 Pascal Massimino <skal@planet-d.net> |
6 |
; * |
; * |
7 |
; * This file is part of XviD, a free MPEG-4 video encoder/decoder |
; * This file is part of Xvid, a free MPEG-4 video encoder/decoder |
8 |
; * |
; * |
9 |
; * XviD is free software; you can rDST_PTRstribute it and/or modify it |
; * Xvid is free software; you can rDST_PTRstribute it and/or modify it |
10 |
; * under the terms of the GNU General Public License as published by |
; * under the terms of the GNU General Public License as published by |
11 |
; * the Free Software Foundation; either version 2 of the License, or |
; * the Free Software Foundation; either version 2 of the License, or |
12 |
; * (at your option) any later version. |
; * (at your option) any later version. |
239 |
FIR_C20: times 4 dw 20 |
FIR_C20: times 4 dw 20 |
240 |
FIR_C23: times 4 dw 23 |
FIR_C23: times 4 dw 23 |
241 |
|
|
242 |
SECTION .rotext align=SECTION_ALIGN |
TEXT |
243 |
|
|
244 |
;////////////////////////////////////////////////////////////////////// |
;////////////////////////////////////////////////////////////////////// |
245 |
;// Here we go with the Q-Pel mess. |
;// Here we go with the Q-Pel mess. |
256 |
lea r9, [%2] |
lea r9, [%2] |
257 |
paddw %1, [r9 + %3] |
paddw %1, [r9 + %3] |
258 |
%endmacro |
%endmacro |
259 |
%ifdef WINDOWS |
%define SRC_PTR prm2 |
260 |
%define SRC_PTR _EDX |
%define DST_PTR prm1 |
|
%define DST_PTR _ECX |
|
|
%else |
|
|
%define SRC_PTR _ESI |
|
|
%define DST_PTR _EDI |
|
|
%endif |
|
261 |
%else |
%else |
262 |
%macro XVID_MOVQ 3 |
%macro XVID_MOVQ 3 |
263 |
movq %1, [%2 + %3] |
movq %1, [%2 + %3] |
767 |
%endif |
%endif |
768 |
|
|
769 |
movd eax, %3 |
movd eax, %3 |
770 |
mov [DST_PTR], _EAX |
mov dword [DST_PTR], eax |
771 |
|
|
772 |
%if (%4==0) |
%if (%4==0) |
773 |
add DST_PTR, _EBP |
add DST_PTR, _EBP |
1149 |
%undef SRC_PTR |
%undef SRC_PTR |
1150 |
%undef DST_PTR |
%undef DST_PTR |
1151 |
|
|
1152 |
%ifidn __OUTPUT_FORMAT__,elf |
NON_EXEC_STACK |
|
section ".note.GNU-stack" noalloc noexec nowrite progbits |
|
|
%endif |
|
|
|
|