Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(339)

Side by Side Diff: patched-ffmpeg-mt/libavcodec/x86/dsputil_h264_template_mmx.c

Issue 789004: ffmpeg roll of source to mar 9 version... (Closed) Base URL: svn://chrome-svn/chrome/trunk/deps/third_party/ffmpeg/
Patch Set: '' Created 10 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2005 Zoltan Hidvegi <hzoli -a- hzoli -d- com>, 2 * Copyright (c) 2005 Zoltan Hidvegi <hzoli -a- hzoli -d- com>,
3 * Loren Merritt 3 * Loren Merritt
4 * 4 *
5 * This file is part of FFmpeg. 5 * This file is part of FFmpeg.
6 * 6 *
7 * FFmpeg is free software; you can redistribute it and/or 7 * FFmpeg is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public 8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version. 10 * version 2.1 of the License, or (at your option) any later version.
11 * 11 *
12 * FFmpeg is distributed in the hope that it will be useful, 12 * FFmpeg is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details. 15 * Lesser General Public License for more details.
16 * 16 *
17 * You should have received a copy of the GNU Lesser General Public 17 * You should have received a copy of the GNU Lesser General Public
18 * License along with FFmpeg; if not, write to the Free Software 18 * License along with FFmpeg; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20 */ 20 */
21 21
22 /** 22 /**
23 * MMX optimized version of (put|avg)_h264_chroma_mc8. 23 * MMX optimized version of (put|avg)_h264_chroma_mc8.
24 * H264_CHROMA_MC8_TMPL must be defined to the desired function name 24 * H264_CHROMA_MC8_TMPL must be defined to the desired function name
25 * H264_CHROMA_OP must be defined to empty for put and pavgb/pavgusb for avg 25 * H264_CHROMA_OP must be defined to empty for put and pavgb/pavgusb for avg
26 * H264_CHROMA_MC8_MV0 must be defined to a (put|avg)_pixels8 function 26 * H264_CHROMA_MC8_MV0 must be defined to a (put|avg)_pixels8 function
27 */ 27 */
28 static void H264_CHROMA_MC8_TMPL(uint8_t *dst/*align 8*/, uint8_t *src/*align 1* /, int stride, int h, int x, int y, const uint64_t *rnd_reg) 28 static void H264_CHROMA_MC8_TMPL(uint8_t *dst/*align 8*/, uint8_t *src/*align 1* /, int stride, int h, int x, int y, const uint64_t *rnd_reg)
29 { 29 {
30 DECLARE_ALIGNED_8(uint64_t, AA); 30 DECLARE_ALIGNED(8, uint64_t, AA);
31 DECLARE_ALIGNED_8(uint64_t, DD); 31 DECLARE_ALIGNED(8, uint64_t, DD);
32 int i; 32 int i;
33 33
34 if(y==0 && x==0) { 34 if(y==0 && x==0) {
35 /* no filter needed */ 35 /* no filter needed */
36 H264_CHROMA_MC8_MV0(dst, src, stride, h); 36 H264_CHROMA_MC8_MV0(dst, src, stride, h);
37 return; 37 return;
38 } 38 }
39 39
40 assert(x<8 && y<8 && x>=0 && y>=0); 40 assert(x<8 && y<8 && x>=0 && y>=0);
41 41
(...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after
295 "add %4, %0\n\t" 295 "add %4, %0\n\t"
296 "sub $1, %2\n\t" 296 "sub $1, %2\n\t"
297 "jnz 1b\n\t" 297 "jnz 1b\n\t"
298 : "+r" (dst), "+r"(src), "+r"(h) 298 : "+r" (dst), "+r"(src), "+r"(h)
299 : "m" (ff_pw_32), "r"((x86_reg)stride) 299 : "m" (ff_pw_32), "r"((x86_reg)stride)
300 : "%esi"); 300 : "%esi");
301 301
302 } 302 }
303 #endif 303 #endif
304 304
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698