Mercurial > libavcodec.hg
changeset 11396:9e7d38743146 libavcodec
Alpha: move dsputil prototypes to a header file
author | mru |
---|---|
date | Mon, 08 Mar 2010 02:36:03 +0000 |
parents | 5b9d41da4152 |
children | 58c4d851d1c7 |
files | alpha/dsputil_alpha.c alpha/dsputil_alpha.h alpha/motion_est_alpha.c alpha/simple_idct_alpha.c |
diffstat | 4 files changed, 55 insertions(+), 27 deletions(-) [+] |
line wrap: on
line diff
--- a/alpha/dsputil_alpha.c Mon Mar 08 02:36:00 2010 +0000 +++ b/alpha/dsputil_alpha.c Mon Mar 08 02:36:03 2010 +0000 @@ -20,33 +20,14 @@ */ #include "libavcodec/dsputil.h" +#include "dsputil_alpha.h" #include "asm.h" -void ff_simple_idct_axp(DCTELEM *block); -void ff_simple_idct_put_axp(uint8_t *dest, int line_size, DCTELEM *block); -void ff_simple_idct_add_axp(uint8_t *dest, int line_size, DCTELEM *block); - -void put_pixels_axp_asm(uint8_t *block, const uint8_t *pixels, - int line_size, int h); -void put_pixels_clamped_mvi_asm(const DCTELEM *block, uint8_t *pixels, - int line_size); -void add_pixels_clamped_mvi_asm(const DCTELEM *block, uint8_t *pixels, - int line_size); void (*put_pixels_clamped_axp_p)(const DCTELEM *block, uint8_t *pixels, int line_size); void (*add_pixels_clamped_axp_p)(const DCTELEM *block, uint8_t *pixels, int line_size); -void get_pixels_mvi(DCTELEM *restrict block, - const uint8_t *restrict pixels, int line_size); -void diff_pixels_mvi(DCTELEM *block, const uint8_t *s1, const uint8_t *s2, - int stride); -int pix_abs8x8_mvi(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h); -int pix_abs16x16_mvi_asm(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h); -int pix_abs16x16_x2_mvi(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h); -int pix_abs16x16_y2_mvi(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h); -int pix_abs16x16_xy2_mvi(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h); - #if 0 /* These functions were the base for the optimized assembler routines, and remain here for documentation purposes. */ @@ -280,8 +261,8 @@ #define STORE(l, b) stq(AVG2(l, ldq(b)), b); PIXOP(avg_no_rnd, STORE); -void put_pixels16_axp_asm(uint8_t *block, const uint8_t *pixels, - int line_size, int h) +static void put_pixels16_axp_asm(uint8_t *block, const uint8_t *pixels, + int line_size, int h) { put_pixels_axp_asm(block, pixels, line_size, h); put_pixels_axp_asm(block + 8, pixels + 8, line_size, h);
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/alpha/dsputil_alpha.h Mon Mar 08 02:36:03 2010 +0000 @@ -0,0 +1,50 @@ +/* + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef AVCODEC_ALPHA_DSPUTIL_ALPHA_H +#define AVCODEC_ALPHA_DSPUTIL_ALPHA_H + +#include "libavcodec/dsputil.h" + +void ff_simple_idct_axp(DCTELEM *block); +void ff_simple_idct_put_axp(uint8_t *dest, int line_size, DCTELEM *block); +void ff_simple_idct_add_axp(uint8_t *dest, int line_size, DCTELEM *block); + +void put_pixels_axp_asm(uint8_t *block, const uint8_t *pixels, + int line_size, int h); +void put_pixels_clamped_mvi_asm(const DCTELEM *block, uint8_t *pixels, + int line_size); +void add_pixels_clamped_mvi_asm(const DCTELEM *block, uint8_t *pixels, + int line_size); +extern void (*put_pixels_clamped_axp_p)(const DCTELEM *block, uint8_t *pixels, + int line_size); +extern void (*add_pixels_clamped_axp_p)(const DCTELEM *block, uint8_t *pixels, + int line_size); + +void get_pixels_mvi(DCTELEM *restrict block, + const uint8_t *restrict pixels, int line_size); +void diff_pixels_mvi(DCTELEM *block, const uint8_t *s1, const uint8_t *s2, + int stride); +int pix_abs8x8_mvi(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h); +int pix_abs16x16_mvi_asm(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h); +int pix_abs16x16_x2_mvi(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h); +int pix_abs16x16_y2_mvi(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h); +int pix_abs16x16_xy2_mvi(void *v, uint8_t *pix1, uint8_t *pix2, int line_size, int h); + + +#endif /* AVCODEC_ALPHA_DSPUTIL_ALPHA_H */
--- a/alpha/motion_est_alpha.c Mon Mar 08 02:36:00 2010 +0000 +++ b/alpha/motion_est_alpha.c Mon Mar 08 02:36:03 2010 +0000 @@ -20,6 +20,7 @@ */ #include "libavcodec/dsputil.h" +#include "dsputil_alpha.h" #include "asm.h" void get_pixels_mvi(DCTELEM *restrict block,
--- a/alpha/simple_idct_alpha.c Mon Mar 08 02:36:00 2010 +0000 +++ b/alpha/simple_idct_alpha.c Mon Mar 08 02:36:03 2010 +0000 @@ -27,13 +27,9 @@ */ #include "libavcodec/dsputil.h" +#include "dsputil_alpha.h" #include "asm.h" -extern void (*put_pixels_clamped_axp_p)(const DCTELEM *block, uint8_t *pixels, - int line_size); -extern void (*add_pixels_clamped_axp_p)(const DCTELEM *block, uint8_t *pixels, - int line_size); - // cos(i * M_PI / 16) * sqrt(2) * (1 << 14) // W4 is actually exactly 16384, but using 16383 works around // accumulating rounding errors for some encoders