OLD | NEW |
1 ; | 1 ; |
2 ; Copyright (c) 2010 The WebM project authors. All Rights Reserved. | 2 ; Copyright (c) 2010 The WebM project authors. All Rights Reserved. |
3 ; | 3 ; |
4 ; Use of this source code is governed by a BSD-style license | 4 ; Use of this source code is governed by a BSD-style license |
5 ; that can be found in the LICENSE file in the root of the source | 5 ; that can be found in the LICENSE file in the root of the source |
6 ; tree. An additional intellectual property rights grant can be found | 6 ; tree. An additional intellectual property rights grant can be found |
7 ; in the file PATENTS. All contributing project authors may | 7 ; in the file PATENTS. All contributing project authors may |
8 ; be found in the AUTHORS file in the root of the source tree. | 8 ; be found in the AUTHORS file in the root of the source tree. |
9 ; | 9 ; |
10 | 10 |
11 | 11 |
12 %include "vpx_ports/x86_abi_support.asm" | 12 %include "vpx_ports/x86_abi_support.asm" |
13 | 13 |
14 ;void vp8_subtract_b_mmx_impl(unsigned char *z, int src_stride, | 14 ;void vp8_subtract_b_mmx_impl(unsigned char *z, int src_stride, |
15 ; short *diff, unsigned char *Predictor, | 15 ; short *diff, unsigned char *Predictor, |
16 ; int pitch); | 16 ; int pitch); |
17 global sym(vp8_subtract_b_mmx_impl) | 17 global sym(vp8_subtract_b_mmx_impl) PRIVATE |
18 sym(vp8_subtract_b_mmx_impl): | 18 sym(vp8_subtract_b_mmx_impl): |
19 push rbp | 19 push rbp |
20 mov rbp, rsp | 20 mov rbp, rsp |
21 SHADOW_ARGS_TO_STACK 5 | 21 SHADOW_ARGS_TO_STACK 5 |
22 push rsi | 22 push rsi |
23 push rdi | 23 push rdi |
24 ; end prolog | 24 ; end prolog |
25 | 25 |
26 | 26 |
27 mov rdi, arg(2) ;diff | 27 mov rdi, arg(2) ;diff |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 movq [rdi+rcx*2], mm0 | 67 movq [rdi+rcx*2], mm0 |
68 | 68 |
69 ; begin epilog | 69 ; begin epilog |
70 pop rdi | 70 pop rdi |
71 pop rsi | 71 pop rsi |
72 UNSHADOW_ARGS | 72 UNSHADOW_ARGS |
73 pop rbp | 73 pop rbp |
74 ret | 74 ret |
75 | 75 |
76 ;void vp8_subtract_mby_mmx(short *diff, unsigned char *src, unsigned char *pred,
int stride) | 76 ;void vp8_subtract_mby_mmx(short *diff, unsigned char *src, unsigned char *pred,
int stride) |
77 global sym(vp8_subtract_mby_mmx) | 77 global sym(vp8_subtract_mby_mmx) PRIVATE |
78 sym(vp8_subtract_mby_mmx): | 78 sym(vp8_subtract_mby_mmx): |
79 push rbp | 79 push rbp |
80 mov rbp, rsp | 80 mov rbp, rsp |
81 SHADOW_ARGS_TO_STACK 4 | 81 SHADOW_ARGS_TO_STACK 4 |
82 push rsi | 82 push rsi |
83 push rdi | 83 push rdi |
84 ; end prolog | 84 ; end prolog |
85 | 85 |
86 | 86 |
87 mov rsi, arg(1) ;src | 87 mov rsi, arg(1) ;src |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
143 | 143 |
144 pop rdi | 144 pop rdi |
145 pop rsi | 145 pop rsi |
146 ; begin epilog | 146 ; begin epilog |
147 UNSHADOW_ARGS | 147 UNSHADOW_ARGS |
148 pop rbp | 148 pop rbp |
149 ret | 149 ret |
150 | 150 |
151 | 151 |
152 ;void vp8_subtract_mbuv_mmx(short *diff, unsigned char *usrc, unsigned char *vsr
c, unsigned char *pred, int stride) | 152 ;void vp8_subtract_mbuv_mmx(short *diff, unsigned char *usrc, unsigned char *vsr
c, unsigned char *pred, int stride) |
153 global sym(vp8_subtract_mbuv_mmx) | 153 global sym(vp8_subtract_mbuv_mmx) PRIVATE |
154 sym(vp8_subtract_mbuv_mmx): | 154 sym(vp8_subtract_mbuv_mmx): |
155 push rbp | 155 push rbp |
156 mov rbp, rsp | 156 mov rbp, rsp |
157 SHADOW_ARGS_TO_STACK 5 | 157 SHADOW_ARGS_TO_STACK 5 |
158 push rsi | 158 push rsi |
159 push rdi | 159 push rdi |
160 ; end prolog | 160 ; end prolog |
161 | 161 |
162 ;short *udiff = diff + 256; | 162 ;short *udiff = diff + 256; |
163 ;short *vdiff = diff + 320; | 163 ;short *vdiff = diff + 320; |
(...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
423 | 423 |
424 movq [rdi+48], mm0 | 424 movq [rdi+48], mm0 |
425 movq [rdi+56], mm3 | 425 movq [rdi+56], mm3 |
426 | 426 |
427 ; begin epilog | 427 ; begin epilog |
428 pop rdi | 428 pop rdi |
429 pop rsi | 429 pop rsi |
430 UNSHADOW_ARGS | 430 UNSHADOW_ARGS |
431 pop rbp | 431 pop rbp |
432 ret | 432 ret |
OLD | NEW |