OLD | NEW |
1 /* | 1 /* |
2 * MMX optimized DSP utils | 2 * MMX optimized DSP utils |
3 * Copyright (c) 2007 Aurelien Jacobs <aurel@gnuage.org> | 3 * Copyright (c) 2007 Aurelien Jacobs <aurel@gnuage.org> |
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. |
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
149 "pcmpeqd %%" #regd ", %%" #regd " \n\t" \ | 149 "pcmpeqd %%" #regd ", %%" #regd " \n\t" \ |
150 "psrlw $15, %%" #regd ::) | 150 "psrlw $15, %%" #regd ::) |
151 | 151 |
152 void dsputilenc_init_mmx(DSPContext* c, AVCodecContext *avctx); | 152 void dsputilenc_init_mmx(DSPContext* c, AVCodecContext *avctx); |
153 void dsputil_init_pix_mmx(DSPContext* c, AVCodecContext *avctx); | 153 void dsputil_init_pix_mmx(DSPContext* c, AVCodecContext *avctx); |
154 | 154 |
155 void add_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int line_size
); | 155 void add_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int line_size
); |
156 void put_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int line_size
); | 156 void put_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int line_size
); |
157 void put_signed_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int li
ne_size); | 157 void put_signed_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int li
ne_size); |
158 | 158 |
| 159 void ff_cavsdsp_init_mmx2(DSPContext* c, AVCodecContext *avctx); |
| 160 void ff_cavsdsp_init_3dnow(DSPContext* c, AVCodecContext *avctx); |
| 161 void ff_put_cavs_qpel8_mc00_mmx2(uint8_t *dst, uint8_t *src, int stride); |
| 162 void ff_avg_cavs_qpel8_mc00_mmx2(uint8_t *dst, uint8_t *src, int stride); |
| 163 void ff_put_cavs_qpel16_mc00_mmx2(uint8_t *dst, uint8_t *src, int stride); |
| 164 void ff_avg_cavs_qpel16_mc00_mmx2(uint8_t *dst, uint8_t *src, int stride); |
| 165 |
| 166 void ff_vc1dsp_init_mmx(DSPContext* dsp, AVCodecContext *avctx); |
| 167 void ff_put_vc1_mspel_mc00_mmx(uint8_t *dst, const uint8_t *src, int stride, int
rnd); |
| 168 void ff_avg_vc1_mspel_mc00_mmx2(uint8_t *dst, const uint8_t *src, int stride, in
t rnd); |
| 169 |
| 170 void ff_snow_horizontal_compose97i_sse2(IDWTELEM *b, int width); |
| 171 void ff_snow_horizontal_compose97i_mmx(IDWTELEM *b, int width); |
| 172 void ff_snow_vertical_compose97i_sse2(IDWTELEM *b0, IDWTELEM *b1, IDWTELEM *b2,
IDWTELEM *b3, IDWTELEM *b4, IDWTELEM *b5, int width); |
| 173 void ff_snow_vertical_compose97i_mmx(IDWTELEM *b0, IDWTELEM *b1, IDWTELEM *b2, I
DWTELEM *b3, IDWTELEM *b4, IDWTELEM *b5, int width); |
| 174 void ff_snow_inner_add_yblock_sse2(const uint8_t *obmc, const int obmc_stride, u
int8_t * * block, int b_w, int b_h, |
| 175 int src_x, int src_y, int src_stride, slice_b
uffer * sb, int add, uint8_t * dst8); |
| 176 void ff_snow_inner_add_yblock_mmx(const uint8_t *obmc, const int obmc_stride, ui
nt8_t * * block, int b_w, int b_h, |
| 177 int src_x, int src_y, int src_stride, slice_bu
ffer * sb, int add, uint8_t * dst8); |
| 178 |
| 179 void ff_lpc_compute_autocorr_sse2(const int32_t *data, int len, int lag, |
| 180 double *autoc); |
| 181 |
| 182 void ff_mmx_idct(DCTELEM *block); |
| 183 void ff_mmxext_idct(DCTELEM *block); |
| 184 |
159 #endif /* AVCODEC_X86_DSPUTIL_MMX_H */ | 185 #endif /* AVCODEC_X86_DSPUTIL_MMX_H */ |
OLD | NEW |