This is done similarly for all other architectures.tags/n2.3
| @@ -21,10 +21,41 @@ | |||
| * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |||
| */ | |||
| #include <stdint.h> | |||
| #include "config.h" | |||
| #include "libavutil/attributes.h" | |||
| #include "libavutil/bfin/attributes.h" | |||
| #include "libavcodec/avcodec.h" | |||
| #include "libavcodec/dsputil.h" | |||
| #include "dsputil_bfin.h" | |||
| void ff_bfin_idct(int16_t *block) attribute_l1_text; | |||
| void ff_bfin_fdct(int16_t *block) attribute_l1_text; | |||
| void ff_bfin_add_pixels_clamped(const int16_t *block, uint8_t *dest, | |||
| int line_size) attribute_l1_text; | |||
| void ff_bfin_put_pixels_clamped(const int16_t *block, uint8_t *dest, | |||
| int line_size) attribute_l1_text; | |||
| void ff_bfin_diff_pixels(int16_t *block, const uint8_t *s1, const uint8_t *s2, | |||
| int stride) attribute_l1_text; | |||
| void ff_bfin_get_pixels(int16_t *restrict block, const uint8_t *pixels, | |||
| int line_size) attribute_l1_text; | |||
| int ff_bfin_pix_norm1(uint8_t *pix, int line_size) attribute_l1_text; | |||
| int ff_bfin_pix_sum(uint8_t *p, int stride) attribute_l1_text; | |||
| int ff_bfin_z_sad8x8(uint8_t *blk1, uint8_t *blk2, int dsz, | |||
| int line_size, int h) attribute_l1_text; | |||
| int ff_bfin_z_sad16x16(uint8_t *blk1, uint8_t *blk2, int dsz, | |||
| int line_size, int h) attribute_l1_text; | |||
| int ff_bfin_sse4(void *v, uint8_t *pix1, uint8_t *pix2, | |||
| int line_size, int h) attribute_l1_text; | |||
| int ff_bfin_sse8(void *v, uint8_t *pix1, uint8_t *pix2, | |||
| int line_size, int h) attribute_l1_text; | |||
| int ff_bfin_sse16(void *v, uint8_t *pix1, uint8_t *pix2, | |||
| int line_size, int h) attribute_l1_text; | |||
| static void bfin_idct_add(uint8_t *dest, int line_size, int16_t *block) | |||
| { | |||
| @@ -1,59 +0,0 @@ | |||
| /* | |||
| * BlackFin DSPUTILS COMMON OPTIMIZATIONS HEADER | |||
| * | |||
| * Copyright (C) 2007 Marc Hoffman <mmh@pleasantst.com> | |||
| * | |||
| * This file is part of Libav. | |||
| * | |||
| * Libav 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. | |||
| * | |||
| * Libav 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 Libav; if not, write to the Free Software | |||
| * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |||
| */ | |||
| #ifndef AVCODEC_BFIN_DSPUTIL_BFIN_H | |||
| #define AVCODEC_BFIN_DSPUTIL_BFIN_H | |||
| #include <stdint.h> | |||
| #include "config.h" | |||
| #include "libavutil/bfin/attributes.h" | |||
| void ff_bfin_idct(int16_t *block) attribute_l1_text; | |||
| void ff_bfin_fdct(int16_t *block) attribute_l1_text; | |||
| void ff_bfin_add_pixels_clamped(const int16_t *block, uint8_t *dest, | |||
| int line_size) attribute_l1_text; | |||
| void ff_bfin_put_pixels_clamped(const int16_t *block, uint8_t *dest, | |||
| int line_size) attribute_l1_text; | |||
| void ff_bfin_diff_pixels(int16_t *block, const uint8_t *s1, const uint8_t *s2, | |||
| int stride) attribute_l1_text; | |||
| void ff_bfin_get_pixels(int16_t *restrict block, const uint8_t *pixels, | |||
| int line_size) attribute_l1_text; | |||
| int ff_bfin_pix_norm1(uint8_t *pix, int line_size) attribute_l1_text; | |||
| int ff_bfin_pix_sum(uint8_t *p, int stride) attribute_l1_text; | |||
| int ff_bfin_z_sad8x8(uint8_t *blk1, uint8_t *blk2, int dsz, | |||
| int line_size, int h) attribute_l1_text; | |||
| int ff_bfin_z_sad16x16(uint8_t *blk1, uint8_t *blk2, int dsz, | |||
| int line_size, int h) attribute_l1_text; | |||
| int ff_bfin_sse4(void *v, uint8_t *pix1, uint8_t *pix2, | |||
| int line_size, int h) attribute_l1_text; | |||
| int ff_bfin_sse8(void *v, uint8_t *pix1, uint8_t *pix2, | |||
| int line_size, int h) attribute_l1_text; | |||
| int ff_bfin_sse16(void *v, uint8_t *pix1, uint8_t *pix2, | |||
| int line_size, int h) attribute_l1_text; | |||
| #endif /* AVCODEC_BFIN_DSPUTIL_BFIN_H */ | |||
| @@ -25,9 +25,17 @@ | |||
| #include <stdint.h> | |||
| #include "libavutil/attributes.h" | |||
| #include "libavutil/bfin/attributes.h" | |||
| #include "libavcodec/hpeldsp.h" | |||
| #include "hpeldsp_bfin.h" | |||
| void ff_bfin_put_pixels8uc_nornd(uint8_t *block, const uint8_t *s0, | |||
| const uint8_t *s1, int line_size, | |||
| int h) attribute_l1_text; | |||
| void ff_bfin_put_pixels16uc_nornd(uint8_t *block, const uint8_t *s0, | |||
| const uint8_t *s1, int line_size, | |||
| int h) attribute_l1_text; | |||
| static void bfin_put_pixels8(uint8_t *block, const uint8_t *pixels, | |||
| ptrdiff_t line_size, int h) | |||
| { | |||
| @@ -36,11 +36,5 @@ void ff_bfin_put_pixels8uc(uint8_t *block, const uint8_t *s0, | |||
| void ff_bfin_put_pixels16uc(uint8_t *block, const uint8_t *s0, | |||
| const uint8_t *s1, int dest_size, int line_size, | |||
| int h) attribute_l1_text; | |||
| void ff_bfin_put_pixels8uc_nornd(uint8_t *block, const uint8_t *s0, | |||
| const uint8_t *s1, int line_size, | |||
| int h) attribute_l1_text; | |||
| void ff_bfin_put_pixels16uc_nornd(uint8_t *block, const uint8_t *s0, | |||
| const uint8_t *s1, int line_size, | |||
| int h) attribute_l1_text; | |||
| #endif /* AVCODEC_BFIN_HPELDSP_BFIN_H */ | |||
| @@ -18,14 +18,15 @@ | |||
| * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |||
| */ | |||
| #include <stdint.h> | |||
| #include <string.h> | |||
| #include "libavutil/attributes.h" | |||
| #include "libavcodec/avcodec.h" | |||
| #include "libavcodec/vp3dsp.h" | |||
| #include "libavcodec/dsputil.h" | |||
| #include "dsputil_bfin.h" | |||
| #include "vp3_bfin.h" | |||
| void ff_bfin_vp3_idct(int16_t *block); | |||
| /* Intra iDCT offset 128 */ | |||
| static void bfin_vp3_idct_put(uint8_t *dest, int line_size, int16_t *block) | |||
| @@ -1,27 +0,0 @@ | |||
| /* | |||
| * This file is part of Libav. | |||
| * | |||
| * Libav 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. | |||
| * | |||
| * Libav 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 Libav; if not, write to the Free Software | |||
| * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |||
| */ | |||
| #ifndef AVCODEC_BFIN_VP3_BFIN_H | |||
| #define AVCODEC_BFIN_VP3_BFIN_H | |||
| #include <stdint.h> | |||
| void ff_bfin_vp3_idct(int16_t *block); | |||
| #endif /* AVCODEC_BFIN_VP3_BFIN_H */ | |||