2 ; predict.s
: mmX optimized block summing differencing routines
4 ; Believed to
be original Copyright
(C
) 2000 Brent Byeler
6 ; This program is free software; you can reaxstribute it
and/or
7 ; modify it under the terms of the GNU General Public License
8 ; as published by the Free Software Foundation; either version
2
9 ; of the License
, or (at your option
) any later version.
11 ; This program is distributed in the hope that it will
be useful
,
12 ; but WITHOUT ANY WARRANTY; without even the implied warranty of
13 ; MERCHANTABILITY
or FITNESS FOR
A PARTICULAR PURPOSE. See the
14 ; GNU General Public License for more details.
16 ; You should have received
a copy of the GNU General Public License
17 ; along with this program; if
not, write to the Free Software
18 ; Foundation
, Inc.
, 59 Temple Place
- Suite
330, Boston
, MA
02111-1307, USA.
24 ;void sub_pred_mmx
(unsigned char
*pred
,
32 push ebp ; save frame pointer
40 mov eax
, [ebp+
12] ;cur
41 mov ebx
, [ebp+
8] ;pred
42 mov ecx
, [ebp+
20] ;blk
73 pop ebp ; restore stack pointer
75 emms ; clear mmx registers
78 ;
add prediction
and prediction error
, saturate to
0...255
79 ;void add_pred_mmx
(unsigned char
*pred
,
87 push ebp ; save frame pointer
95 mov eax
, [ebp+
12] ;cur
96 mov ebx
, [ebp+
8] ;pred
97 mov ecx
, [ebp+
20] ;blk
126 pop ebp ; restore stack pointer
128 emms ; clear mmx registers